9bc286be9e0cdfc8cb8e5a81c86891579dd66d6d
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-02-02  Csaba Osztrogonác  <ossy@webkit.org>
2
3         [Qt][WK2] Unreviewed buildfix after r141648.
4
5         * DerivedSources.pri:
6
7 2013-02-02  Zan Dobersek  <zdobersek@igalia.com>
8
9         Follow-up to r141682. Adding build targets for the files that should be generated from the new message.in file.
10
11         Unreviewed.
12
13         * GNUmakefile.list.am:
14
15 2013-02-01  Zan Dobersek  <zdobersek@igalia.com>
16
17         Unreviewed GTK build fix after r141648.
18
19         * GNUmakefile.am: Add UIProcess/Storage to the list of paths that
20         should be searched for *.messages.in files.
21
22 2013-02-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
23
24         Unreviewed build fix after r141648
25
26         Needs to add StorageManager.messages.in to CMakeLists.txt.
27
28         * CMakeLists.txt:
29
30 2013-02-01  Benjamin Poulain  <bpoulain@apple.com>
31
32         Build fix for CustomProtocolManagerMac after r141658.
33
34         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
35         (WebKit::CustomProtocolManager::supplementName): I accidentally typed "const" twice twice.
36
37 2013-02-01  Benjamin Poulain  <bpoulain@apple.com>
38
39         [WK2] Use light supplement names instead of static AtomicStrings
40         https://bugs.webkit.org/show_bug.cgi?id=108570
41
42         Reviewed by Anders Carlsson.
43
44         Since all the supplement names are just string literals and are all different,
45         we can just use their pointer as the key in the supplement hashmaps.
46
47         This is lighter and faster than using AtomicString. WebCore already moved to this
48         in Supplementable.
49
50         * NetworkProcess/NetworkProcess.h:
51         (WebKit::NetworkProcess::addSupplement):
52         (NetworkProcess):
53         * Shared/Authentication/AuthenticationManager.cpp:
54         (WebKit::AuthenticationManager::supplementName):
55         * Shared/Authentication/AuthenticationManager.h:
56         (AuthenticationManager):
57         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
58         (CustomProtocolManager):
59         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
60         (WebKit::CustomProtocolManager::supplementName):
61         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
62         (WebKit::WebNotificationManagerProxy::supplementName):
63         * UIProcess/Notifications/WebNotificationManagerProxy.h:
64         (WebNotificationManagerProxy):
65         * UIProcess/WebApplicationCacheManagerProxy.cpp:
66         (WebKit::WebApplicationCacheManagerProxy::supplementName):
67         * UIProcess/WebApplicationCacheManagerProxy.h:
68         (WebApplicationCacheManagerProxy):
69         * UIProcess/WebContext.h:
70         (WebContext):
71         * UIProcess/WebCookieManagerProxy.cpp:
72         (WebKit::WebCookieManagerProxy::supplementName):
73         * UIProcess/WebCookieManagerProxy.h:
74         (WebCookieManagerProxy):
75         * UIProcess/WebDatabaseManagerProxy.cpp:
76         (WebKit::WebDatabaseManagerProxy::supplementName):
77         * UIProcess/WebDatabaseManagerProxy.h:
78         (WebDatabaseManagerProxy):
79         * UIProcess/WebGeolocationManagerProxy.cpp:
80         (WebKit::WebGeolocationManagerProxy::supplementName):
81         * UIProcess/WebGeolocationManagerProxy.h:
82         (WebGeolocationManagerProxy):
83         * UIProcess/WebKeyValueStorageManagerProxy.cpp:
84         (WebKit::WebKeyValueStorageManagerProxy::supplementName):
85         * UIProcess/WebKeyValueStorageManagerProxy.h:
86         (WebKeyValueStorageManagerProxy):
87         * UIProcess/WebMediaCacheManagerProxy.cpp:
88         (WebKit::WebMediaCacheManagerProxy::supplementName):
89         * UIProcess/WebMediaCacheManagerProxy.h:
90         (WebMediaCacheManagerProxy):
91         * UIProcess/WebResourceCacheManagerProxy.cpp:
92         (WebKit::WebResourceCacheManagerProxy::supplementName):
93         * UIProcess/WebResourceCacheManagerProxy.h:
94         (WebResourceCacheManagerProxy):
95         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
96         (WebKit::WebSoupRequestManagerProxy::supplementName):
97         * UIProcess/soup/WebSoupRequestManagerProxy.h:
98         (WebSoupRequestManagerProxy):
99         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
100         (WebKit::WebApplicationCacheManager::supplementName):
101         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
102         (WebApplicationCacheManager):
103         * WebProcess/Cookies/WebCookieManager.cpp:
104         (WebKit::WebCookieManager::supplementName):
105         * WebProcess/Cookies/WebCookieManager.h:
106         (WebCookieManager):
107         * WebProcess/Geolocation/WebGeolocationManager.cpp:
108         (WebKit::WebGeolocationManager::supplementName):
109         * WebProcess/Geolocation/WebGeolocationManager.h:
110         (WebGeolocationManager):
111         * WebProcess/MediaCache/WebMediaCacheManager.cpp:
112         (WebKit::WebMediaCacheManager::supplementName):
113         * WebProcess/MediaCache/WebMediaCacheManager.h:
114         (WebMediaCacheManager):
115         * WebProcess/Notifications/WebNotificationManager.cpp:
116         (WebKit::WebNotificationManager::supplementName):
117         * WebProcess/Notifications/WebNotificationManager.h:
118         (WebNotificationManager):
119         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
120         (WebKit::WebResourceCacheManager::supplementName):
121         * WebProcess/ResourceCache/WebResourceCacheManager.h:
122         (WebResourceCacheManager):
123         * WebProcess/Storage/WebKeyValueStorageManager.cpp:
124         (WebKit::WebKeyValueStorageManager::supplementName):
125         * WebProcess/Storage/WebKeyValueStorageManager.h:
126         (WebKeyValueStorageManager):
127         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
128         (WebKit::WebDatabaseManager::supplementName):
129         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
130         (WebDatabaseManager):
131         * WebProcess/WebProcess.h:
132         (WebKit::WebProcess::addSupplement):
133         (WebProcess):
134
135 2013-02-01  Benjamin Poulain  <bpoulain@apple.com>
136
137         Clean the String->AtomicString conversion for AnimationController::pauseAnimationAtTime
138         https://bugs.webkit.org/show_bug.cgi?id=108558
139
140         Reviewed by Dean Jackson.
141
142         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
143         (WKBundleFramePauseAnimationOnElementWithId):
144         * WebProcess/WebPage/WebFrame.cpp:
145         (WebKit::WebFrame::pauseAnimationOnElementWithId):
146         * WebProcess/WebPage/WebFrame.h:
147         (WebFrame):
148
149 2013-02-01  Anders Carlsson  <andersca@apple.com>
150
151         More work on UI side storage
152         https://bugs.webkit.org/show_bug.cgi?id=108700
153
154         Reviewed by Sam Weinig.
155
156         * DerivedSources.make:
157         Add StorageManager.messages.in.
158
159         * Platform/CoreIPC/HandleMessage.h:
160         (CoreIPC::callMemberFunction):
161         Add new overload.
162
163         * UIProcess/Storage/StorageManager.cpp:
164         (WebKit::StorageManager::didReceiveMessageOnConnectionWorkQueue):
165         Call the right function.
166
167         (WebKit::StorageManager::createStorageArea):
168         (WebKit::StorageManager::destroyStorageArea):
169         Add stubs.
170
171         * UIProcess/Storage/StorageManager.messages.in: Added.
172         Add new messages files.
173
174         * WebKit2.xcodeproj/project.pbxproj:
175         Add new files.
176
177         * WebProcess/Storage/StorageAreaProxy.cpp:
178         (WebKit::StorageAreaProxy::~StorageAreaProxy):
179         Add another FIXME.
180
181         (WebKit::StorageAreaProxy::canAccessStorage):
182         (WebKit::StorageAreaProxy::incrementAccessCount):
183         (WebKit::StorageAreaProxy::decrementAccessCount):
184         Implement these.
185
186 2013-02-01  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
187
188         [Gtk] [WK2] Fix build after r141619
189         https://bugs.webkit.org/show_bug.cgi?id=108687
190
191         Reviewed by Benjamin Poulain.
192
193         Take a reference instead of a pointer for decoding functions.
194
195         * Platform/gtk/SharedMemoryGtk.cpp:
196         (WebKit::SharedMemory::Handle::decode):
197         * Shared/gtk/ArgumentCodersGtk.cpp:
198         (CoreIPC::decodeImage):
199         (CoreIPC::decodeDataObject):
200         (CoreIPC::::decode):
201         (CoreIPC::decodeGKeyFile):
202         (CoreIPC::decode):
203         * Shared/gtk/ArgumentCodersGtk.h:
204         * Shared/gtk/LayerTreeContextGtk.cpp:
205         (WebKit::LayerTreeContext::decode):
206
207 2013-02-01  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
208
209         [EFL] [WK2] Fix build after r141619
210         https://bugs.webkit.org/show_bug.cgi?id=108683
211
212         Reviewed by Benjamin Poulain.
213
214         Take a reference instead of a pointer for decoding functions.
215
216         * Shared/WebBatteryStatus.cpp:
217         (WebKit::WebBatteryStatus::Data::decode):
218         * Shared/WebBatteryStatus.h:
219         (Data):
220         * Shared/WebNetworkInfo.cpp:
221         (WebKit::WebNetworkInfo::Data::decode):
222         * Shared/WebNetworkInfo.h:
223         (Data):
224         * Shared/cairo/LayerTreeContextCairo.cpp:
225         (WebKit::LayerTreeContext::decode):
226         * Shared/efl/LayerTreeContextEfl.cpp:
227         (WebKit::LayerTreeContext::decode):
228         * Shared/soup/PlatformCertificateInfo.cpp:
229         (WebKit::PlatformCertificateInfo::decode):
230         * Shared/soup/PlatformCertificateInfo.h:
231         (PlatformCertificateInfo):
232         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
233         (CoreIPC::::decodePlatformData):
234
235 2013-02-01  Brady Eidson  <beidson@apple.com>
236
237         Clean up WebArchive loading with the NetworkProcess
238         <rdar://problem/12695840> and https://bugs.webkit.org/show_bug.cgi?id=108673
239
240         Reviewed by Alexey Proskuryakov.
241
242         * NetworkProcess/HostRecord.cpp:
243         (WebKit::HostRecord::servePendingRequestsForQueue):  Add new logging.
244         (WebKit::HostRecord::servePendingRequests): Tweak existing logging.
245
246         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
247         (WebKit::NetworkResourceLoadScheduler::servePendingRequests): Tweak existing logging.
248
249         * WebProcess/Network/WebResourceLoadScheduler.cpp:
250         (WebKit::WebResourceLoadScheduler::scheduleLoad): Handle archive resource scheduling better,
251           and add new logging to better explore archive loading behavior in the future.
252
253 2013-02-01  Caio Marcelo de Oliveira Filho  <caio.oliveira@openbossa.org>
254
255         [Qt] [WK2] Fix build after r141619
256         https://bugs.webkit.org/show_bug.cgi?id=108680
257
258         Reviewed by Benjamin Poulain.
259
260         Take a reference instead of a pointer for decoding functions.
261
262         * Platform/unix/SharedMemoryUnix.cpp:
263         (WebKit::SharedMemory::Handle::decode):
264         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
265         (CoreIPC::::decode):
266         (CoreIPC::decodeTimingFunction):
267         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
268         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
269         (WebKit::WebCoordinatedSurface::Handle::decode):
270         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
271         (Handle):
272         * Shared/qt/ArgumentCodersQt.cpp:
273         (CoreIPC::::decode):
274         * Shared/qt/ArgumentCodersQt.h:
275         (CoreIPC):
276         * Shared/qt/LayerTreeContextQt.cpp:
277         (WebKit::LayerTreeContext::decode):
278         * Shared/qt/PlatformCertificateInfo.h:
279         (WebKit::PlatformCertificateInfo::decode):
280         * Shared/qt/QtNetworkReplyData.cpp:
281         (WebKit::QtNetworkReplyData::decode):
282         * Shared/qt/QtNetworkReplyData.h:
283         (QtNetworkReplyData):
284         * Shared/qt/QtNetworkRequestData.cpp:
285         (WebKit::QtNetworkRequestData::decode):
286         * Shared/qt/QtNetworkRequestData.h:
287         (QtNetworkRequestData):
288         * Shared/qt/WebCoreArgumentCodersQt.cpp:
289         (CoreIPC::::decodePlatformData):
290
291 2013-02-01  Anders Carlsson  <andersca@apple.com>
292
293         Message decoding functions should take a MessageDecoder reference
294         https://bugs.webkit.org/show_bug.cgi?id=108669
295
296         Reviewed by Andreas Kling.
297
298         Message encoding functions already take a reference instead of a pointer, so
299         make the decoding functions take a reference as well.
300
301         * Platform/CoreIPC/ArgumentCoder.h:
302         (CoreIPC::ArgumentCoder::decode):
303         * Platform/CoreIPC/ArgumentCoders.cpp:
304         (CoreIPC::::decode):
305         (CoreIPC::decodeStringText):
306         * Platform/CoreIPC/ArgumentCoders.h:
307         (CoreIPC::SimpleArgumentCoder::decode):
308         * Platform/CoreIPC/ArgumentDecoder.h:
309         (CoreIPC::ArgumentDecoder::decode):
310         * Platform/CoreIPC/Arguments.h:
311         (CoreIPC::Arguments0::decode):
312         (CoreIPC::Arguments1::decode):
313         (CoreIPC::Arguments2::decode):
314         (CoreIPC::Arguments3::decode):
315         (CoreIPC::Arguments4::decode):
316         (CoreIPC::Arguments5::decode):
317         (CoreIPC::Arguments6::decode):
318         (CoreIPC::Arguments7::decode):
319         (CoreIPC::Arguments8::decode):
320         (CoreIPC::Arguments10::decode):
321         * Platform/CoreIPC/Attachment.cpp:
322         (CoreIPC::Attachment::decode):
323         * Platform/CoreIPC/Attachment.h:
324         (Attachment):
325         * Platform/CoreIPC/DataReference.cpp:
326         (CoreIPC::DataReference::decode):
327         * Platform/CoreIPC/DataReference.h:
328         (DataReference):
329         * Platform/CoreIPC/StringReference.cpp:
330         (CoreIPC::StringReference::decode):
331         * Platform/CoreIPC/StringReference.h:
332         (StringReference):
333         * Platform/CoreIPC/mac/MachPort.h:
334         (CoreIPC::MachPort::decode):
335         * Platform/SharedMemory.h:
336         (Handle):
337         * Platform/mac/SharedMemoryMac.cpp:
338         (WebKit::SharedMemory::Handle::decode):
339         * PluginProcess/PluginCreationParameters.cpp:
340         (WebKit::PluginCreationParameters::decode):
341         * PluginProcess/PluginCreationParameters.h:
342         (PluginCreationParameters):
343         * Shared/DictionaryPopupInfo.cpp:
344         (WebKit::DictionaryPopupInfo::decode):
345         * Shared/DictionaryPopupInfo.h:
346         (DictionaryPopupInfo):
347         * Shared/EditorState.cpp:
348         (WebKit::EditorState::decode):
349         * Shared/EditorState.h:
350         (EditorState):
351         * Shared/FontInfo.cpp:
352         (WebKit::FontInfo::decode):
353         * Shared/FontInfo.h:
354         (FontInfo):
355         * Shared/LayerTreeContext.h:
356         (LayerTreeContext):
357         * Shared/Network/NetworkProcessCreationParameters.cpp:
358         (WebKit::NetworkProcessCreationParameters::decode):
359         * Shared/Network/NetworkProcessCreationParameters.h:
360         (NetworkProcessCreationParameters):
361         * Shared/Network/NetworkResourceLoadParameters.cpp:
362         (WebKit::NetworkResourceLoadParameters::decode):
363         * Shared/Network/NetworkResourceLoadParameters.h:
364         (NetworkResourceLoadParameters):
365         * Shared/OriginAndDatabases.cpp:
366         (WebKit::OriginAndDatabases::decode):
367         * Shared/OriginAndDatabases.h:
368         (OriginAndDatabases):
369         * Shared/PlatformPopupMenuData.cpp:
370         (WebKit::PlatformPopupMenuData::decode):
371         * Shared/PlatformPopupMenuData.h:
372         (PlatformPopupMenuData):
373         * Shared/Plugins/NPIdentifierData.cpp:
374         (WebKit::NPIdentifierData::decode):
375         * Shared/Plugins/NPIdentifierData.h:
376         (NPIdentifierData):
377         * Shared/Plugins/NPVariantData.cpp:
378         (WebKit::NPVariantData::decode):
379         * Shared/Plugins/NPVariantData.h:
380         (NPVariantData):
381         * Shared/Plugins/PluginProcessCreationParameters.cpp:
382         (WebKit::PluginProcessCreationParameters::decode):
383         * Shared/Plugins/PluginProcessCreationParameters.h:
384         (PluginProcessCreationParameters):
385         * Shared/PrintInfo.cpp:
386         (WebKit::PrintInfo::decode):
387         * Shared/PrintInfo.h:
388         (PrintInfo):
389         * Shared/SandboxExtension.h:
390         (Handle):
391         (HandleArray):
392         (WebKit::SandboxExtension::Handle::decode):
393         (WebKit::SandboxExtension::HandleArray::decode):
394         * Shared/SecurityOriginData.cpp:
395         (WebKit::SecurityOriginData::decode):
396         * Shared/SecurityOriginData.h:
397         (SecurityOriginData):
398         * Shared/SessionState.cpp:
399         (WebKit::SessionState::decode):
400         * Shared/SessionState.h:
401         (SessionState):
402         * Shared/ShareableBitmap.cpp:
403         (WebKit::ShareableBitmap::Handle::decode):
404         * Shared/ShareableBitmap.h:
405         (Handle):
406         * Shared/ShareableResource.cpp:
407         (WebKit::ShareableResource::Handle::decode):
408         * Shared/ShareableResource.h:
409         (Handle):
410         * Shared/SharedWorkerProcessCreationParameters.cpp:
411         (WebKit::SharedWorkerProcessCreationParameters::decode):
412         * Shared/SharedWorkerProcessCreationParameters.h:
413         (SharedWorkerProcessCreationParameters):
414         * Shared/StatisticsData.cpp:
415         (WebKit::StatisticsData::decode):
416         * Shared/StatisticsData.h:
417         (StatisticsData):
418         * Shared/StringPairVector.h:
419         (WebKit::StringPairVector::decode):
420         * Shared/UpdateInfo.cpp:
421         (WebKit::UpdateInfo::decode):
422         * Shared/UpdateInfo.h:
423         (UpdateInfo):
424         * Shared/UserMessageCoders.h:
425         (WebKit::UserMessageDecoder::baseDecode):
426         * Shared/WebContextMenuItemData.cpp:
427         (WebKit::WebContextMenuItemData::decode):
428         * Shared/WebContextMenuItemData.h:
429         (WebContextMenuItemData):
430         * Shared/WebCoreArgumentCoders.cpp:
431         (CoreIPC::::decode):
432         (CoreIPC::decodeImage):
433         * Shared/WebCoreArgumentCoders.h:
434         * Shared/WebEvent.cpp:
435         (WebKit::WebEvent::decode):
436         * Shared/WebEvent.h:
437         (WebEvent):
438         (WebMouseEvent):
439         (WebWheelEvent):
440         (WebKeyboardEvent):
441         (WebGestureEvent):
442         (WebPlatformTouchPoint):
443         (WebTouchEvent):
444         * Shared/WebGeolocationPosition.cpp:
445         (WebKit::WebGeolocationPosition::Data::decode):
446         * Shared/WebGeolocationPosition.h:
447         (Data):
448         * Shared/WebGestureEvent.cpp:
449         (WebKit::WebGestureEvent::decode):
450         * Shared/WebHitTestResult.cpp:
451         (WebKit::WebHitTestResult::Data::decode):
452         * Shared/WebHitTestResult.h:
453         (Data):
454         * Shared/WebKeyboardEvent.cpp:
455         (WebKit::WebKeyboardEvent::decode):
456         * Shared/WebMouseEvent.cpp:
457         (WebKit::WebMouseEvent::decode):
458         * Shared/WebNavigationDataStore.h:
459         (WebKit::WebNavigationDataStore::decode):
460         * Shared/WebPageCreationParameters.cpp:
461         (WebKit::WebPageCreationParameters::decode):
462         * Shared/WebPageCreationParameters.h:
463         (WebPageCreationParameters):
464         * Shared/WebPageGroupData.cpp:
465         (WebKit::WebPageGroupData::decode):
466         * Shared/WebPageGroupData.h:
467         (WebPageGroupData):
468         * Shared/WebPlatformTouchPoint.cpp:
469         (WebKit::WebPlatformTouchPoint::decode):
470         * Shared/WebPopupItem.cpp:
471         (WebKit::WebPopupItem::decode):
472         * Shared/WebPopupItem.h:
473         * Shared/WebPreferencesStore.cpp:
474         (WebKit::WebPreferencesStore::decode):
475         * Shared/WebPreferencesStore.h:
476         (WebPreferencesStore):
477         * Shared/WebProcessCreationParameters.cpp:
478         (WebKit::WebProcessCreationParameters::decode):
479         * Shared/WebProcessCreationParameters.h:
480         (WebProcessCreationParameters):
481         * Shared/WebTouchEvent.cpp:
482         (WebKit::WebTouchEvent::decode):
483         * Shared/WebWheelEvent.cpp:
484         (WebKit::WebWheelEvent::decode):
485         * Shared/cf/ArgumentCodersCF.cpp:
486         (CoreIPC::decode):
487         * Shared/cf/ArgumentCodersCF.h:
488         (CoreIPC):
489         * Shared/mac/ArgumentCodersMac.h:
490         (CoreIPC):
491         * Shared/mac/ArgumentCodersMac.mm:
492         (CoreIPC::decode):
493         * Shared/mac/AttributedString.h:
494         (AttributedString):
495         * Shared/mac/AttributedString.mm:
496         (WebKit::AttributedString::decode):
497         * Shared/mac/ColorSpaceData.h:
498         (ColorSpaceData):
499         * Shared/mac/ColorSpaceData.mm:
500         (WebKit::ColorSpaceData::decode):
501         * Shared/mac/LayerTreeContextMac.mm:
502         (WebKit::LayerTreeContext::decode):
503         * Shared/mac/ObjCObjectGraphCoders.h:
504         (WebContextObjCObjectGraphDecoder):
505         (InjectedBundleObjCObjectGraphDecoder):
506         * Shared/mac/ObjCObjectGraphCoders.mm:
507         (WebKit::ObjCObjectGraphDecoder::baseDecode):
508         (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
509         (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
510         (WebKit::WebContextObjCObjectGraphDecoder::decode):
511         (WebKit::InjectedBundleObjCObjectGraphDecoder::decode):
512         * Shared/mac/PlatformCertificateInfo.h:
513         (PlatformCertificateInfo):
514         * Shared/mac/PlatformCertificateInfo.mm:
515         (WebKit::PlatformCertificateInfo::decode):
516         * Shared/mac/RemoteLayerTreeTransaction.h:
517         (LayerProperties):
518         (RemoteLayerTreeTransaction):
519         * Shared/mac/RemoteLayerTreeTransaction.mm:
520         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
521         (WebKit::RemoteLayerTreeTransaction::decode):
522         * Shared/mac/SandboxExtensionMac.mm:
523         (WebKit::SandboxExtension::Handle::decode):
524         (WebKit::SandboxExtension::HandleArray::decode):
525         * Shared/mac/SecItemRequestData.cpp:
526         (WebKit::SecItemRequestData::decode):
527         * Shared/mac/SecItemRequestData.h:
528         * Shared/mac/SecItemResponseData.cpp:
529         (WebKit::SecItemResponseData::decode):
530         * Shared/mac/SecItemResponseData.h:
531         (SecItemResponseData):
532         * Shared/mac/WebCoreArgumentCodersMac.mm:
533         (CoreIPC::::decodePlatformData):
534         (CoreIPC::::decode):
535         * UIProcess/WebContextUserMessageCoders.h:
536         (WebKit::WebContextUserMessageDecoder::decode):
537         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
538         (WebKit::InjectedBundleUserMessageDecoder::decode):
539         * WebProcess/Plugins/Plugin.cpp:
540         (WebKit::Plugin::Parameters::decode):
541         * WebProcess/Plugins/Plugin.h:
542         (Parameters):
543
544 2013-02-01  Carlos Garcia Campos  <cgarcia@igalia.com>
545
546         [GTK] Adapt WorkQueueGtk to the latest changes in WebKit2 after r141497
547         https://bugs.webkit.org/show_bug.cgi?id=108607
548
549         Reviewed by Anders Carlsson.
550
551         * Platform/gtk/WorkQueueGtk.cpp:
552         (WorkQueue::EventSource::executeEventSource): Remove the is valid
553         work queue check.
554         (WorkQueue::EventSource): WorkQueue is now refcounted, so keep a
555         reference when a new job is scheduled and unref it when it
556         finishes.
557
558 2013-02-01  Sheriff Bot  <webkit.review.bot@gmail.com>
559
560         Unreviewed, rolling out r141319.
561         http://trac.webkit.org/changeset/141319
562         https://bugs.webkit.org/show_bug.cgi?id=108629
563
564         This patch is causing the UIProcess to hang on GTK port when
565         loading plugins (Requested by chris-qBT_laptop on #webkit).
566
567         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
568         (WebKit::PluginProcessProxy::scanPlugin):
569
570 2013-02-01  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
571
572         [EFL][WK2] EwkContext should be based on C WK2 API
573         https://bugs.webkit.org/show_bug.cgi?id=107666
574
575         Reviewed by Andreas Kling.
576
577         EwkContext should be based on C WK2 API so that API layering is not violated.
578
579         * UIProcess/API/efl/EwkView.cpp:
580         (EwkView::EwkView):
581         * UIProcess/API/efl/ewk_context.cpp:
582         (EwkContext::EwkContext):
583         (EwkContext::create):
584         (EwkContext::cookieManager):
585         (EwkContext::ensureFaviconDatabase):
586         (EwkContext::setFaviconDatabaseDirectoryPath):
587         (EwkContext::addVisitedLink):
588         (EwkContext::setCacheModel):
589         (EwkContext::cacheModel):
590         (EwkContext::setAdditionalPluginPath):
591         (EwkContext::clearResourceCache):
592         * UIProcess/API/efl/ewk_context_private.h:
593         (EwkContext):
594         * UIProcess/API/efl/ewk_view.cpp:
595         (ewk_view_base_add):
596
597 2013-02-01  Christophe Dumez  <christophe.dumez@intel.com>
598
599         [EFL][WK2] Use C API inside ewk_auth_request
600         https://bugs.webkit.org/show_bug.cgi?id=107806
601
602         Reviewed by Andreas Kling.
603
604         Use C API inside ewk_auth_request instead of accessing C++ internal
605         classes directly, to avoid violating layering.
606
607         * UIProcess/API/efl/ewk_auth_request.cpp:
608         (EwkAuthRequest::EwkAuthRequest):
609         (EwkAuthRequest::suggestedUsername):
610         (EwkAuthRequest::realm):
611         (EwkAuthRequest::host):
612         (EwkAuthRequest::continueWithoutCredential):
613         (EwkAuthRequest::authenticate):
614         (EwkAuthRequest::isRetrying):
615         (ewk_auth_request_authenticate):
616         * UIProcess/API/efl/ewk_auth_request_private.h:
617         (EwkAuthRequest::create):
618         (EwkAuthRequest):
619         * UIProcess/efl/PageLoadClientEfl.cpp:
620         (WebKit::PageLoadClientEfl::didReceiveAuthenticationChallengeInFrame):
621
622 2013-02-01  Seulgi Kim  <seulgikim@company100.net>
623
624         [Gtk][WK2] Fix build after recent WebKit2 changes
625         https://bugs.webkit.org/show_bug.cgi?id=108588
626
627         Reviewed by Andreas Kling.
628
629         Don't remove WorkQueue during execution.
630         Following the logic on https://bugs.webkit.org/show_bug.cgi?id=108544
631
632         * Platform/gtk/WorkQueueGtk.cpp:
633         (WorkQueue::EventSource::~EventSource):
634         (WorkQueue::EventSource::executeEventSource):
635         (WorkQueue::dispatch):
636         (WorkQueue::dispatchAfterDelay):
637         (WorkQueue::dispatchOnTermination):
638
639 2013-02-01  Alexis Menard  <alexis@webkit.org>
640
641         Enable unprefixed CSS transitions by default.
642         https://bugs.webkit.org/show_bug.cgi?id=108216
643
644         Reviewed by Dean Jackson.
645
646         Rename the flag CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED
647         to CSS_TRANSFORMS_ANIMATIONS_UNPREFIXED which will be used later to 
648         guard the unprefixing work for CSS Transforms and animations.
649
650         * Configurations/FeatureDefines.xcconfig:
651
652 2013-02-01  Jae Hyun Park  <jae.park@company100.net>
653
654         Coordinated Graphics : Sort Target.pri and class declarations in alphabetical order.
655         https://bugs.webkit.org/show_bug.cgi?id=108590
656
657         Reviewed by Noam Rosenthal.
658
659         Sort class declarations in alphabetical order.
660
661         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
662         (WebCore):
663
664 2013-02-01  Gwang Yoon Hwang  <ryumiel@company100.net>
665
666         [EFL][WK2] MiniBrowser segfaults on loading google.com
667         https://bugs.webkit.org/show_bug.cgi?id=108597
668
669         Reviewed by Andreas Kling.
670
671         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
672         (CoreIPC::Connection::processMessage):
673         oolMessageBody should be properly initialized before it is used.
674
675         This patch also adds omitted break statement.
676
677 2013-01-31  Jae Hyun Park  <jae.park@company100.net>
678
679         [Qt] Add MessageFlags.h in Target.pri
680         https://bugs.webkit.org/show_bug.cgi?id=108583
681
682         Reviewed by Kentaro Hara.
683
684         Since MessageDecoder and MessageEncoder include MessageFlags.h, it
685         should be included in Target.pri.
686
687         * Target.pri:
688
689 2013-01-31  Jae Hyun Park  <jae.park@company100.net>
690
691         Coordinated Graphics : Move CoordinatedGraphics related files to WebCore
692         https://bugs.webkit.org/show_bug.cgi?id=108149
693
694         Reviewed by Noam Rosenthal.
695
696         This patch moves Coordinated Graphics related code to WebCore. To
697         implement Threaded Coordinated Graphics, most of Coordianted Graphics
698         code should be shared. Therefore, they should reside in WebCore instead of
699         WebKit2.
700
701         When moving to WebCore, two renamings have been done.
702
703         1. Rename LayerTreeRenderer to CoordinatedGraphicsScene.
704
705         2. Rename WebCustomFilterProgram and WebCustomFilterOperation to
706         CoordinatedCustomFilterProgram and CoordinatedCustomFilterOperation,
707         respectively.
708
709         No new tests, covered by existing tests.
710
711         * CMakeLists.txt:
712         * Scripts/webkit2/messages.py:
713         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
714         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
715         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
716         * Target.pri:
717         * UIProcess/API/efl/EwkView.cpp:
718         * UIProcess/API/efl/EwkView.h:
719         * UIProcess/API/qt/qquickwebpage.cpp:
720         * UIProcess/API/qt/raw/qrawwebview.cpp:
721         * UIProcess/API/qt/raw/qrawwebview_p.h:
722         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
723         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
724         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
725         * UIProcess/efl/PageClientBase.cpp:
726         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
727         * UIProcess/qt/QtWebPageSGNode.cpp:
728         * UIProcess/qt/QtWebPageSGNode.h:
729         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
730         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
731
732 2013-01-31  Rafael Brandao  <rafael.lobo@openbossa.org>
733
734         [Qt][WK2] Another attempt to fix build after recent WebKit2 changes
735         https://bugs.webkit.org/show_bug.cgi?id=108548
736
737         Reviewed by Anders Carlsson.
738
739         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
740         (CoreIPC::Connection::platformInvalidate):
741         (CoreIPC::Connection::processMessage): Change Deque to Vector and do similar
742         logic as on patch for https://bugs.webkit.org/show_bug.cgi?id=108517
743         (CoreIPC::Connection::open):
744         (CoreIPC::Connection::setShouldCloseConnectionOnProcessTermination):
745         * Platform/qt/WorkQueueQt.cpp: Reflect changes on Qt WorkQueue to increase ref
746         count when the execution is started and decrease it when the work item is deleted,
747         following the logic on https://bugs.webkit.org/show_bug.cgi?id=108544
748         (WorkQueue::WorkItemQt::~WorkItemQt):
749         (WorkQueue::WorkItemQt::execute):
750         (WorkQueue::dispatch):
751         (WorkQueue::dispatchAfterDelay):
752         * UIProcess/WebPageProxy.cpp:
753         (WebKit::WebPageProxy::getPluginPath): This function was moved from WebProcessProxy but
754         mac specific code was not protected properly: https://bugs.webkit.org/show_bug.cgi?id=108407
755
756 2013-01-31  Changhun Kang  <temoochin@company100.net>
757
758         Rename from parentOrHost* to parentOrShadowHost* in Node.h.
759         https://bugs.webkit.org/show_bug.cgi?id=108308
760
761         Reviewed by Dimitri Glazkov.
762
763 2013-01-31  Anders Carlsson  <andersca@apple.com>
764
765         StorageManager should be ref-counted
766         https://bugs.webkit.org/show_bug.cgi?id=108553
767
768         Reviewed by Beth Dakin.
769
770         It's likely we'd want to have the storage manager outlive its context at times, so make it
771         reference counted.
772
773         * UIProcess/Storage/StorageManager.cpp:
774         (WebKit::StorageManager::create):
775         (WebKit):
776         * UIProcess/Storage/StorageManager.h:
777         (StorageManager):
778         * UIProcess/WebContext.cpp:
779         (WebKit::WebContext::WebContext):
780         * UIProcess/WebContext.h:
781         (WebContext):
782
783 2013-01-31  Anders Carlsson  <andersca@apple.com>
784
785         WorkQueue should be a ref-counted class
786         https://bugs.webkit.org/show_bug.cgi?id=108544
787
788         Reviewed by Sam Weinig.
789
790         Make WorkQueue a ref-counted class that's implicitly ref()'d when dispatching a function to it, and then
791         implicitly deref()'d when the function is done executing. This matches the behavior of dispatch queues,
792         and ensures that the WorkQueue object won't go away while dispatched functions are running.
793
794         * Platform/CoreIPC/Connection.cpp:
795         (CoreIPC::Connection::Connection):
796         (CoreIPC::Connection::~Connection):
797         (CoreIPC::Connection::addQueueClient):
798         (CoreIPC::Connection::removeQueueClient):
799         (CoreIPC::Connection::invalidate):
800         (CoreIPC::Connection::sendMessage):
801         (CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
802         (CoreIPC::Connection::connectionDidClose):
803         * Platform/CoreIPC/Connection.h:
804         (Connection):
805         * Platform/CoreIPC/mac/ConnectionMac.cpp:
806         (CoreIPC::createDataAvailableSource):
807         (CoreIPC::Connection::open):
808         (CoreIPC::Connection::initializeDeadNameSource):
809         * Platform/WorkQueue.cpp:
810         (WorkQueue::create):
811         (WorkQueue::WorkQueue):
812         (WorkQueue::~WorkQueue):
813         * Platform/WorkQueue.h:
814         (WorkQueue):
815         * Platform/mac/WorkQueueMac.cpp:
816         (WorkQueue::dispatch):
817         (WorkQueue::dispatchAfterDelay):
818         * Shared/ChildProcess.cpp:
819         (WebKit::didCloseOnConnectionWorkQueue):
820         * UIProcess/Launcher/ProcessLauncher.cpp:
821         (WebKit::processLauncherWorkQueue):
822         (WebKit::ProcessLauncher::ProcessLauncher):
823         * UIProcess/WebProcessProxy.cpp:
824         (WebKit::pluginWorkQueue):
825         (WebKit::WebProcessProxy::getPlugins):
826
827 2013-01-31  Rafael Brandao  <rafael.lobo@openbossa.org>
828
829         [Qt][WK2] Fix build after removal of MessageID.h
830         https://bugs.webkit.org/show_bug.cgi?id=108534
831
832         Reviewed by Anders Carlsson.
833
834         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
835         (CoreIPC::MessageInfo::MessageInfo):
836         (CoreIPC::MessageInfo::setMessageBodyIsOutOfLine):
837         (CoreIPC::MessageInfo::isMessageBodyIsOutOfLine):
838         (MessageInfo):
839         (CoreIPC::Connection::processMessage):
840         (CoreIPC::Connection::sendOutgoingMessage):
841         * Target.pri:
842         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
843         * UIProcess/DrawingAreaProxy.cpp:
844         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
845         * WebProcess/soup/WebSoupRequestManager.cpp:
846
847 2013-01-31  Brady Eidson  <beidson@apple.com>
848
849         Assertion failure in WebResourceLoadScheduler::remove when loading .webarchives
850         <rdar://problem/12888145> and https://bugs.webkit.org/show_bug.cgi?id=108520
851
852         Reviewed by Alexey Proskuryakov.
853
854         * WebProcess/Network/WebResourceLoadScheduler.cpp:
855         (WebKit::WebResourceLoadScheduler::scheduleLoad): Even if it isn't to be scheduled with the
856           NetworkProcess, still add this ResourceLoader to the scheduler's records.
857
858 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
859
860         Unreviewed trivial Unix build fix.
861
862         Use Vector<> instead of Deque<> when iterating
863         over m_attachments in the USE(UNIX_DOMAIN_SOCKETS)
864         case.
865
866         * Platform/CoreIPC/ArgumentDecoder.cpp:
867
868 2013-01-30  Brian Weinstein  <bweinstein@apple.com>
869
870         Add a call to the page UI client to determine if a plug-in should load
871         https://bugs.webkit.org/show_bug.cgi?id=108407
872         <rdar://problem/13066332>
873
874         Reviewed by Anders Carlsson.
875
876         This patch adds a client call to the WKPageUIClient to be called to determine
877         whether or not a plug-in should load.
878
879         * UIProcess/API/C/WKPage.h: Add shouldLoadPlugin.
880         * UIProcess/WebPageProxy.cpp:
881         (WebKit::WebPageProxy::getPluginPath): Moved from WebProcessProxy, and added a call to
882             m_uiClient.shouldInstantiatePlugin.
883         * UIProcess/WebPageProxy.h:
884         * UIProcss/WebPageProxy.messages.in: Moved GetPluginPath from WebProcessProxy to WebPageProxy.
885         * UIProcess/WebProcessProxy.cpp:
886         (WebKit::WebProcessProxy::getPluginPath): Moved to WebPageProxy.
887         * UIProcess/WebProcessProxy.h:
888         * UIProcess/WebUIClient.cpp:
889         (WebKit::WebUIClient::shouldInstantiatePlugin): Return that we should load the plug-in if
890             the client function isn't defined, and call the function if it is.
891         * UIProcess/WebUIClient.h:
892         * UIProcess/mac/WebInspectorProxyMac.mm:
893         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Add an entry for the new
894             client function.
895         * WebProcess/WebPage/WebPage.cpp:
896         (WebKit::WebPage::createPlugin): Send the message to the WebPageProxy, not the WebProcessProxy.
897         (WebKit::WebPage::canPluginHandleResponse): Made a member function, so it can call sendSync, and
898             send the message to the WebPageProxy, not the WebProcessProxy.
899         * WebProcess/WebPage/WebPage.h:
900
901 2013-01-31  Anders Carlsson  <andersca@apple.com>
902
903         Use a Vector for IPC attachments
904         https://bugs.webkit.org/show_bug.cgi?id=108517
905
906         Reviewed by Sam Weinig.
907
908         We don't need to use a Deque for attachments - we can just deserialize the attachments backwards instead.
909
910         * Platform/CoreIPC/ArgumentDecoder.cpp:
911         (CoreIPC::ArgumentDecoder::create):
912         (CoreIPC::ArgumentDecoder::ArgumentDecoder):
913         (CoreIPC::ArgumentDecoder::removeAttachment):
914         * Platform/CoreIPC/ArgumentDecoder.h:
915         (ArgumentDecoder):
916         * Platform/CoreIPC/Connection.h:
917         * Platform/CoreIPC/MessageDecoder.cpp:
918         (CoreIPC::MessageDecoder::create):
919         (CoreIPC::MessageDecoder::MessageDecoder):
920         * Platform/CoreIPC/MessageDecoder.h:
921         (MessageDecoder):
922         * Platform/CoreIPC/mac/ConnectionMac.cpp:
923         (CoreIPC::createMessageDecoder):
924
925 2013-01-31  Joseph Pecoraro  <pecoraro@apple.com>
926
927         Disable ENABLE_FULLSCREEN_API on iOS
928         https://bugs.webkit.org/show_bug.cgi?id=108250
929
930         Reviewed by Benjamin Poulain.
931
932         * Configurations/FeatureDefines.xcconfig:
933
934 2013-01-31  Enrica Casucci  <enrica@apple.com>
935
936         WebKit2: provide new bundle APIs to allow bundle clients to be notified of pasteboard access.
937         https://bugs.webkit.org/show_bug.cgi?id=108396.
938         <rdar://problem/12920461>
939
940         Reviewed by Alexey Proskuryakov.
941
942         This patch adds new bundle client API to receive notifications
943         relative the pasteboard activity. There are 2 new API added to
944         InjectedBundleEditorClient, to receive notification before and
945         after the pasteboard content is added and one API to provide
946         additional content to add to the pasteboard.
947         In order to create content to add to the pasteboard, WKWebArchiveRef
948         and WKWebArchiveResourcesRef have been added to the set of API level
949         object.
950         This work is a joint effort with Sam Weinig who contributed the
951         support for WKWebArchiveRef, WKWebArchiveResourcesRef and related
952         files. Sam is the author of the first chunk of changes listed below.
953         
954         * Shared/API/c/WKBase.h:
955         * Shared/API/c/WKSharedAPICast.h:
956         * Shared/API/c/mac/WKWebArchive.cpp: Added.
957         (WKWebArchiveGetTypeID):
958         (WKWebArchiveCreate):
959         (WKWebArchiveCreateWithData):
960         (WKWebArchiveCreateFromRange):
961         (WKWebArchiveCopyMainResource):
962         (WKWebArchiveCopySubresources):
963         (WKWebArchiveCopySubframeArchives):
964         (WKWebArchiveCopyData):
965         * Shared/API/c/mac/WKWebArchive.h: Added.
966         * Shared/API/c/mac/WKWebArchiveResource.cpp: Added.
967         (WKWebArchiveResourceGetTypeID):
968         (WKWebArchiveResourceCreate):
969         (WKWebArchiveResourceCopyData):
970         (WKWebArchiveResourceCopyURL):
971         (WKWebArchiveResourceCopyMIMEType):
972         (WKWebArchiveResourceCopyTextEncoding):
973         * Shared/API/c/mac/WKWebArchiveResource.h: Added.
974         * Shared/APIObject.h:
975         * Shared/WebArchive.cpp: Added.
976         (WebKit::WebArchive::create):
977         (WebKit::WebArchive::WebArchive):
978         (WebKit::WebArchive::~WebArchive):
979         (WebKit::WebArchive::mainResource):
980         (WebKit::WebArchive::subresources):
981         (WebKit::WebArchive::subframeArchives):
982         (WebKit::releaseCFData):
983         (WebKit::WebArchive::data):
984         (WebKit::WebArchive::coreLegacyWebArchive):
985         * Shared/WebArchive.h: Added.
986         (WebKit::WebArchive::type):
987         * Shared/WebArchiveResource.cpp: Added.
988         (WebKit::WebArchiveResource::create):
989         (WebKit::WebArchiveResource::WebArchiveResource):
990         (WebKit::WebArchiveResource::~WebArchiveResource):
991         (WebKit::releaseCFData):
992         (WebKit::WebArchiveResource::data):
993         (WebKit::WebArchiveResource::URL):
994         (WebKit::WebArchiveResource::MIMEType):
995         (WebKit::WebArchiveResource::textEncoding):
996         (WebKit::WebArchiveResource::coreArchiveResource):
997         * Shared/WebArchiveResource.h: Added.
998         (WebKit::WebArchiveResource::type):
999         * WebKit2.xcodeproj/project.pbxproj:
1000         
1001         * Shared/APIClientTraits.cpp: Added versioning to InjectedBundlePageEditorClient.
1002         * Shared/APIClientTraits.h:
1003         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1004         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
1005         (WebKit::InjectedBundlePageEditorClient::willWriteToPasteboard): Added.
1006         (WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange): Added.
1007         (WebKit::InjectedBundlePageEditorClient::didWriteToPasteboard): Added.
1008         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
1009         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1010         (WebKit::WebEditorClient::didWriteSelectionToPasteboard):
1011         (WebKit::WebEditorClient::willWriteSelectionToPasteboard):
1012         (WebKit::WebEditorClient::getClientPasteboardDataForRange):
1013         * WebProcess/WebCoreSupport/WebEditorClient.h:
1014
1015 2013-01-31  Anders Carlsson  <andersca@apple.com>
1016
1017         Remove MessageID.h
1018         https://bugs.webkit.org/show_bug.cgi?id=108516
1019
1020         Reviewed by Sam Weinig.
1021
1022         * Platform/CoreIPC/Connection.cpp:
1023         (CoreIPC::Connection::processIncomingMessage):
1024         (CoreIPC::Connection::sendOutgoingMessages):
1025         (CoreIPC::Connection::dispatchSyncMessage):
1026         (CoreIPC::Connection::dispatchMessage):
1027         * Platform/CoreIPC/Connection.h:
1028         (CoreIPC):
1029         (Connection):
1030         * Platform/CoreIPC/MessageID.h: Removed.
1031         * Platform/CoreIPC/mac/ConnectionMac.cpp:
1032         (CoreIPC::Connection::sendOutgoingMessage):
1033         (CoreIPC::Connection::receiveSourceEventHandler):
1034         * Shared/CoreIPCSupport/WebConnectionMessageKinds.h: Removed.
1035         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
1036         * UIProcess/DrawingAreaProxy.h:
1037         (CoreIPC):
1038         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1039         * UIProcess/WebApplicationCacheManagerProxy.h:
1040         * UIProcess/WebContext.cpp:
1041         (WebKit::WebContext::WebContext):
1042         (WebKit::WebContext::didReceiveMessage):
1043         (WebKit::WebContext::didReceiveSyncMessage):
1044         * UIProcess/WebCookieManagerProxy.h:
1045         * UIProcess/WebFrameProxy.h:
1046         (CoreIPC):
1047         * UIProcess/WebFullScreenManagerProxy.h:
1048         (CoreIPC):
1049         * UIProcess/WebIconDatabase.h:
1050         (CoreIPC):
1051         * UIProcess/WebPageProxy.cpp:
1052         * UIProcess/WebPageProxy.h:
1053         (CoreIPC):
1054         * WebKit2.xcodeproj/project.pbxproj:
1055         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1056         * WebProcess/FullScreen/WebFullScreenManager.h:
1057         (CoreIPC):
1058         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1059         (WebKit::InjectedBundle::postMessage):
1060         (WebKit::InjectedBundle::postSynchronousMessage):
1061         * WebProcess/InjectedBundle/InjectedBundle.h:
1062         (CoreIPC):
1063         * WebProcess/WebPage/DrawingArea.h:
1064         (CoreIPC):
1065         * WebProcess/WebPage/LayerTreeHost.h:
1066         (CoreIPC):
1067         * WebProcess/WebPage/WebPage.cpp:
1068         * WebProcess/WebPage/WebPage.h:
1069         (CoreIPC):
1070         * WebProcess/WebPage/WebPageGroupProxy.h:
1071         (CoreIPC):
1072
1073 2013-01-31  Mike West  <mkwst@chromium.org>
1074
1075         Cleanup: Use ScriptExecutionContext::topOrigin when relevant.
1076         https://bugs.webkit.org/show_bug.cgi?id=108476
1077
1078         Reviewed by Anders Carlsson.
1079
1080         * WebProcess/Plugins/PluginView.cpp:
1081         (WebKit::PluginView::storageBlockingStateChanged):
1082         (WebKit::PluginView::isPrivateBrowsingEnabled):
1083
1084 2013-01-31  Anders Carlsson  <andersca@apple.com>
1085
1086         Get rid of IncomingMessage
1087         https://bugs.webkit.org/show_bug.cgi?id=108514
1088
1089         Reviewed by Sam Weinig.
1090
1091         * Platform/CoreIPC/Connection.cpp:
1092         (Connection::SyncMessageState):
1093         (ConnectionAndIncomingMessage):
1094         (CoreIPC::Connection::SyncMessageState::~SyncMessageState):
1095         (CoreIPC::Connection::SyncMessageState::processIncomingMessage):
1096         (CoreIPC::Connection::SyncMessageState::dispatchMessages):
1097         (CoreIPC::Connection::waitForMessage):
1098         (CoreIPC::Connection::processIncomingMessage):
1099         (CoreIPC::Connection::enqueueIncomingMessage):
1100         (CoreIPC::Connection::dispatchMessage):
1101         (CoreIPC::Connection::dispatchOneMessage):
1102         * Platform/CoreIPC/Connection.h:
1103         (Connection):
1104
1105 2013-01-31  Patrick Gansterer  <paroga@webkit.org>
1106
1107         Remove PLATFORM(WIN_CAIRO) from NetscapePluginX11.cpp
1108         https://bugs.webkit.org/show_bug.cgi?id=108439
1109
1110         Reviewed by Brent Fulgham.
1111
1112         PLATFORM(WIN_CAIRO) is Windows only, where no X11 exists.
1113
1114         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
1115
1116 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
1117
1118         Unreviewed build fix: Remove Web Intents files from
1119         the Qt build system.
1120
1121         * Target.pri:
1122
1123 2013-01-31  Zan Dobersek  <zdobersek@igalia.com>
1124
1125         Unreviewed GTK build fix.
1126         Removing build targets for Web Intents files that were removed in r141448.
1127
1128         * GNUmakefile.list.am:
1129
1130 2013-01-31  Anders Carlsson  <andersca@apple.com>
1131
1132         Remove Web Intents code from WebKit2
1133         https://bugs.webkit.org/show_bug.cgi?id=108506
1134
1135         Reviewed by Simon Fraser.
1136
1137         Since nobody builds with Web Intents enabled anymore, and since the code is going to 
1138         be removed from WebCore, remove it from WebKit2.
1139
1140         * Shared/API/c/WKBase.h:
1141         * Shared/APIClientTraits.cpp:
1142         (WebKit):
1143         * Shared/APIObject.h:
1144         * Shared/IntentData.cpp: Removed.
1145         * Shared/IntentData.h: Removed.
1146         * Shared/IntentServiceInfo.cpp: Removed.
1147         * Shared/IntentServiceInfo.h: Removed.
1148         * Shared/WebIntentServiceInfo.cpp: Removed.
1149         * Shared/WebIntentServiceInfo.h: Removed.
1150         * UIProcess/API/C/WKAPICast.h:
1151         (WebKit):
1152         * UIProcess/API/C/WKIntentData.cpp: Removed.
1153         * UIProcess/API/C/WKIntentData.h: Removed.
1154         * UIProcess/API/C/WKIntentServiceInfo.cpp: Removed.
1155         * UIProcess/API/C/WKIntentServiceInfo.h: Removed.
1156         * UIProcess/API/C/WKPage.cpp:
1157         * UIProcess/API/C/WKPage.h:
1158         * UIProcess/WebIntentData.cpp: Removed.
1159         * UIProcess/WebIntentData.h: Removed.
1160         * UIProcess/WebLoaderClient.cpp:
1161         * UIProcess/WebLoaderClient.h:
1162         (WebKit):
1163         (WebLoaderClient):
1164         * UIProcess/WebPageProxy.cpp:
1165         * UIProcess/WebPageProxy.h:
1166         (WebKit):
1167         (WebPageProxy):
1168         * UIProcess/WebPageProxy.messages.in:
1169         * UIProcess/WebProcessProxy.cpp:
1170         * UIProcess/WebProcessProxy.h:
1171         (WebProcessProxy):
1172         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
1173         (WebKit):
1174         * WebProcess/InjectedBundle/API/c/WKBundleIntent.cpp: Removed.
1175         * WebProcess/InjectedBundle/API/c/WKBundleIntent.h: Removed.
1176         * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.cpp: Removed.
1177         * WebProcess/InjectedBundle/API/c/WKBundleIntentRequest.h: Removed.
1178         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1179         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1180         * WebProcess/InjectedBundle/InjectedBundleIntent.cpp: Removed.
1181         * WebProcess/InjectedBundle/InjectedBundleIntent.h: Removed.
1182         * WebProcess/InjectedBundle/InjectedBundleIntentRequest.cpp: Removed.
1183         * WebProcess/InjectedBundle/InjectedBundleIntentRequest.h: Removed.
1184         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1185         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1186         (WebKit):
1187         (InjectedBundlePageLoaderClient):
1188         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1189         (WebKit):
1190         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1191         (WebFrameLoaderClient):
1192         * WebProcess/WebPage/WebFrame.cpp:
1193         * WebProcess/WebPage/WebFrame.h:
1194         (WebCore):
1195         (WebKit):
1196         (WebFrame):
1197         * WebProcess/WebPage/WebPage.cpp:
1198         * WebProcess/WebPage/WebPage.h:
1199         (WebCore):
1200         (WebKit):
1201         (WebPage):
1202         * WebProcess/WebPage/WebPage.messages.in:
1203         * WebProcess/WebProcess.cpp:
1204         * WebProcess/WebProcess.h:
1205         (WebCore):
1206         (WebProcess):
1207         * WebProcess/WebProcess.messages.in:
1208
1209 2013-01-31  Brady Eidson  <beidson@apple.com>
1210
1211         Lack of a log level string should not obliterate compiled in logging channel state.
1212         https://bugs.webkit.org/show_bug.cgi?id=108502
1213
1214         Reviewed by Alexey Proskuryakov and Sam Weinig.
1215
1216         * Platform/mac/Logging.mac.mm:
1217         (WebKit::initializeLogChannel): If there's no log level string, leave the channel state alone.
1218
1219 2013-01-31  Alexey Proskuryakov  <ap@apple.com>
1220
1221         WebProcess sandbox profile overhaul.
1222
1223         Reviewed by Sam Weinig.
1224
1225         Moves some rules together by susbystem for easier maintenance.
1226
1227         Addresses <rdar://problem/9276393>, <rdar://problem/10844321>, <rdar://problem/12408537>,
1228         <rdar://problem/12558524>.
1229
1230         * WebProcess/com.apple.WebProcess.sb.in:
1231
1232 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
1233
1234         Unreviewed trivial build fix: Pre C++11 the use of
1235         >> in nested templates is ambiguous in the grammar and
1236         requires the insertion of a space here. Since these files are
1237         not Mac specific we don't require C++11 yet and a space
1238         fixes the build.
1239
1240         * Platform/CoreIPC/Connection.h:
1241         (Connection):
1242         * Shared/ChildProcessProxy.h:
1243         (ChildProcessProxy):
1244
1245 2013-01-31  Christophe Dumez  <dchris@gmail.com>
1246
1247         [EFL] Disable Web Intents
1248         https://bugs.webkit.org/show_bug.cgi?id=108457
1249
1250         Reviewed by Alexey Proskuryakov.
1251
1252         Remove code related to Web Intents from EFL
1253         WebKit2.
1254
1255         * CMakeLists.txt:
1256         * PlatformEfl.cmake:
1257         * UIProcess/API/efl/EWebKit2.h:
1258         * UIProcess/API/efl/EwkViewCallbacks.h:
1259         * UIProcess/API/efl/ewk_intent.cpp: Removed.
1260         * UIProcess/API/efl/ewk_intent.h: Removed.
1261         * UIProcess/API/efl/ewk_intent_private.h: Removed.
1262         * UIProcess/API/efl/ewk_intent_service.cpp: Removed.
1263         * UIProcess/API/efl/ewk_intent_service.h: Removed.
1264         * UIProcess/API/efl/ewk_intent_service_private.h: Removed.
1265         * UIProcess/API/efl/ewk_view.cpp:
1266         * UIProcess/API/efl/ewk_view.h:
1267         * UIProcess/API/efl/tests/resources/intent-request.html: Removed.
1268         * UIProcess/API/efl/tests/resources/intent-service.html: Removed.
1269         * UIProcess/API/efl/tests/test_ewk2_intents.cpp: Removed.
1270         * UIProcess/efl/PageLoadClientEfl.cpp:
1271         (WebKit::PageLoadClientEfl::PageLoadClientEfl):
1272         * UIProcess/efl/PageLoadClientEfl.h:
1273         (PageLoadClientEfl):
1274
1275 2013-01-31  Alexey Proskuryakov  <ap@apple.com>
1276
1277         <rdar://problem/12695827> PPT: Make loading file URLs work with a sandboxed NetworkProcess
1278
1279         Address review comments.
1280
1281         * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
1282         * WebProcess/com.apple.WebProcess.sb.in:
1283
1284 2013-01-31  Anders Carlsson  <andersca@apple.com>
1285
1286         Stop using OutgoingMessage
1287         https://bugs.webkit.org/show_bug.cgi?id=108495
1288
1289         Reviewed by Sam Weinig.
1290
1291         * Platform/CoreIPC/Connection.cpp:
1292         (CoreIPC::Connection::sendMessage):
1293         (CoreIPC::Connection::sendOutgoingMessages):
1294         * Platform/CoreIPC/Connection.h:
1295         (Connection):
1296         * Shared/ChildProcessProxy.cpp:
1297         (WebKit::ChildProcessProxy::~ChildProcessProxy):
1298         (WebKit::ChildProcessProxy::sendMessage):
1299         (WebKit::ChildProcessProxy::didFinishLaunching):
1300         * Shared/ChildProcessProxy.h:
1301         (ChildProcessProxy):
1302
1303 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
1304
1305         [Qt] Make it possible to compile WebKit2 Qt related files without access to internal WK2 C++ API
1306         https://bugs.webkit.org/show_bug.cgi?id=108472
1307
1308         Reviewed by Andreas Kling.
1309
1310         Add a new module to the qmake build system that represents the part of the WebKit2 Qt integration
1311         that doesn't depend on WebKit2 internals.
1312
1313         Changed qwebnavigationhistory.cpp to not use any internal headers and compile it as part of the
1314         internals-free module.
1315
1316         * Target.pri:
1317         * UIProcess/API/qt/qwebnavigationhistory.cpp:
1318         * WebKit2.pro:
1319         * WebKit2QML.pri: Added.
1320
1321 2013-01-31  Simon Hausmann  <simon.hausmann@digia.com>
1322
1323         Unreviewed trivial build fix: Add missing virtual destructor to
1324         LayerTreeRendererClient. Otherwise the build with -Werror breaks, which
1325         complains (rightly so) that we're deleting a sub-class where the super class
1326         doesn't have a virtual destructor.
1327
1328         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1329         (WebKit::LayerTreeRendererClient::~LayerTreeRendererClient):
1330
1331 2013-01-31  Seulgi Kim  <seulgikim@company100.net>
1332
1333         Coordinated Graphics: view the debug border/repaint count of the non composited layer.
1334         https://bugs.webkit.org/show_bug.cgi?id=108401
1335
1336         Reviewed by Noam Rosenthal.
1337
1338         Make non-compositing layer draw debug border and show repaint counter
1339         accroding to settings.
1340
1341         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1342         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
1343
1344 2013-01-31  Paweł Forysiuk  <tuxator@o2.pl>
1345
1346         InjectedBundle is being built even with --disable-webkit2
1347         https://bugs.webkit.org/show_bug.cgi?id=108364
1348
1349         Reviewed by Gustavo Noronha Silva.
1350
1351         * GNUmakefile.am: Wrap Injected bundle with ENABLE_WEBKIT2 condition
1352
1353 2013-01-31  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1354
1355         [EFL][WK2] RequestManagerClientEfl, DownloadManagerEfl and ContextHistoryClientEfl should be based on C API
1356         https://bugs.webkit.org/show_bug.cgi?id=107685
1357
1358         Reviewed by Benjamin Poulain.
1359
1360         RequestManagerClientEfl, DownloadManagerEfl and ContextHistoryClientEfl
1361         should be based on C API so that API layering is not violated.
1362
1363         * UIProcess/API/efl/ewk_context.cpp:
1364         (EwkContext::EwkContext):
1365         * UIProcess/efl/ContextHistoryClientEfl.cpp:
1366         (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
1367         (WebKit::ContextHistoryClientEfl::~ContextHistoryClientEfl):
1368         * UIProcess/efl/ContextHistoryClientEfl.h:
1369         (WebKit::ContextHistoryClientEfl::create):
1370         (ContextHistoryClientEfl):
1371         * UIProcess/efl/DownloadManagerEfl.cpp:
1372         (WebKit::DownloadManagerEfl::DownloadManagerEfl):
1373         (WebKit::DownloadManagerEfl::~DownloadManagerEfl):
1374         * UIProcess/efl/DownloadManagerEfl.h:
1375         (WebKit::DownloadManagerEfl::create):
1376         (DownloadManagerEfl):
1377         * UIProcess/efl/RequestManagerClientEfl.cpp:
1378         (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):
1379         * UIProcess/efl/RequestManagerClientEfl.h:
1380         (WebKit::RequestManagerClientEfl::create):
1381         (RequestManagerClientEfl):
1382
1383 2013-01-31  Sheriff Bot  <webkit.review.bot@gmail.com>
1384
1385         Unreviewed, rolling out r141110.
1386         http://trac.webkit.org/changeset/141110
1387         https://bugs.webkit.org/show_bug.cgi?id=108349
1388
1389         This patch broke WK2-EFL unit tests (Requested by grzegorz on
1390         #webkit).
1391
1392         * UIProcess/efl/TextCheckerEfl.cpp:
1393         * WebProcess/WebCoreSupport/WebEditorClient.h:
1394         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
1395
1396 2013-01-31  Jae Hyun Park  <jae.park@company100.net>
1397
1398         Coordinated Graphics : Remove WebCoordinatedSurface dependency from CoordinatedSurface
1399         https://bugs.webkit.org/show_bug.cgi?id=108259
1400
1401         Reviewed by Noam Rosenthal.
1402
1403         This is a preparation patch for Threaded Coordinated Graphics.
1404
1405         WebCoordinatedSurface dependency should be removed from
1406         CoordinatedSurface so as to share CoordinatedSurface between
1407         WebCoordinatedSurface and CoordinatedSurface of WebKit1, which will be
1408         implemented for Threaded Coordinated Graphics.
1409
1410         This patch introduces CoordinatedSurface::Factory, which is a function
1411         pointer that creates CoordinatedSurfaces. CoordinatedLayerTreeHost sets
1412         static CoordinatedSurface::Factory member variable. Classes that use
1413         CoordinatedSurface, which are CoordinatedImageBacking and UpdateAtlas,
1414         create CoordinatedSurfaces by calling CoordinatedSurface::create, which
1415         will call the function set by CoordinatedLayerTreeHost.
1416
1417         This way, we can remove the WebCoordinatedSurface dependency from
1418         CoordinatedSurface and be able to share the code in Threaded Coordinated
1419         Graphics.
1420
1421         No new tests. No change in behavior.
1422
1423         * CMakeLists.txt:
1424         * Shared/CoordinatedGraphics/CoordinatedSurface.cpp: Added.
1425         (WebKit):
1426         (WebKit::CoordinatedSurface::setFactory):
1427         (WebKit::CoordinatedSurface::create):
1428         * Shared/CoordinatedGraphics/CoordinatedSurface.h:
1429         (CoordinatedSurface):
1430         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
1431         * Target.pri:
1432         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1433         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
1434         (WebKit::CoordinatedLayerTreeHost::createCoordinatedSurface):
1435         (WebKit):
1436         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1437
1438 2013-01-30  Tim Horton  <timothy_horton@apple.com>
1439
1440         Unreviewed build fix after http://trac.webkit.org/changeset/141372.
1441
1442         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1443         (WebKit::PDFPlugin::performDictionaryLookupAtLocation):
1444
1445 2013-01-30  Jae Hyun Park  <jae.park@company100.net>
1446
1447         Coordinated Graphics : Remove CoordinatedLayerTreeHostProxy dependency from LayerTreeRenderer
1448         https://bugs.webkit.org/show_bug.cgi?id=108164
1449
1450         Reviewed by Benjamin Poulain.
1451
1452         This is a preparation patch for Threaded Coordinated Graphics.
1453
1454         LayerTreeRenderer should not depend on CoordinatedLayerTreeHostProxy so that it
1455         can be moved to WebCore.  This patch introduces LayerTreeRendererClient which
1456         is implemented in CoordinatedLayerTreeHostProxy. LayerTreeRenderer uses this
1457         client, instead of using CoordinatedLayerTreeHostProxy directly.
1458
1459         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1460         (CoordinatedLayerTreeHostProxy):
1461         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1462         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
1463         (WebKit::LayerTreeRenderer::animationFrameReady):
1464         (WebKit::LayerTreeRenderer::updateViewport):
1465         (WebKit::LayerTreeRenderer::renderNextFrame):
1466         (WebKit::LayerTreeRenderer::purgeBackingStores):
1467         (WebKit::LayerTreeRenderer::detach):
1468         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1469         (WebKit):
1470         (LayerTreeRendererClient):
1471         (LayerTreeRenderer):
1472
1473 2013-01-30  Tim Horton  <timothy_horton@apple.com>
1474
1475         PDFPlugin: Should respond to three-finger tap for dictionary definitions
1476         https://bugs.webkit.org/show_bug.cgi?id=108418
1477         <rdar://problem/13121409>
1478
1479         Reviewed by Simon Fraser.
1480
1481         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Add default implementation of performDictionaryLookupAtLocation.
1482         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add getSelectionForWordAtPoint and searchInDictionaryWithSelection.
1483         * WebProcess/Plugins/PDF/PDFPlugin.h: Add performDictionaryLookupAtLocation.
1484         * WebProcess/Plugins/PDF/PDFPlugin.mm: Grab a PDFSelection representing the word encompassing the given point, and
1485         throw up a dictionary popover.
1486         (WebKit::PDFPlugin::performDictionaryLookupAtLocation):
1487         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:  Add default implementation of performDictionaryLookupAtLocation.
1488         * WebProcess/Plugins/Plugin.h:  Add performDictionaryLookupAtLocation.
1489         * WebProcess/Plugins/PluginProxy.h: Add default implementation of performDictionaryLookupAtLocation.
1490         * WebProcess/Plugins/PluginView.cpp: 
1491         (WebKit::PluginView::performDictionaryLookupAtLocation): Forward performDictionaryLookupAtLocation to the plugin.
1492         * WebProcess/Plugins/PluginView.h: Add performDictionaryLookupAtLocation.
1493         * WebProcess/WebPage/mac/WebPageMac.mm:
1494         (WebKit::WebPage::performDictionaryLookupAtLocation): Intercept performDictionaryLookupAtLocation, and give
1495         the main-frame plugin (if it exists) a chance to handle it.
1496
1497 2013-01-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1498
1499         [WK2] Cleanup MessageID parameter after r141332
1500         https://bugs.webkit.org/show_bug.cgi?id=108419
1501
1502         Unreviewed to fix build breaks.
1503
1504         r141332 didn't remove MessageID parameter on some features.
1505         (battery, vibration, coordinate graphics, network info and so on)
1506
1507         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1508         (CoordinatedLayerTreeHostProxy):
1509         * UIProcess/DrawingAreaProxyImpl.cpp:
1510         (WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
1511         * UIProcess/WebBatteryManagerProxy.h:
1512         (WebBatteryManagerProxy):
1513         * UIProcess/WebNetworkInfoManagerProxy.h:
1514         (WebNetworkInfoManagerProxy):
1515         * UIProcess/WebPageProxy.cpp:
1516         (WebKit::WebPageProxy::didReceiveMessage):
1517         * UIProcess/WebVibrationProxy.h:
1518         (WebVibrationProxy):
1519         * UIProcess/soup/WebSoupRequestManagerProxy.h:
1520         (WebSoupRequestManagerProxy):
1521         * WebProcess/Battery/WebBatteryManager.h:
1522         (WebBatteryManager):
1523         * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
1524         (WebNetworkInfoManager):
1525         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1526         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1527         (WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):
1528         * WebProcess/WebPage/WebPage.cpp:
1529         (WebKit::WebPage::didReceiveMessage):
1530         * WebProcess/soup/WebSoupRequestManager.h:
1531         (WebSoupRequestManager):
1532
1533 2013-01-30  Anders Carlsson  <andersca@apple.com>
1534
1535         Remove MessageID from MessageSender
1536         https://bugs.webkit.org/show_bug.cgi?id=108413
1537
1538         Reviewed by Andreas Kling.
1539
1540         This is another step towards eliminating MessageID.
1541
1542         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1543         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
1544         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
1545         * NetworkProcess/NetworkConnectionToWebProcess.h:
1546         (NetworkConnectionToWebProcess):
1547         * NetworkProcess/NetworkProcess.cpp:
1548         (WebKit::NetworkProcess::didReceiveMessage):
1549         (WebKit::NetworkProcess::didReceiveSyncMessage):
1550         * NetworkProcess/NetworkProcess.h:
1551         (NetworkProcess):
1552         * Platform/CoreIPC/Connection.cpp:
1553         (CoreIPC::Connection::processIncomingMessage):
1554         (CoreIPC::Connection::dispatchSyncMessage):
1555         (CoreIPC::Connection::dispatchMessage):
1556         * Platform/CoreIPC/Connection.h:
1557         (QueueClient):
1558         (CoreIPC::Connection::waitForAndDispatchImmediately):
1559         * Platform/CoreIPC/MessageReceiver.h:
1560         (MessageReceiver):
1561         (CoreIPC::MessageReceiver::didReceiveSyncMessage):
1562         * Platform/CoreIPC/MessageReceiverMap.cpp:
1563         (CoreIPC::MessageReceiverMap::dispatchMessage):
1564         (CoreIPC::MessageReceiverMap::dispatchSyncMessage):
1565         * Platform/CoreIPC/MessageReceiverMap.h:
1566         (MessageReceiverMap):
1567         * PluginProcess/PluginProcess.cpp:
1568         (WebKit::PluginProcess::didReceiveMessage):
1569         * PluginProcess/PluginProcess.h:
1570         (PluginProcess):
1571         * PluginProcess/WebProcessConnection.cpp:
1572         (WebKit::WebProcessConnection::didReceiveMessage):
1573         (WebKit::WebProcessConnection::didReceiveSyncMessage):
1574         * PluginProcess/WebProcessConnection.h:
1575         (WebProcessConnection):
1576         * Scripts/webkit2/messages.py:
1577         (forward_declarations_and_headers):
1578         (generate_message_handler):
1579         * Scripts/webkit2/messages_unittest.py:
1580         * Shared/Authentication/AuthenticationManager.cpp:
1581         (WebKit::AuthenticationManager::didReceiveMessage):
1582         * Shared/Authentication/AuthenticationManager.h:
1583         (AuthenticationManager):
1584         * Shared/ChildProcessProxy.cpp:
1585         (WebKit::ChildProcessProxy::sendMessage):
1586         * Shared/ChildProcessProxy.h:
1587         (ChildProcessProxy):
1588         (WebKit::ChildProcessProxy::send):
1589         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1590         (CustomProtocolManager):
1591         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
1592         (WebKit::CustomProtocolManager::didReceiveMessage):
1593         * Shared/Plugins/NPRemoteObjectMap.cpp:
1594         (WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
1595         * Shared/Plugins/NPRemoteObjectMap.h:
1596         (NPRemoteObjectMap):
1597         * Shared/WebConnection.cpp:
1598         (WebKit::WebConnection::didReceiveMessage):
1599         * Shared/WebConnection.h:
1600         (WebConnection):
1601         * Shared/mac/SecItemShim.cpp:
1602         (WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):
1603         * Shared/mac/SecItemShim.h:
1604         (SecItemShim):
1605         * SharedWorkerProcess/SharedWorkerProcess.cpp:
1606         (WebKit::SharedWorkerProcess::didReceiveMessage):
1607         * SharedWorkerProcess/SharedWorkerProcess.h:
1608         (SharedWorkerProcess):
1609         * UIProcess/Downloads/DownloadProxy.cpp:
1610         (WebKit::DownloadProxy::didReceiveMessage):
1611         (WebKit::DownloadProxy::didReceiveSyncMessage):
1612         * UIProcess/Downloads/DownloadProxy.h:
1613         (DownloadProxy):
1614         * UIProcess/DrawingAreaProxy.cpp:
1615         (WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):
1616         * UIProcess/DrawingAreaProxy.h:
1617         (DrawingAreaProxy):
1618         * UIProcess/DrawingAreaProxyImpl.cpp:
1619         (WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
1620         * UIProcess/DrawingAreaProxyImpl.h:
1621         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1622         (CustomProtocolManagerProxy):
1623         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
1624         (WebKit::CustomProtocolManagerProxy::didReceiveMessage):
1625         * UIProcess/Network/NetworkProcessProxy.cpp:
1626         (WebKit::NetworkProcessProxy::didReceiveMessage):
1627         (WebKit::NetworkProcessProxy::didReceiveSyncMessage):
1628         * UIProcess/Network/NetworkProcessProxy.h:
1629         (NetworkProcessProxy):
1630         * UIProcess/Notifications/WebNotificationManagerProxy.h:
1631         (WebNotificationManagerProxy):
1632         * UIProcess/Plugins/PluginProcessProxy.cpp:
1633         (WebKit::PluginProcessProxy::didReceiveMessage):
1634         * UIProcess/Plugins/PluginProcessProxy.h:
1635         (PluginProcessProxy):
1636         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
1637         (WebKit::SharedWorkerProcessProxy::didReceiveMessage):
1638         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
1639         (SharedWorkerProcessProxy):
1640         * UIProcess/WebApplicationCacheManagerProxy.cpp:
1641         (WebKit::WebApplicationCacheManagerProxy::didReceiveMessage):
1642         * UIProcess/WebApplicationCacheManagerProxy.h:
1643         (WebApplicationCacheManagerProxy):
1644         * UIProcess/WebContext.cpp:
1645         (WebKit::WebContext::dispatchMessage):
1646         (WebKit::WebContext::dispatchSyncMessage):
1647         (WebKit::WebContext::didReceiveMessage):
1648         (WebKit::WebContext::didReceiveSyncMessage):
1649         * UIProcess/WebContext.h:
1650         (WebContext):
1651         * UIProcess/WebCookieManagerProxy.cpp:
1652         (WebKit::WebCookieManagerProxy::didReceiveMessage):
1653         * UIProcess/WebCookieManagerProxy.h:
1654         (WebCookieManagerProxy):
1655         * UIProcess/WebDatabaseManagerProxy.cpp:
1656         (WebKit::WebDatabaseManagerProxy::didReceiveMessage):
1657         * UIProcess/WebDatabaseManagerProxy.h:
1658         (WebDatabaseManagerProxy):
1659         * UIProcess/WebFullScreenManagerProxy.cpp:
1660         (WebKit::WebFullScreenManagerProxy::didReceiveMessage):
1661         (WebKit::WebFullScreenManagerProxy::didReceiveSyncMessage):
1662         * UIProcess/WebFullScreenManagerProxy.h:
1663         (WebFullScreenManagerProxy):
1664         * UIProcess/WebGeolocationManagerProxy.h:
1665         (WebGeolocationManagerProxy):
1666         * UIProcess/WebIconDatabase.h:
1667         (WebIconDatabase):
1668         * UIProcess/WebKeyValueStorageManagerProxy.h:
1669         (WebKeyValueStorageManagerProxy):
1670         * UIProcess/WebMediaCacheManagerProxy.h:
1671         (WebMediaCacheManagerProxy):
1672         * UIProcess/WebPageProxy.cpp:
1673         (WebKit::WebPageProxy::didReceiveMessage):
1674         (WebKit::WebPageProxy::didReceiveSyncMessage):
1675         * UIProcess/WebPageProxy.h:
1676         (WebPageProxy):
1677         * UIProcess/WebProcessProxy.cpp:
1678         (WebKit::WebProcessProxy::didReceiveMessage):
1679         (WebKit::WebProcessProxy::didReceiveSyncMessage):
1680         (WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):
1681         * UIProcess/WebProcessProxy.h:
1682         (WebProcessProxy):
1683         * UIProcess/WebResourceCacheManagerProxy.h:
1684         (WebResourceCacheManagerProxy):
1685         * UIProcess/mac/RemoteLayerTreeHost.h:
1686         (RemoteLayerTreeHost):
1687         * UIProcess/mac/RemoteLayerTreeHost.mm:
1688         (WebKit::RemoteLayerTreeHost::didReceiveMessage):
1689         * UIProcess/mac/SecItemShimProxy.cpp:
1690         (WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):
1691         * UIProcess/mac/SecItemShimProxy.h:
1692         (SecItemShimProxy):
1693         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
1694         (WebKit::WebApplicationCacheManager::didReceiveMessage):
1695         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
1696         (WebApplicationCacheManager):
1697         * WebProcess/Cookies/WebCookieManager.cpp:
1698         (WebKit::WebCookieManager::didReceiveMessage):
1699         * WebProcess/Cookies/WebCookieManager.h:
1700         (WebCookieManager):
1701         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1702         (WebKit::WebFullScreenManager::didReceiveMessage):
1703         * WebProcess/FullScreen/WebFullScreenManager.h:
1704         (WebFullScreenManager):
1705         * WebProcess/Geolocation/WebGeolocationManager.h:
1706         (WebGeolocationManager):
1707         * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
1708         (WebIconDatabaseProxy):
1709         * WebProcess/MediaCache/WebMediaCacheManager.h:
1710         (WebMediaCacheManager):
1711         * WebProcess/Network/NetworkProcessConnection.cpp:
1712         (WebKit::NetworkProcessConnection::didReceiveMessage):
1713         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
1714         * WebProcess/Network/NetworkProcessConnection.h:
1715         (NetworkProcessConnection):
1716         * WebProcess/Notifications/WebNotificationManager.h:
1717         (WebNotificationManager):
1718         * WebProcess/Plugins/PluginProcessConnection.cpp:
1719         (WebKit::PluginProcessConnection::didReceiveMessage):
1720         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
1721         * WebProcess/Plugins/PluginProcessConnection.h:
1722         (PluginProcessConnection):
1723         * WebProcess/ResourceCache/WebResourceCacheManager.h:
1724         (WebResourceCacheManager):
1725         * WebProcess/Storage/WebKeyValueStorageManager.h:
1726         (WebKeyValueStorageManager):
1727         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
1728         (WebKit::WebDatabaseManager::didReceiveMessage):
1729         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
1730         (WebDatabaseManager):
1731         * WebProcess/WebPage/DrawingArea.h:
1732         (DrawingArea):
1733         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1734         (WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):
1735         * WebProcess/WebPage/DrawingAreaImpl.h:
1736         (DrawingAreaImpl):
1737         * WebProcess/WebPage/EventDispatcher.cpp:
1738         (WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
1739         * WebProcess/WebPage/EventDispatcher.h:
1740         (EventDispatcher):
1741         * WebProcess/WebPage/LayerTreeHost.h:
1742         (LayerTreeHost):
1743         * WebProcess/WebPage/WebPage.cpp:
1744         (WebKit::WebPage::didReceiveMessage):
1745         (WebKit::WebPage::didReceiveSyncMessage):
1746         * WebProcess/WebPage/WebPage.h:
1747         (WebPage):
1748         * WebProcess/WebPage/WebPageGroupProxy.h:
1749         (WebPageGroupProxy):
1750         * WebProcess/WebProcess.cpp:
1751         (WebKit::WebProcess::didReceiveSyncMessage):
1752         (WebKit::WebProcess::didReceiveMessage):
1753         (WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):
1754         * WebProcess/WebProcess.h:
1755         (WebProcess):
1756
1757 2013-01-30  Tim Horton  <timothy_horton@apple.com>
1758
1759         PDFPlugin: Update scrollbars if PDFLayerController's display mode changes
1760         https://bugs.webkit.org/show_bug.cgi?id=108412
1761         <rdar://problem/13002261>
1762
1763         Reviewed by Simon Fraser.
1764
1765         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add pdfLayerController:didChangeDisplayMode:
1766         * WebProcess/Plugins/PDF/PDFPlugin.h: Add notifyDisplayModeChanged().
1767         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1768         (-[WKPDFLayerControllerDelegate pdfLayerController:didChangeDisplayMode:]): Forward didChangeDisplayMode to notifyDisplayModeChanged.
1769         (WebKit::PDFPlugin::notifyDisplayModeChanged): Update content size and scrollbar size when display mode changes.
1770
1771 2013-01-30  Alexey Proskuryakov  <ap@apple.com>
1772
1773         <rdar://problem/12695827> PPT: Make loading file URLs work with a sandboxed NetworkProcess
1774
1775         Reviewed by Sam Weinig.
1776
1777         * DerivedSources.make: Preprocess a .sb.in file to build the profile.
1778
1779         * NetworkProcess/mac/NetworkProcessMac.mm:
1780         Don't prevent entering the sandbox. Override sandbox path, because service
1781         gets a differnt one by default.
1782
1783         * WebKit2.xcodeproj/project.pbxproj:
1784         * NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in: Added.
1785
1786 2013-01-30  Huang Dongsung  <luxtella@company100.net>
1787
1788         Coordinated Graphics: LayerTreeRenderer manages the surface of UpdateAtlas.
1789         https://bugs.webkit.org/show_bug.cgi?id=107224
1790
1791         Reviewed by Benjamin Poulain.
1792
1793         Currently, CoordinatedLayerTreeHostProxy manages the surface of UpdateAtlas, but
1794         all other resources are managed by LayerTreeRenderer. This patch matches the
1795         surface of UpdateAtlas to other resources.
1796
1797         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
1798         (WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
1799         (WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
1800         (WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
1801         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
1802         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1803         (CoordinatedLayerTreeHostProxy):
1804         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1805         (WebKit::LayerTreeRenderer::updateTile):
1806         (WebKit::LayerTreeRenderer::createUpdateAtlas):
1807         (WebKit):
1808         (WebKit::LayerTreeRenderer::removeUpdateAtlas):
1809         (WebKit::LayerTreeRenderer::purgeGLResources):
1810         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1811         (TileUpdate):
1812         (WebKit::LayerTreeRenderer::TileUpdate::TileUpdate):
1813         (LayerTreeRenderer):
1814
1815 2013-01-30  Anders Carlsson  <andersca@apple.com>
1816
1817         Remove MessageID parameter from generated message receivers
1818         https://bugs.webkit.org/show_bug.cgi?id=108379
1819
1820         Reviewed by Beth Dakin.
1821
1822         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1823         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
1824         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
1825         * NetworkProcess/NetworkConnectionToWebProcess.h:
1826         (NetworkConnectionToWebProcess):
1827         * NetworkProcess/NetworkProcess.cpp:
1828         (WebKit::NetworkProcess::didReceiveMessage):
1829         * NetworkProcess/NetworkProcess.h:
1830         (NetworkProcess):
1831         * PluginProcess/PluginControllerProxy.h:
1832         (PluginControllerProxy):
1833         * PluginProcess/PluginProcess.cpp:
1834         (WebKit::PluginProcess::didReceiveMessage):
1835         * PluginProcess/PluginProcess.h:
1836         (PluginProcess):
1837         * PluginProcess/WebProcessConnection.cpp:
1838         (WebKit::WebProcessConnection::didReceiveMessage):
1839         (WebKit::WebProcessConnection::didReceiveSyncMessage):
1840         * PluginProcess/WebProcessConnection.h:
1841         (WebProcessConnection):
1842         * Scripts/webkit2/messages.py:
1843         (generate_message_handler):
1844         * Scripts/webkit2/messages_unittest.py:
1845         * Shared/Authentication/AuthenticationManager.cpp:
1846         (WebKit::AuthenticationManager::didReceiveMessage):
1847         * Shared/Authentication/AuthenticationManager.h:
1848         (AuthenticationManager):
1849         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1850         (CustomProtocolManager):
1851         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:
1852         (WebKit::CustomProtocolManager::didReceiveMessage):
1853         * Shared/Plugins/NPObjectMessageReceiver.h:
1854         (NPObjectMessageReceiver):
1855         * Shared/Plugins/NPRemoteObjectMap.cpp:
1856         (WebKit::NPRemoteObjectMap::didReceiveSyncMessage):
1857         * Shared/WebConnection.cpp:
1858         (WebKit::WebConnection::didReceiveMessage):
1859         * Shared/WebConnection.h:
1860         (WebConnection):
1861         * Shared/mac/SecItemShim.cpp:
1862         (WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):
1863         * Shared/mac/SecItemShim.h:
1864         (SecItemShim):
1865         * SharedWorkerProcess/SharedWorkerProcess.cpp:
1866         (WebKit::SharedWorkerProcess::didReceiveMessage):
1867         * SharedWorkerProcess/SharedWorkerProcess.h:
1868         (SharedWorkerProcess):
1869         * UIProcess/Downloads/DownloadProxy.cpp:
1870         (WebKit::DownloadProxy::didReceiveMessage):
1871         (WebKit::DownloadProxy::didReceiveSyncMessage):
1872         * UIProcess/Downloads/DownloadProxy.h:
1873         (DownloadProxy):
1874         * UIProcess/DrawingAreaProxy.h:
1875         (DrawingAreaProxy):
1876         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1877         (CustomProtocolManagerProxy):
1878         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
1879         (WebKit::CustomProtocolManagerProxy::didReceiveMessage):
1880         * UIProcess/Network/NetworkProcessProxy.cpp:
1881         (WebKit::NetworkProcessProxy::didReceiveMessage):
1882         * UIProcess/Network/NetworkProcessProxy.h:
1883         (NetworkProcessProxy):
1884         * UIProcess/Plugins/PluginProcessProxy.cpp:
1885         (WebKit::PluginProcessProxy::didReceiveMessage):
1886         * UIProcess/Plugins/PluginProcessProxy.h:
1887         (PluginProcessProxy):
1888         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
1889         (WebKit::SharedWorkerProcessProxy::didReceiveMessage):
1890         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h:
1891         (SharedWorkerProcessProxy):
1892         * UIProcess/WebApplicationCacheManagerProxy.cpp:
1893         (WebKit::WebApplicationCacheManagerProxy::didReceiveMessage):
1894         * UIProcess/WebApplicationCacheManagerProxy.h:
1895         (WebApplicationCacheManagerProxy):
1896         * UIProcess/WebContext.cpp:
1897         (WebKit::WebContext::didReceiveMessage):
1898         (WebKit::WebContext::didReceiveSyncMessage):
1899         * UIProcess/WebContext.h:
1900         (WebContext):
1901         * UIProcess/WebCookieManagerProxy.cpp:
1902         (WebKit::WebCookieManagerProxy::didReceiveMessage):
1903         * UIProcess/WebCookieManagerProxy.h:
1904         (WebCookieManagerProxy):
1905         * UIProcess/WebDatabaseManagerProxy.cpp:
1906         (WebKit::WebDatabaseManagerProxy::didReceiveMessage):
1907         * UIProcess/WebDatabaseManagerProxy.h:
1908         (WebDatabaseManagerProxy):
1909         * UIProcess/WebFullScreenManagerProxy.cpp:
1910         (WebKit::WebFullScreenManagerProxy::didReceiveMessage):
1911         (WebKit::WebFullScreenManagerProxy::didReceiveSyncMessage):
1912         * UIProcess/WebFullScreenManagerProxy.h:
1913         (WebFullScreenManagerProxy):
1914         * UIProcess/WebInspectorProxy.h:
1915         (WebInspectorProxy):
1916         * UIProcess/WebPageProxy.cpp:
1917         (WebKit::WebPageProxy::didReceiveMessage):
1918         (WebKit::WebPageProxy::didReceiveSyncMessage):
1919         * UIProcess/WebPageProxy.h:
1920         (WebPageProxy):
1921         * UIProcess/WebProcessProxy.cpp:
1922         (WebKit::WebProcessProxy::didReceiveMessage):
1923         (WebKit::WebProcessProxy::didReceiveSyncMessage):
1924         (WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):
1925         * UIProcess/WebProcessProxy.h:
1926         (WebProcessProxy):
1927         * UIProcess/mac/RemoteLayerTreeHost.h:
1928         (RemoteLayerTreeHost):
1929         * UIProcess/mac/RemoteLayerTreeHost.mm:
1930         (WebKit::RemoteLayerTreeHost::didReceiveMessage):
1931         * UIProcess/mac/SecItemShimProxy.cpp:
1932         (WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):
1933         * UIProcess/mac/SecItemShimProxy.h:
1934         (SecItemShimProxy):
1935         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
1936         (WebKit::WebApplicationCacheManager::didReceiveMessage):
1937         * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
1938         (WebApplicationCacheManager):
1939         * WebProcess/Cookies/WebCookieManager.cpp:
1940         (WebKit::WebCookieManager::didReceiveMessage):
1941         * WebProcess/Cookies/WebCookieManager.h:
1942         (WebCookieManager):
1943         * WebProcess/FullScreen/WebFullScreenManager.cpp:
1944         (WebKit::WebFullScreenManager::didReceiveMessage):
1945         * WebProcess/FullScreen/WebFullScreenManager.h:
1946         (WebFullScreenManager):
1947         * WebProcess/Network/NetworkProcessConnection.cpp:
1948         (WebKit::NetworkProcessConnection::didReceiveMessage):
1949         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
1950         * WebProcess/Network/WebResourceLoader.h:
1951         (WebResourceLoader):
1952         * WebProcess/Plugins/PluginProcessConnection.cpp:
1953         (WebKit::PluginProcessConnection::didReceiveMessage):
1954         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
1955         * WebProcess/Plugins/PluginProcessConnection.h:
1956         (PluginProcessConnection):
1957         * WebProcess/Plugins/PluginProxy.h:
1958         (PluginProxy):
1959         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
1960         (WebKit::WebDatabaseManager::didReceiveMessage):
1961         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
1962         (WebDatabaseManager):
1963         * WebProcess/WebPage/DrawingArea.h:
1964         (DrawingArea):
1965         * WebProcess/WebPage/EventDispatcher.cpp:
1966         (WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
1967         * WebProcess/WebPage/EventDispatcher.h:
1968         (EventDispatcher):
1969         * WebProcess/WebPage/WebInspector.h:
1970         (WebInspector):
1971         * WebProcess/WebPage/WebPage.cpp:
1972         (WebKit::WebPage::didReceiveMessage):
1973         (WebKit::WebPage::didReceiveSyncMessage):
1974         * WebProcess/WebPage/WebPage.h:
1975         (WebPage):
1976         * WebProcess/WebProcess.cpp:
1977         (WebKit::WebProcess::didReceiveMessage):
1978         (WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):
1979         * WebProcess/WebProcess.h:
1980         (WebProcess):
1981
1982 2013-01-30  Christophe Dumez  <dchris@gmail.com>
1983
1984         [WK2][UNIX] g_spawn_sync() generates warning in PluginProcessProxy::scanPlugin()
1985         https://bugs.webkit.org/show_bug.cgi?id=108371
1986
1987         Reviewed by Martin Robinson.
1988
1989         g_spawn_sync() was sometimes displaying a warning about the SIGCHLD
1990         signal disposition not being set to SIG_DFL, despite the fix in r133755.
1991         The reason was that the code was only setting the disposition to SIG_DFL
1992         if the previous disposition was SIG_IGN.
1993
1994         In this patch, we set the SIGCHLD signal disposition to SIG_DFL, no
1995         matter what its previous disposition was. Also, the signal disposition
1996         is now restored to its previous state after the call to g_spawn_sync()
1997         to avoid side effects. Finally, we now use SIGCHLD instead of SIDCLD
1998         since this is the more compatible POSIX name.
1999
2000         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
2001         (WebKit::spawnProcessSync):
2002         (WebKit):
2003         (WebKit::PluginProcessProxy::scanPlugin):
2004
2005 2013-01-30  Huang Dongsung  <luxtella@company100.net>
2006
2007         [EFL][Qt][WK2] We should consider a page scale factor in WebCore instead of our own scale factor.
2008         https://bugs.webkit.org/show_bug.cgi?id=105978
2009
2010         Reviewed by Simon Fraser.
2011
2012         Currently, PageViewportController sends a page scale factor to Coordinated
2013         Graphics System regardless of the page scale factor in WebCore. This patch makes
2014         Coordinated Graphics System use the page scale factor in WebCore to match other
2015         ports.
2016
2017         When it is needed to change a page scale, PageViewportController sends the scale
2018         to Page in Web Process via WebPageProxy::scalePage. When the page scale in
2019         WebCore is changed, CoordinatedGraphicsLayer gets notified via
2020         deviceOrPageScaleFactorChanged callback. CoordinatedGraphicsLayer uses the page
2021         scale factor like previous our own scale factor.
2022
2023         We set true to applyDeviceScaleFactorInCompositor and
2024         ApplyPageScaleFactorInCompositor in Settings like chromium, because
2025         TiledBackingStore that is a backing store of each GraphicsLayer applies the
2026         scale to our raster graphics engines instead of applying the scale to the local
2027         transform of each render object.
2028
2029         Thank Kenneth Rohde Christiansen for implementing the base patch of this patch.
2030
2031         No new tests. Covered by existing tests.
2032
2033         * UIProcess/API/qt/qquickwebview.cpp:
2034         (QQuickWebViewLegacyPrivate::updateViewportSize):
2035         * UIProcess/API/qt/raw/qrawwebview.cpp:
2036         (QRawWebView::setSize):
2037         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2038         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
2039         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
2040             Does not receive a pageScaleFactor argument because
2041             PageViewportController sends a page scale factor to Page.
2042             However, this method still receives a scroll position because we
2043             enable delegates scrolling.
2044         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2045         (CoordinatedLayerTreeHostProxy):
2046         * UIProcess/DrawingAreaProxy.h:
2047         (WebKit::DrawingAreaProxy::setVisibleContentsRect):
2048         * UIProcess/DrawingAreaProxyImpl.cpp:
2049         (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
2050         * UIProcess/DrawingAreaProxyImpl.h:
2051         * UIProcess/PageViewportController.cpp:
2052         (WebKit::PageViewportController::didRenderFrame):
2053         (WebKit::PageViewportController::didChangeContentsVisibility):
2054         (WebKit::PageViewportController::syncVisibleContents):
2055         (WebKit::PageViewportController::applyScaleAfterRenderingContents):
2056         (WebKit::PageViewportController::applyPositionAfterRenderingContents):
2057         * UIProcess/efl/PageClientLegacyImpl.cpp:
2058         (WebKit::PageClientLegacyImpl::updateViewportSize):
2059         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2060         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
2061         (WebCore::CoordinatedGraphicsLayer::deviceOrPageScaleFactorChanged):
2062         (WebCore::CoordinatedGraphicsLayer::effectiveContentsScale):
2063         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2064         (CoordinatedGraphicsLayer):
2065         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2066         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
2067         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
2068         (WebKit::CoordinatedLayerTreeHost::deviceScaleFactor):
2069         (WebKit):
2070         (WebKit::CoordinatedLayerTreeHost::pageScaleFactor):
2071         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
2072         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
2073         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2074         (CoordinatedLayerTreeHost):
2075         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
2076         * WebProcess/WebPage/WebPage.cpp:
2077         (WebKit::WebPage::setUseFixedLayout):
2078
2079 2013-01-30  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
2080
2081         [Qt] Fix Win build after r141177
2082         https://bugs.webkit.org/show_bug.cgi?id=108325
2083
2084         Reviewed by Anders Carlsson.
2085
2086         * Platform/CoreIPC/win/ConnectionWin.cpp:
2087         (CoreIPC::Connection::readEventHandler):
2088         (CoreIPC::Connection::sendOutgoingMessage):
2089
2090 2013-01-30  Thiago Marcos P. Santos  <thiago.santos@intel.com>
2091
2092         REGRESSION (r141051): Broke plugin support on non-Mac WebKit2 Ports
2093         https://bugs.webkit.org/show_bug.cgi?id=108182
2094
2095         Reviewed by Sam Weinig.
2096
2097         Send the plugin path to the PluginProcess as a parameter.
2098
2099         * PluginProcess/qt/PluginProcessMainQt.cpp:
2100         (WebKit::PluginProcessMain):
2101         * PluginProcess/unix/PluginProcessMainUnix.cpp:
2102         (WebKit::PluginProcessMainUnix):
2103         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
2104         (WebKit::ProcessLauncher::launchProcess):
2105         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
2106         (WebKit::ProcessLauncher::launchProcess):
2107         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
2108         (WebKit::ProcessLauncher::launchProcess):
2109         * UIProcess/Plugins/qt/PluginProcessProxyQt.cpp:
2110         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
2111         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
2112         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
2113
2114 2013-01-30  Christophe Dumez  <christophe.dumez@intel.com>
2115
2116         [EFL][WK2] Use C API inside ewk_window_features
2117         https://bugs.webkit.org/show_bug.cgi?id=107924
2118
2119         Reviewed by Sam Weinig.
2120
2121         Use C API inside ewk_window_features instead of accessing
2122         internal C++ classes directly, to avoid violating API
2123         layering.
2124
2125         * UIProcess/API/efl/EwkView.cpp:
2126         (EwkView::createNewPage):
2127         * UIProcess/API/efl/EwkView.h:
2128         (EwkView):
2129         * UIProcess/API/efl/ewk_window_features.cpp:
2130         (EwkWindowFeatures::EwkWindowFeatures):
2131         (getWindowFeatureValue):
2132         (EwkWindowFeatures::getWindowFeatureBoolValue):
2133         (EwkWindowFeatures::getWindowFeatureDoubleValue):
2134         (ewk_window_features_geometry_get):
2135         * UIProcess/API/efl/ewk_window_features_private.h:
2136         (EwkWindowFeatures::create):
2137         (EwkWindowFeatures::geometry):
2138         (EwkWindowFeatures::setGeometry):
2139         (EwkWindowFeatures):
2140         * UIProcess/efl/PageUIClientEfl.cpp:
2141         (WebKit::PageUIClientEfl::createNewPage):
2142
2143 2013-01-30  Zeno Albisser  <zeno@webkit.org>
2144
2145         [Qt] Fix Qt/Mac build after r141024 and r141037
2146         https://bugs.webkit.org/show_bug.cgi?id=108318
2147
2148         Reviewed by Kentaro Hara.
2149
2150         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2151         (CoreIPC::Connection::platformInvalidate):
2152             Replace nullptr with 0 to allow compiling without C++11 support.
2153
2154 2013-01-30  Kondapally Kalyan  <kalyan.kondapally@intel.com>
2155
2156         [EFL][Qt][WebGL] Avoid deleting an uncreated canvas.
2157         https://bugs.webkit.org/show_bug.cgi?id=106878
2158
2159         Reviewed by Benjamin Poulain.
2160
2161         setContentsToCanvas is responsible for marking canvas for creation or deletion.
2162         The issue here is that the canvas is marked for deletion even though it has not
2163         been created. This causes an assert in LayerTreeRenderer::destroyCanvas.
2164         This patch adds a seperate check to ensure that CoordinatedGraphicsLayer
2165         tries to issue a request for canvas deletion only after request for canvas
2166         creation has been handled.
2167
2168         New test: fast/canvas/webgl/canvas-resize-crash.html
2169
2170         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2171         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
2172         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
2173         (WebCore::CoordinatedGraphicsLayer::destroyCanvasIfNeeded):
2174         (WebCore::CoordinatedGraphicsLayer::createCanvasIfNeeded):
2175         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2176         (CoordinatedGraphicsLayer):
2177         (WebCore::CoordinatedGraphicsLayer::fixedToViewport):
2178
2179 2013-01-30  Zan Dobersek  <zdobersek@igalia.com>
2180
2181         Unreviewed GTK build fix.
2182
2183         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp: Include GraphicsLayerTextureMapper.h
2184         as a forwarding header from WebCore.
2185
2186 2013-01-30  Huang Dongsung  <luxtella@company100.net>
2187
2188         Coordinated Graphics: Remove m_pendingSyncBackingStores in LayerTreeRenderer.
2189         https://bugs.webkit.org/show_bug.cgi?id=107099
2190
2191         Reviewed by Noam Rosenthal.
2192
2193         Instead of queuing the setting of backing stores in LayerTreeRenderer,
2194         and then setting them directly to TextureMapperLayer, we allow
2195         GraphicsLayerTextureMapper's existing queuing mechanism to handle that.
2196         Instead of a m_pendingSyncBackingStores queue, we have a m_backingStores
2197         queue which can be applied much more easily to the layer tree.
2198
2199         In addition, LayerTreeRenderer::purgeGLResources() does not call
2200         TextureMapperLayer::clearBackingStoresRecursive() because
2201         TextureMapperLayer will be destructed soon.
2202
2203         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2204         (WebKit::LayerTreeRenderer::deleteLayer):
2205         (WebKit::LayerTreeRenderer::createBackingStoreIfNeeded):
2206         (WebKit::LayerTreeRenderer::removeBackingStoreIfNeeded):
2207         (WebKit::LayerTreeRenderer::resetBackingStoreSizeToLayerSize):
2208         (WebKit::LayerTreeRenderer::createTile):
2209         (WebKit::LayerTreeRenderer::removeTile):
2210         (WebKit::LayerTreeRenderer::updateTile):
2211         (WebKit::LayerTreeRenderer::commitPendingBackingStoreOperations):
2212         (WebKit::LayerTreeRenderer::purgeGLResources):
2213         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2214
2215 2013-01-29  Anders Carlsson  <andersca@apple.com>
2216
2217         Update the expected generated message results
2218         https://bugs.webkit.org/show_bug.cgi?id=108293
2219
2220         Reviewed by Beth Dakin.
2221
2222         * Scripts/webkit2/messages.py:
2223         (generate_messages_header):
2224         * Scripts/webkit2/messages_unittest.py:
2225
2226 2013-01-29  Sam Weinig  <sam@webkit.org>
2227
2228         Replace unnecessary ArgumentDecoder member functions with decode overloads
2229         https://bugs.webkit.org/show_bug.cgi?id=102013
2230
2231         Reviewed by Anders Carlsson.
2232
2233         * Platform/CoreIPC/ArgumentCoders.cpp:
2234         (CoreIPC::::decode):
2235         * Platform/CoreIPC/ArgumentCoders.h:
2236         * Platform/CoreIPC/ArgumentDecoder.cpp:
2237         (CoreIPC::ArgumentDecoder::decodeVariableLengthByteArray):
2238         (CoreIPC::ArgumentDecoder::decode):
2239         * Platform/CoreIPC/ArgumentDecoder.h:
2240         (ArgumentDecoder):
2241         (CoreIPC::ArgumentDecoder::decodeEnum):
2242         (CoreIPC):
2243         * Platform/CoreIPC/Connection.cpp:
2244         (CoreIPC::Connection::dispatchSyncMessage):
2245         * Platform/CoreIPC/MessageDecoder.cpp:
2246         (CoreIPC::MessageDecoder::MessageDecoder):
2247         * Platform/mac/SharedMemoryMac.cpp:
2248         (WebKit::SharedMemory::Handle::decode):
2249         * Platform/win/SharedMemoryWin.cpp:
2250         (WebKit::SharedMemory::Handle::decode):
2251         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2252         (CoreIPC::::decode):
2253         (CoreIPC::decodeTimingFunction):
2254         * Shared/DictionaryPopupInfo.cpp:
2255         (WebKit::DictionaryPopupInfo::decode):
2256         * Shared/UserMessageCoders.h:
2257         (WebKit::UserMessageDecoder::baseDecode):
2258         * Shared/cf/ArgumentCodersCF.cpp:
2259         (CoreIPC::decode):
2260         * Shared/mac/ArgumentCodersMac.mm:
2261         (CoreIPC::decode):
2262         * Shared/mac/ObjCObjectGraphCoders.mm:
2263         (WebKit::ObjCObjectGraphDecoder::baseDecode):
2264         * Shared/mac/SandboxExtensionMac.mm:
2265         (WebKit::SandboxExtension::HandleArray::decode):
2266         * Shared/mac/SecItemRequestData.cpp:
2267         (WebKit::SecItemRequestData::decode):
2268         * Shared/mac/SecItemResponseData.cpp:
2269         (WebKit::SecItemResponseData::decode):
2270         * Shared/qt/ArgumentCodersQt.cpp:
2271         (CoreIPC::::decode):
2272         * Shared/qt/QtNetworkReplyData.cpp:
2273         (WebKit::QtNetworkReplyData::decode):
2274         * WebProcess/WebPage/DecoderAdapter.cpp:
2275         (WebKit::DecoderAdapter::decodeBool):
2276         (WebKit::DecoderAdapter::decodeUInt16):
2277         (WebKit::DecoderAdapter::decodeUInt32):
2278         (WebKit::DecoderAdapter::decodeUInt64):
2279         (WebKit::DecoderAdapter::decodeInt32):
2280         (WebKit::DecoderAdapter::decodeInt64):
2281         (WebKit::DecoderAdapter::decodeFloat):
2282         (WebKit::DecoderAdapter::decodeDouble):
2283
2284 2013-01-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2285
2286         [WK2] Adjust missing MessageID removals to fix build breaks
2287         https://bugs.webkit.org/show_bug.cgi?id=108276
2288
2289         Unreviewed to fix build breaks.
2290
2291         Some MessageID removals wasn't adjusted into ConnectionUnix.cpp and coordinated graphics.
2292
2293         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
2294         (CoreIPC::MessageInfo::MessageInfo):
2295         (CoreIPC::MessageInfo::setMessageBodyIsOutOfLine):
2296         (CoreIPC::MessageInfo::isMessageBodyIsOutOfLine):
2297         (CoreIPC::Connection::processMessage):
2298         (CoreIPC::Connection::sendOutgoingMessage):
2299         * UIProcess/WebPageProxy.cpp:
2300         (WebKit::WebPageProxy::didReceiveMessage):
2301         * UIProcess/WebProcessProxy.cpp:
2302         * WebProcess/WebPage/WebPage.cpp:
2303         (WebKit::WebPage::didReceiveMessage):
2304
2305 2013-01-29  Sheriff Bot  <webkit.review.bot@gmail.com>
2306
2307         Unreviewed, rolling out r140983.
2308         http://trac.webkit.org/changeset/140983
2309         https://bugs.webkit.org/show_bug.cgi?id=108277
2310
2311         Unfortunately, this API has one last client (Requested by
2312         abarth on #webkit).
2313
2314         * Configurations/FeatureDefines.xcconfig:
2315
2316 2013-01-29  Anders Carlsson  <andersca@apple.com>
2317
2318         Remove MessageID parameter from Connection::sendMessage
2319         https://bugs.webkit.org/show_bug.cgi?id=108269
2320
2321         Reviewed by Sam Weinig.
2322
2323         * Platform/CoreIPC/Connection.cpp:
2324         (CoreIPC::Connection::sendMessage):
2325         (CoreIPC::Connection::sendSyncReply):
2326         (CoreIPC::Connection::sendSyncMessage):
2327         (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
2328         * Platform/CoreIPC/Connection.h:
2329         (Connection):
2330         (CoreIPC::Connection::send):
2331         (CoreIPC::Connection::sendSync):
2332         * Platform/CoreIPC/MessageSender.h:
2333         (CoreIPC::MessageSender::send):
2334         (CoreIPC::MessageSender::sendMessage):
2335         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2336         (CoreIPC::Connection::open):
2337         * Shared/ChildProcessProxy.cpp:
2338         (WebKit::ChildProcessProxy::sendMessage):
2339         (WebKit::ChildProcessProxy::didFinishLaunching):
2340         * Shared/WebConnection.cpp:
2341         (WebKit::WebConnection::postMessage):
2342         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2343         (WebKit::InjectedBundle::postMessage):
2344         (WebKit::InjectedBundle::postSynchronousMessage):
2345
2346 2013-01-29  Anders Carlsson  <andersca@apple.com>
2347
2348         Stop generating the message kind enum
2349         https://bugs.webkit.org/show_bug.cgi?id=108258
2350
2351         Reviewed by Beth Dakin.
2352
2353         * Platform/CoreIPC/Connection.h:
2354         (CoreIPC::Connection::send):
2355         (CoreIPC::Connection::sendSync):
2356         (CoreIPC::Connection::waitForAndDispatchImmediately):
2357         * Platform/CoreIPC/MessageSender.h:
2358         (CoreIPC::MessageSender::send):
2359         * Scripts/webkit2/messages.py:
2360         (surround_in_condition):
2361         (message_to_struct_declaration):
2362         (generate_messages_header):
2363         * Scripts/webkit2/messages_unittest.py:
2364         * Scripts/webkit2/model.py:
2365         (Message.__init__):
2366         * Shared/ChildProcessProxy.h:
2367         (WebKit::ChildProcessProxy::send):
2368         * Shared/WebConnection.cpp:
2369         (WebKit::WebConnection::postMessage):
2370
2371 2013-01-29  Kiran Muppala  <cmuppala@apple.com>
2372
2373         Fix erroneous semicolon causing build failure: if statement has empty body [-Werror,-Wempty-body]
2374         https://bugs.webkit.org/show_bug.cgi?id=108241
2375
2376         Reviewed by Anders Carlsson.
2377
2378         * UIProcess/WebProcessProxy.cpp:
2379         (WebKit::WebProcessProxy::addExistingWebPage): Remove erroneous
2380         semicolon following the if condition.
2381
2382 2013-01-29  Anders Carlsson  <andersca@apple.com>
2383
2384         Remove almost everything from MessageID
2385         https://bugs.webkit.org/show_bug.cgi?id=108244
2386
2387         Reviewed by Beth Dakin.
2388
2389         * Platform/CoreIPC/MessageID.h:
2390         (CoreIPC::MessageID::MessageID):
2391         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2392         (CoreIPC):
2393         (CoreIPC::Connection::sendOutgoingMessage):
2394         (CoreIPC::createMessageDecoder):
2395         (CoreIPC::Connection::receiveSourceEventHandler):
2396
2397 2013-01-29  Anders Carlsson  <andersca@apple.com>
2398
2399         Get rid of MessageID::is()
2400         https://bugs.webkit.org/show_bug.cgi?id=108234
2401
2402         Reviewed by Beth Dakin.
2403
2404         Add explicit message receiver name equality checks instead of using MessageID::is.
2405
2406         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2407         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
2408         (WebKit::NetworkConnectionToWebProcess::didReceiveSyncMessage):
2409         * Platform/CoreIPC/MessageID.h:
2410         * PluginProcess/WebProcessConnection.cpp:
2411         (WebKit::WebProcessConnection::didReceiveMessage):
2412         (WebKit::WebProcessConnection::didReceiveSyncMessage):
2413         * Shared/mac/SecItemShim.cpp:
2414         (WebKit::SecItemShim::didReceiveMessageOnConnectionWorkQueue):
2415         * UIProcess/Network/NetworkProcessProxy.cpp:
2416         (WebKit::NetworkProcessProxy::didReceiveMessage):
2417         * UIProcess/WebContext.cpp:
2418         (WebKit::WebContext::didReceiveMessage):
2419         (WebKit::WebContext::didReceiveSyncMessage):
2420         * UIProcess/WebPageProxy.cpp:
2421         (WebKit::WebPageProxy::didReceiveMessage):
2422         (WebKit::WebPageProxy::didReceiveSyncMessage):
2423         * UIProcess/WebProcessProxy.cpp:
2424         (WebKit::WebProcessProxy::didReceiveMessage):
2425         (WebKit::WebProcessProxy::didReceiveSyncMessage):
2426         (WebKit::WebProcessProxy::didReceiveMessageOnConnectionWorkQueue):
2427         * UIProcess/mac/SecItemShimProxy.cpp:
2428         (WebKit::SecItemShimProxy::didReceiveMessageOnConnectionWorkQueue):
2429         * WebProcess/Network/NetworkProcessConnection.cpp:
2430         (WebKit::NetworkProcessConnection::didReceiveMessage):
2431         (WebKit::NetworkProcessConnection::didReceiveSyncMessage):
2432         * WebProcess/Plugins/PluginProcessConnection.cpp:
2433         (WebKit::PluginProcessConnection::didReceiveSyncMessage):
2434         * WebProcess/WebPage/EventDispatcher.cpp:
2435         (WebKit::EventDispatcher::didReceiveMessageOnConnectionWorkQueue):
2436         * WebProcess/WebPage/WebPage.cpp:
2437         (WebKit::WebPage::didReceiveMessage):
2438         * WebProcess/WebProcess.cpp:
2439         (WebKit::WebProcess::didReceiveMessage):
2440         (WebKit::WebProcess::didReceiveMessageOnConnectionWorkQueue):
2441
2442 2012-11-28  Jer Noble  <jer.noble@apple.com>
2443
2444         Allow clients to ask for the WebView/WKView placeholder view when in full screen mode.
2445         https://bugs.webkit.org/show_bug.cgi?id=103558
2446         <rdar://problem/12763112>
2447
2448         Reviewed by Benjamin Poulain.
2449
2450         Clients may want to behave differently when their WebView/WKView has been swapped out by a placeholder
2451         view when in full screen mode.  Add a simple accessor for the existing placeholder view to
2452         WKFullScreenWindowController and WKView.
2453
2454         * UIProcess/API/mac/WKView.mm:
2455         (-[WKView fullScreenPlaceholderView]): Added simple accessor.
2456         * UIProcess/API/mac/WKViewPrivate.h:
2457         * UIProcess/mac/WKFullScreenWindowController.h:
2458         * UIProcess/mac/WKFullScreenWindowController.mm:
2459         (-[WKFullScreenWindowController webViewPlaceholder]): Added simple accessor.
2460
2461 2013-01-29  Huang Dongsung  <luxtella@company100.net>
2462
2463         [WK2] Call LayerTreeHost::deviceOrPageScaleFactorChanged() when a device or page scale factor is changed.
2464         https://bugs.webkit.org/show_bug.cgi?id=107802
2465
2466         Reviewed by Simon Fraser.
2467
2468         Currently, LayerTreeHostMac and *GTK call deviceOrPageScaleFactorChanged()
2469         of the non compositing GraphicsLayer when a device scale factor is changed.
2470
2471         There are two problems.
2472         1. We don't notify LayerTreeHost when a page scale factor is changed.
2473         2. When using TiledCoreAnimationDrawingAreaProxy, LayerTreeHostMac does
2474         not receive the device scale factor changed callback.
2475
2476         So this patch changes three points.
2477         1. Rename from deviceScaleFactorDidChange() to deviceOrPageScaleFactorChanged()
2478         in LayerTreeHost.
2479         2. WebPage::setDeviceScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()
2480         because of dealing with TiledCoreAnimationDrawingAreaProxy.
2481         3. WebPage::pageScaleFactor() calls LayerTreeHost::deviceScaleFactorDidChange()
2482         to call deviceOrPageScaleFactorChanged() of the non compositing GraphicsLayer.
2483
2484         Unfortunately, I couldn't think of a way to test this in an automated fashion.
2485
2486         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2487         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
2488         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2489         (WebKit::DrawingAreaImpl::updateBackingStoreState):
2490             Don't call LayerTreeHost::deviceScaleFactorDidChange() because this
2491             method calls WebPage::setDeviceScaleFactor() and then
2492             LayerTreeHost::deviceScaleFactorDidChange() is called.
2493         * WebProcess/WebPage/LayerTreeHost.h:
2494         (LayerTreeHost):
2495         * WebProcess/WebPage/WebPage.cpp:
2496         (WebKit::WebPage::scalePage):
2497         (WebKit::WebPage::setDeviceScaleFactor):
2498         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2499         (WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged):
2500         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2501         (LayerTreeHostGtk):
2502         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
2503         (LayerTreeHostMac):
2504         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
2505         (WebKit::LayerTreeHostMac::deviceOrPageScaleFactorChanged):
2506
2507 2013-01-29  Anders Carlsson  <andersca@apple.com>
2508
2509         Get rid of MessageID::get()
2510         https://bugs.webkit.org/show_bug.cgi?id=108235
2511
2512         Reviewed by Beth Dakin.
2513
2514         Just check for the message receiver name and message name explicitly instead.
2515
2516         * Platform/CoreIPC/MessageID.h:
2517         (CoreIPC::MessageID::is):
2518         * Shared/CoreIPCSupport/WebContextMessageKinds.h:
2519         (WebContextLegacyMessage::messageReceiverName):
2520         (WebContextLegacyMessage):
2521         (WebContextLegacyMessage::postMessageMessageName):
2522         (WebContextLegacyMessage::postSynchronousMessageMessageName):
2523         * UIProcess/WebContext.cpp:
2524         (WebKit::WebContext::didReceiveMessage):
2525         (WebKit::WebContext::didReceiveSyncMessage):
2526
2527 2013-01-29  Kiran Muppala  <cmuppala@apple.com>
2528
2529         Add support for enabling process suppression in WebProcesses with no visible pages
2530         https://bugs.webkit.org/show_bug.cgi?id=108054
2531
2532         Reviewed by Anders Carlsson.
2533
2534         Provide a preference to enable process suppression in WebProcesses with
2535         no visible pages even if the application is not completely occluded.
2536         This provides more opportunities for process suppression to take effect.
2537
2538         Replace the messaging of application occlusion status from UI process to
2539         ChildProcesses with messages that indicate the current required process
2540         suppression state.  WebProcessProxy should determine if the process is
2541         eligible for process suppression based on both application occlusion
2542         and page visibility.  When either of these parameters changes,
2543         the proxy should message the child process of the updated process
2544         suppression state.
2545
2546         * NetworkProcess/NetworkProcess.messages.in: Rename
2547         SetApplicationIsOccluded to SetProcessSuppressionEnabled.
2548         * PluginProcess/PluginProcess.messages.in: Ditto.
2549         * Shared/ChildProcess.h: 
2550         (WebKit::ChildProcess::processSuppressionEnabled): Rename
2551         applicationIsOccluded.
2552         * Shared/WebPreferencesStore.h: Add a new preference
2553         pageVisibilityBasedProcessSuppressionEnabled, to enabled/disable
2554         process suppression of WebProcesses when all pages are hidden.
2555         * Shared/mac/ChildProcessMac.mm:
2556         (WebKit::ChildProcess::setProcessSuppressionEnabled): Rename
2557         setApplicationIsOccluded.
2558         (WebKit::ChildProcess::platformInitialize): Replace call to
2559         setApplicationIsOccluded with setProcessSuppressionEnabled.
2560         * SharedWorkerProcess/SharedWorkerProcess.messages.in: Rename
2561         SetApplicationIsOccluded to SetProcessSuppressionEnabled.
2562         * UIProcess/API/C/WKPreferences.cpp:
2563         (WKPreferencesSetPageVisibilityBasedProcessSuppressionEnabled):
2564         (WKPreferencesGetPageVisibilityBasedProcessSuppressionEnabled):
2565         * UIProcess/API/C/WKPreferencesPrivate.h:
2566         * UIProcess/Network/NetworkProcessProxy.cpp:
2567         (WebKit::NetworkProcessProxy::didFinishLaunching): Use setter
2568         to update process suppression state instead of messaging directly.
2569         Use WebContext::canEnableProcessSuppressionForNetworkProcess() helper
2570         method to determine if process suppression should be enabled.
2571         * UIProcess/Network/NetworkProcessProxy.h: Rename
2572         setApplicationIsOccluded to setProcessSuppresionEnabled.
2573         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
2574         (WebKit::NetworkProcessProxy::setProcessSuppressionEnabled): Ditto.
2575         * UIProcess/Plugins/PluginProcessManager.h: Ditto.
2576         * UIProcess/Plugins/PluginProcessProxy.cpp:
2577         (WebKit::PluginProcessProxy::didFinishLaunching): Use setter
2578         to update process suppression state instead of messaging directly.
2579         Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
2580         helper method to determine if process suppression should be enabled.
2581         * UIProcess/Plugins/PluginProcessProxy.h: Rename
2582         setApplicationIsOccluded to setProcessSuppresionEnabled.
2583         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
2584         (WebKit::PluginProcessManager::setProcessSuppressionEnabled): Ditto.
2585         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
2586         (WebKit::PluginProcessProxy::setProcessSuppressionEnabled): Ditto.
2587         * UIProcess/SharedWorkers/SharedWorkerProcessManager.h: Ditto.
2588         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.cpp:
2589         (WebKit::SharedWorkerProcessProxy::didFinishLaunching): Use setter
2590         to update process suppression state instead of messaging directly.
2591         Use WebContext::canEnableProcessSuppressionForGlobalChildProcesses()
2592         helper method to determine if process suppression should be enabled.
2593         * UIProcess/SharedWorkers/SharedWorkerProcessProxy.h: Rename
2594         setApplicationIsOccluded to setProcessSuppresionEnabled.
2595         * UIProcess/SharedWorkers/mac/SharedWorkerProcessManagerMac.mm:
2596         (WebKit::SharedWorkerProcessManager::setProcessSuppressionEnabled):
2597         Ditto.
2598         * UIProcess/SharedWorkers/mac/SharedWorkerProcessProxyMac.mm:
2599         (WebKit::SharedWorkerProcessProxy::setProcessSuppressionEnabled): Ditto.
2600         * UIProcess/WebContext.h: Replace applicationIsOccluded() getter with
2601         helper methods to determine if a child process can have process
2602         suppression enabled.
2603         * UIProcess/WebPageProxy.cpp:
2604         (WebKit::WebPageProxy::viewStateDidChange): Notify WebProcessProxy of
2605         page visibility change.
2606         (WebKit::WebPageProxy::preferencesDidChange): Notify WebProcessProxy of
2607         change in preferences.
2608         * UIProcess/WebProcessProxy.cpp:
2609         (WebKit::WebProcessProxy::WebProcessProxy): Initialize member variable
2610         tracking process suppression state to false.
2611         (WebKit::WebProcessProxy::createWebPage): Update set of pages which can
2612         be process suppressed and the resulting process suppression state for
2613         the child process.
2614         (WebKit::WebProcessProxy::addExistingWebPage): Ditto.
2615         (WebKit::WebProcessProxy::removeWebPage): Ditto.
2616         (WebKit::WebProcessProxy::pageVisibilityChanged): Ditto.
2617         (WebKit::WebProcessProxy::pagePreferencesChanged): Ditto.
2618         (WebKit::WebProcessProxy::didFinishLaunching): Call
2619         updateProcessSuppressionState().
2620         * UIProcess/WebProcessProxy.h:
2621         * UIProcess/mac/WebContextMac.mm:
2622         (WebKit::updateProcessSuppressionStateOfGlobalChildProcesses): Use new
2623         helper method canEnableProcessSuppressionForGlobalChildProcesses() to
2624         determine if process suppression should be enabled.
2625         (WebKit::applicationOcclusionStateChanged): Update renamed methods
2626         and variables.
2627         (WebKit::enableOcclusionNotifications): Move OmitProcessSuppression
2628         user default check into canEnableProcessSuppression methods.
2629         (WebKit::omitProcessSuppression):
2630         (WebKit::WebContext::updateProcessSuppressionStateOfChildProcesses):
2631         Use new helper method canEnableProcessSuppressionForNetworkProcess() to
2632         determine if process suppression should be enabled for NetworkProcess.
2633         Let WebProcess update process suppression state based on application
2634         occlusion state and page visibility.
2635         (WebKit::WebContext::canEnableProcessSuppressionForNetworkProcess):
2636         (WebKit::WebContext::canEnableProcessSuppressionForWebProcess):
2637         (WebKit::WebContext::canEnableProcessSuppressionForGlobalChildProcesses):
2638         (WebKit::WebContext::processSuppressionEnabledChanged): Reevaluate if
2639         process suppression is enabled for all contexts and update process
2640         suppression state of global child processes.
2641         * UIProcess/mac/WebProcessProxyMac.mm:
2642         (WebKit::WebProcessProxy::pageIsProcessSuppressible):
2643         (WebKit::WebProcessProxy::allPagesAreProcessSuppressible):
2644         (WebKit::WebProcessProxy::updateProcessSuppressionState):
2645         * WebProcess/WebProcess.messages.in:
2646
2647 2013-01-29  Anders Carlsson  <andersca@apple.com>
2648
2649         Start using the message flag in MessageEncoder/MessageDecoder
2650         https://bugs.webkit.org/show_bug.cgi?id=108227
2651
2652         Reviewed by Beth Dakin.
2653
2654         Stop using the flags in MessageID and store the flags directly in the message instead.
2655         This is another step towards eliminating MessageID.
2656
2657         * Platform/CoreIPC/Connection.cpp:
2658         (CoreIPC::Connection::SyncMessageState::processIncomingMessage):
2659         (CoreIPC::Connection::createSyncMessageEncoder):
2660         (CoreIPC::Connection::sendMessage):
2661         (CoreIPC::Connection::sendSyncMessage):
2662         (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
2663         (CoreIPC::Connection::dispatchSyncMessage):
2664         (CoreIPC::Connection::dispatchMessage):
2665         * Platform/CoreIPC/Connection.h:
2666         * Platform/CoreIPC/MessageDecoder.cpp:
2667         (CoreIPC::MessageDecoder::MessageDecoder):
2668         (CoreIPC::MessageDecoder::isSyncMessage):
2669         (CoreIPC):
2670         (CoreIPC::MessageDecoder::shouldDispatchMessageWhenWaitingForSyncReply):
2671         * Platform/CoreIPC/MessageDecoder.h:
2672         (MessageDecoder):
2673         * Platform/CoreIPC/MessageEncoder.cpp:
2674         (CoreIPC):
2675         (CoreIPC::MessageEncoder::MessageEncoder):
2676         (CoreIPC::MessageEncoder::~MessageEncoder):
2677         (CoreIPC::MessageEncoder::setIsSyncMessage):
2678         (CoreIPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply):
2679         * Platform/CoreIPC/MessageEncoder.h:
2680         (MessageEncoder):
2681         * Platform/CoreIPC/MessageFlags.h: Copied from Source/WebKit2/Platform/CoreIPC/MessageEncoder.h.
2682         (CoreIPC):
2683         * Platform/CoreIPC/MessageID.h:
2684         * WebKit2.xcodeproj/project.pbxproj:
2685
2686 2013-01-29  Anders Carlsson  <andersca@apple.com>
2687
2688         Encode/decode message send flags in the message
2689         https://bugs.webkit.org/show_bug.cgi?id=108208
2690
2691         Reviewed by Beth Dakin.
2692
2693         This is another step towards getting rid of MessageID.
2694
2695         * Platform/CoreIPC/ArgumentDecoder.cpp:
2696         (CoreIPC::ArgumentDecoder::decodeUInt8):
2697         (CoreIPC):
2698         * Platform/CoreIPC/ArgumentDecoder.h:
2699         (ArgumentDecoder):
2700         (CoreIPC::ArgumentDecoder::decode):
2701         (CoreIPC):
2702         * Platform/CoreIPC/ArgumentEncoder.cpp:
2703         (CoreIPC::ArgumentEncoder::encode):
2704         (CoreIPC):
2705         * Platform/CoreIPC/ArgumentEncoder.h:
2706         (ArgumentEncoder):
2707         * Platform/CoreIPC/Connection.cpp:
2708         (CoreIPC::Connection::sendMessage):
2709         * Platform/CoreIPC/MessageDecoder.cpp:
2710         (CoreIPC::MessageDecoder::MessageDecoder):
2711         * Platform/CoreIPC/MessageDecoder.h:
2712         (CoreIPC::MessageDecoder::messageSendFlags):
2713         (MessageDecoder):
2714         * Platform/CoreIPC/MessageEncoder.cpp:
2715         (CoreIPC):
2716         (CoreIPC::MessageEncoder::MessageEncoder):
2717         (CoreIPC::MessageEncoder::~MessageEncoder):
2718         (CoreIPC::MessageEncoder::setMessageSendFlags):
2719         * Platform/CoreIPC/MessageEncoder.h:
2720         (MessageEncoder):
2721         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
2722         (CoreIPC):
2723
2724 2013-01-29  Mario Sanchez Prada  <mario.prada@samsung.com>
2725
2726         [GTK] Missing build flags when building with Harfbuzz
2727         https://bugs.webkit.org/show_bug.cgi?id=108174
2728
2729         Reviewed by Martin Robinson.
2730
2731         Add FREETYPE_CFLAGS and FREETYPE_LIBS to makefiles so -lharfbuzz
2732         parameter will be added to linking lines when needed.
2733
2734         * GNUmakefile.am: Added FREETYPE_CFLAGS and FREETYPE_LIBS.
2735         * UIProcess/API/gtk/tests/GNUmakefile.am: Ditto.
2736
2737 2013-01-29  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2738
2739         [EFL] Unified text checker implementation.
2740         https://bugs.webkit.org/show_bug.cgi?id=107682
2741
2742         Reviewed by Anders Carlsson.
2743
2744         * UIProcess/efl/TextCheckerEfl.cpp:
2745         (WebKit):
2746         (WebKit::TextChecker::checkTextOfParagraph):
2747         Allow to check spelling for multiple words,
2748         their misspelling location and length are saved to the vector.
2749
2750         * WebProcess/WebCoreSupport/WebEditorClient.h:
2751         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2752         (WebKit::WebEditorClient::checkTextOfParagraph):
2753         (WebKit):
2754         As spelling implementation is exposed to UIProcess,
2755         send a meesage to UIProcess to call TextChecker::checkTextOfParagraph.
2756
2757 2013-01-29  Carlos Garcia Campos  <cgarcia@igalia.com>
2758
2759         [GTK] Add API to prefetch DNS of a given hostname to WebKit2 GTK+ API
2760         https://bugs.webkit.org/show_bug.cgi?id=99695
2761
2762         Reviewed by Anders Carlsson.
2763
2764         * UIProcess/API/gtk/WebKitWebContext.cpp:
2765         (webkit_web_context_prefetch_dns): Public method to resolve the
2766         domain name in advance for the given hostname.
2767         * UIProcess/API/gtk/WebKitWebContext.h:
2768         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add
2769         webkit_web_context_prefetch_dns.
2770         * WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
2771         (webkitWebExtensionDidReceiveMessage): Parse PrefetchDNS message
2772         and call WebCore::prefetchDNS() with the given hostname.
2773         (didReceiveMessage): Call webkitWebExtensionDidReceiveMessage().
2774         (webkitWebExtensionCreate): Add implementation for
2775         didReceiveMessage callback.
2776
2777 2013-01-29  Carlos Garcia Campos  <cgarcia@igalia.com>
2778
2779         [GTK] Implement resources API using injected bundle
2780         https://bugs.webkit.org/show_bug.cgi?id=107457
2781
2782         Reviewed by Sam Weinig.
2783
2784         The ResourceLoaderClient was removed from the UI process in
2785         r140285, and most of the GTK+ API depends on resources. This patch
2786         implements the same API using the ResourceLoaderClient from
2787         injected bundle. It fixes the resources unit tests, as well as
2788         other 14 unit tests that are timing out because they depend on
2789         resource API.
2790
2791         * GNUmakefile.list.am: Add new files to compilation.
2792         * Shared/UserMessageCoders.h:
2793         (WebKit::UserMessageEncoder::baseEncode): Add support for encoding
2794         WebURLResponse and WebError objects in user messages.
2795         (WebKit::UserMessageDecoder::baseDecode): Add support for decoding
2796         WebURLResponse and WebError objects from user messages.
2797         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: Added.
2798         (didReceiveWebViewMessageFromInjectedBundle): Handle messages sent
2799         to the WebView. For now it hanldes all the sresource loader client
2800         messages.
2801         (didReceiveMessageFromInjectedBundle): Handle messages received
2802         from injected bundle.
2803         (attachInjectedBundleClientToContext): Initialize the injected
2804         bundle client.
2805         * UIProcess/API/gtk/WebKitInjectedBundleClient.h: Added.
2806         * UIProcess/API/gtk/WebKitWebContext.cpp:
2807         (_WebKitWebContextPrivate): Add a HashMap to map page IDs to
2808         WebKitWebViews.
2809         (createDefaultWebContext): Call
2810         attachInjectedBundleClientToContext() to intialize the injected
2811         bundle client.
2812         (webkitWebContextCreatePageForWebView): Use
2813         webkitWebViewBaseCreateWebPage() to create and initialize a new
2814         WebPageProxy and map the newly created page with the given
2815         WebKitWebView.
2816         (webkitWebContextWebViewDestroyed): Called when the given
2817         WebKitWebView is being destroyed to remove it from the views map.
2818         (webkitWebContextGetWebViewForPage): Returns the WebKitWebView
2819         associated to the given page ID.
2820         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
2821         * UIProcess/API/gtk/WebKitWebView.cpp:
2822         (webkitWebViewConstructed): Use
2823         webkitWebContextCreatePageForWebView() instead of
2824         webkitWebViewBaseCreateWebPage() directly.
2825         (webkitWebViewDispose): Call webkitWebContextWebViewDestroyed() to
2826         notify the context.
2827         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
2828         (didInitiateLoadForResource): Send a message to the UI process
2829         with the callback parameters encoded.
2830         (willSendRequestForFrame): Ditto.
2831         (didReceiveResponseForResource): Ditto.
2832         (didReceiveContentLengthForResource): Ditto.
2833         (didFinishLoadForResource): Ditto.
2834         (didFailLoadForResource): Ditto.
2835         (webkitWebPageCreate): Initialize the
2836         WKBundlePageResourceLoadClient.
2837
2838 2013-01-29  Laszlo Gombos  <l.gombos@samsung.com>
2839
2840         [Qt] Remove misspelled ENABLE(SPEECH_INPUT) guard
2841         https://bugs.webkit.org/show_bug.cgi?id=105683
2842
2843         Reviewed by Simon Hausmann.
2844
2845         The ENABLE(SPEECH_INPUT) guard is only used in one location
2846         in the source tree and as such it is always 0.
2847
2848         I believe that this guard is a left over and is not needed any more
2849         as the code guarded is not guarded anywhere else.
2850
2851         * WebProcess/qt/WebProcessQt.cpp:
2852         (WebKit::WebProcess::platformInitializeWebProcess):
2853
2854 2013-01-29  Zan Dobersek  <zdobersek@igalia.com>
2855
2856         Unreviewed build fix after r141024.
2857         Adding new files to the build.
2858
2859         * GNUmakefile.am:
2860         * GNUmakefile.list.am:
2861
2862 2013-01-29  Jinwoo Song  <jinwoo7.song@samsung.com>
2863
2864         [WK2] Fix unused parameter build warning
2865         https://bugs.webkit.org/show_bug.cgi?id=108156
2866
2867         Reviewed by Kentaro Hara.
2868
2869         Comment out the unused parameters to fix the build warnings.
2870
2871         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2872         * WebProcess/Plugins/PluginProxy.h:
2873
2874 2013-01-28  Jae Hyun Park  <jae.park@company100.net>
2875
2876         [Qt] Build fix
2877         https://bugs.webkit.org/show_bug.cgi?id=108142
2878
2879         Reviewed by Gyuyoung Kim.
2880
2881         Build fix. Though StorageManager was added to WK2 in r141024,
2882         it is not added to Target.pri for qt port.
2883
2884         * Target.pri:
2885
2886 2013-01-28  Huang Dongsung  <luxtella@company100.net>
2887
2888         Coordinated Graphics: Refactor code related to debug border and repaint count.
2889         https://bugs.webkit.org/show_bug.cgi?id=107910
2890
2891         Reviewed by Noam Rosenthal.
2892
2893         There are two big changes:
2894         1. CoordinatedGraphicsLayer sends debugging visuals to UI Process.
2895         2. When updating a backing store, increment a repaint count.
2896
2897         In addition, we don't use QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
2898         environment. EFL, GTK and QT will use WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
2899         after http://webkit.org/b/107198.
2900
2901         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:
2902         (WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
2903         (CoordinatedLayerInfo):
2904         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2905         (WebKit::CoordinatedBackingStore::removeAllTiles):
2906         (WebKit::CoordinatedBackingStore::updateTile):
2907         (WebKit::CoordinatedBackingStore::texture):
2908         (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
2909         (WebKit::CoordinatedBackingStore::adjustedTransformForRect):
2910         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
2911         (WebKit):
2912         (WebKit::CoordinatedBackingStore::drawBorder):
2913             Override TextureMapperPlatformLayer::drawBorder() to draw the border
2914             for each tile.
2915         (WebKit::CoordinatedBackingStore::drawRepaintCounter):
2916         (WebKit::CoordinatedBackingStore::commitTileOperations):
2917         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
2918         (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
2919         (CoordinatedBackingStoreTile):
2920         (CoordinatedBackingStore):
2921         (WebKit::CoordinatedBackingStore::rect):
2922         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2923         (WebKit::CoordinatedLayerTreeHostProxy::setLayerRepaintCount):
2924         (WebKit):
2925         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2926         (CoordinatedLayerTreeHostProxy):
2927         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
2928         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2929         (WebKit::LayerTreeRenderer::setLayerRepaintCount):
2930         (WebKit):
2931         (WebKit::LayerTreeRenderer::setLayerState):
2932         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2933         (LayerTreeRenderer):
2934         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2935         (WebCore::CoordinatedGraphicsLayer::setShowDebugBorder):
2936         (WebCore):
2937         (WebCore::CoordinatedGraphicsLayer::setShowRepaintCounter):
2938         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
2939         (WebCore::CoordinatedGraphicsLayer::setDebugBorder):
2940         (WebCore::CoordinatedGraphicsLayer::tiledBackingStorePaintEnd):
2941         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2942         (CoordinatedGraphicsLayerClient):
2943         (CoordinatedGraphicsLayer):
2944         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2945         (WebKit::CoordinatedLayerTreeHost::setLayerRepaintCount):
2946         (WebKit):
2947         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2948
2949 2013-01-28  Sam Weinig  <sam@webkit.org>
2950
2951         Remove support from ArgumentEncoder for deprecated encode functions
2952         https://bugs.webkit.org/show_bug.cgi?id=108155
2953
2954         Reviewed by Dan Bernstein.
2955
2956         * Platform/CoreIPC/ArgumentEncoder.h:
2957         (CoreIPC::ArgumentEncoder::encode):
2958
2959 2013-01-28  Sam Weinig  <sam@webkit.org>
2960
2961         Disable default use of the Plug-in XPCService until we can
2962         figure out how to deal with the 32-bit one.
2963
2964         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
2965         (WebKit::shouldUseXPC):
2966         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
2967
2968 2013-01-28  Sam Weinig  <sam@webkit.org>
2969
2970         Plug-ins should initialize their sandbox at creation time
2971         https://bugs.webkit.org/show_bug.cgi?id=108098
2972
2973         Reviewed by Anders Carlsson.
2974
2975         Add the ability to add string key/value pairs to process creation parameters
2976         to allow the plugin process to get passed the plugin path which in turn allows
2977         the plugin to initialize its sandbox at the correct time.
2978
2979         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm:
2980         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm:
2981         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
2982         (NetworkServiceInitializer):
2983         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
2984         (WebKit::PluginProcessMainDelegate::getExtraData):
2985         (PluginProcessMainDelegate):
2986         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm:
2987         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm:
2988         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm:
2989         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
2990         (WebKit):
2991         (PluginServiceInitializerDelegate):
2992         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
2993         (WebKit::PluginServiceInitializerDelegate::getExtraData):
2994         (PluginServiceInitializer):
2995         * PluginProcess/PluginProcess.cpp:
2996         (WebKit::PluginProcess::initializeProcess):
2997         (WebKit::PluginProcess::initializePluginProcess):
2998         (WebKit::PluginProcess::initializeProcessName):
2999         (WebKit::PluginProcess::initializeSandbox):
3000         * PluginProcess/PluginProcess.h:
3001         * PluginProcess/mac/PluginProcessMac.mm:
3002         (WebKit::PluginProcess::platformInitializePluginProcess):
3003         (WebKit::PluginProcess::platformInitializeProcess):
3004         (WebKit::PluginProcess::initializeProcessName):
3005         (WebKit::PluginProcess::initializeSandbox):
3006         * Shared/ChildProcess.h:
3007         (ChildProcessInitializationParameters):
3008         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:
3009         (ChildProcessMainDelegate):
3010         (WebKit::ChildProcessMain):
3011         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:
3012         (WebKit::ChildProcessMainDelegate::getExtraData):
3013         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
3014         (WebKit::XPCServiceEventHandler):
3015         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h:
3016         (WebKit::XPCServiceEventHandler):
3017         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Added.
3018         (XPCServiceInitializerDelegate):
3019         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
3020         (WebKit::XPCServiceInitializer):
3021         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Added.
3022         (WebKit::XPCServiceInitializerDelegate::~XPCServiceInitializerDelegate):
3023         (WebKit::XPCServiceInitializerDelegate::getConnectionIdentifier):
3024         (WebKit::XPCServiceInitializerDelegate::getClientIdentifier):
3025         (WebKit::XPCServiceInitializerDelegate::getClientProcessName):
3026         (WebKit::XPCServiceInitializerDelegate::getExtraData):
3027         * Shared/Plugins/PluginProcessCreationParameters.cpp:
3028         (WebKit::PluginProcessCreationParameters::encode):
3029         (WebKit::PluginProcessCreationParameters::decode):
3030         * Shared/Plugins/PluginProcessCreationParameters.h:
3031         (PluginProcessCreationParameters):
3032         * UIProcess/Launcher/ProcessLauncher.h:
3033         (LaunchOptions):
3034         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
3035         (WebKit::connectToService):
3036         (WebKit::connectToReExecService):
3037         (WebKit::createService):
3038         (WebKit::createProcess):
3039         (WebKit::ProcessLauncher::launchProcess):
3040         * UIProcess/Plugins/PluginProcessProxy.cpp:
3041         (WebKit::PluginProcessProxy::didFinishLaunching):
3042         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
3043         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
3044         (WebKit::PluginProcessProxy::platformInitializePluginProcess):
3045         * WebKit2.xcodeproj/project.pbxproj:
3046         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
3047         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
3048         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
3049         (WebContentServiceInitializer):
3050
3051 2013-01-28  Kiran Muppala  <cmuppala@apple.com>
3052
3053         Add window occlusion criteria to determine page visibility on Mac
3054         https://bugs.webkit.org/show_bug.cgi?id=107494
3055
3056         Reviewed by Simon Fraser.
3057
3058         * UIProcess/API/mac/PageClientImpl.mm:
3059         (WebKit::PageClientImpl::isViewVisible): Add window occlusion check.
3060         * UIProcess/API/mac/WKView.mm:
3061         (-[WKView dealloc]): Remove self from the all views vector.
3062         (-[WKView addWindowObserversForWindow:]): Register observer for
3063         NSWindowWillOrderOffScreenNotification.
3064         (-[WKView removeWindowObservers]): Unregister observer for
3065         NSWindowWillOrderOffScreenNotification.
3066         (-[WKView viewWillMoveToWindow:]): Disable occlusion notifications.
3067         (-[WKView viewDidMoveToWindow]): Enable occlusion notifications.
3068         (-[WKView _windowWillOrderOffScreen:]): Disable occlusion notifications.
3069         (-[WKView _windowDidOrderOnScreen:]): Enable occlusion notifications.
3070         This notification ensures that occlusion notifications are registered
3071         correctly even if the NSWindow object is assigned a window number after
3072         the viewDidMoveToWindow notification has been received.  This occurs
3073         for instance during application launch.
3074         (-[WKView _setIsWindowOccluded:]):
3075         (-[WKView _enableWindowOcclusionNotifications]):
3076         (-[WKView _disableWindowOcclusionNotifications]):
3077         (windowBecameVisible):
3078         (windowBecameOccluded):
3079         (+[WKView _registerWindowOcclusionNotificationHandlers]):
3080         (+[WKView _unregisterWindowOcclusionNotificationHandlers]):
3081         (+[WKView _allViews]):
3082         (-[WKView _isWindowOccluded]):
3083         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]): Add
3084         self to the all views vector.
3085         * UIProcess/API/mac/WKViewInternal.h:
3086
3087 2013-01-28  Huang Dongsung  <luxtella@company100.net>
3088
3089         [TexMap] Enable debug borders and repaint counter via Settings.
3090         https://bugs.webkit.org/show_bug.cgi?id=107198
3091
3092         Reviewed by Benjamin Poulain.
3093
3094         Currently, if the environment variable WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS
3095         is set to 1, only CoordinatedBacking shows debug borders and repaint counter.
3096
3097         This patch makes the environment variable change Settings.
3098
3099         In addition, Qt uses WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS instead of
3100         QT_WEBKIT_SHOW_COMPOSITING_DEBUG_VISUALS from now.
3101
3102         After Bug 105787, all backing stores and platform layers in TextureMapper can
3103         show debug borders and repaint counter.
3104
3105         * UIProcess/API/efl/EwkView.cpp:
3106         (EwkView::EwkView):
3107         * UIProcess/API/gtk/WebKitSettings.cpp:
3108         (webKitSettingsSetProperty):
3109         * UIProcess/API/qt/qquickwebview.cpp:
3110         (QQuickWebViewPrivate::initialize):
3111
3112 2013-01-28  Anders Carlsson  <andersca@apple.com>
3113
3114         Move Mach port handling from WorkQueue to Connection
3115         https://bugs.webkit.org/show_bug.cgi?id=108140
3116
3117         Reviewed by Sam Weinig.
3118
3119         Instead of having WorkQueue know about Mach port sources, just fold that
3120         functionality directly into Connection. This lets us get rid of the generic source
3121         handling from WorkQueue.
3122
3123         * Platform/CoreIPC/Connection.h:
3124         (Connection):
3125         * Platform/CoreIPC/mac/ConnectionMac.cpp:
3126         (CoreIPC::Connection::platformInvalidate):
3127         (CoreIPC::createDataAvailableSource):
3128         (CoreIPC):
3129         (CoreIPC::Connection::open):
3130         (CoreIPC::Connection::initializeDeadNameSource):
3131         * Platform/WorkQueue.h:
3132         (WorkQueue::dispatchQueue):
3133         (WorkQueue):
3134         * Platform/mac/WorkQueueMac.cpp:
3135         (WorkQueue::platformInvalidate):
3136
3137 2013-01-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3138
3139         Add StorageManager class to cmake ports
3140
3141         Unreviewed build fix. Though StorageManager was added to WK2 in r141024,
3142         it is not added to cmake ports(EFL).
3143
3144         * CMakeLists.txt:
3145         * PlatformEfl.cmake:
3146
3147 2013-01-28  Sam Weinig  <sam@webkit.org>
3148
3149         <rdar://problem/13098777>
3150         Add (allow mach-lookup (global-name "com.apple.tccd.system"))
3151
3152         Reviewed by Maciej Stachowiak.
3153
3154         * WebProcess/com.apple.WebProcess.sb.in:
3155
3156 2013-01-28  Brady Eidson  <beidson@apple.com>
3157
3158         WebKit2 should notify the client if the NetworkProcess crashes.
3159         <rdar://problem/13090513> and https://bugs.webkit.org/show_bug.cgi?id=108126
3160
3161         Reviewed by Sam Weinig.
3162
3163         Add new client callback to the ContextClient:
3164         * UIProcess/API/C/WKContext.h:
3165         * UIProcess/WebContextClient.cpp:
3166         (WebKit::WebContextClient::networkProcessDidCrash):
3167         * UIProcess/WebContextClient.h:
3168
3169         Call out to the client when the NetworkProcess crashes:
3170         * UIProcess/WebContext.cpp:
3171         (WebKit::WebContext::networkProcessCrashed):
3172         * UIProcess/WebContext.h:
3173
3174         * UIProcess/Network/NetworkProcessProxy.cpp:
3175         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
3176
3177 2013-01-28  Pratik Solanki  <psolanki@apple.com>
3178
3179         PLATFORM(IOS) should come before __MAC_OS_X_VERSION_MIN_REQUIRED
3180         https://bugs.webkit.org/show_bug.cgi?id=108101
3181
3182         Reviewed by Benjamin Poulain.
3183
3184         Since iOS does not define __MAC_OS_X_VERSION_MIN_REQUIRED, any usage of
3185         __MAC_OS_X_VERSION_MIN_REQUIRED should be after a PLATFORM(IOS) check.
3186
3187         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3188         (InitWebCoreSystemInterface):
3189
3190 2013-01-28  Anders Carlsson  <andersca@apple.com>
3191
3192         Add StorageManager class
3193         https://bugs.webkit.org/show_bug.cgi?id=108127
3194
3195         Reviewed by Sam Weinig.
3196
3197         The StorageManager will be in charge of handling access to local and session storage
3198         in the UI process.
3199
3200         * UIProcess/Storage/StorageManager.cpp: Added.
3201         * UIProcess/Storage/StorageManager.h: Added.
3202         * WebKit2.xcodeproj/project.pbxproj:
3203
3204 2013-01-28  Anders Carlsson  <andersca@apple.com>
3205
3206         More work on UI side local storage
3207         https://bugs.webkit.org/show_bug.cgi?id=108119
3208
3209         Reviewed by Beth Dakin.
3210
3211         * WebKit2.xcodeproj/project.pbxproj:
3212         * WebProcess/Storage/StorageNamespaceProxy.cpp:
3213         (WebKit::StorageNamespaceProxy::createSessionStorageNamespace):
3214         Rename create to createSessionStorageNamespace and make it take a WebPage.
3215
3216         (WebKit::StorageNamespaceProxy::StorageNamespaceProxy):
3217         Add WebPage parameter.
3218     
3219         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3220         (WebKit::WebPlatformStrategies::sessionStorageNamespace):
3221         Add an #ifdef for enabling UI side storage.
3222         
3223         * WebProcess/WebPage/WebFrame.cpp:
3224         (WebKit::WebFrame::page):
3225         Call new WebPage::fromCorePage helper.
3226
3227         * WebProcess/WebPage/WebPage.cpp:
3228         (WebKit::WebPage::fromCorePage):
3229         Add new function for getting a WebPage from a WebCore::Page.
3230
3231 2013-01-28  Joseph Pecoraro  <pecoraro@apple.com>
3232
3233         Improve PageVisibility API with enums
3234         https://bugs.webkit.org/show_bug.cgi?id=107364
3235
3236         Reviewed by Sam Weinig.
3237
3238         * Shared/API/c/WKPageVisibilityTypes.h: Added.
3239         * Shared/API/c/WKSharedAPICast.h:
3240         (WebKit::toPageVisibilityState):
3241         Create an enum for page visibility APIs and a conversion function
3242         for the WK2 values to WebCore values.
3243
3244         * Target.pri:
3245         * GNUmakefile.list.am:
3246         * WebKit2.xcodeproj/project.pbxproj:
3247         Add WKPageVisibilityTypes.h to the build as a private export.
3248
3249         * UIProcess/API/C/WKPage.h:
3250         * UIProcess/API/C/WKPage.cpp:
3251         (WKPageSetVisibilityState):
3252         * UIProcess/WebPageProxy.h:
3253         * UIProcess/WebPageProxy.cpp:
3254         (WebKit::WebPageProxy::setVisibilityState):
3255         UIProcess API to set visibility state. WebPageProxy already
3256         had m_visibilityState, so update that when setter is used.
3257
3258         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
3259         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
3260         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3261         * WebProcess/InjectedBundle/InjectedBundle.h:
3262         Remove the old SPI for WebKitTestRunner. Tests now use the C API.
3263
3264         * WebProcess/WebPage/WebPage.h:
3265         * WebProcess/WebPage/WebPage.cpp:
3266         (WebKit::WebPage::setVisibilityState):
3267         * WebProcess/WebPage/WebPage.messages.in:
3268         Update the existing WebPage API to use uint32_t, which matches
3269         other enum message types.
3270
3271 2013-01-28  Christophe Dumez  <christophe.dumez@intel.com>
3272
3273         [EFL][WK2] Use C API inside ewk_download_job
3274         https://bugs.webkit.org/show_bug.cgi?id=107810
3275
3276         Reviewed by Anders Carlsson.
3277
3278         Use C API inside ewk_download_job instead of accessing internal C++
3279         classes directly, to avoid violating API layering.
3280
3281         * UIProcess/API/C/WKDownload.cpp:
3282         (WKDownloadGetID): Add C API to get the download ID as we need it to
3283         support our public API and it seems like a useful addition.
3284         * UIProcess/API/C/WKDownload.h:
3285         * UIProcess/API/efl/ewk_download_job.cpp:
3286         (EwkDownloadJob::EwkDownloadJob):
3287         (EwkDownloadJob::id):
3288         (EwkDownloadJob::request):
3289         (EwkDownloadJob::cancel):
3290         * UIProcess/API/efl/ewk_download_job_private.h:
3291         (EwkDownloadJob::create):
3292         (EwkDownloadJob):
3293         * UIProcess/efl/DownloadManagerEfl.cpp:
3294         (WebKit::DownloadManagerEfl::decideDestinationWithSuggestedFilename):
3295         (WebKit::DownloadManagerEfl::didReceiveResponse):
3296         (WebKit::DownloadManagerEfl::didCreateDestination):
3297         (WebKit::DownloadManagerEfl::didReceiveData):
3298         (WebKit::DownloadManagerEfl::didFail):
3299         (WebKit::DownloadManagerEfl::didCancel):
3300         (WebKit::DownloadManagerEfl::didFinish):
3301         (WebKit::DownloadManagerEfl::registerDownloadJob): Rename
3302         registerDownload() to registerDownloadJob() for consistency with
3303         unregisterDownloadJob().
3304         (WebKit::DownloadManagerEfl::ewkDownloadJob): Rename downloadJob() to
3305         ewkDownloadJob() for clarity since it returns a EwkDownload object.
3306         Also take a WKDownloadRef in argument instead of an identifier since
3307         all the callers have a WKDownloadRef and it makes their code simpler.
3308         Finally, make the getter non-const since it returns a non-const pointer.
3309         (WebKit::DownloadManagerEfl::unregisterDownloadJob): Take a
3310         WKDownloadRef in argument instead of an identifier since all the
3311         callers have a WKDownloadRef and it makes their code simpler.
3312         * UIProcess/efl/DownloadManagerEfl.h:
3313         (DownloadManagerEfl):
3314         * UIProcess/efl/PageClientBase.cpp:
3315         (WebKit::PageClientBase::handleDownloadRequest):
3316
3317 2013-01-28  Tim Horton  <timothy_horton@apple.com>
3318
3319         PDFPlugin: getMainResourceDataOfFrame should return PDFPlugin's data so that Save... works
3320         https://bugs.webkit.org/show_bug.cgi?id=108060
3321         <rdar://problem/13075454>
3322
3323         Reviewed by Sam Weinig.
3324
3325         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Implement getResourceData.
3326         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
3327         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Implement getResourceData, returning the accumulated
3328         data if it exists and has finished loading.
3329         (WebKit::SimplePDFPlugin::getResourceData):
3330         * WebProcess/Plugins/Plugin.h: Add getResourceData, which hands out a raw pointer/size pair
3331         to the plugin's "main resource" data.
3332         * WebProcess/Plugins/PluginProxy.h: Implement getResourceData.
3333         * WebProcess/Plugins/PluginView.cpp:
3334         (WebKit::PluginView::getResourceData): Forward getResourceData through to the plugin.
3335         * WebProcess/Plugins/PluginView.h:
3336         * WebProcess/WebPage/WebPage.cpp:
3337         (WebKit::WebPage::getMainResourceDataOfFrame): If the requested frame is backed by a PluginDocument,
3338         attempt to ask the PluginView for its resource data.
3339
3340 2013-01-28  Tim Horton  <timothy_horton@apple.com>
3341
3342         [wk2] WKView's intrinsicContentSize should only report a flexible width if the content width is less than the minimum width
3343         https://bugs.webkit.org/show_bug.cgi?id=108056
3344
3345         Reviewed by Simon Fraser.
3346
3347         We're currently reporting a flexible width if the intrinsic
3348         content size is less than *or equal* to the minimum layout
3349         width. This is wrong and causes ping-ponging between flexible
3350         and inflexible width in cases where autolayout fits our
3351         view to exactly the intrinsic content size. It should be strictly
3352         less than instead.
3353
3354         * UIProcess/API/mac/WKView.mm:
3355         (-[WKView _setIntrinsicContentSize:]):
3356
3357 2013-01-28  Anders Carlsson  <andersca@apple.com>
3358
3359         Add StorageStrategy member functions to WebKit2
3360         https://bugs.webkit.org/show_bug.cgi?id=108105
3361
3362         Reviewed by Tim Horton.
3363
3364         Add default implementations that just chain up to the base class for now.
3365
3366         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3367         (WebKit::WebPlatformStrategies::localStorageNamespace):
3368         (WebKit::WebPlatformStrategies::sessionStorageNamespace):
3369         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
3370         (WebPlatformStrategies):
3371
3372 2013-01-28  Adam Barth  <abarth@webkit.org>
3373
3374         Remove webkitNotifications.createHTMLNotification
3375         https://bugs.webkit.org/show_bug.cgi?id=107598
3376
3377         Reviewed by Benjamin Poulain.
3378
3379         * Configurations/FeatureDefines.xcconfig:
3380
3381 2013-01-28  Andy Estes  <aestes@apple.com>
3382
3383         Fix non-fat builds by excluding PluginService.32 as a target dependency for WebKit2.
3384
3385         * WebKit2.xcodeproj/project.pbxproj:
3386
3387 2013-01-28  Renata Hodovan  <reni@webkit.org>
3388
3389         [Qt][Win][WK2] Build fix after r140957.
3390
3391         Rubber-stamped by Csaba Osztrogonác.
3392
3393         <sys/wait.h> is only needed and available on linux therefore it's moved into an ifdef block.
3394
3395         * WebProcess/qt/WebProcessMainQt.cpp:
3396
3397 2013-01-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3398
3399         [EFL][WK2] Use C API inside ewk_url_response
3400         https://bugs.webkit.org/show_bug.cgi?id=107826
3401
3402         Reviewed by Andreas Kling.
3403
3404         * Shared/API/c/WKURLResponse.cpp:
3405         (WKURLResponseGetExpectedContentsLength):
3406         * Shared/API/c/WKURLResponse.h:
3407
3408             Add new WK2 C API to get the expected contents length.
3409
3410         * UIProcess/API/efl/ewk_url_response.cpp:
3411         (EwkUrlResponse::EwkUrlResponse):
3412         (EwkUrlResponse::httpStatusCode):
3413         (EwkUrlResponse::contentLength):
3414         * UIProcess/API/efl/ewk_url_response_private.h:
3415         (EwkUrlResponse::create):
3416         (EwkUrlResponse):
3417
3418             Change the methods to not call WebCore methods.
3419
3420 2013-01-28  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3421
3422         [WK2][EFL] Remove unneeded private methods
3423         https://bugs.webkit.org/show_bug.cgi?id=107693
3424
3425         Reviewed by Andreas Kling.
3426
3427         Care has been taken to verify that the wrappers can
3428         never be null when called.
3429
3430         * UIProcess/API/efl/EwkViewImpl.cpp:
3431         (EwkViewImpl::displayTimerFired):
3432         (EwkViewImpl::createGLSurface):
3433         * UIProcess/API/efl/EwkViewImpl.h:
3434         (EwkViewImpl):
3435
3436 2013-01-28  Renata Hodovan  <reni@webkit.org>
3437
3438         [WK2] Putting QtWebProcess into a chrooted sandbox
3439         https://bugs.webkit.org/show_bug.cgi?id=90005
3440
3441         Reviewed by Anders Carlsson and Zoltan Herczeg.
3442
3443         This new feature makes possible to run WebProcess inside a chroot. In this case UIProcess calls the
3444         internal SandboxProcess binary what makes up an environment for WebProcess inside the sandbox and runs the WebProcess.
3445         SandboxProcess first creates two needed device files (random and urandom), mounts filesystems (proc and shared memory),
3446         then links run-time dependencies of WebProcess. After this, SandboxProcess moves to a new pid namespace (cloning with
3447         CLONE_NEWPID flag). Then after an other cloning (with CLONE_FS flag) we share our filesystem with our children. This is
3448         needed because we want to call chroot() function from here and jail our child (WebProcess) too. This will be performed
3449         when WebProcess sends a request for it via an socketpair. If sandboxing is done, SandboxProcess exits.
3450         Since chroot() system call needs sudoer rights SandboxProcess binary should have set its suid flag. However we can reduce
3451         its capabilites. First we restrict the capabilities of the process and the number of its possible resources. Furthermore
3452         we fallback to the nobody or the real user.
3453
3454         * Configurations/FeatureDefines.xcconfig:
3455         * SandboxProcess.pro: Added.
3456         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.cpp: Added.
3457         (launchChangeRootHelper):
3458         (setEnvironmentVariablesForChangeRootHelper):
3459         (prepareAndStartChangeRootHelper):
3460         (setCapabilities):
3461         (dropPrivileges):
3462         (fileExists):
3463         (directoryPermissions):
3464         (createDirectory):
3465         (createDirectoryPath):
3466         (createDeviceFiles):
3467         (mountFileSystems):
3468         (linkFile):
3469         (linkDirectory):
3470         (collectRunTimeDependencies):
3471         (setupXauthorityForNobodyUser):
3472         (initSandbox):
3473         (restrictCapabilities):
3474         (moveToNewPidNamespace):
3475         (run):
3476         (main):
3477         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.h: Added.
3478         * Shared/linux/SandboxProcess/StringOperations.cpp: Added.
3479         (stringCopy):
3480         (stringConcat):
3481         (stringAppend):
3482         * Shared/linux/SandboxProcess/StringOperations.h: Added.
3483         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
3484         (WebKit::ProcessLauncher::launchProcess):
3485         * WebKit2.pri:
3486         * WebProcess.pro:
3487         * WebProcess/qt/WebProcessMainQt.cpp:
3488         (WebKit):
3489         (WebKit::chrootMe):
3490         (WebKit::WebProcessMainQt):
3491
3492 2013-01-28  Christophe Dumez  <christophe.dumez@intel.com>
3493
3494         [EFL][WK2] Rely more on C API in ewk_favicon_database
3495         https://bugs.webkit.org/show_bug.cgi?id=108035
3496
3497         Reviewed by Benjamin Poulain.
3498
3499         Rely less on internal C++ API in ewk_favicon_database and use C API
3500         instead of avoid breaking API layering.
3501
3502         * PlatformEfl.cmake:
3503         * UIProcess/API/C/cairo/WKIconDatabaseCairo.cpp: Added.
3504         (WKIconDatabaseTryGetCairoSurfaceForURL): Add C API for getting the
3505         favicon for a given page URL as a cairo_surface_t*.
3506         * UIProcess/API/C/cairo/WKIconDatabaseCairo.h: Added.
3507         * UIProcess/API/efl/ewk_favicon_database.cpp:
3508         (EwkFaviconDatabase::didChangeIconForPageURL):
3509         (EwkFaviconDatabase::getIconSurfaceSynchronously):
3510         (EwkFaviconDatabase::iconDataReadyForPageURL):
3511
3512 2013-01-27  Alexey Proskuryakov  <ap@apple.com>
3513
3514         Fix location of sandbox profiles in built products
3515         https://bugs.webkit.org/show_bug.cgi?id=108026
3516
3517         Reviewed by Sam Weinig.
3518
3519         * WebKit2.xcodeproj/project.pbxproj: Sandbox profiles go into WebKit2 framework resources.
3520
3521 2013-01-27  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
3522
3523         Fixing atomicIncrement implementation for Windows by dropping support before XP SP2.
3524         https://bugs.webkit.org/show_bug.cgi?id=106740
3525
3526         Reviewed by Benjamin Poulain.
3527
3528         * config.h:
3529
3530 2013-01-27  Sam Weinig  <sam@webkit.org>
3531
3532         Add support for launching WebKit2 plugins using XPC
3533         https://bugs.webkit.org/show_bug.cgi?id=108040
3534
3535         Reviewed by Dan Bernstein.
3536
3537         * Configurations/PluginService.32.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
3538         * Configurations/PluginService.64.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
3539         * Configurations/PluginService.Development.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
3540         Add configurations.
3541
3542         * PluginProcess/EntryPoint/mac/XPCService: Added.
3543         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32: Added.
3544         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
3545         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
3546         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64: Added.
3547         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/Info.plist: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist.
3548         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/PluginService.64.Main.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm.
3549         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Added.
3550         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Added.
3551         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/PluginService.Development.Main.mm: Added.
3552         (main):
3553         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm: Copied from Source/WebKit2/NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm.
3554         (initializePluginService):
3555         Add entry points.
3556
3557         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
3558         (WebKit::serviceName):
3559         Add plugin process service names and move into correct #ifdef.
3560
3561         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
3562         (WebKit::shouldUseXPC):
3563         (WebKit::PluginProcessProxy::platformInitializeLaunchOptions):
3564         Opt into xpc using the same rules as the WebProcess.
3565
3566         * WebKit2.xcodeproj/project.pbxproj:
3567         Add files.
3568
3569 2013-01-26  Alexey Proskuryakov  <ap@apple.com>
3570
3571         Use shared ChildProcess code to enter plug-in sandbox.
3572
3573         Reviewed by Sam Weinig.
3574
3575         There is one known behavior change from this refactoring: getpwuid_r is used
3576         instead of NSHomeDirectory for home directory, mathcing other client processes.
3577
3578         * PluginProcess/PluginProcess.cpp: (WebKit::PluginProcess::enterSandbox):
3579         * PluginProcess/PluginProcess.h:
3580         PluginProcess prevents ChildProcess attempt to enter the sandbox immediately on
3581         launch for now, because we don't have a sandbox profile directory path yet.
3582         It now keeps a copy of ChildProcessInitializationParameters, so that
3583         ChildProcess::initializeSandbox() could be called later.
3584
3585         * PluginProcess/mac/PluginProcessMac.mm:
3586         (WebKit::PluginProcess::platformInitializeProcess): Store a copy of ChildProcessInitializationParameters
3587         for later.
3588         (WebKit::loadSandboxProfile): Build a sandbox profile from a common prefix and
3589         a plugin-specific part.
3590         (WebKit::PluginProcess::platformInitializePluginProcess): We can enter the sandbox now.
3591         (WebKit::PluginProcess::enterSandbox): Prepare SandboxInitializationParameters,
3592         and call ChildProcess::initializeSandbox().
3593
3594         * Shared/mac/ChildProcessMac.mm:
3595         (WebKit::ChildProcess::initializeSandbox): Actually handle system directory suffix
3596         from parameters.
3597
3598         * WebKit2.xcodeproj/project.pbxproj:
3599         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.h: Removed.
3600         * WebProcess/Plugins/Netscape/mac/NetscapeSandboxFunctions.mm: Removed.
3601
3602 2013-01-26  Sam Weinig  <sam@webkit.org>
3603
3604         Add support for running the networking process as an XPCService
3605         https://bugs.webkit.org/show_bug.cgi?id=108025
3606
3607         Reviewed by Dan Bernstein.
3608
3609         * Configurations/NetworkService.Development.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.Development.xcconfig.
3610         * Configurations/NetworkService.xcconfig: Copied from Source/WebKit2/Configurations/WebContentService.xcconfig.
3611         Add configurations.
3612
3613         * NetworkProcess/EntryPoint/mac/XPCService: Added.
3614         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService: Added.
3615         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development: Added.
3616         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info.plist: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist.
3617         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/NetworkServiceMain.Development.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm.
3618         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info.plist: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist.
3619         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/NetworkServiceMain.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm.
3620         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm: Copied from Source/WebKit2/WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm.
3621         (initializeNetworkService):
3622         Add entry points.
3623
3624         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
3625         (WebKit::serviceName):
3626         (WebKit::connectToServiceForDevelopment):
3627         (WebKit::createServiceForDevelopment):
3628         (WebKit::createService):
3629         (WebKit::createProcess):
3630         (WebKit::ProcessLauncher::launchProcess):
3631         Rework service creation to work for arbitrary services.
3632
3633         * UIProcess/Network/NetworkProcessProxy.cpp:
3634         (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
3635         (WebKit::NetworkProcessProxy::getLaunchOptions):
3636         * UIProcess/Network/NetworkProcessProxy.h:
3637         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
3638         (WebKit::shouldUseXPC):
3639         (WebKit::NetworkProcessProxy::platformGetLaunchOptions):
3640         Opt into xpc using the same rules as the WebProcess.
3641
3642         * WebKit2.xcodeproj/project.pbxproj:
3643         Update files.
3644
3645         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
3646         (initializeWebContentService):
3647         Fix the comment to refer to the shim correctly.
3648
3649 2013-01-26  Sam Weinig  <sam@webkit.org>
3650
3651         Simplify environment creation in XPC service re-exec
3652         https://bugs.webkit.org/show_bug.cgi?id=108017
3653
3654         Reviewed by Dan Bernstein.
3655
3656         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
3657         (WebKit::XPCServiceEventHandler):
3658         There is no need to copy these strings.
3659
3660 2013-01-26  Alexey Proskuryakov  <ap@apple.com>
3661
3662         Remove code for handling NetworkProcess authentication challenges in WebProcess
3663         https://bugs.webkit.org/show_bug.cgi?id=108003
3664
3665         Reviewed by Sam Weinig.
3666
3667         * DerivedSources.make:
3668         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
3669         (WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
3670         * WebKit2.xcodeproj/project.pbxproj:
3671         * NetworkProcess/NetworkResourceLoader.messages.in: Removed. We no longer have
3672         an messages to NetworkResourceLoader.
3673
3674         * Shared/WebCoreArgumentCoders.cpp:
3675         (CoreIPC::::encode):
3676         (CoreIPC::::decode):
3677         There is no longer an identifier inside AuthenticationChallenge.
3678
3679         * NetworkProcess/NetworkResourceLoader.cpp:
3680         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
3681         (WebKit::NetworkResourceLoader::didCancelAuthenticationChallenge):
3682         * NetworkProcess/NetworkResourceLoader.h:
3683         Removed code for receiving authentication responses from WebProcess. Removed
3684         m_currentAuthenticationChallenge - AuthenticationMAnager now keeps track of that.
3685
3686         * WebProcess/Network/WebResourceLoader.cpp:
3687         * WebProcess/Network/WebResourceLoader.h:
3688         * WebProcess/Network/WebResourceLoader.messages.in:
3689         Removed code for handling authentication challenges. They are now sent directly to
3690         UI Process. The only thing WebProcess still does is decide whether is can authenticate
3691         against a particular authentication space.
3692
3693 2013-01-26  Sam Weinig  <sam@webkit.org>
3694
3695         Fix the development build.
3696
3697         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h:
3698         (WebKit::XPCServiceEventHandler):
3699         Use the right stringizer.
3700
3701 2013-01-26  Sam Weinig  <sam@webkit.org>
3702
3703         Refactor XPCService initialization to make it easier to add more services
3704         https://bugs.webkit.org/show_bug.cgi?id=108015
3705
3706         Reviewed by Dan Bernstein.
3707
3708         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.Development.h: Added.
3709         (WebKit::XPCServiceEventHandler):
3710         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceBootstrapper.h: Added.
3711         (WebKit::XPCServiceEventHandler):
3712         Move bootstrapping to Shared (like we have for the legacy process). For now, we use
3713         a macro to define the actual initialization point function to use, in the future, we
3714         could consider alternatives, such as getting the function name from the bundle.
3715
3716         * WebKit2.xcodeproj/project.pbxproj:
3717         Update files.
3718
3719         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm:
3720         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm:
3721         Simplify to use the new XPCServiceBootstrapper.
3722
3723         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm: Copied from Source/WebKit2/WebProcess/mac/WebProcessServiceEntryPoints.mm.
3724         (initializeWebContentService):
3725         * WebProcess/mac/WebProcessServiceEntryPoints.h: Removed.
3726         * WebProcess/mac/WebProcessServiceEntryPoints.mm: Removed.
3727         Move the entry point to where it belongs and extract the bootstrapping parts.
3728
3729 2013-01-26  Adenilson Cavalcanti  <cavalcantii@gmail.com>
3730
3731         [Qt]Qt build fix
3732         https://bugs.webkit.org/show_bug.cgi?id=108013
3733
3734         Changes on process initialization classes broke webkit building with Qt5. This
3735         patch fix it.
3736
3737         Reviewed by Sam Weinig.
3738
3739         * PluginProcess/qt/PluginProcessMainQt.cpp:
3740
3741 2013-01-26  Sam Weinig  <sam@webkit.org>
3742
3743         Hoist command line parsing into ChildProcessMain
3744         https://bugs.webkit.org/show_bug.cgi?id=108010
3745
3746         Reviewed by Dan Bernstein.
3747
3748         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMain.mm:
3749         (NetworkProcessMain):
3750         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
3751         (PluginProcessMain):
3752         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h:
3753         (WebKit::ChildProcessMain):
3754         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMain.mm:
3755         (SharedWorkerProcessMain):
3756         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
3757         (WebContentProcessMain):
3758
3759 2013-01-26  Sam Weinig  <sam@webkit.org>
3760
3761         Move LegacyProcess entry points into new EntryPoint directories
3762         https://bugs.webkit.org/show_bug.cgi?id=108008
3763
3764         Reviewed by Anders Carlsson.
3765
3766         Also refactors to remove the need for the overly general WebKitMain, by putting the
3767         framework lazy loading into a helper function each legacy process can call (in ChildProcessMainBootstrapper.h)
3768
3769         * Configurations/NetworkProcess.xcconfig:
3770         * Configurations/PluginProcess.xcconfig:
3771         * Configurations/SharedWorkerProcess.xcconfig:
3772         * Configurations/WebProcess.xcconfig:
3773         * NetworkProcess/EntryPoint: Added.
3774         * NetworkProcess/EntryPoint/mac: Added.
3775         * NetworkProcess/EntryPoint/mac/LegacyProcess: Added.
3776         * NetworkProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/NetworkProcess/Info.plist.
3777         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMain.mm: Copied from Source/WebKit2/NetworkProcess/mac/NetworkProcessMainMac.mm.
3778         (NetworkProcessMain):
3779         * NetworkProcess/EntryPoint/mac/LegacyProcess/NetworkProcessMainBootstrapper.cpp: Added.
3780         (main):
3781         * NetworkProcess/Info.plist: Removed.
3782         * NetworkProcess/NetworkProcessMain.h: Removed.
3783         * NetworkProcess/mac/NetworkProcessMainMac.mm: Removed.
3784         * PluginProcess/EntryPoint: Added.
3785         * PluginProcess/EntryPoint/mac: Added.
3786         * PluginProcess/EntryPoint/mac/LegacyProcess: Added.
3787         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/PluginProcess/Info.plist.
3788         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm: Copied from Source/WebKit2/PluginProcess/mac/PluginProcessMainMac.mm.
3789         (PluginProcessMain):
3790         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMainBootstrapper.cpp: Added.
3791         (main):
3792         * PluginProcess/Info.plist: Removed.
3793         * PluginProcess/PluginProcessMain.h: Removed.
3794         * PluginProcess/mac/PluginProcessMainMac.mm: Removed.
3795         * Shared/EntryPointUtilities: Added.
3796         * Shared/EntryPointUtilities/mac: Added.
3797         * Shared/EntryPointUtilities/mac/LegacyProcess: Added.
3798         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.h: Copied from Source/WebKit2/Shared/mac/ChildProcessMain.h.
3799         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm: Copied from Source/WebKit2/Shared/mac/ChildProcessMain.mm.
3800         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMainBootstrapper.h: Added.
3801         (closeUnusedFileDescriptors):
3802         (getBootstrapMainFunction):
3803         * Shared/EntryPointUtilities/mac/XPCService: Added.
3804         * Shared/mac/ChildProcessMain.h: Removed.
3805         * Shared/mac/ChildProcessMain.mm: Removed.
3806         * SharedWorkerProcess/EntryPoint: Added.
3807         * SharedWorkerProcess/EntryPoint/mac: Added.
3808         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess: Added.
3809         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/SharedWorkerProcess/Info.plist.
3810         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMain.mm: Copied from Source/WebKit2/SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm.
3811         (SharedWorkerProcessMain):
3812         * SharedWorkerProcess/EntryPoint/mac/LegacyProcess/SharedWorkerProcessMainBootstrapper.cpp: Added.
3813         (main):
3814         * SharedWorkerProcess/Info.plist: Removed.
3815         * SharedWorkerProcess/SharedWorkerProcessMain.h: Removed.
3816         * SharedWorkerProcess/mac/SharedWorkerProcessMainMac.mm: Removed.
3817         * WebKit2.xcodeproj/project.pbxproj:
3818         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist: Copied from Source/WebKit2/WebProcess/Info.plist.
3819         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm: Copied from Source/WebKit2/WebProcess/mac/WebProcessMainMac.mm.
3820         (WebKit::WebContentProcessMainDelegate::WebContentProcessMainDelegate):
3821         (WebKit):
3822         (WebContentProcessMain):
3823         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMainBootstrapper.cpp: Added.
3824         (main):
3825         * WebProcess/Info.plist: Removed.
3826         * WebProcess/WebKitMain.cpp: Removed.
3827         * WebProcess/WebProcessMain.h: Removed.
3828         * WebProcess/mac/WebProcessMainMac.mm: Removed.
3829         * mac/MainMacProcess.cpp: Removed.
3830
3831 2013-01-25  Christophe Dumez  <christophe.dumez@intel.com>
3832
3833         [EFL][WK2] Use C API inside ewk_database_manager and ewk_storage_manager
3834         https://bugs.webkit.org/show_bug.cgi?id=107920
3835
3836         Reviewed by Benjamin Poulain.
3837
3838         Use C API inside ewk_database_manager and ewk_storage_manager instead
3839         of accessing internal C++ classes directly, to avoid violating API
3840         layering.
3841
3842         * UIProcess/API/efl/ewk_context.cpp:
3843         (EwkContext::EwkContext):
3844         * UIProcess/API/efl/ewk_database_manager.cpp:
3845         (EwkDatabaseManager::EwkDatabaseManager):
3846         (EwkDatabaseManager::getDatabaseOrigins):
3847         * UIProcess/API/efl/ewk_database_manager_private.h:
3848         (EwkDatabaseManager::create):
3849         (EwkDatabaseManager):
3850         * UIProcess/API/efl/ewk_storage_manager.cpp:
3851         (EwkStorageManager::EwkStorageManager):
3852         (EwkStorageManager::getStorageOrigins):
3853         * UIProcess/API/efl/ewk_storage_manager_private.h:
3854         (EwkStorageManager::create):
3855         (EwkStorageManager):
3856
3857 2013-01-25  Andreas Kling  <akling@apple.com>
3858
3859         [Mac] Defer loading the Web Inspector bundle until it's necessary.
3860         <http://webkit.org/b/107999>
3861         <rdar://problem/13091861>
3862
3863         Reviewed by Anders Carlsson.
3864
3865         Don't instantiate an NSBundle for the Web Inspector before it's needed.
3866         1.51MB progression on Membuster3.
3867
3868         * WebProcess/WebPage/WebInspector.cpp:
3869         (WebKit::WebInspector::WebInspector):
3870         * WebProcess/WebPage/WebInspector.h:
3871         (WebInspector):
3872         * WebProcess/WebPage/mac/WebInspectorMac.mm:
3873         (WebKit::WebInspector::setInspectorUsesWebKitUserInterface):
3874         (WebKit::WebInspector::localizedStringsURL):
3875
3876 2013-01-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3877
3878         [EFL][WK2] Fix build break after r140891.
3879
3880         Unreviewed build fix. SerializedScriptValue needs to use PassRefPtr in WK2 as well.
3881
3882         * Shared/WebSerializedScriptValue.h:
3883         (WebKit::WebSerializedScriptValue::create):
3884
3885 2013-01-25  Mark Rowe  <mrowe@apple.com>
3886
3887         Don't crash when the WKBundlePageUIClient doesn't implement createPlugInExtraStyleSheet.
3888
3889         Reviewed by Dean Jackson.
3890
3891         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
3892         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet): Check that createPlugInExtraStyleSheet
3893         is provided before calling it.
3894
3895 2013-01-25  Andy Estes  <aestes@apple.com>
3896
3897         Wrap content filtering code in an object
3898         https://bugs.webkit.org/show_bug.cgi?id=107914
3899
3900         Reviewed by Alexey Proskuryakov.
3901
3902         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3903         (InitWebCoreSystemInterface): Updated to reflect changes in WKSI.
3904
3905 2013-01-25  Brady Eidson  <beidson@apple.com>
3906
3907         HTTP Authentication should be directly between the NetworkProcess and the UIProcess
3908         <rdar://problem/13074829> and https://bugs.webkit.org/show_bug.cgi?id=107974
3909
3910         Reviewed by Alexey Proskuryakov.
3911
3912         Some of this patch is refactoring to enable more flexibility in the authentication mechanism
3913         and the rest is actually implementing Network->UI process authentication.
3914
3915         Expose the same AuthenticationManager to anyone in the NetworkProcess asking for it:
3916         * NetworkProcess/NetworkProcess.cpp:
3917         (WebKit::NetworkProcess::authenticationManager):
3918         (WebKit::NetworkProcess::downloadsAuthenticationManager):
3919         * NetworkProcess/NetworkProcess.h:
3920
3921         * NetworkProcess/NetworkResourceLoader.cpp:
3922         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge): Instead of messaging to
3923           the WebProcess, tell the NetworkProcess AuthenticationManager.
3924
3925         Add WebPageID and WebFrameID members to SchedulableLoader that they receive from 
3926         * NetworkProcess/SchedulableLoader.cpp:
3927         * NetworkProcess/SchedulableLoader.h:
3928         (WebKit::SchedulableLoader::webPageID):
3929         (WebKit::SchedulableLoader::webFrameID):
3930
3931         Add a 3rd form of "didReceiveAuthenticationChallenge" for NetworkProcess use:
3932         * Shared/Authentication/AuthenticationManager.cpp:
3933         (WebKit::AuthenticationManager::mapChallengeToIdentifier):
3934         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
3935         * Shared/Authentication/AuthenticationManager.h:
3936         * Shared/Authentication/mac/AuthenticationManager.mac.mm:
3937         (WebKit::AuthenticationManager::tryUsePlatformCertificateInfoForChallenge): Remove a now obsolete comment
3938
3939         Include the WebPage and WebFrame ID for the originator of this request in case it results in a challenge:
3940         * Shared/Network/NetworkResourceLoadParameters.cpp:
3941         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
3942         (WebKit::NetworkResourceLoadParameters::encode):
3943         (WebKit::NetworkResourceLoadParameters::decode):
3944         * Shared/Network/NetworkResourceLoadParameters.h:
3945         (WebKit::NetworkResourceLoadParameters::webPageID):
3946         (WebKit::NetworkResourceLoadParameters::webFrameID):
3947
3948         Create a AuthenticationChallengeProxy pointing back to the NetworkProcess (instead of a WebProcess),
3949         and send the challenge to the appropriate WebPageProxy:
3950         * UIProcess/Network/NetworkProcessProxy.cpp:
3951         (WebKit::NetworkProcessProxy::didReceiveAuthenticationChallenge):
3952         * UIProcess/Network/NetworkProcessProxy.h:
3953         * UIProcess/Network/NetworkProcessProxy.messages.in:
3954
3955         Refactor didReceiveAuthenticationChallenge so an outsider can directly hand over an AuthenticationChallengeProxy:
3956         * UIProcess/WebPageProxy.cpp:
3957         (WebKit::WebPageProxy::didReceiveAuthenticationChallenge):
3958         (WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
3959         * UIProcess/WebPageProxy.h:
3960
3961         Add a global WebPageID -> WebPageProxy map so parties with an ID don't need to know which process it belongs to:
3962         * UIProcess/WebProcessProxy.cpp:
3963         (WebKit::globalPageMap):
3964         (WebKit::WebProcessProxy::webPage):
3965         (WebKit::WebProcessProxy::createWebPage):
3966         (WebKit::WebProcessProxy::addExistingWebPage):
3967         (WebKit::WebProcessProxy::removeWebPage):
3968         * UIProcess/WebProcessProxy.h:
3969
3970         * WebProcess/Network/WebResourceLoadScheduler.cpp:
3971         (WebKit::WebResourceLoadScheduler::scheduleLoad):
3972
3973         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3974         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass 0 for WebFrameID and WebPageID since synchronous
3975           loads don't go through "normal" authentication channels and don't need them. Yet.
3976
3977 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
3978
3979         <rdar://problem/13089261> Crash in WKSandboxExtensionGetSerializedFormat when opening Web Inspector
3980
3981         Reviewed by Brady Eidson.
3982
3983         * WebProcess/com.apple.WebProcess.sb.in: Should be able to issue extensions for
3984         Inspector files.
3985
3986 2013-01-25  Sam Weinig  <sam@webkit.org>
3987
3988         Try to fix the debug build.
3989
3990         * WebKit2.xcodeproj/project.pbxproj:
3991
3992 2013-01-25  Sam Weinig  <sam@webkit.org>
3993
3994         Move the WebContentServices to WebProcess/EntryPoint/mac/XPCService/.
3995
3996         Reviewed by Anders Carlsson.
3997
3998         * Configurations/WebContentService.Development.xcconfig:
3999         * Configurations/WebContentService.xcconfig:
4000         * WebKit2.xcodeproj/project.pbxproj:
4001         * WebProcess/EntryPoint: Added.
4002         * WebProcess/EntryPoint/mac: Added.
4003         * WebProcess/EntryPoint/mac/LegacyProcess: Added.
4004         * WebProcess/EntryPoint/mac/XPCService: Added.
4005         * WebProcess/EntryPoint/mac/XPCService/WebContentService: Copied from WebProcessService.
4006         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development: Copied from WebProcessServiceForWebKitDevelopment.
4007         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebContentServiceMain.Development.mm: Copied from WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm.
4008         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/WebProcessServiceForWebKitDevelopmentMain.mm: Removed.
4009         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebContentServiceMain.mm: Copied from WebProcessService/WebProcessServiceMain.mm.
4010         * WebProcess/EntryPoint/mac/XPCService/WebContentService/WebProcessServiceMain.mm: Removed.
4011         * WebProcessService: Removed.
4012         * WebProcessService/Info.plist: Removed.
4013         * WebProcessService/WebProcessServiceMain.mm: Removed.
4014         * WebProcessServiceForWebKitDevelopment: Removed.
4015         * WebProcessServiceForWebKitDevelopment/Info.plist: Removed.
4016         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm: Removed.
4017
4018 2013-01-25  Ivan Krstić  <ike@apple.com>
4019
4020         Prepend common plugin sandbox profile to specific per-plugin one.
4021         <rdar://problem/13044349>
4022
4023         Reviewed by Alexey Proskuryakov.
4024
4025         * PluginProcess/mac/PluginProcessMac.mm:
4026         (WebKit::initializeSandbox):
4027
4028 2013-01-25  Dean Jackson  <dino@apple.com>
4029
4030         Add a user agent stylesheet for plugins
4031         https://bugs.webkit.org/show_bug.cgi?id=107890
4032
4033         Reviewed by Alexey Proskuryakov.
4034
4035         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Rename client callbacks
4036         to have a "create" prefix, making it clear that these generate new Strings.
4037         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp: Actually call into
4038         the injected bundle to retrieve any custom stylesheet for plugins.
4039         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
4040         * WebProcess/WebCoreSupport/WebChromeClient.h:
4041         (WebChromeClient): Add override keyword onto virtual functions now
4042         that the base class has implementations.
4043
4044 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
4045
4046         NetworkProcess cannot load files with non-ASCII names
4047         https://bugs.webkit.org/show_bug.cgi?id=107977
4048
4049         Reviewed by Brady Eidson.
4050
4051         * Shared/Network/NetworkResourceLoadParameters.cpp:
4052         (WebKit::NetworkResourceLoadParameters::encode): Use the correct path accessor.
4053
4054 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
4055
4056         REGRESSION: System directory prefix doesn't have a "+"
4057         https://bugs.webkit.org/show_bug.cgi?id=107971
4058
4059         Reviewed by Brady Eidson.
4060
4061         * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::initializeSandbox):
4062         Re-added the "+".
4063
4064 2013-01-25  Brady Eidson  <beidson@apple.com>
4065
4066         New NetworkProcess can ASSERT after old NetworkProcess crashes
4067         https://bugs.webkit.org/show_bug.cgi?id=107970
4068
4069         Reviewed by Alexey Proskuryakov.
4070
4071         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
4072         (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier): Don't tell the scheduler
4073           to remove a loader that doesn't exist, as we might be recovering from a crash.
4074
4075 2013-01-25  Alexey Proskuryakov  <ap@apple.com>
4076
4077         Send sandbox extensions for local files to NetworkProcess
4078         https://bugs.webkit.org/show_bug.cgi?id=107872