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