Move more state tracking to FrameLoadState
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-11-13  Anders Carlsson  <andersca@apple.com>
2
3         Move more state tracking to FrameLoadState
4         https://bugs.webkit.org/show_bug.cgi?id=124316
5
6         Reviewed by Simon Fraser.
7
8         * UIProcess/FrameLoadState.cpp:
9         (WebKit::FrameLoadState::didStartProvisionalLoad):
10         (WebKit::FrameLoadState::didReceiveServerRedirectForProvisionalLoad):
11         (WebKit::FrameLoadState::didFailProvisionalLoad):
12         (WebKit::FrameLoadState::didCommitLoad):
13         (WebKit::FrameLoadState::didFinishLoad):
14         (WebKit::FrameLoadState::didFailLoad):
15         (WebKit::FrameLoadState::didSameDocumentNotification):
16         (WebKit::FrameLoadState::setUnreachableURL):
17         * UIProcess/FrameLoadState.h:
18         * UIProcess/WebFrameProxy.cpp:
19         (WebKit::WebFrameProxy::didCommitLoad):
20         (WebKit::WebFrameProxy::didFinishLoad):
21         (WebKit::WebFrameProxy::didFailLoad):
22         (WebKit::WebFrameProxy::didSameDocumentNavigation):
23         (WebKit::WebFrameProxy::setUnreachableURL):
24
25 2013-11-13  Simon Fraser  <simon.fraser@apple.com>
26
27         Expose a private flag on WKView to indicate whether it's using a remote layer tree drawing area
28         https://bugs.webkit.org/show_bug.cgi?id=124317
29
30         Reviewed by Anders Carlsson.
31         
32         Expose isUsingUISideCompositing on WKView in the private header,
33         which returns YES if the view is using a DrawingAreaTypeRemoteLayerTree.
34
35         * UIProcess/API/mac/WKView.mm:
36         (-[WKView isUsingUISideCompositing]):
37         * UIProcess/API/mac/WKViewPrivate.h:
38
39 2013-11-13  Csaba Osztrogonác  <ossy@webkit.org>
40
41         Maybe the last attempt to fix the GTK build.
42
43         * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
44         * UIProcess/API/gtk/WebKitContextMenuPrivate.h:
45
46 2013-11-13  Csaba Osztrogonác  <ossy@webkit.org>
47
48         One more attempt to fix the GTK build.
49
50         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
51
52 2013-11-13  Anders Carlsson  <andersca@apple.com>
53
54         Plug-in processes hang around for 10 sec after Safari quits
55         https://bugs.webkit.org/show_bug.cgi?id=124314
56         <rdar://problem/15460613>
57
58         Reviewed by Simon Fraser.
59
60         Call stopRunLoop instead of instead of RunLoop::stop().
61
62         * PluginProcess/PluginProcess.cpp:
63         (WebKit::PluginProcess::didClose):
64
65 2013-11-13  Csaba Osztrogonác  <ossy@webkit.org>
66
67         URTBF after r159234.
68
69         * CMakeLists.txt:
70         * GNUmakefile.list.am:
71         * Shared/efl/WebEventFactory.cpp:
72         (WebKit::WebEventFactory::createWebTouchEvent):
73         * UIProcess/API/C/WKGrammarDetail.cpp:
74         * UIProcess/API/C/efl/WKEventEfl.cpp:
75         * UIProcess/API/gtk/WebKitBackForwardList.cpp:
76         (webkitBackForwardListCreateList):
77         (webkitBackForwardListChanged):
78         (webkit_back_forward_list_get_back_list_with_limit):
79         (webkit_back_forward_list_get_forward_list_with_limit):
80         * UIProcess/API/gtk/WebKitBackForwardListPrivate.h:
81         * UIProcess/API/gtk/WebKitContextMenu.cpp:
82         (webkitContextMenuCreate):
83         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
84         (webkitContextMenuItemCreate):
85         * UIProcess/API/gtk/WebKitContextMenuPrivate.h:
86         * UIProcess/API/gtk/WebKitCookieManager.cpp:
87         (webkitCookieManagerGetDomainsWithCookiesCallback):
88         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
89         (webkit_file_chooser_request_get_mime_types):
90         (webkit_file_chooser_request_get_mime_types_filter):
91         (webkit_file_chooser_request_select_files):
92         (webkit_file_chooser_request_get_selected_files):
93         * UIProcess/API/gtk/WebKitWebView.cpp:
94         (webkitWebViewPopulateContextMenu):
95         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
96         (toImmutableArray):
97         (webkit_web_view_group_add_user_style_sheet):
98         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
99         * UIProcess/WebGrammarDetail.cpp:
100         (WebKit::WebGrammarDetail::create):
101         (WebKit::WebGrammarDetail::WebGrammarDetail):
102         (WebKit::WebGrammarDetail::guesses):
103         * UIProcess/WebGrammarDetail.h:
104         * UIProcess/WebTextCheckerClient.cpp:
105         (WebKit::WebTextCheckerClient::checkGrammarOfString):
106         (WebKit::WebTextCheckerClient::guessesForWord):
107         * UIProcess/efl/WebUIPopupMenuClient.cpp:
108         (WebUIPopupMenuClient::showPopupMenu):
109
110 2013-11-13  Anders Carlsson  <andersca@apple.com>
111
112         Fix build.
113
114         Not sure why these weren't added.
115
116         * Shared/APIArray.cpp: Added.
117         * Shared/APIArray.h: Added.
118
119 2013-11-13  Anders Carlsson  <andersca@apple.com>
120
121         Rename ImmutableArray to API::Array
122         https://bugs.webkit.org/show_bug.cgi?id=124307
123
124         Reviewed by Andreas Kling.
125
126         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
127         (ensureObjectStream):
128         (-[WKRemoteObjectDecoder initWithInterface:rootObjectDictionary:WebKit::]):
129         * Shared/API/c/WKArray.cpp:
130         (WKArrayGetTypeID):
131         (WKArrayCreate):
132         (WKArrayCreateAdoptingValues):
133         * Shared/API/c/WKContextMenuItem.cpp:
134         * Shared/API/c/WKDictionary.cpp:
135         (WKDictionaryCopyKeys):
136         * Shared/API/c/WKMutableArray.cpp:
137         (WKMutableArrayCreate):
138         * Shared/API/c/WKRenderObject.cpp:
139         (WKRenderObjectGetChildren):
140         * Shared/API/c/WKSharedAPICast.h:
141         (WebKit::toImpl):
142         * Shared/API/c/mac/WKWebArchive.cpp:
143         (WKWebArchiveCopySubresources):
144         (WKWebArchiveCopySubframeArchives):
145         * Shared/APIArray.cpp: Renamed from Source/WebKit2/Shared/ImmutableArray.cpp.
146         (API::Array::create):
147         (API::Array::createStringArray):
148         (API::Array::Array):
149         (API::Array::~Array):
150         * Shared/APIArray.h: Renamed from Source/WebKit2/Shared/ImmutableArray.h.
151         * Shared/Cocoa/WKNSArray.h:
152         (wrapper):
153         * Shared/Cocoa/WKNSArray.mm:
154         (-[WKNSArray dealloc]):
155         (-[WKNSArray count]):
156         (-[WKNSArray objectAtIndex:]):
157         (-[WKNSArray API::]):
158         * Shared/ImmutableDictionary.cpp:
159         (WebKit::ImmutableDictionary::keys):
160         * Shared/ImmutableDictionary.h:
161         * Shared/SecurityOriginData.cpp:
162         (WebKit::performAPICallbackWithSecurityOriginDataVector):
163         * Shared/UserMessageCoders.h:
164         (WebKit::UserMessageEncoder::baseEncode):
165         (WebKit::UserMessageDecoder::baseDecode):
166         * Shared/WebArchive.cpp:
167         (WebKit::WebArchive::create):
168         (WebKit::WebArchive::WebArchive):
169         (WebKit::WebArchive::subresources):
170         (WebKit::WebArchive::subframeArchives):
171         * Shared/WebArchive.h:
172         * Shared/WebContextMenuItem.cpp:
173         (WebKit::WebContextMenuItem::create):
174         (WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):
175         * Shared/WebContextMenuItem.h:
176         * Shared/WebOpenPanelParameters.cpp:
177         (WebKit::WebOpenPanelParameters::acceptMIMETypes):
178         (WebKit::WebOpenPanelParameters::selectedFileNames):
179         * Shared/WebOpenPanelParameters.h:
180         * Shared/WebRenderLayer.cpp:
181         (WebKit::WebRenderLayer::create):
182         (WebKit::WebRenderLayer::createArrayFromLayerList):
183         (WebKit::WebRenderLayer::WebRenderLayer):
184         * Shared/WebRenderLayer.h:
185         (WebKit::WebRenderLayer::negativeZOrderList):
186         (WebKit::WebRenderLayer::normalFlowList):
187         (WebKit::WebRenderLayer::positiveZOrderList):
188         * Shared/WebRenderObject.cpp:
189         (WebKit::WebRenderObject::create):
190         (WebKit::WebRenderObject::WebRenderObject):
191         (WebKit::WebRenderObject::~WebRenderObject):
192         * Shared/WebRenderObject.h:
193         (WebKit::WebRenderObject::children):
194         (WebKit::WebRenderObject::elementClassNames):
195         * UIProcess/API/C/WKBackForwardListRef.cpp:
196         * UIProcess/API/C/WKOpenPanelParameters.cpp:
197         * UIProcess/API/C/WKPage.cpp:
198         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
199         (WKContextGetInfoForInstalledPlugIns):
200         * UIProcess/API/Cocoa/WKBackForwardList.mm:
201         (-[WKBackForwardList backListWithLimit:]):
202         (-[WKBackForwardList forwardListWithLimit:]):
203         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
204         (createWKArray):
205         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
206         (WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions):
207         (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
208         (WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies):
209         * UIProcess/Notifications/WebNotificationManagerProxy.h:
210         * UIProcess/Notifications/WebNotificationProvider.cpp:
211         (WebKit::WebNotificationProvider::clearNotifications):
212         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
213         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsArray):
214         * UIProcess/Plugins/PlugInAutoStartProvider.h:
215         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
216         (WebKit::WebPluginSiteDataManager::didGetSitesWithData):
217         (WebKit::WebPluginSiteDataManager::clearSiteData):
218         * UIProcess/Plugins/WebPluginSiteDataManager.h:
219         * UIProcess/StatisticsRequest.cpp:
220         (WebKit::StatisticsRequest::completedRequest):
221         * UIProcess/WebApplicationCacheManagerProxy.h:
222         * UIProcess/WebBackForwardList.cpp:
223         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
224         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
225         * UIProcess/WebBackForwardList.h:
226         * UIProcess/WebContext.cpp:
227         (WebKit::WebContext::setPlugInAutoStartOrigins):
228         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
229         * UIProcess/WebContext.h:
230         * UIProcess/WebContextClient.cpp:
231         (WebKit::WebContextClient::plugInInformationBecameAvailable):
232         * UIProcess/WebContextClient.h:
233         * UIProcess/WebCookieManagerProxy.cpp:
234         (WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies):
235         * UIProcess/WebCookieManagerProxy.h:
236         * UIProcess/WebDatabaseManagerProxy.cpp:
237         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
238         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
239         * UIProcess/WebFindClient.cpp:
240         (WebKit::WebFindMatchesClient::didFindStringMatches):
241         * UIProcess/WebFindClient.h:
242         * UIProcess/WebFrameProxy.h:
243         * UIProcess/WebKeyValueStorageManager.cpp:
244         (WebKit::didGetKeyValueStorageOrigins):
245         * UIProcess/WebKeyValueStorageManager.h:
246         * UIProcess/WebLoaderClient.cpp:
247         (WebKit::WebLoaderClient::didChangeBackForwardList):
248         * UIProcess/WebMediaCacheManagerProxy.cpp:
249         (WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache):
250         * UIProcess/WebMediaCacheManagerProxy.h:
251         * UIProcess/WebOpenPanelResultListenerProxy.cpp:
252         (WebKit::WebOpenPanelResultListenerProxy::chooseFiles):
253         * UIProcess/WebOpenPanelResultListenerProxy.h:
254         * UIProcess/WebOriginDataManagerProxy.h:
255         * UIProcess/WebPageContextMenuClient.cpp:
256         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
257         (WebKit::WebPageContextMenuClient::showContextMenu):
258         * UIProcess/WebPageGroup.cpp:
259         (WebKit::toStringVector):
260         (WebKit::WebPageGroup::addUserStyleSheet):
261         (WebKit::WebPageGroup::addUserScript):
262         * UIProcess/WebPageGroup.h:
263         * UIProcess/WebPageProxy.cpp:
264         (WebKit::WebPageProxy::relatedPages):
265         (WebKit::WebPageProxy::didFindStringMatches):
266         * UIProcess/WebPageProxy.h:
267         * UIProcess/WebResourceCacheManagerProxy.cpp:
268         * WebKit2.xcodeproj/project.pbxproj:
269         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
270         (WKBundleCopyOriginsWithApplicationCache):
271         * WebProcess/InjectedBundle/API/c/WKBundleBackForwardListItem.cpp:
272         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
273         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
274         (contextMenuItems):
275         * WebProcess/InjectedBundle/InjectedBundle.cpp:
276         (WebKit::InjectedBundle::originsWithApplicationCache):
277         (WebKit::toStringVector):
278         (WebKit::InjectedBundle::addUserScript):
279         (WebKit::InjectedBundle::addUserStyleSheet):
280         * WebProcess/InjectedBundle/InjectedBundle.h:
281         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
282         (WebKit::InjectedBundleBackForwardListItem::children):
283         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
284         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
285         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
286         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
287         (WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
288         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
289         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
290         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
291         (WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
292         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
293         (WebKit::findLargestFrameInFrameSet):
294         * WebProcess/WebPage/WebFrame.cpp:
295         (WebKit::WebFrame::childFrames):
296         * WebProcess/WebPage/WebFrame.h:
297         * WebProcess/WebPage/WebPage.cpp:
298         (WebKit::WebPage::trackedRepaintRects):
299         * WebProcess/WebPage/WebPage.h:
300
301 2013-11-13  Nick Diego Yamane  <nick.yamane@openbossa.org>
302
303         [GTK] Fix build after r159222
304         https://bugs.webkit.org/show_bug.cgi?id=124305
305
306         Reviewed by Tim Horton.
307
308         WebGraphicsContext and its API has been removed.
309
310         * CMakeLists.txt:
311         * GNUmakefile.list.am:
312         * Shared/API/c/gtk/WKGraphicsContextGtk.cpp: Removed.
313         * Shared/API/c/gtk/WKGraphicsContextGtk.h: Removed.
314
315 2013-11-13  Tim Horton  <timothy_horton@apple.com>
316
317         Remove redundant return after r159173
318         https://bugs.webkit.org/show_bug.cgi?id=124303
319
320         Reviewed by Geoff Garen.
321
322         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
323         (WebKit::WebPlatformStrategies::loadResourceSynchronously):
324         Remove redundant return.
325
326 2013-11-13  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
327
328         Unreviewed EFL build fix after r159222.
329
330         * CMakeLists.txt:
331
332 2013-11-13  Anders Carlsson  <andersca@apple.com>
333
334         Remove WebGraphicsContext
335         https://bugs.webkit.org/show_bug.cgi?id=124302
336
337         Reviewed by Dan Bernstein.
338
339         WebGraphicsContext and its API "object", WKGraphicsContextRef was only used
340         for the overhang paint callback which has been removed.
341
342         * Shared/API/c/WKDeprecatedFunctions.cpp:
343         (WKGraphicsContextGetCGContext):
344         * Shared/API/c/WKGraphicsContext.cpp: Removed.
345         * Shared/API/c/WKGraphicsContext.h: Removed.
346         * Shared/API/c/cg/WKGraphicsContextCG.cpp: Removed.
347         * Shared/API/c/cg/WKGraphicsContextCG.h: Removed.
348         * Shared/APIObject.h:
349         * Shared/WebGraphicsContext.cpp: Removed.
350         * Shared/WebGraphicsContext.h: Removed.
351         * UIProcess/API/C/WebKit2_C.h:
352         * WebKit2.xcodeproj/project.pbxproj:
353         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
354
355 2013-11-13  Anders Carlsson  <andersca@apple.com>
356
357         WKArrayIsMutable should not be mangled
358         https://bugs.webkit.org/show_bug.cgi?id=124299
359
360         Reviewed by Andreas Kling.
361
362         * Shared/API/c/WKDeprecatedFunctions.cpp:
363
364 2013-11-13  Anders Carlsson  <andersca@apple.com>
365
366         Move provisional load state handling to FrameLoadState
367         https://bugs.webkit.org/show_bug.cgi?id=124291
368
369         Reviewed by Dan Bernstein.
370
371         * UIProcess/FrameLoadState.cpp:
372         (WebKit::FrameLoadState::didStartProvisionalLoad):
373         (WebKit::FrameLoadState::didReceiveServerRedirectForProvisionalLoad):
374         (WebKit::FrameLoadState::didFailProvisionalLoad):
375         * UIProcess/FrameLoadState.h:
376         * UIProcess/WebFrameProxy.cpp:
377         (WebKit::WebFrameProxy::didStartProvisionalLoad):
378         (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
379         (WebKit::WebFrameProxy::didFailProvisionalLoad):
380
381 2013-11-13  Csaba Osztrogonác  <ossy@webkit.org>
382
383         One more fix after r159197.
384
385         * UIProcess/efl/EwkTouchEvent.h:
386         * UIProcess/efl/EwkTouchPoint.h:
387
388 2013-11-13  Brendan Long  <b.long@cablelabs.com>
389
390         [Gtk][EFL] Fix builds by updating Object::TypeX to Object::Type::X
391         https://bugs.webkit.org/show_bug.cgi?id=124289
392
393         Reviewed by Alexey Proskuryakov.
394
395         * Shared/API/c/WKContextMenuItem.cpp:
396         (WKContextMenuItemGetTypeID):
397         * Shared/WebBatteryStatus.h:
398         * Shared/WebNetworkInfo.h:
399         * UIProcess/API/C/WKGrammarDetail.cpp:
400         (WKGrammarDetailGetTypeID):
401         * UIProcess/API/C/WKPluginSiteDataManager.cpp:
402         (WKPluginSiteDataManagerGetTypeID):
403         * UIProcess/CoordinatedGraphics/WebView.h:
404         * UIProcess/WebBatteryManagerProxy.h:
405         * UIProcess/WebNetworkInfoManagerProxy.h:
406         * UIProcess/WebTextChecker.h:
407         * UIProcess/WebVibrationProxy.h:
408         * UIProcess/WebViewportAttributes.h:
409         * UIProcess/efl/WebPopupItemEfl.h:
410         * UIProcess/soup/WebSoupRequestManagerProxy.h:
411
412 2013-11-13  Tamas Gergely  <gertom@inf.u-szeged.hu>
413
414         Remove prefixed template class processing from message receiver generator.
415         https://bugs.webkit.org/show_bug.cgi?id=123095
416
417         Reviewed by Anders Carlsson.
418
419         There was a FIXME in messages.py to remove unprefixed WTF template classes,
420         but in the discussion of the bug report we concluded that in the messages.in
421         files we should follow the C++ naming convention where none of the WTF
422         classes require the WTF prefix.
423
424         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
425         * Scripts/webkit2/messages.py:
426         (class_template_headers):
427         * Scripts/webkit2/messages_unittest.py:
428         (std):
429         * UIProcess/Storage/StorageManager.messages.in:
430         * UIProcess/WebPageProxy.messages.in:
431         * WebProcess/WebPage/WebPage.messages.in:
432
433 2013-11-13  Csaba Osztrogonác  <ossy@webkit.org>
434
435         URTBF after r159199 to make cmake and GTK build happy.
436
437         * CMakeLists.txt:
438         * GNUmakefile.list.am:
439
440 2013-11-13  Anders Carlsson  <andersca@apple.com>
441
442         Add WKDeprecatedFunctions.cpp and move WKArrayIsMutable there
443         https://bugs.webkit.org/show_bug.cgi?id=124284
444
445         Reviewed by Andreas Kling.
446
447         * Shared/API/c/WKDeprecatedFunctions.cpp: Copied from Source/WebKit2/Shared/API/c/WKMutableArray.h.
448         (WKArrayIsMutable):
449         * Shared/API/c/WKMutableArray.cpp:
450         * Shared/API/c/WKMutableArray.h:
451         * WebKit2.xcodeproj/project.pbxproj:
452
453 2013-11-12  Anders Carlsson  <andersca@apple.com>
454
455         API::Object::Type should be a strongly typed enum
456         https://bugs.webkit.org/show_bug.cgi?id=124258
457
458         Reviewed by Tim Horton.
459
460         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
461         (-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
462         * Shared/APIObject.h:
463         * Shared/Cocoa/APIObject.mm:
464         (API::Object::newObject):
465         * Shared/ImmutableArray.h:
466         * Shared/ImmutableDictionary.h:
467         * Shared/UserMessageCoders.h:
468         (WebKit::UserMessageEncoder::baseEncode):
469         (WebKit::UserMessageDecoder::baseDecode):
470         * Shared/WebArchive.h:
471         * Shared/WebArchiveResource.h:
472         * Shared/WebBackForwardListItem.h:
473         * Shared/WebCertificateInfo.h:
474         * Shared/WebConnection.h:
475         * Shared/WebContextMenuItem.h:
476         * Shared/WebData.h:
477         * Shared/WebError.h:
478         * Shared/WebGeolocationPosition.h:
479         * Shared/WebGeometry.h:
480         * Shared/WebGraphicsContext.h:
481         * Shared/WebHitTestResult.h:
482         * Shared/WebImage.h:
483         * Shared/WebNumber.h:
484         * Shared/WebOpenPanelParameters.h:
485         * Shared/WebRenderLayer.h:
486         * Shared/WebRenderObject.h:
487         * Shared/WebSecurityOrigin.h:
488         * Shared/WebSerializedScriptValue.h:
489         * Shared/WebString.h:
490         * Shared/WebURL.h:
491         * Shared/WebURLRequest.h:
492         * Shared/WebURLResponse.h:
493         * Shared/WebUserContentURLPattern.h:
494         * Shared/mac/ObjCObjectGraph.h:
495         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
496         * UIProcess/Authentication/AuthenticationDecisionListener.h:
497         * UIProcess/Authentication/WebCredential.h:
498         * UIProcess/Authentication/WebProtectionSpace.h:
499         * UIProcess/Downloads/DownloadProxy.h:
500         * UIProcess/GeolocationPermissionRequestProxy.h:
501         * UIProcess/Notifications/NotificationPermissionRequest.h:
502         * UIProcess/Notifications/WebNotification.h:
503         * UIProcess/Notifications/WebNotificationManagerProxy.h:
504         * UIProcess/Plugins/WebPluginSiteDataManager.h:
505         * UIProcess/WebApplicationCacheManagerProxy.h:
506         * UIProcess/WebBackForwardList.h:
507         * UIProcess/WebColorPickerResultListenerProxy.h:
508         * UIProcess/WebContext.h:
509         * UIProcess/WebContextUserMessageCoders.h:
510         (WebKit::WebContextUserMessageEncoder::encode):
511         (WebKit::WebContextUserMessageDecoder::decode):
512         * UIProcess/WebCookieManagerProxy.h:
513         * UIProcess/WebDatabaseManagerProxy.h:
514         * UIProcess/WebEditCommandProxy.h:
515         * UIProcess/WebFormSubmissionListenerProxy.h:
516         * UIProcess/WebFramePolicyListenerProxy.h:
517         * UIProcess/WebFrameProxy.h:
518         * UIProcess/WebGeolocationManagerProxy.h:
519         * UIProcess/WebGrammarDetail.h:
520         * UIProcess/WebIconDatabase.h:
521         * UIProcess/WebInspectorProxy.h:
522         * UIProcess/WebKeyValueStorageManager.h:
523         * UIProcess/WebMediaCacheManagerProxy.h:
524         * UIProcess/WebNavigationData.h:
525         * UIProcess/WebOpenPanelResultListenerProxy.h:
526         * UIProcess/WebOriginDataManagerProxy.h:
527         * UIProcess/WebPageGroup.h:
528         * UIProcess/WebPageProxy.h:
529         * UIProcess/WebPreferences.h:
530         * UIProcess/WebResourceCacheManagerProxy.h:
531         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
532         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
533         * WebProcess/InjectedBundle/InjectedBundle.h:
534         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
535         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
536         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.h:
537         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
538         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.h:
539         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
540         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
541         (WebKit::InjectedBundleUserMessageEncoder::encode):
542         (WebKit::InjectedBundleUserMessageDecoder::decode):
543         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
544         (WebKit::InjectedBundle::load):
545         * WebProcess/WebPage/PageBanner.h:
546         * WebProcess/WebPage/PageOverlay.h:
547         * WebProcess/WebPage/WebFrame.h:
548         * WebProcess/WebPage/WebInspector.h:
549         * WebProcess/WebPage/WebPage.h:
550         * WebProcess/WebPage/WebPageGroupProxy.h:
551         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
552         (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
553         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
554
555 2013-11-13  Anders Carlsson  <andersca@apple.com>
556
557         Remove custom overhang area painting code
558         https://bugs.webkit.org/show_bug.cgi?id=124282
559
560         Reviewed by Andreas Kling.
561
562         This code was only used by the Mac port, to draw the linen background color on Lion.
563         We now do that on the GPU instead so get rid of this code.
564
565         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
566         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
567         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
568         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
569         * WebProcess/WebCoreSupport/WebChromeClient.h:
570
571 2013-11-13  Sergio Correia  <sergio.correia@openbossa.org>
572
573         [EFL][WK2] Convert some more OwnPtr/PassOwnPtr to std::unique_ptr
574         https://bugs.webkit.org/show_bug.cgi?id=124241
575
576         Reviewed by Gyuyoung Kim.
577
578         The modified files are located under UIProcess/{efl,API/efl}.
579
580         * UIProcess/API/efl/EwkView.cpp:
581         * UIProcess/API/efl/EwkView.h:
582         * UIProcess/API/efl/GestureRecognizer.cpp:
583         * UIProcess/API/efl/GestureRecognizer.h:
584         * UIProcess/API/efl/ewk_back_forward_list_private.h:
585         * UIProcess/API/efl/ewk_color_picker_private.h:
586         * UIProcess/API/efl/ewk_context.cpp:
587         * UIProcess/API/efl/ewk_context_menu.cpp:
588         * UIProcess/API/efl/ewk_context_menu_item.cpp:
589         * UIProcess/API/efl/ewk_context_menu_item_private.h:
590         * UIProcess/API/efl/ewk_context_private.h:
591         * UIProcess/API/efl/ewk_cookie_manager.cpp:
592         * UIProcess/API/efl/ewk_cookie_manager_private.h:
593         * UIProcess/API/efl/ewk_database_manager_private.h:
594         * UIProcess/API/efl/ewk_favicon_database_private.h:
595         * UIProcess/API/efl/ewk_popup_menu.cpp:
596         * UIProcess/API/efl/ewk_popup_menu_item_private.h:
597         * UIProcess/API/efl/ewk_popup_menu_private.h:
598         * UIProcess/API/efl/ewk_settings_private.h:
599         * UIProcess/API/efl/ewk_storage_manager.cpp:
600         * UIProcess/API/efl/ewk_storage_manager_private.h:
601         * UIProcess/API/efl/ewk_view.cpp:
602         * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
603         * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
604         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
605         * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
606         * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
607         * UIProcess/API/efl/tests/test_ewk2_refptr_evas_object.cpp:
608         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
609         * UIProcess/efl/ContextHistoryClientEfl.h:
610         * UIProcess/efl/ContextMenuClientEfl.h:
611         * UIProcess/efl/DownloadManagerEfl.h:
612         * UIProcess/efl/FindClientEfl.h:
613         * UIProcess/efl/FormClientEfl.h:
614         * UIProcess/efl/PageLoadClientEfl.h:
615         * UIProcess/efl/PagePolicyClientEfl.h:
616         * UIProcess/efl/PageUIClientEfl.h:
617         * UIProcess/efl/PageViewportControllerClientEfl.h:
618         * UIProcess/efl/RequestManagerClientEfl.h:
619         * UIProcess/efl/VibrationClientEfl.cpp:
620         * UIProcess/efl/VibrationClientEfl.h:
621         * UIProcess/efl/ViewClientEfl.h:
622
623 2013-11-12  Alexey Proskuryakov  <ap@apple.com>
624
625         Disable WebCrypto on Mountain Lion
626         https://bugs.webkit.org/show_bug.cgi?id=124261
627
628         Rubber-stamped by Sam Weinig.
629
630         * Configurations/FeatureDefines.xcconfig:
631
632 2013-11-12  Nick Diego Yamane  <nick.yamane@openbossa.org>
633
634         [GTK][EFL] More on renaming WebKit::APIObject to API::Object
635         https://bugs.webkit.org/show_bug.cgi?id=124255
636
637         Reviewed by Anders Carlsson.
638
639         In r159163 WebKit::APIObject has been renamed to API::Object.
640         This patch refactors the remaining files which were still
641         using WebKit::APIObject and WebKit::TypedAPIObject.
642
643         * Shared/WebBatteryStatus.h:
644         * Shared/WebNetworkInfo.h:
645         * UIProcess/API/C/WKGrammarDetail.cpp:
646         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
647         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
648         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
649         * UIProcess/CoordinatedGraphics/WebView.h:
650         * UIProcess/WebBatteryManagerProxy.cpp:
651         * UIProcess/WebBatteryManagerProxy.h:
652         * UIProcess/WebGrammarDetail.cpp:
653         * UIProcess/WebNetworkInfoManagerProxy.cpp:
654         * UIProcess/WebNetworkInfoManagerProxy.h:
655         * UIProcess/WebTextChecker.h:
656         * UIProcess/WebVibrationProxy.h:
657         * UIProcess/WebViewportAttributes.h:
658         * UIProcess/efl/EwkTouchEvent.h:
659         * UIProcess/efl/EwkTouchPoint.h:
660         * UIProcess/efl/WebPopupItemEfl.h:
661         * UIProcess/efl/WebUIPopupMenuClient.cpp:
662         * UIProcess/gtk/WebFullScreenClientGtk.h:
663         * UIProcess/gtk/WebInspectorClientGtk.h:
664         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
665         * UIProcess/soup/WebSoupRequestManagerProxy.h:
666         * WebProcess/InjectedBundle/efl/InjectedBundleEfl.cpp:
667         * WebProcess/InjectedBundle/gtk/InjectedBundleGtk.cpp:
668
669 2013-11-12  Anders Carlsson  <andersca@apple.com>
670
671         fast/canvas/webgl/draw-arrays-out-of-bounds.html is flaky on Mavericks WK2 testers, fails about 20% of the time
672         https://bugs.webkit.org/show_bug.cgi?id=124223
673         <rdar://problem/15333977>
674
675         Reviewed by Tim Horton.
676
677         It's wrong to use DataReferences in sync IPC replies; the underlying MessageDecoder will be freed after the call to
678         sendSync returns and the DataReference will point to freed memory. Use a Vector<char> instead.
679
680         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
681         * NetworkProcess/SynchronousNetworkLoaderClient.cpp:
682         (WebKit::SynchronousNetworkLoaderClient::didReceiveBuffer):
683         (WebKit::SynchronousNetworkLoaderClient::sendDelayedReply):
684         * NetworkProcess/SynchronousNetworkLoaderClient.h:
685         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
686         (WebKit::WebPlatformStrategies::loadResourceSynchronously):
687
688 2013-11-12  Gustavo Noronha Silva  <gns@gnome.org>
689
690         Unreviewed try at fixing the GTK+ build.
691
692         * UIProcess/soup/WebSoupRequestManagerProxy.h: rename TypedAPIObject to API:TypedObject.
693
694 2013-11-12  Nick Diego Yamane  <nick.yamane@openbossa.org>
695
696         [EFL][GTK] Remove MutableArray leftovers from build systems
697         https://bugs.webkit.org/show_bug.cgi?id=124248
698
699         Reviewed by Anders Carlsson.
700
701         MutableArray.cpp and .h file has been removed by r159155.
702
703         * CMakeLists.txt:
704         * GNUmakefile.list.am:
705
706 2013-11-12  Anders Carlsson  <andersca@apple.com>
707
708         Rename APIObject to API::Object
709         https://bugs.webkit.org/show_bug.cgi?id=124247
710
711         Reviewed by Tim Horton.
712
713         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
714         (-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
715         * Shared/API/c/WKArray.cpp:
716         (WKArrayCreate):
717         (WKArrayCreateAdoptingValues):
718         * Shared/API/c/WKContextMenuItem.cpp:
719         (WKContextMenuItemGetTypeID):
720         * Shared/API/c/WKSharedAPICast.h:
721         (WebKit::toAPI):
722         * Shared/API/c/WKType.cpp:
723         (WKGetTypeID):
724         (WKRetain):
725         (WKRelease):
726         * Shared/APIObject.cpp:
727         (API::Object::Object):
728         * Shared/APIObject.h:
729         (API::Object::~Object):
730         (API::TypedObject::~TypedObject):
731         (API::TypedObject::TypedObject):
732         * Shared/Cocoa/APIObject.mm:
733         (API::Object::ref):
734         (API::Object::deref):
735         (API::Object::newObject):
736         * Shared/Cocoa/WKNSArray.mm:
737         (-[WKNSArray objectAtIndex:]):
738         (-[WKNSArray API::]):
739         * Shared/Cocoa/WKNSDictionary.mm:
740         (-[WKNSDictionary objectForKey:]):
741         (-[WKNSDictionary API::]):
742         * Shared/Cocoa/WKObject.h:
743         * Shared/Cocoa/WKObject.mm:
744         (-[WKObject dealloc]):
745         (-[WKObject API::]):
746         * Shared/ImmutableArray.cpp:
747         (WebKit::ImmutableArray::create):
748         (WebKit::ImmutableArray::createStringArray):
749         (WebKit::ImmutableArray::ImmutableArray):
750         * Shared/ImmutableArray.h:
751         * Shared/ImmutableDictionary.cpp:
752         (WebKit::ImmutableDictionary::keys):
753         * Shared/ImmutableDictionary.h:
754         (WebKit::ImmutableDictionary::get):
755         * Shared/MutableDictionary.cpp:
756         (WebKit::MutableDictionary::add):
757         (WebKit::MutableDictionary::set):
758         * Shared/MutableDictionary.h:
759         * Shared/SecurityOriginData.cpp:
760         (WebKit::performAPICallbackWithSecurityOriginDataVector):
761         * Shared/UserMessageCoders.h:
762         (WebKit::UserMessageEncoder::baseEncode):
763         (WebKit::UserMessageEncoder::UserMessageEncoder):
764         (WebKit::UserMessageDecoder::baseDecode):
765         (WebKit::UserMessageDecoder::UserMessageDecoder):
766         * Shared/WebArchive.cpp:
767         (WebKit::WebArchive::subresources):
768         (WebKit::WebArchive::subframeArchives):
769         * Shared/WebArchive.h:
770         * Shared/WebArchiveResource.h:
771         * Shared/WebBackForwardListItem.h:
772         * Shared/WebCertificateInfo.h:
773         * Shared/WebConnection.cpp:
774         (WebKit::WebConnection::postMessage):
775         (WebKit::WebConnection::handleMessage):
776         * Shared/WebConnection.h:
777         * Shared/WebConnectionClient.cpp:
778         (WebKit::WebConnectionClient::didReceiveMessage):
779         * Shared/WebConnectionClient.h:
780         * Shared/WebContextMenuItem.cpp:
781         (WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):
782         (WebKit::WebContextMenuItem::userData):
783         (WebKit::WebContextMenuItem::setUserData):
784         * Shared/WebContextMenuItem.h:
785         * Shared/WebContextMenuItemData.cpp:
786         (WebKit::WebContextMenuItemData::userData):
787         (WebKit::WebContextMenuItemData::setUserData):
788         * Shared/WebContextMenuItemData.h:
789         * Shared/WebData.h:
790         * Shared/WebError.h:
791         * Shared/WebGeolocationPosition.h:
792         * Shared/WebGeometry.h:
793         * Shared/WebGraphicsContext.h:
794         * Shared/WebHitTestResult.h:
795         * Shared/WebImage.h:
796         * Shared/WebNumber.h:
797         * Shared/WebOpenPanelParameters.h:
798         * Shared/WebRenderLayer.cpp:
799         (WebKit::WebRenderLayer::createArrayFromLayerList):
800         * Shared/WebRenderLayer.h:
801         * Shared/WebRenderObject.cpp:
802         (WebKit::WebRenderObject::WebRenderObject):
803         * Shared/WebRenderObject.h:
804         * Shared/WebSecurityOrigin.h:
805         * Shared/WebSerializedScriptValue.h:
806         * Shared/WebString.h:
807         * Shared/WebURL.h:
808         * Shared/WebURLRequest.h:
809         * Shared/WebURLResponse.h:
810         * Shared/WebUserContentURLPattern.h:
811         * Shared/mac/ObjCObjectGraph.h:
812         * Shared/mac/ObjCObjectGraphCoders.mm:
813         (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
814         (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
815         * UIProcess/API/C/WKPluginSiteDataManager.cpp:
816         (WKPluginSiteDataManagerGetTypeID):
817         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
818         (WKContextGetInfoForInstalledPlugIns):
819         * UIProcess/API/Cocoa/WKBackForwardList.mm:
820         (-[WKBackForwardList API::]):
821         * UIProcess/API/Cocoa/WKBackForwardListItem.mm:
822         (-[WKBackForwardListItem API::]):
823         * UIProcess/API/Cocoa/WKNavigationData.mm:
824         (-[WKNavigationData API::]):
825         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
826         (createWKArray):
827         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
828         * UIProcess/Authentication/AuthenticationDecisionListener.h:
829         * UIProcess/Authentication/WebCredential.h:
830         * UIProcess/Authentication/WebProtectionSpace.h:
831         * UIProcess/Downloads/DownloadProxy.h:
832         * UIProcess/GeolocationPermissionRequestProxy.h:
833         * UIProcess/Notifications/NotificationPermissionRequest.h:
834         * UIProcess/Notifications/WebNotification.h:
835         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
836         (WebKit::WebNotificationManagerProxy::refWebContextSupplement):
837         (WebKit::WebNotificationManagerProxy::derefWebContextSupplement):
838         * UIProcess/Notifications/WebNotificationManagerProxy.h:
839         * UIProcess/Notifications/WebNotificationProvider.cpp:
840         (WebKit::WebNotificationProvider::clearNotifications):
841         * UIProcess/Plugins/WebPluginSiteDataManager.h:
842         * UIProcess/StatisticsRequest.cpp:
843         (WebKit::StatisticsRequest::completedRequest):
844         * UIProcess/WebApplicationCacheManagerProxy.cpp:
845         (WebKit::WebApplicationCacheManagerProxy::refWebContextSupplement):
846         (WebKit::WebApplicationCacheManagerProxy::derefWebContextSupplement):
847         * UIProcess/WebApplicationCacheManagerProxy.h:
848         * UIProcess/WebBackForwardList.cpp:
849         (WebKit::WebBackForwardList::addItem):
850         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
851         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
852         (WebKit::WebBackForwardList::clear):
853         * UIProcess/WebBackForwardList.h:
854         * UIProcess/WebColorPickerResultListenerProxy.h:
855         * UIProcess/WebConnectionToWebProcess.cpp:
856         (WebKit::WebConnectionToWebProcess::encodeMessageBody):
857         (WebKit::WebConnectionToWebProcess::decodeMessageBody):
858         * UIProcess/WebConnectionToWebProcess.h:
859         * UIProcess/WebContext.cpp:
860         (WebKit::WebContext::createNewWebProcess):
861         (WebKit::WebContext::postMessageToInjectedBundle):
862         (WebKit::WebContext::didReceiveMessageFromInjectedBundle):
863         (WebKit::WebContext::didReceiveSynchronousMessageFromInjectedBundle):
864         (WebKit::WebContext::didReceiveMessage):
865         (WebKit::WebContext::didReceiveSyncMessage):
866         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
867         * UIProcess/WebContext.h:
868         (WebKit::WebContext::setInjectedBundleInitializationUserData):
869         * UIProcess/WebContextInjectedBundleClient.cpp:
870         (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):
871         (WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
872         (WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):
873         * UIProcess/WebContextInjectedBundleClient.h:
874         * UIProcess/WebContextUserMessageCoders.h:
875         (WebKit::WebContextUserMessageEncoder::WebContextUserMessageEncoder):
876         (WebKit::WebContextUserMessageEncoder::encode):
877         (WebKit::WebContextUserMessageDecoder::WebContextUserMessageDecoder):
878         (WebKit::WebContextUserMessageDecoder::decode):
879         * UIProcess/WebCookieManagerProxy.cpp:
880         (WebKit::WebCookieManagerProxy::refWebContextSupplement):
881         (WebKit::WebCookieManagerProxy::derefWebContextSupplement):
882         * UIProcess/WebCookieManagerProxy.h:
883         * UIProcess/WebDatabaseManagerProxy.cpp:
884         (WebKit::WebDatabaseManagerProxy::refWebContextSupplement):
885         (WebKit::WebDatabaseManagerProxy::derefWebContextSupplement):
886         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
887         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
888         * UIProcess/WebDatabaseManagerProxy.h:
889         * UIProcess/WebEditCommandProxy.h:
890         * UIProcess/WebFormClient.cpp:
891         (WebKit::WebFormClient::willSubmitForm):
892         * UIProcess/WebFormClient.h:
893         * UIProcess/WebFrameListenerProxy.h:
894         * UIProcess/WebFrameProxy.h:
895         * UIProcess/WebGeolocationManagerProxy.cpp:
896         (WebKit::WebGeolocationManagerProxy::refWebContextSupplement):
897         (WebKit::WebGeolocationManagerProxy::derefWebContextSupplement):
898         * UIProcess/WebGeolocationManagerProxy.h:
899         * UIProcess/WebGrammarDetail.h:
900         * UIProcess/WebIconDatabase.h:
901         * UIProcess/WebIconDatabaseClient.h:
902         * UIProcess/WebInspectorProxy.h:
903         * UIProcess/WebKeyValueStorageManager.cpp:
904         (WebKit::WebKeyValueStorageManager::refWebContextSupplement):
905         (WebKit::WebKeyValueStorageManager::derefWebContextSupplement):
906         (WebKit::didGetKeyValueStorageOrigins):
907         * UIProcess/WebKeyValueStorageManager.h:
908         * UIProcess/WebLoaderClient.cpp:
909         (WebKit::WebLoaderClient::didStartProvisionalLoadForFrame):
910         (WebKit::WebLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
911         (WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
912         (WebKit::WebLoaderClient::didCommitLoadForFrame):
913         (WebKit::WebLoaderClient::didFinishDocumentLoadForFrame):
914         (WebKit::WebLoaderClient::didFinishLoadForFrame):
915         (WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
916         (WebKit::WebLoaderClient::didSameDocumentNavigationForFrame):
917         (WebKit::WebLoaderClient::didReceiveTitleForFrame):
918         (WebKit::WebLoaderClient::didFirstLayoutForFrame):
919         (WebKit::WebLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
920         (WebKit::WebLoaderClient::didLayout):
921         (WebKit::WebLoaderClient::didRemoveFrameFromHierarchy):
922         (WebKit::WebLoaderClient::didDisplayInsecureContentForFrame):
923         (WebKit::WebLoaderClient::didRunInsecureContentForFrame):
924         (WebKit::WebLoaderClient::didDetectXSSForFrame):
925         (WebKit::WebLoaderClient::didChangeBackForwardList):
926         (WebKit::WebLoaderClient::willGoToBackForwardListItem):
927         * UIProcess/WebLoaderClient.h:
928         * UIProcess/WebMediaCacheManagerProxy.cpp:
929         (WebKit::WebMediaCacheManagerProxy::refWebContextSupplement):
930         (WebKit::WebMediaCacheManagerProxy::derefWebContextSupplement):
931         * UIProcess/WebMediaCacheManagerProxy.h:
932         * UIProcess/WebNavigationData.h:
933         * UIProcess/WebOpenPanelResultListenerProxy.h:
934         * UIProcess/WebOriginDataManagerProxy.cpp:
935         (WebKit::WebOriginDataManagerProxy::refWebContextSupplement):
936         (WebKit::WebOriginDataManagerProxy::derefWebContextSupplement):
937         * UIProcess/WebOriginDataManagerProxy.h:
938         * UIProcess/WebPageContextMenuClient.cpp:
939         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
940         (WebKit::WebPageContextMenuClient::showContextMenu):
941         * UIProcess/WebPageContextMenuClient.h:
942         * UIProcess/WebPageGroup.h:
943         * UIProcess/WebPageProxy.cpp:
944         (WebKit::WebPageProxy::relatedPages):
945         (WebKit::WebPageProxy::loadURL):
946         (WebKit::WebPageProxy::loadURLRequest):
947         (WebKit::WebPageProxy::loadFile):
948         (WebKit::WebPageProxy::loadData):
949         (WebKit::WebPageProxy::loadHTMLString):
950         (WebKit::WebPageProxy::loadAlternateHTMLString):
951         (WebKit::WebPageProxy::loadPlainTextString):
952         (WebKit::WebPageProxy::loadWebArchiveData):
953         (WebKit::WebPageProxy::didChangeBackForwardList):
954         (WebKit::WebPageProxy::willGoToBackForwardListItem):
955         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
956         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
957         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
958         (WebKit::WebPageProxy::didCommitLoadForFrame):
959         (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
960         (WebKit::WebPageProxy::didFinishLoadForFrame):
961         (WebKit::WebPageProxy::didFailLoadForFrame):
962         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
963         (WebKit::WebPageProxy::didReceiveTitleForFrame):
964         (WebKit::WebPageProxy::didFirstLayoutForFrame):
965         (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
966         (WebKit::WebPageProxy::didLayout):
967         (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
968         (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
969         (WebKit::WebPageProxy::didRunInsecureContentForFrame):
970         (WebKit::WebPageProxy::didDetectXSSForFrame):
971         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
972         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
973         (WebKit::WebPageProxy::decidePolicyForResponse):
974         (WebKit::WebPageProxy::unableToImplementPolicy):
975         (WebKit::WebPageProxy::willSubmitForm):
976         (WebKit::WebPageProxy::mouseDidMoveOverElement):
977         (WebKit::WebPageProxy::didFindStringMatches):
978         (WebKit::WebPageProxy::postMessageToInjectedBundle):
979         (WebKit::WebPageProxy::internalShowContextMenu):
980         * UIProcess/WebPageProxy.h:
981         * UIProcess/WebPolicyClient.cpp:
982         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
983         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
984         (WebKit::WebPolicyClient::decidePolicyForResponse):
985         (WebKit::WebPolicyClient::unableToImplementPolicy):
986         * UIProcess/WebPolicyClient.h:
987         * UIProcess/WebPreferences.h:
988         * UIProcess/WebResourceCacheManagerProxy.cpp:
989         (WebKit::WebResourceCacheManagerProxy::refWebContextSupplement):
990         (WebKit::WebResourceCacheManagerProxy::derefWebContextSupplement):
991         * UIProcess/WebResourceCacheManagerProxy.h:
992         * UIProcess/WebUIClient.cpp:
993         (WebKit::WebUIClient::mouseDidMoveOverElement):
994         * UIProcess/WebUIClient.h:
995         * UIProcess/mac/WebContextMenuProxyMac.mm:
996         (-[WKUserDataWrapper initWithUserData:API::]):
997         (-[WKUserDataWrapper API::]):
998         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
999         (WKBundlePostSynchronousMessage):
1000         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1001         (contextMenuItems):
1002         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
1003         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
1004         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1005         (WebKit::InjectedBundle::postMessage):
1006         (WebKit::InjectedBundle::postSynchronousMessage):
1007         (WebKit::InjectedBundle::originsWithApplicationCache):
1008         (WebKit::InjectedBundle::didReceiveMessage):
1009         (WebKit::InjectedBundle::didReceiveMessageToPage):
1010         * WebProcess/InjectedBundle/InjectedBundle.h:
1011         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
1012         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
1013         (WebKit::InjectedBundleBackForwardListItem::children):
1014         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
1015         * WebProcess/InjectedBundle/InjectedBundleClient.cpp:
1016         (WebKit::InjectedBundleClient::didReceiveMessage):
1017         (WebKit::InjectedBundleClient::didReceiveMessageToPage):
1018         * WebProcess/InjectedBundle/InjectedBundleClient.h:
1019         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.h:
1020         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
1021         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.h:
1022         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
1023         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
1024         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
1025         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
1026         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
1027         (WebKit::InjectedBundlePageFormClient::willSubmitForm):
1028         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
1029         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
1030         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1031         (WebKit::InjectedBundlePageLoaderClient::willLoadURLRequest):
1032         (WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):
1033         (WebKit::InjectedBundlePageLoaderClient::shouldGoToBackForwardListItem):
1034         (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
1035         (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
1036         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
1037         (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
1038         (WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
1039         (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
1040         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
1041         (WebKit::InjectedBundlePageLoaderClient::didSameDocumentNavigationForFrame):
1042         (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
1043         (WebKit::InjectedBundlePageLoaderClient::didRemoveFrameFromHierarchy):
1044         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
1045         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
1046         (WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
1047         (WebKit::InjectedBundlePageLoaderClient::didFirstLayoutForFrame):
1048         (WebKit::InjectedBundlePageLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
1049         (WebKit::InjectedBundlePageLoaderClient::didLayout):
1050         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1051         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
1052         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
1053         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
1054         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
1055         (WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy):
1056         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
1057         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
1058         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1059         (WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
1060         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1061         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
1062         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
1063         (WebKit::InjectedBundleUserMessageEncoder::InjectedBundleUserMessageEncoder):
1064         (WebKit::InjectedBundleUserMessageEncoder::encode):
1065         (WebKit::InjectedBundleUserMessageDecoder::InjectedBundleUserMessageDecoder):
1066         (WebKit::InjectedBundleUserMessageDecoder::decode):
1067         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1068         (WebKit::InjectedBundle::load):
1069         * WebProcess/WebConnectionToUIProcess.cpp:
1070         (WebKit::WebConnectionToUIProcess::encodeMessageBody):
1071         (WebKit::WebConnectionToUIProcess::decodeMessageBody):
1072         * WebProcess/WebConnectionToUIProcess.h:
1073         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1074         (WebKit::WebChromeClient::mouseDidMoveOverElement):
1075         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1076         (WebKit::WebFrameLoaderClient::detachedFromParent2):
1077         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1078         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
1079         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
1080         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
1081         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
1082         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1083         (WebKit::WebFrameLoaderClient::dispatchDidReceiveTitle):
1084         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1085         (WebKit::WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1086         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
1087         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
1088         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
1089         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1090         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1091         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1092         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1093         (WebKit::WebFrameLoaderClient::dispatchUnableToImplementPolicy):
1094         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
1095         (WebKit::WebFrameLoaderClient::shouldGoToHistoryItem):
1096         (WebKit::WebFrameLoaderClient::didDisplayInsecureContent):
1097         (WebKit::WebFrameLoaderClient::didRunInsecureContent):
1098         (WebKit::WebFrameLoaderClient::didDetectXSS):
1099         * WebProcess/WebPage/PageBanner.h:
1100         * WebProcess/WebPage/PageOverlay.h:
1101         * WebProcess/WebPage/WebContextMenu.cpp:
1102         (WebKit::WebContextMenu::show):
1103         (WebKit::WebContextMenu::menuItemsWithUserData):
1104         (WebKit::WebContextMenu::items):
1105         * WebProcess/WebPage/WebContextMenu.h:
1106         * WebProcess/WebPage/WebFrame.cpp:
1107         (WebKit::WebFrame::childFrames):
1108         * WebProcess/WebPage/WebFrame.h:
1109         * WebProcess/WebPage/WebInspector.h:
1110         * WebProcess/WebPage/WebPage.cpp:
1111         (WebKit::WebPage::trackedRepaintRects):
1112         (WebKit::WebPage::loadURLRequest):
1113         (WebKit::WebPage::loadDataImpl):
1114         (WebKit::WebPage::postInjectedBundleMessage):
1115         * WebProcess/WebPage/WebPage.h:
1116         * WebProcess/WebPage/WebPageGroupProxy.h:
1117         * WebProcess/WebProcess.cpp:
1118         (WebKit::WebProcess::initializeWebProcess):
1119         (WebKit::WebProcess::postInjectedBundleMessage):
1120
1121 2013-11-12  Nick Diego Yamane  <nick.yamane@openbossa.org>
1122
1123         Fix GTK build after r159142
1124         https://bugs.webkit.org/show_bug.cgi?id=124243
1125
1126         Reviewed by Anders Carlsson.
1127
1128         Use Vector + ImmutableArray instead of MutableArray
1129
1130         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
1131         (webkitContextMenuItemCreate):
1132
1133 2013-11-12  Anders Carlsson  <andersca@apple.com>
1134
1135         Remove ImmutableArray::isMutable
1136         https://bugs.webkit.org/show_bug.cgi?id=124242
1137
1138         Reviewed by Dan Bernstein.
1139
1140         * Shared/API/c/WKMutableArray.cpp:
1141         (WKArrayIsMutable):
1142         * Shared/Cocoa/WKNSArray.mm:
1143         (-[WKNSArray copyWithZone:]):
1144         * Shared/ImmutableArray.h:
1145
1146 2013-11-12  Anders Carlsson  <andersca@apple.com>
1147
1148         WKMutableArrayRef should be an ImmutableArray
1149         https://bugs.webkit.org/show_bug.cgi?id=124239
1150
1151         Reviewed by Sam Weinig.
1152
1153         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
1154         (ensureObjectStream):
1155         * Shared/API/c/WKMutableArray.cpp:
1156         (WKMutableArrayCreate):
1157         * Shared/API/c/WKSharedAPICast.h:
1158
1159 2013-11-12  Anders Carlsson  <andersca@apple.com>
1160
1161         Remove more functionality from MutableArray
1162         https://bugs.webkit.org/show_bug.cgi?id=124235
1163
1164         Reviewed by Beth Dakin.
1165
1166         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
1167         (encodeToObjectStream):
1168         * Shared/API/c/WKMutableArray.cpp:
1169         (WKArrayAppendItem):
1170         (WKArrayRemoveItemAtIndex):
1171         * Shared/Cocoa/WKNSArray.mm:
1172         (-[WKNSArray copyWithZone:]):
1173         * Shared/ImmutableArray.h:
1174         (WebKit::ImmutableArray::elements):
1175         * Shared/MutableArray.cpp:
1176         * Shared/MutableArray.h:
1177
1178 2013-11-12  Anders Carlsson  <andersca@apple.com>
1179
1180         Remove most uses of MutableArray
1181         https://bugs.webkit.org/show_bug.cgi?id=124232
1182
1183         Reviewed by Sam Weinig.
1184
1185         * Shared/API/c/WKMutableArray.cpp:
1186         (WKMutableArrayCreate):
1187         * Shared/UserMessageCoders.h:
1188         (WebKit::UserMessageDecoder::baseDecode):
1189         * Shared/WebRenderLayer.h:
1190         (WebKit::WebRenderLayer::create):
1191         (WebKit::WebRenderLayer::WebRenderLayer):
1192         * Shared/WebRenderObject.cpp:
1193         (WebKit::WebRenderObject::WebRenderObject):
1194         * Shared/WebRenderObject.h:
1195         (WebKit::WebRenderObject::create):
1196         (WebKit::WebRenderObject::WebRenderObject):
1197         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
1198         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
1199
1200 2013-11-12  Anders Carlsson  <andersca@apple.com>
1201
1202         Use Vector + ImmutableArray instead of MutableArray
1203         https://bugs.webkit.org/show_bug.cgi?id=124221
1204
1205         Reviewed by Andreas Kling.
1206
1207         * Shared/WebRenderLayer.cpp:
1208         (WebKit::WebRenderLayer::createArrayFromLayerList):
1209         * Shared/WebRenderLayer.h:
1210         * UIProcess/Notifications/WebNotificationProvider.cpp:
1211         (WebKit::WebNotificationProvider::clearNotifications):
1212         * UIProcess/WebPageContextMenuClient.cpp:
1213         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
1214         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1215         (contextMenuItems):
1216         (WKBundlePageCopyContextMenuItems):
1217         (WKBundlePageCopyContextMenuAtPointInWindow):
1218
1219 2013-11-12  Zan Dobersek  <zdobersek@igalia.com>
1220
1221         Unreviewed GTK build fix after r159129.
1222
1223         * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
1224         (webkit_file_chooser_request_select_files): Use ImmutableArray::create() instead.
1225         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
1226         (toImmutableArray): Ditto.
1227
1228 2013-11-12  Anders Carlsson  <andersca@apple.com>
1229
1230         Stop using WKArrayCreate internally
1231         https://bugs.webkit.org/show_bug.cgi?id=124217
1232
1233         Reviewed by Andreas Kling.
1234
1235         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
1236         (createWKArray):
1237         (-[WKBrowsingContextGroup addUserStyleSheet:baseURL:whitelistedURLPatterns:blacklistedURLPatterns:mainFrameOnly:]):
1238         (-[WKBrowsingContextGroup addUserScript:baseURL:whitelistedURLPatterns:blacklistedURLPatterns:injectionTime:mainFrameOnly:]):
1239         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1240         (WKBundlePageCopyContextMenuItems):
1241
1242 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1243
1244         URTBF after r159129, use create() instead of adopt() everywhere.
1245
1246         * UIProcess/WebGrammarDetail.cpp:
1247         (WebKit::WebGrammarDetail::guesses):
1248         * UIProcess/efl/WebUIPopupMenuClient.cpp:
1249         (WebUIPopupMenuClient::showPopupMenu):
1250
1251 2013-11-12  Anders Carlsson  <andersca@apple.com>
1252
1253         Simplify ImmutableArray creation
1254         https://bugs.webkit.org/show_bug.cgi?id=124213
1255
1256         Reviewed by Andreas Kling.
1257
1258         Get rid of the various ImmutableArray::adopt functions and have a single create function instead.
1259         Use std::move to avoid unnecessarily copying vector data.
1260
1261         * Shared/API/c/WKArray.cpp:
1262         (WKArrayCreate):
1263         (WKArrayCreateAdoptingValues):
1264         * Shared/Cocoa/WKNSArray.mm:
1265         (-[WKNSArray copyWithZone:]):
1266         * Shared/ImmutableArray.cpp:
1267         (WebKit::ImmutableArray::create):
1268         (WebKit::ImmutableArray::createStringArray):
1269         (WebKit::ImmutableArray::ImmutableArray):
1270         * Shared/ImmutableArray.h:
1271         (WebKit::ImmutableArray::at):
1272         (WebKit::ImmutableArray::size):
1273         (WebKit::ImmutableArray::entries):
1274         * Shared/ImmutableDictionary.cpp:
1275         (WebKit::ImmutableDictionary::keys):
1276         * Shared/MutableArray.cpp:
1277         (WebKit::MutableArray::MutableArray):
1278         (WebKit::MutableArray::append):
1279         (WebKit::MutableArray::reserveCapacity):
1280         (WebKit::MutableArray::removeItemAtIndex):
1281         * Shared/SecurityOriginData.cpp:
1282         (WebKit::performAPICallbackWithSecurityOriginDataVector):
1283         * Shared/UserMessageCoders.h:
1284         (WebKit::UserMessageDecoder::baseDecode):
1285         * Shared/WebArchive.cpp:
1286         (WebKit::WebArchive::subresources):
1287         (WebKit::WebArchive::subframeArchives):
1288         * Shared/WebContextMenuItem.cpp:
1289         (WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):
1290         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
1291         (WKContextGetInfoForInstalledPlugIns):
1292         * UIProcess/StatisticsRequest.cpp:
1293         (WebKit::StatisticsRequest::completedRequest):
1294         * UIProcess/WebBackForwardList.cpp:
1295         (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
1296         (WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
1297         * UIProcess/WebContext.cpp:
1298         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
1299         * UIProcess/WebDatabaseManagerProxy.cpp:
1300         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
1301         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
1302         * UIProcess/WebKeyValueStorageManager.cpp:
1303         (WebKit::didGetKeyValueStorageOrigins):
1304         * UIProcess/WebLoaderClient.cpp:
1305         (WebKit::WebLoaderClient::didChangeBackForwardList):
1306         * UIProcess/WebPageContextMenuClient.cpp:
1307         (WebKit::WebPageContextMenuClient::showContextMenu):
1308         * UIProcess/WebPageProxy.cpp:
1309         (WebKit::WebPageProxy::relatedPages):
1310         (WebKit::WebPageProxy::didFindStringMatches):
1311         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1312         (WebKit::InjectedBundle::originsWithApplicationCache):
1313         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
1314         (WebKit::InjectedBundleBackForwardListItem::children):
1315         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
1316         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
1317         * WebProcess/WebPage/WebFrame.cpp:
1318         (WebKit::WebFrame::childFrames):
1319         * WebProcess/WebPage/WebPage.cpp:
1320         (WebKit::WebPage::trackedRepaintRects):
1321
1322 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1323
1324         The last URTBF after r159108 to make GTK happy.
1325
1326         * GNUmakefile.am:
1327
1328 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1329
1330         One more URTBF after r159108, I hope the last one.
1331
1332         * GNUmakefile.am:
1333
1334 2013-11-12  Tim Horton  <timothy_horton@apple.com>
1335
1336         Remote Layer Tree: Assertions during layer flushing after replaceSublayer()
1337         https://bugs.webkit.org/show_bug.cgi?id=124194
1338
1339         Reviewed by Anders Carlsson.
1340
1341         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
1342         (PlatformCALayerRemote::replaceSublayer):
1343         Only remove the old layer from the children array once (via removeFromSuperlayer).
1344         Update the superlayer backpointer on the new layer.
1345
1346 2013-11-12  Anders Carlsson  <andersca@apple.com>
1347
1348         Add ImmutableArray::createStringArray
1349         https://bugs.webkit.org/show_bug.cgi?id=124210
1350
1351         Reviewed by Andreas Kling.
1352
1353         Creating an ImmutableArray of WebStrings is a common operation, so add a 
1354         helper function to ImmutableArray that does this from a Vector of Strings.
1355
1356         * Shared/ImmutableArray.cpp:
1357         (WebKit::ImmutableArray::createStringArray):
1358         * Shared/ImmutableArray.h:
1359         * Shared/ImmutableDictionary.cpp:
1360         (WebKit::ImmutableDictionary::keys):
1361         * Shared/WebOpenPanelParameters.cpp:
1362         (WebKit::WebOpenPanelParameters::acceptMIMETypes):
1363         (WebKit::WebOpenPanelParameters::selectedFileNames):
1364         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
1365         (WebKit::WebPluginSiteDataManager::didGetSitesWithData):
1366         * UIProcess/WebCookieManagerProxy.cpp:
1367         (WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies):
1368         * UIProcess/WebMediaCacheManagerProxy.cpp:
1369         (WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache):
1370         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1371         (WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
1372
1373 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1374
1375         One more URTBF after r159108.
1376
1377         * GNUmakefile.am:
1378
1379 2013-11-12  Anders Carlsson  <andersca@apple.com>
1380
1381         Begin cleaning up handling of ImmutableArray vectors
1382         https://bugs.webkit.org/show_bug.cgi?id=124208
1383
1384         Reviewed by Andreas Kling.
1385
1386         Use range based for to iterate the loops. Use reserveInitialCapacity + uncheckedAppend
1387         when appending vector elements.
1388
1389         * Shared/SecurityOriginData.cpp:
1390         (WebKit::performAPICallbackWithSecurityOriginDataVector):
1391         * Shared/WebArchive.cpp:
1392         (WebKit::WebArchive::subresources):
1393         (WebKit::WebArchive::subframeArchives):
1394         * Shared/WebContextMenuItem.cpp:
1395         (WebKit::WebContextMenuItem::submenuItemsAsImmutableArray):
1396         * Shared/WebOpenPanelParameters.cpp:
1397         (WebKit::WebOpenPanelParameters::acceptMIMETypes):
1398         (WebKit::WebOpenPanelParameters::selectedFileNames):
1399         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
1400         (WKContextGetInfoForInstalledPlugIns):
1401         * UIProcess/Plugins/WebPluginSiteDataManager.cpp:
1402         (WebKit::WebPluginSiteDataManager::didGetSitesWithData):
1403         * UIProcess/StatisticsRequest.cpp:
1404         (WebKit::StatisticsRequest::completedRequest):
1405         * UIProcess/WebContext.cpp:
1406         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
1407         * UIProcess/WebCookieManagerProxy.cpp:
1408         (WebKit::WebCookieManagerProxy::didGetHostnamesWithCookies):
1409         * UIProcess/WebDatabaseManagerProxy.cpp:
1410         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
1411         (WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
1412         * UIProcess/WebMediaCacheManagerProxy.cpp:
1413         (WebKit::WebMediaCacheManagerProxy::didGetHostnamesWithMediaCache):
1414         * UIProcess/WebPageContextMenuClient.cpp:
1415         (WebKit::WebPageContextMenuClient::showContextMenu):
1416         * UIProcess/WebPageProxy.cpp:
1417         (WebKit::WebPageProxy::relatedPages):
1418         (WebKit::WebPageProxy::didFindStringMatches):
1419         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1420         (WebKit::InjectedBundle::originsWithApplicationCache):
1421         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
1422         (WebKit::InjectedBundleBackForwardListItem::children):
1423         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
1424         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
1425         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1426         (WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
1427         * WebProcess/WebPage/WebPage.cpp:
1428         (WebKit::WebPage::trackedRepaintRects):
1429
1430 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1431
1432         One more URTBF after r159108.
1433
1434         * CMakeLists.txt:
1435
1436 2013-11-12  Csaba Osztrogonác  <ossy@webkit.org>
1437
1438         URTBF after r159108.
1439
1440         * CMakeLists.txt:
1441         * GNUmakefile.list.am:
1442
1443 2013-11-12  Anders Carlsson  <andersca@apple.com>
1444
1445         Move StringReference to Platform/IPC
1446         https://bugs.webkit.org/show_bug.cgi?id=124203
1447
1448         Reviewed by Antti Koivisto.
1449
1450         * Platform/IPC/StringReference.cpp: Renamed from Source/WebKit2/Platform/CoreIPC/StringReference.cpp.
1451         (CoreIPC::StringReference::toString):
1452         (CoreIPC::StringReference::encode):
1453         (CoreIPC::StringReference::decode):
1454         (CoreIPC::StringReference::Hash::hash):
1455         * Platform/IPC/StringReference.h: Renamed from Source/WebKit2/Platform/CoreIPC/StringReference.h.
1456         (CoreIPC::StringReference::StringReference):
1457         (CoreIPC::StringReference::isEmpty):
1458         (CoreIPC::StringReference::size):
1459         (CoreIPC::StringReference::data):
1460         (CoreIPC::StringReference::operator==):
1461         (CoreIPC::StringReference::Hash::equal):
1462         * WebKit2.xcodeproj/project.pbxproj:
1463
1464 2013-11-11  Tim Horton  <timothy_horton@apple.com>
1465
1466         Remote Layer Tree: Sporadic memory corruption during painting
1467         https://bugs.webkit.org/show_bug.cgi?id=124191
1468
1469         Reviewed by Brady Eidson.
1470
1471         Fix a logic error (flipped the logic, didn't flip the operator)
1472         made in the last version of r158982 that caused some crashes because
1473         it allowed us to overrun the end of cgPaintingRects.
1474
1475         * Shared/mac/RemoteLayerBackingStore.mm:
1476         (RemoteLayerBackingStore::drawInContext):
1477
1478 2013-11-11  Commit Queue  <commit-queue@webkit.org>
1479
1480         Unreviewed, rolling out r159088.
1481         http://trac.webkit.org/changeset/159088
1482         https://bugs.webkit.org/show_bug.cgi?id=124187
1483
1484         It broke the EFL build, because it removed a used function
1485         (rs=thorton) (Requested by Ossy_night on #webkit).
1486
1487         * UIProcess/WebPageProxy.cpp:
1488         (WebKit::WebPageProxy::WebPageProxy):
1489         (WebKit::WebPageProxy::resetStateAfterProcessExited):
1490         * UIProcess/WebPageProxy.h:
1491         (WebKit::WebPageProxy::urlAtProcessExit):
1492         (WebKit::WebPageProxy::loadStateAtProcessExit):
1493
1494 2013-11-11  Csaba Osztrogonác  <ossy@webkit.org>
1495
1496         URTBF after r159077 to make GTK build happy.
1497
1498         * GNUmakefile.list.am:
1499
1500 2013-11-11  Gustavo Noronha Silva  <gns@gnome.org>
1501
1502         REGRESSION(r158976): Web Inspector: unable to start docked or dock
1503         https://bugs.webkit.org/show_bug.cgi?id=124148
1504
1505         Reviewed by Timothy Hatcher.
1506
1507         * UIProcess/WebInspectorProxy.cpp:
1508         (WebKit::WebInspectorProxy::canAttach): check for a level that is greater than 1 rather than 0
1509         to deny attachment, since 1 is the first level of inspectors.
1510
1511 2013-11-11  Anders Carlsson  <andersca@apple.com>
1512
1513         FrameFilter can just be an std::function instead
1514         https://bugs.webkit.org/show_bug.cgi?id=124176
1515
1516         Reviewed by Tim Horton.
1517
1518         * WebProcess/WebPage/WebFrame.cpp:
1519         (WebKit::WebFrame::webArchiveData):
1520
1521 2013-11-11  Anders Carlsson  <andersca@apple.com>
1522
1523         Remove unused Qt cruft
1524         https://bugs.webkit.org/show_bug.cgi?id=124174
1525
1526         Reviewed by Tim Horton.
1527
1528         * UIProcess/WebPageProxy.cpp:
1529         (WebKit::WebPageProxy::WebPageProxy):
1530         (WebKit::WebPageProxy::resetStateAfterProcessExited):
1531         * UIProcess/WebPageProxy.h:
1532
1533 2013-11-11  Anders Carlsson  <andersca@apple.com>
1534
1535         REGRESSION (r158927): curly-braces-escaping.html is broken on Mac WebKit2
1536         https://bugs.webkit.org/show_bug.cgi?id=124164
1537
1538         Reviewed by Alexey Proskuryakov.
1539
1540         Back out the change to use NSSecureCoding for encoding/decoding NSURLRequest and
1541         NSURLResponse objects; turns out the NSURL encoding/decoding doesn't preserve the raw URL bytes.
1542
1543         * Shared/mac/WebCoreArgumentCodersMac.mm:
1544         (CoreIPC::encodePlatformData):
1545         (CoreIPC::decodePlatformData):
1546
1547 2013-11-11  Ryuan Choi  <ryuan.choi@samsung.com>
1548
1549         Unreviewed build fix on CMake Based port since r159077.
1550
1551         * CMakeLists.txt:
1552
1553 2013-11-11  Tim Horton  <timothy_horton@apple.com>
1554
1555         Remote Layer Tree: Implement Page Overlays
1556         https://bugs.webkit.org/show_bug.cgi?id=124165
1557         <rdar://problem/15199056>
1558
1559         Reviewed by Anders Carlsson.
1560
1561         Implement page overlays, very similar to how they work in TiledCoreAnimationDrawingArea,
1562         but manipulating the PlatformCALayer tree instead of the CALayer tree directly.
1563
1564         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
1565         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
1566         (WebKit::RemoteLayerTreeContext::outOfTreeLayerWasAdded):
1567         (WebKit::RemoteLayerTreeContext::outOfTreeLayerWillBeRemoved):
1568         (WebKit::RemoteLayerTreeContext::flushLayers):
1569         Add a list of out-of-tree GraphicsLayers which are flushed in addition
1570         to the page's GraphicsLayer tree, and functions to manipulate this list.
1571
1572         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
1573         Make RemoteLayerTreeDrawingArea a GraphicsLayerClient, so we can get callbacks
1574         from the GraphicsLayers that drive our page overlays.
1575         Override the relevant page overlay functions.
1576         Add storage for the root layer, view size, and a map of PageOverlay->GraphicsLayer.
1577
1578         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
1579         (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
1580         Store the root GraphicsLayer for later use.
1581
1582         (WebKit::RemoteLayerTreeDrawingArea::updateGeometry):
1583         Update the size of the page overlays when the DrawingArea's geometry changes.
1584
1585         (WebKit::RemoteLayerTreeDrawingArea::updatePreferences):
1586         Update the page overlay settings when necessary.
1587
1588         (WebKit::RemoteLayerTreeDrawingArea::didInstallPageOverlay):
1589         Create a GraphicsLayer for our page overlay, set it up, and parent it.
1590         Inform the RemoteLayerTreeContext that it will need to flush this GraphicsLayer,
1591         since it's not a part of the page's GraphicsLayer tree.
1592
1593         (WebKit::RemoteLayerTreeDrawingArea::didUninstallPageOverlay):
1594         Tear down our page overlay's GraphicsLayer.
1595
1596         (WebKit::RemoteLayerTreeDrawingArea::setPageOverlayNeedsDisplay):
1597         (WebKit::RemoteLayerTreeDrawingArea::setPageOverlayOpacity):
1598         (WebKit::RemoteLayerTreeDrawingArea::paintContents):
1599         (WebKit::RemoteLayerTreeDrawingArea::deviceScaleFactor):
1600
1601 2013-11-11  Anders Carlsson  <andersca@apple.com>
1602
1603         Add a FrameLoadState object and begin moving loading related members from WebFrameProxy
1604         https://bugs.webkit.org/show_bug.cgi?id=124163
1605
1606         Reviewed by Beth Dakin.
1607
1608         * UIProcess/API/C/WKFrame.cpp:
1609         (WKFrameGetFrameLoadState):
1610         * UIProcess/FrameLoadState.cpp: Added.
1611         (WebKit::FrameLoadState::FrameLoadState):
1612         (WebKit::FrameLoadState::~FrameLoadState):
1613         * UIProcess/FrameLoadState.h: Added.
1614         * UIProcess/WebFrameProxy.cpp:
1615         (WebKit::WebFrameProxy::WebFrameProxy):
1616         (WebKit::WebFrameProxy::didStartProvisionalLoad):
1617         (WebKit::WebFrameProxy::didReceiveServerRedirectForProvisionalLoad):
1618         (WebKit::WebFrameProxy::didFailProvisionalLoad):
1619         (WebKit::WebFrameProxy::didCommitLoad):
1620         (WebKit::WebFrameProxy::didFinishLoad):
1621         (WebKit::WebFrameProxy::didFailLoad):
1622         (WebKit::WebFrameProxy::didSameDocumentNavigation):
1623         (WebKit::WebFrameProxy::setUnreachableURL):
1624         * UIProcess/WebFrameProxy.h:
1625         (WebKit::WebFrameProxy::frameLoadState):
1626         (WebKit::WebFrameProxy::loadState):
1627         (WebKit::WebFrameProxy::url):
1628         (WebKit::WebFrameProxy::provisionalURL):
1629         (WebKit::WebFrameProxy::unreachableURL):
1630         * UIProcess/WebPageProxy.cpp:
1631         (WebKit::WebPageProxy::WebPageProxy):
1632         (WebKit::WebPageProxy::activeURL):
1633         * UIProcess/WebPageProxy.h:
1634         (WebKit::WebPageProxy::loadStateAtProcessExit):
1635         * WebKit2.xcodeproj/project.pbxproj:
1636
1637 2013-11-11  Gergo Balogh  <geryxyz@inf.u-szeged.hu>
1638
1639         Remove #include from test input of the *Messages.in processing scripts.
1640         https://bugs.webkit.org/show_bug.cgi?id=123563
1641
1642         Reviewed by Darin Adler.
1643
1644         * Scripts/webkit2/messages_unittest.py:
1645
1646 2013-11-11  Anders Carlsson  <andersca@apple.com>
1647
1648         Remove block based APIs from the WebKit2 C API
1649         https://bugs.webkit.org/show_bug.cgi?id=124157
1650
1651         Reviewed by Sam Weinig.
1652
1653         Remove most of the block based C APIs from WebKit2. We want to discourage people from using
1654         them since any C API "objects" captured by blocks won't be implicitly retained which
1655         can lead to dangling pointer bugs.
1656
1657         * UIProcess/API/C/WKDatabaseManager.cpp:
1658         * UIProcess/API/C/WKDatabaseManager.h:
1659         * UIProcess/API/C/WKFrame.cpp:
1660         * UIProcess/API/C/WKFrame.h:
1661         * UIProcess/API/C/WKPage.cpp:
1662         * UIProcess/API/C/WKPage.h:
1663         * UIProcess/API/C/WKPagePrivate.h:
1664
1665 2013-11-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1666
1667         [GTK] Crash when printing via javascript in WebKit2
1668         https://bugs.webkit.org/show_bug.cgi?id=124043
1669
1670         Reviewed by Martin Robinson.
1671
1672         It happens because the print operation when started by the
1673         WebProcess due to a DOM operation is supposed to be synchronous
1674         and our print operation is always asynchronous. This is currently
1675         handled only in the UI process because other ports print
1676         synchronously in the WebProcess. In the GTK+ port we need to
1677         notify the WebProcess that the print operation should run
1678         synchronously when request by a DOM operation. Together with the
1679         print settings and page setup we now send a print mode that can be
1680         sync or async. When printing in sync mode we run a nested main loop
1681         for the print operation, making sure that print sources have a
1682         higher priority.
1683
1684         * Shared/PrintInfo.cpp:
1685         (WebKit::PrintInfo::encode): Encode the print mode.
1686         (WebKit::PrintInfo::decode): Decode the print mode.
1687         * Shared/PrintInfo.h: Add PrintMode enum.
1688         * Shared/gtk/PrintInfoGtk.cpp:
1689         (WebKit::PrintInfo::PrintInfo): Initialize print mode.
1690         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1691         (drawPagesForPrintingCompleted): Do not call endPrinting() when
1692         printing synchronously because WebPageProxy already calls it right
1693         after sending the message to the WebProcess.
1694         (webkitPrintOperationPrintPagesForFrame): Create the PrintInfo
1695         struct with a print mode.
1696         (webkitPrintOperationSetPrintMode): Helper private function to set
1697         the print mode of the print operation.
1698         * UIProcess/API/gtk/WebKitPrintOperationPrivate.h:
1699         * UIProcess/API/gtk/WebKitWebView.cpp:
1700         (webkitWebViewPrintFrame): Set sync print mode when printing due
1701         to a UIClient request.
1702         * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
1703         (WebKit::PrintPagesData::PrintPagesData): Create a main loop when
1704         printing synchronously.
1705         (WebKit::WebPrintOperationGtk::WebPrintOperationGtk): Initialize
1706         print mode.
1707         (WebKit::WebPrintOperationGtk::printPagesIdleDone): Finish the
1708         nested main loop when printing synchronously.
1709         (WebKit::WebPrintOperationGtk::print): Run a nested main loop when
1710         printing synchronously.
1711         * WebProcess/WebPage/gtk/WebPrintOperationGtk.h:
1712         (WebKit::WebPrintOperationGtk::printMode): Return the print mode.
1713
1714 2013-11-10  Carlos Garcia Campos  <cgarcia@igalia.com>
1715
1716         [GTK] [WebKit2] Crash when printing to a file via javascript
1717         https://bugs.webkit.org/show_bug.cgi?id=122801
1718
1719         Reviewed by Martin Robinson.
1720
1721         This crash is caused by a GTK+ bug, but we can work around it by
1722         ensuring the print dialog is always shown with a valid
1723         GtkPrintSettings object.
1724
1725         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1726         (webkitPrintOperationRunDialog):
1727
1728 2013-11-09  Dan Bernstein  <mitz@apple.com>
1729
1730         Use createCFURLFromBuffer when converting a String to a CFURL
1731         https://bugs.webkit.org/show_bug.cgi?id=124113
1732
1733         Reviewed by Anders Carlsson.
1734
1735         * Shared/API/c/cf/WKURLCF.mm:
1736         (WKURLCopyCFURL): Replaced some code with a call to createCFURLFromBuffer(), which does the
1737         same thing.
1738
1739         * Shared/Cocoa/WKNSURLExtras.h: Added.
1740         * Shared/Cocoa/WKNSURLExtras.mm: Added.
1741         (+[NSURL _web_URLWithWTFString:relativeToURL:]): Added. Returns nil for the null String,
1742         otherwise returns the result of createCFURLFromBuffer().
1743
1744         * UIProcess/API/Cocoa/WKBackForwardListItem.mm:
1745         (-[WKBackForwardListItem URL]): Changed to use +_web_URLWithWTFString:relativeToURL:.
1746         (-[WKBackForwardListItem originalURL]): Ditto.
1747
1748         * UIProcess/API/Cocoa/WKNavigationData.mm:
1749         (-[WKNavigationData destinationURL]): Ditto.
1750
1751         * UIProcess/API/mac/WKBrowsingContextController.mm:
1752         (-[WKBrowsingContextController unreachableURL]): Ditto.
1753
1754         * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
1755
1756 2013-11-09  Anders Carlsson  <andersca@apple.com>
1757
1758         Encode form data using the KeyedEncoder
1759         https://bugs.webkit.org/show_bug.cgi?id=124107
1760
1761         Reviewed by Sam Weinig.
1762
1763         * Shared/cf/KeyedEncoder.cpp:
1764         (WebKit::KeyedEncoder::encodeBool):
1765         (WebKit::KeyedEncoder::encodeDouble):
1766         * Shared/cf/KeyedEncoder.h:
1767
1768 2013-11-09  Anders Carlsson  <andersca@apple.com>
1769
1770         Remove an unused file.
1771
1772         Rubber-stamped by Andreas Kling.
1773
1774         * WebProcess/WebPage/gtk/ChunkedUpdateDrawingAreaGtk.cpp: Removed.
1775
1776 2013-11-09  Patrick Gansterer  <paroga@webkit.org>
1777
1778         Move RunLoop from WebCore to WTF
1779         https://bugs.webkit.org/show_bug.cgi?id=116606
1780
1781         Reviewed by Anders Carlsson.
1782
1783         * DatabaseProcess/DatabaseProcess.cpp:
1784         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
1785         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1786         * NetworkProcess/NetworkProcess.cpp:
1787         * NetworkProcess/NetworkProcess.h:
1788         * NetworkProcess/NetworkResourceLoader.h:
1789         * NetworkProcess/mac/DiskCacheMonitor.h:
1790         * NetworkProcess/unix/NetworkProcessMainUnix.cpp:
1791         * Platform/CoreIPC/Connection.cpp:
1792         * Platform/CoreIPC/Connection.h:
1793         * Platform/CoreIPC/mac/ConnectionMac.cpp:
1794         * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
1795         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
1796         * PluginProcess/PluginControllerProxy.h:
1797         * PluginProcess/PluginProcess.cpp:
1798         * PluginProcess/PluginProcess.h:
1799         * PluginProcess/WebProcessConnection.cpp:
1800         * PluginProcess/unix/PluginProcessMainUnix.cpp:
1801         * Shared/ChildProcess.cpp:
1802         * Shared/ChildProcess.h:
1803         * Shared/ChildProcessProxy.cpp:
1804         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
1805         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
1806         * Shared/Plugins/NPObjectProxy.cpp:
1807         * Shared/WebKit2Initialize.cpp:
1808         (WebKit::InitializeWebKit2):
1809         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
1810         * UIProcess/API/mac/FindIndicatorWindow.h:
1811         * UIProcess/API/mac/WKPrintingView.mm:
1812         * UIProcess/API/mac/WKView.mm:
1813         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
1814         * UIProcess/DrawingAreaProxyImpl.h:
1815         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
1816         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
1817         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1818         * UIProcess/Network/NetworkProcessProxy.cpp:
1819         * UIProcess/Plugins/PluginProcessProxy.cpp:
1820         * UIProcess/ResponsivenessTimer.cpp:
1821         * UIProcess/ResponsivenessTimer.h:
1822         * UIProcess/VisitedLinkProvider.h:
1823         * UIProcess/WebContext.cpp:
1824         * UIProcess/WebProcessProxy.cpp:
1825         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
1826         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
1827         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
1828         * WebProcess/Network/WebResourceLoadScheduler.h:
1829         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
1830         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1831         * WebProcess/Plugins/Netscape/NetscapePluginStream.h:
1832         * WebProcess/Plugins/PluginView.h:
1833         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
1834         * WebProcess/WebPage/DrawingAreaImpl.h:
1835         * WebProcess/WebPage/EventDispatcher.cpp:
1836         * WebProcess/WebPage/PageOverlay.h:
1837         * WebProcess/WebPage/WebPage.cpp:
1838         * WebProcess/WebPage/WebPage.h:
1839         * WebProcess/WebProcess.cpp:
1840         * WebProcess/efl/WebProcessMainEfl.cpp:
1841         * WebProcess/gtk/WebProcessMainGtk.cpp:
1842
1843 2013-11-08  Brady Eidson  <beidson@apple.com>
1844
1845         Merge IDBDatabaseBackendInterface and IDBDatabaseBackendImpl
1846         https://bugs.webkit.org/show_bug.cgi?id=124088
1847
1848         Reviewed by Tim Horton.
1849
1850         This abstraction is no longer meaningful in its current form in WebCore.
1851         The current groundwork for the WK2 DatabaseProcess relied on this abstraction,
1852         but that will be reworked in a future patch.
1853
1854         * DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.h:
1855
1856         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
1857         (WebKit::WebIDBFactoryBackend::maybeCreateTransactionBackend):
1858         (WebKit::WebIDBFactoryBackend::createCursorBackend):
1859         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
1860
1861         * WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp:
1862         (WebKit::WebProcessIDBDatabaseBackend::put):
1863         (WebKit::WebProcessIDBDatabaseBackend::openCursor):
1864         * WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h:
1865
1866 2013-11-08  Jaehun Lim  <ljaehun.lim@samsung.com>
1867
1868         Unreviewed build fix after r158984.
1869
1870         No needs to include "KeyedEncoder.h".
1871         WebKit/Source/WebKit2/WebProcess/WebPage/WebBackForwardListProxy.cpp:31:26: fatal error: KeyedEncoder.h: No such file or directory
1872
1873         * WebProcess/WebPage/WebBackForwardListProxy.cpp: Removed #include line.
1874
1875 2013-11-08  Anders Carlsson  <andersca@apple.com>
1876
1877         Implement encoding of arrays of objects
1878         https://bugs.webkit.org/show_bug.cgi?id=124091
1879
1880         Reviewed by Beth Dakin.
1881
1882         Add a new array stack and push and pop from it accordingly.
1883
1884         * Shared/cf/KeyedEncoder.cpp:
1885         (WebKit::KeyedEncoder::~KeyedEncoder):
1886         (WebKit::KeyedEncoder::encodeBytes):
1887         (WebKit::KeyedEncoder::encodeUInt32):
1888         (WebKit::KeyedEncoder::encodeInt32):
1889         (WebKit::KeyedEncoder::encodeInt64):
1890         (WebKit::KeyedEncoder::encodeFloat):
1891         (WebKit::KeyedEncoder::beginArray):
1892         (WebKit::KeyedEncoder::beginArrayElement):
1893         (WebKit::KeyedEncoder::endArrayElement):
1894         (WebKit::KeyedEncoder::endArray):
1895         * Shared/cf/KeyedEncoder.h:
1896
1897 2013-11-08  Tim Horton  <timothy_horton@apple.com>
1898
1899         Remote Layer Tree: RemoteLayerBackingStore partial repaint is broken for the tile cache
1900         https://bugs.webkit.org/show_bug.cgi?id=123944
1901
1902         Reviewed by Simon Fraser.
1903
1904         Rework RemoteLayerBackingStore painting to fix some rounding issues
1905         that would cause pixel cracks upon repaint, and to speed it up a bit.
1906
1907         * Shared/mac/RemoteLayerBackingStore.h:
1908         Redefine RepaintRectList because we can't include WebLayer.h here yet.
1909         Remove createBackingStore, which was never implemented.
1910         Remove mapToContentCoordinates, because we don't need it on Mac.
1911
1912         (WebKit::RemoteLayerBackingStore::paintingRects): Added.
1913
1914         * Shared/mac/RemoteLayerBackingStore.mm:
1915         (RemoteLayerBackingStore::setNeedsDisplay):
1916         (RemoteLayerBackingStore::display):
1917         Stop using mapToContentCoordinates.
1918
1919         (RemoteLayerBackingStore::drawInContext):
1920         Use clipping instead of painting the image multiple times.
1921         Never repaint more than the dirty region's bounds.
1922         Don't waste time with all of the drawNativeImage code, just use CG.
1923         Unindent the switch's cases.
1924         Store the rects we're painting so that enumerateRectsBeingDrawn can get them.
1925         Pixel-snap the rects we're painting.
1926         Clip the context before going to paint.
1927
1928         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
1929         (PlatformCALayerRemote::enumerateRectsBeingDrawn):
1930         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
1931         Retrieve the rects currently being painted from our backing store, and
1932         transform them (mostly) according to the CTM, to match the transformation
1933         that will have occurred underneath wkCALayerEnumerateRectsBeingDrawnWithBlock.
1934
1935 2013-11-08  Anders Carlsson  <andersca@apple.com>
1936
1937         Implement more KeyedEncoder functionality
1938         https://bugs.webkit.org/show_bug.cgi?id=124089
1939
1940         Reviewed by Beth Dakin.
1941
1942         * Shared/cf/KeyedEncoder.cpp:
1943         (WebKit::KeyedEncoder::encodeBytes):
1944         (WebKit::KeyedEncoder::encodeInt32):
1945         (WebKit::KeyedEncoder::encodeFloat):
1946         * Shared/cf/KeyedEncoder.h:
1947
1948 2013-11-08  Anders Carlsson  <andersca@apple.com>
1949
1950         KeyedEncoder should be able to encoder objects
1951         https://bugs.webkit.org/show_bug.cgi?id=124085
1952
1953         Reviewed by Sam Weinig.
1954
1955         Add a dictionary stack to KeyedEncoder that's pushed and popped by
1956         beginObject/endObject.
1957
1958         * Shared/cf/KeyedEncoder.cpp:
1959         (WebKit::KeyedEncoder::KeyedEncoder):
1960         (WebKit::KeyedEncoder::~KeyedEncoder):
1961         (WebKit::KeyedEncoder::encodeUInt32):
1962         (WebKit::KeyedEncoder::encodeString):
1963         (WebKit::KeyedEncoder::beginObject):
1964         (WebKit::KeyedEncoder::endObject):
1965         * Shared/cf/KeyedEncoder.h:
1966
1967 2013-11-08  Alexandru Chiculita  <achicu@adobe.com>
1968
1969         Web Inspector: It should be possible to debug the Inspector code
1970         https://bugs.webkit.org/show_bug.cgi?id=124065
1971
1972         Reviewed by Timothy Hatcher.
1973
1974         When the script is paused, the debugger will pause all the pages in the same PageGroup.
1975         All the Inspector windows were created in the same PageGroup, so pausing one debugger
1976         would stop the other too.
1977
1978         Added WebInspectorPageGroups to manage the PageGroups created for the Inspectors.
1979         The WebInspectors will now use the inspection "level" to figure out which PageGroup to use.
1980         The inspector that debugs the main page will use "__WebInspectorPageGroupLevel1__",
1981         the second inspector (that debugs the first inspector) will use "__WebInspectorPageGroupLevel2__" ...
1982
1983         * UIProcess/WebInspectorProxy.cpp:
1984         (WebKit::WebInspectorPageGroups::shared):
1985         (WebKit::WebInspectorPageGroups::inspectorLevel):
1986         (WebKit::WebInspectorPageGroups::isInspectorPageGroup):
1987         (WebKit::WebInspectorPageGroups::inspectorPageGroupLevel):
1988         (WebKit::WebInspectorPageGroups::inspectorPageGroupForLevel):
1989         (WebKit::WebInspectorPageGroups::createInspectorPageGroup):
1990         (WebKit::WebInspectorProxy::WebInspectorProxy):
1991         (WebKit::WebInspectorProxy::inspectorPageGroup):
1992         (WebKit::WebInspectorProxy::isInspectorPage):
1993         (WebKit::WebInspectorProxy::canAttach):
1994         * UIProcess/WebInspectorProxy.h:
1995
1996 2013-11-08  Anders Carlsson  <andersca@apple.com>
1997
1998         Begin stubbing out a KeyedEncoder class in WebCore
1999         https://bugs.webkit.org/show_bug.cgi?id=124079
2000
2001         Reviewed by Sam Weinig.
2002
2003         * Shared/KeyedEncoder.h: Removed.
2004         * Shared/cf/KeyedCodingValueCF.cpp: Removed.
2005         * Shared/cf/KeyedEncoder.cpp: Added.
2006         Remove old keyed encoders.
2007
2008         (WebKit::createDictionary):
2009         Helper function to create a mutable dictionary.
2010         (WebKit::KeyedEncoder::KeyedEncoder):
2011         Create the root dictionary.
2012
2013         (WebKit::KeyedEncoder::encodeUInt32):
2014         Create a CFNumberRef and add it to the dictionary.
2015
2016         * Shared/cf/KeyedEncoder.h: Added.
2017         * WebKit2.xcodeproj/project.pbxproj:
2018         Add new files.
2019
2020         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
2021         (WebKit::updateBackForwardItem):
2022         Create a KeyedEncoder and encode the history tree.
2023
2024 2013-11-08  Brady Eidson  <beidson@apple.com>
2025
2026         Merge IDBTransactionBackendInterface and IDBTransactionBackendImpl
2027         https://bugs.webkit.org/show_bug.cgi?id=124077
2028
2029         Reviewed by Alexey Proskuryakov.
2030
2031         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
2032         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
2033
2034 2013-11-08  Brady Eidson  <beidson@apple.com>
2035
2036         Merge IDBCursorBackendInterface and IDBCursorBackendImpl
2037         https://bugs.webkit.org/show_bug.cgi?id=124068
2038
2039         Reviewed by Anders Carlsson.
2040
2041         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
2042         (WebKit::WebIDBFactoryBackend::createCursorBackend):
2043         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
2044
2045 2013-11-08  Anders Carlsson  <andersca@apple.com>
2046
2047         Remove a workaround for a bug in malloc on Symbian
2048         https://bugs.webkit.org/show_bug.cgi?id=124069
2049
2050         Reviewed by Sam Weinig.
2051
2052         * Platform/CoreIPC/ArgumentDecoder.cpp:
2053         (CoreIPC::ArgumentDecoder::~ArgumentDecoder):
2054         (CoreIPC::ArgumentDecoder::initialize):
2055         * Platform/CoreIPC/ArgumentDecoder.h:
2056
2057 2013-11-08  Anders Carlsson  <andersca@apple.com>
2058
2059         More build fixes.
2060
2061         * UIProcess/API/mac/WKBrowsingContextController.mm:
2062         * UIProcess/API/mac/WKConnection.mm:
2063         (didReceiveMessage):
2064
2065 2013-11-08  Anders Carlsson  <andersca@apple.com>
2066
2067         More build fixes.
2068
2069         * UIProcess/API/mac/WKConnection.h:
2070         * UIProcess/API/mac/WKConnection.mm:
2071         (didReceiveMessage):
2072
2073 2013-11-08  Anders Carlsson  <andersca@apple.com>
2074
2075         Try to fix the 32-bit build.
2076
2077         * Shared/API/Cocoa/WKBrowsingContextHandleInternal.h:
2078
2079 2013-11-08  Anders Carlsson  <andersca@apple.com>
2080
2081         Replace __alignof with alignof.
2082
2083         Rubber-stamped by Beth Dakin.
2084
2085         * Platform/CoreIPC/ArgumentCoders.cpp:
2086         (CoreIPC::::encode):
2087         (CoreIPC::decodeStringText):
2088         * Platform/CoreIPC/ArgumentCoders.h:
2089         (CoreIPC::SimpleArgumentCoder::encode):
2090         (CoreIPC::SimpleArgumentCoder::decode):
2091         * Platform/CoreIPC/ArgumentDecoder.h:
2092         (CoreIPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
2093         * WebProcess/WebPage/DecoderAdapter.cpp:
2094         (WebKit::DecoderAdapter::decodeString):
2095         * WebProcess/WebPage/EncoderAdapter.cpp:
2096         (WebKit::EncoderAdapter::encodeString):
2097
2098 2013-11-08  Anders Carlsson  <andersca@apple.com>
2099
2100         Add a way to get a WKWebProcessPlugInBrowserContextController from a handle
2101         https://bugs.webkit.org/show_bug.cgi?id=124063
2102
2103         Reviewed by Beth Dakin.
2104
2105         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
2106         (+[WKWebProcessPlugInBrowserContextController lookUpBrowsingContextFromHandle:]):
2107         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
2108
2109 2013-11-08  Anders Carlsson  <andersca@apple.com>
2110
2111         More work on WKBrowsingContextHandle
2112         https://bugs.webkit.org/show_bug.cgi?id=124060
2113
2114         Reviewed by Beth Dakin.
2115
2116         Implement -hash and -isEqual: and add -[WKWebProcessPlugInBrowserContextController handle].
2117
2118         * Shared/API/Cocoa/WKBrowsingContextHandle.mm:
2119         (-[WKBrowsingContextHandle hash]):
2120         (-[WKBrowsingContextHandle isEqual:]):
2121         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2122         (decodeInvocation):
2123         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
2124         (-[WKWebProcessPlugInBrowserContextController mainFrameDocument]):
2125         (-[WKWebProcessPlugInBrowserContextController selectedRange]):
2126         (-[WKWebProcessPlugInBrowserContextController handle]):
2127         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
2128         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
2129
2130 2013-11-08  Anders Carlsson  <andersca@apple.com>
2131
2132         Add A WKBrowsingContextHandle class
2133         https://bugs.webkit.org/show_bug.cgi?id=124058
2134
2135         Reviewed by Sam Weinig.
2136
2137         The WKBrowsingContextHandle class represents a browsing context and can be sent across process boundaries.
2138
2139         * Shared/API/Cocoa/WKBrowsingContextHandle.h: Added.
2140         * Shared/API/Cocoa/WKBrowsingContextHandle.mm: Added.
2141         (-[WKBrowsingContextHandle _initWithPageID:]):
2142         (-[WKBrowsingContextHandle encodeWithCoder:]):
2143         (-[WKBrowsingContextHandle initWithCoder:]):
2144         (+[WKBrowsingContextHandle supportsSecureCoding]):
2145         * Shared/API/Cocoa/WKBrowsingContextHandleInternal.h: Added.
2146         * UIProcess/API/mac/WKBrowsingContextController.mm:
2147         (-[WKBrowsingContextController handle]):
2148         * UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
2149         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h:
2150         (NS_ENUM):
2151         * WebKit2.xcodeproj/project.pbxproj:
2152
2153 2013-11-08  Anders Carlsson  <andersca@apple.com>
2154
2155         Add WKRemoteObjectRegistry to WKConnection
2156         https://bugs.webkit.org/show_bug.cgi?id=124054
2157
2158         Reviewed by Sam Weinig.
2159
2160         * UIProcess/API/mac/WKConnection.h:
2161         * UIProcess/API/mac/WKConnection.mm:
2162         (-[WKConnection delegate]):
2163         (-[WKConnection setDelegate:]):
2164         (-[WKConnection remoteObjectRegistry]):
2165         (didReceiveMessage):
2166
2167 2013-11-08  Anders Carlsson  <andersca@apple.com>
2168
2169         Encode and decode NSURLRequests using NSCoder
2170         https://bugs.webkit.org/show_bug.cgi?id=124051
2171
2172         Reviewed by Sam Weinig.
2173
2174         * Shared/mac/WebCoreArgumentCodersMac.mm:
2175         (CoreIPC::archiveAndEncodeObject):
2176         (CoreIPC::decodeAndUnarchiveObject):
2177         (CoreIPC::::encodePlatformData):
2178         (CoreIPC::::decodePlatformData):
2179
2180 2013-11-07  Anders Carlsson  <andersca@apple.com>
2181
2182         Encode and decode NSURLResponse objects using NSCoder
2183         https://bugs.webkit.org/show_bug.cgi?id=124028
2184
2185         Reviewed by Andreas Kling.
2186
2187         * Shared/mac/WebCoreArgumentCodersMac.mm:
2188         (CoreIPC::::encodePlatformData):
2189         (CoreIPC::::decodePlatformData):
2190
2191 2013-11-07  Anders Carlsson  <andersca@apple.com>
2192
2193         Move m_destinationID to MessageDecoder
2194         https://bugs.webkit.org/show_bug.cgi?id=124026
2195
2196         Reviewed by Andreas Kling.
2197
2198         * Platform/CoreIPC/ArgumentDecoder.h:
2199         * Platform/CoreIPC/MessageDecoder.h:
2200         (CoreIPC::MessageDecoder::destinationID):
2201
2202 2013-11-07  Anders Carlsson  <andersca@apple.com>
2203
2204         Get rid of the out-of-line memory attachment type
2205         https://bugs.webkit.org/show_bug.cgi?id=124023
2206
2207         Reviewed by Andreas Kling.
2208
2209         We're only using out-of-line memory for when the message body is too big, so
2210         isolate that code in Connection and get rid of the out of line attachment type.
2211
2212         * Platform/CoreIPC/Attachment.cpp:
2213         (CoreIPC::Attachment::Attachment):
2214         * Platform/CoreIPC/Attachment.h:
2215         (CoreIPC::Attachment::port):
2216         (CoreIPC::Attachment::disposition):
2217         * Platform/CoreIPC/mac/ConnectionMac.cpp:
2218         (CoreIPC::Connection::sendOutgoingMessage):
2219         (CoreIPC::createMessageDecoder):
2220
2221 2013-11-07  Simon Fraser  <simon.fraser@apple.com>
2222
2223         Lots of layers get solid color but transparent contents layers now
2224         https://bugs.webkit.org/show_bug.cgi?id=123537
2225
2226         Reviewed by Tim Horton.
2227         
2228         Add some properties to the list of things not to implicitly animate.
2229
2230         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
2231         (WebKit::RemoteLayerTreePropertyApplier::disableActionsForLayer):
2232
2233 2013-11-07  Anders Carlsson  <andersca@apple.com>
2234
2235         Remove more dead code
2236         https://bugs.webkit.org/show_bug.cgi?id=124016
2237
2238         Reviewed by Beth Dakin.
2239
2240         We're always layer backed now so we never scroll using the PageClient.
2241
2242         * UIProcess/API/mac/PageClientImpl.mm:
2243         (WebKit::PageClientImpl::canScrollView):
2244         (WebKit::PageClientImpl::scrollView):
2245
2246 2013-11-07  Anders Carlsson  <andersca@apple.com>
2247
2248         Don't repaint the view when the web process crashes
2249         https://bugs.webkit.org/show_bug.cgi?id=124013
2250
2251         Reviewed by Dan Bernstein.
2252
2253         It's up to each individual port to decide whether the view should be repainted when the web process crashes.
2254
2255         * UIProcess/API/mac/PageClientImpl.mm:
2256         (WebKit::PageClientImpl::setViewNeedsDisplay):
2257         (WebKit::PageClientImpl::displayView):
2258         * UIProcess/WebPageProxy.cpp:
2259         (WebKit::WebPageProxy::resetStateAfterProcessExited):
2260
2261 2013-11-07  Tamas Gergely  <gertom@inf.u-szeged.hu>
2262
2263         Report error on unknown template class usage.
2264         https://bugs.webkit.org/show_bug.cgi?id=123096
2265
2266         Reviewed by Darin Adler.
2267
2268         Report error when template class is not found in the dictionary.
2269
2270         * Scripts/webkit2/messages.py:
2271         (class_template_headers):
2272         (class_template_headers.template):
2273
2274 2013-11-07  Denis Nomiyama  <d.nomiyama@samsung.com>
2275
2276         [GTK] Glyphs in vertical text tests are rotated 90 degrees clockwise
2277         https://bugs.webkit.org/show_bug.cgi?id=50619
2278
2279         Reviewed by Martin Robinson.
2280
2281         Added WebCore/platform/graphics/opentype to the include path.
2282
2283         * PlatformEfl.cmake:
2284         * PlatformGTK.cmake:
2285
2286 2013-11-07  Brendan Long  <b.long@cablelabs.com>
2287
2288         [Gtk] Remove old takeFocus() method from PageClientImpl and mark methods as OVERRIDE
2289         https://bugs.webkit.org/show_bug.cgi?id=123919
2290
2291         Reviewed by Carlos Garcia Campos.
2292
2293         * UIProcess/API/gtk/PageClientImpl.cpp: Remove takeFocus().
2294         * UIProcess/API/gtk/PageClientImpl.h: Remove takeFocus() and mark methods as OVERRIDE.
2295
2296 2013-11-06  Dan Bernstein  <mitz@apple.com>
2297
2298         Moved UIProcess/Cocoa to UIProcess/API/Cocoa.
2299
2300         Rubber-stamped by Anders Carlsson.
2301
2302         * UIProcess/API/Cocoa: Copied from Source/WebKit2/UIProcess/Cocoa.
2303         * UIProcess/Cocoa: Removed.
2304         * UIProcess/Cocoa/WKBackForwardList.h: Removed.
2305         * UIProcess/Cocoa/WKBackForwardList.mm: Removed.
2306         * UIProcess/Cocoa/WKBackForwardListInternal.h: Removed.
2307         * UIProcess/Cocoa/WKBackForwardListItem.h: Removed.
2308         * UIProcess/Cocoa/WKBackForwardListItem.mm: Removed.
2309         * UIProcess/Cocoa/WKBackForwardListItemInternal.h: Removed.
2310         * UIProcess/Cocoa/WKBrowsingContextHistoryDelegate.h: Removed.
2311         * UIProcess/Cocoa/WKNavigationData.h: Removed.
2312         * UIProcess/Cocoa/WKNavigationData.mm: Removed.
2313         * UIProcess/Cocoa/WKNavigationDataInternal.h: Removed.
2314         * WebKit2.xcodeproj/project.pbxproj:
2315
2316 2013-11-06  Brendan Long  <b.long@cablelabs.com>
2317
2318         [Gtk][EFL] Fix build after r158759
2319         https://bugs.webkit.org/show_bug.cgi?id=123910
2320
2321         Reviewed by Gyuyoung Kim.
2322
2323         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
2324         (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate): Remove call to flashBackingStoreUpdates().
2325
2326 2013-11-06  Tim Horton  <timothy_horton@apple.com>
2327
2328         Remote Layer Tree: RemoteLayerTreeDrawingArea doesn't make layers for fixedpos elements
2329         https://bugs.webkit.org/show_bug.cgi?id=123943
2330
2331         Reviewed by Simon Fraser.
2332
2333         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2334         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2335         (WebKit::RemoteLayerTreeDrawingArea::updatePreferences):
2336         Make fixed position elements create compositing layers and stacking contexts
2337         in the RemoteLayerTreeDrawingArea just like they do in TiledCoreAnimationDrawingArea.
2338
2339         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2340         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
2341         Fix the comment, since we have long since achieved this goal.
2342
2343 2013-11-06  Anders Carlsson  <andersca@apple.com>
2344
2345         Implement enough functionality so that NSURLRequest objects can be decoded
2346         https://bugs.webkit.org/show_bug.cgi?id=123942
2347
2348         Reviewed by Andreas Kling.
2349
2350         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2351         (-[WKRemoteObjectEncoder requiresSecureCoding]):
2352         Add new method. Return YES.
2353
2354         (-[WKRemoteObjectDecoder decodeValueOfObjCType:at:]):
2355         Add new method. This currently only handles 'i', but we'll add more variants as needed.
2356
2357         (-[WKRemoteObjectDecoder decodeBoolForKey:]):
2358         Get a WebBoolean from the dictionary and return its value.
2359
2360 2013-11-06  Anders Carlsson  <andersca@apple.com>
2361
2362         Encoded object stream should be sequential
2363         https://bugs.webkit.org/show_bug.cgi?id=123939
2364
2365         Reviewed by Andreas Kling.
2366
2367         Reserve space in the object stream for objects that are to be encoded, otherwise
2368         the object stream will not be sequential.
2369
2370         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2371         (encodeToObjectStream):
2372         * Shared/ImmutableArray.h:
2373         (WebKit::ImmutableArray::entries):
2374
2375 2013-11-06  Anders Carlsson  <andersca@apple.com>
2376
2377         Allow property list classes to exist in containers
2378         https://bugs.webkit.org/show_bug.cgi?id=123938
2379
2380         Reviewed by Andreas Kling.
2381
2382         * Shared/API/Cocoa/WKRemoteObjectInterface.mm:
2383         (isContainerClass):
2384         Return whether a given class is a container class.
2385
2386         (propertyListClasses):
2387         Return the set of property list classes.
2388
2389         (allowedArgumentClassesForMethod):
2390         Allow all property list classes for container type arguments.
2391
2392 2013-11-06  Daniel Bates  <dabates@apple.com>
2393
2394         [iOS] Upstream Letterpress effect
2395         https://bugs.webkit.org/show_bug.cgi?id=123932
2396
2397         Reviewed by Sam Weinig.
2398
2399         Add feature define ENABLE_LETTERPRESS disabled by default. We only enable
2400         letterpress on iOS.
2401
2402         * Configurations/FeatureDefines.xcconfig:
2403
2404 2013-11-06  Dan Bernstein  <mitz@apple.com>
2405
2406         Fixed multiple API test failures after r158764.
2407
2408         Reviewed by Sam Weinig.
2409
2410         * UIProcess/API/mac/WKBrowsingContextController.mm:
2411         (setUpPagePolicyClient): If the delegate isn’t set or doesn’t respond to a selector, respond
2412         with WKFramePolicyListenerUse().
2413
2414 2013-11-06  Anders Carlsson  <andersca@apple.com>
2415
2416         Move allowed classes handling to decodeObject
2417         https://bugs.webkit.org/show_bug.cgi?id=123930
2418
2419         Reviewed by Andreas Kling.
2420
2421         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2422         (decodeObjectFromObjectStream):
2423         Pass allowed classes through to decodeObject.
2424
2425         (decodeObject):
2426         Update to take an NSSet of allowed classes. If the set is nil, use the current set.
2427
2428         (-[WKRemoteObjectDecoder decodeObjectOfClasses:forKey:]):
2429         Pass classes to decodeObject.
2430
2431 2013-11-06  Sergio Correia  <sergio.correia@openbossa.org>
2432
2433         Fix EFL build after r158753
2434         https://bugs.webkit.org/show_bug.cgi?id=123923
2435
2436         r158753 renamed WKNavigationData.h as WKNavigationDataRef.h, so
2437         update it in UIProcess/API/efl/ewk_navigation_data_private.h.
2438
2439         Reviewed by Csaba Osztrogonác.
2440
2441         * UIProcess/API/efl/ewk_navigation_data_private.h:
2442
2443 2013-11-06  Anders Carlsson  <andersca@apple.com>
2444
2445         Implement more decoding methods
2446         https://bugs.webkit.org/show_bug.cgi?id=123922
2447
2448         Reviewed by Dan Bernstein.
2449
2450         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2451         (-[WKRemoteObjectDecoder decodeObjectForKey:]):
2452         Call decodeObjectOfClasses:forKey: passing nil as the classes set.
2453
2454         (-[WKRemoteObjectDecoder decodeInt64ForKey:]):
2455         Try to get a WebUInt64 and return its value.
2456
2457         (-[WKRemoteObjectDecoder decodeDoubleForKey:]):
2458         Try to get a WebDouble and return its value.
2459
2460         (-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]):
2461         Move this method next to the other decoding methods.
2462
2463         (-[WKRemoteObjectDecoder requiresSecureCoding]):
2464         Ditto.
2465
2466 2013-11-06  Brendan Long  <b.long@cablelabs.com>
2467
2468         [Gtk][EFL] Fix build after r158759
2469         https://bugs.webkit.org/show_bug.cgi?id=123910
2470
2471         Reviewed by Gustavo Noronha Silva.
2472
2473         * UIProcess/API/gtk/PageClientImpl.cpp: Remove flashBackingStoreUpdates().
2474         * UIProcess/API/gtk/PageClientImpl.h: Same.
2475         * UIProcess/CoordinatedGraphics/WebView.cpp: Same.
2476         * UIProcess/CoordinatedGraphics/WebView.h: Same.
2477         * UIProcess/DrawingAreaProxyImpl.cpp:
2478         (WebKit::DrawingAreaProxyImpl::incorporateUpdate): Don't call flashBackingStoreUpdates().
2479
2480 2013-11-06  Jer Noble  <jer.noble@apple.com>
2481
2482         Unreviewed Mac build fix; include ResourceResponse.
2483
2484         * Shared/WebNavigationDataStore.h:
2485
2486 2013-11-06  Anders Carlsson  <andersca@apple.com>
2487
2488         Decode invocation arguments
2489         https://bugs.webkit.org/show_bug.cgi?id=123917
2490
2491         Reviewed by Sam Weinig.
2492
2493         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2494         (-[WKRemoteObjectDecoder initWithInterface:rootObjectDictionary:WebKit::]):
2495         Initialize the object stream.
2496
2497         (decodeObjectFromObjectStream):
2498         Check that we're not reading past the end of the stream, then decode the object.
2499
2500         (decodeInvocationArguments):
2501         Decode arguments from the object stream.
2502
2503         (decodeInvocation):
2504         Call decodeInvocationArguments and set up the selector argument.
2505         
2506         * Shared/ImmutableArray.h:
2507         (WebKit::ImmutableArray::at):
2508         (WebKit::ImmutableArray::size):
2509         (WebKit::ImmutableArray::entries):
2510         Constify.
2511
2512 2013-11-06  Dan Bernstein  <mitz@apple.com>
2513
2514         [Cocoa] Add -[WKNavigationData response]
2515         https://bugs.webkit.org/show_bug.cgi?id=123918
2516
2517         Reviewed by Sam Weinig.
2518
2519         * Shared/WebNavigationDataStore.h: Added a ResourceResponse data member.
2520         (WebKit::WebNavigationDataStore::encode): Encode the response.
2521         (WebKit::WebNavigationDataStore::decode): Decode the response.
2522         * UIProcess/Cocoa/WKNavigationData.h: Declared new property.
2523         * UIProcess/Cocoa/WKNavigationData.mm:
2524         (-[WKNavigationData response]): Added.
2525         * UIProcess/WebNavigationData.h:
2526         (WebKit::WebNavigationData::response): Added.
2527         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2528         (WebKit::WebFrameLoaderClient::updateGlobalHistory): Set the response in the data store.
2529
2530 2013-11-06  Sam Weinig  <sam@webkit.org>
2531
2532         Fix the 32-bit build.
2533
2534         * UIProcess/API/mac/WKBrowsingContextController.h:
2535         * UIProcess/API/mac/WKBrowsingContextController.mm:
2536         (-[WKBrowsingContextController dealloc]):
2537         (-[WKBrowsingContextController _initWithPageRef:]):
2538
2539 2013-11-06  Dan Bernstein  <mitz@apple.com>
2540
2541         [Cocoa] Add -[WKBrowsingContextController unreachableURL]
2542         https://bugs.webkit.org/show_bug.cgi?id=123909
2543
2544         Reviewed by Anders Carlsson.
2545
2546         * UIProcess/API/mac/WKBrowsingContextController.h: Declared unreachableURL property.
2547         * UIProcess/API/mac/WKBrowsingContextController.mm:
2548         (-[WKBrowsingContextController unreachableURL]): Added.
2549         * UIProcess/WebPageProxy.cpp:
2550         (WebKit::WebPageProxy::unreachableURL): Added.
2551         * UIProcess/WebPageProxy.h:
2552
2553 2013-11-06  Anders Carlsson  <andersca@apple.com>
2554
2555         Encode parameters as objects
2556         https://bugs.webkit.org/show_bug.cgi?id=123912
2557
2558         Reviewed by Beth Dakin.
2559
2560         We want to ensure that the objects have the right types when decoded, so just encode them as objects.
2561
2562         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2563         (encodeInvocation):
2564         (-[WKRemoteObjectEncoder encodeValueOfObjCType:at:]):
2565
2566 2013-11-06  Sam Weinig  <sam@webkit.org>
2567
2568         Add WKBrowsingContextPolicyDelegate
2569         https://bugs.webkit.org/show_bug.cgi?id=123904
2570
2571         Reviewed by Anders Carlsson.
2572
2573         * UIProcess/API/mac/WKBrowsingContextController.h:
2574         * UIProcess/API/mac/WKBrowsingContextController.mm:
2575         Implement a WKPagePolicyClient in terms of the new WKBrowsingContextPolicyDelegate protocol.
2576         
2577         * UIProcess/API/mac/WKBrowsingContextPolicyDelegate.h: 
2578         Added.
2579
2580         * UIProcess/API/mac/WebKit2.h:
2581         Add new #include of WKBrowsingContextPolicyDelegate.h
2582
2583         * WebKit2.xcodeproj/project.pbxproj:
2584         Add new file.
2585
2586 2013-11-06  Anders Carlsson  <andersca@apple.com>
2587
2588         WKRemoteObjectInterface should keep track of allowed decodable classes
2589         https://bugs.webkit.org/show_bug.cgi?id=123903
2590
2591         Reviewed by Sam Weinig.
2592
2593         * Shared/API/Cocoa/WKRemoteObjectInterface.mm:
2594         (allowedArgumentClassesForMethod):
2595         Helper function that returns a vector of sets of allowed classes for each method argument.
2596
2597         (initializeAllowedArgumentClasses):
2598         Iterate over the methods in the protocol, get the extended method type encoding and create an
2599         NSMethodSignature from it. Finally, pass the signature to allowedArgumentClassesForMethod.
2600
2601         (initializeAllowedArgumentClasses):
2602         Call the other initializeAllowedArgumentClasses twice, once for required methods,
2603         and once for optional methods.
2604
2605         (-[WKRemoteObjectInterface initWithProtocol:identifier:]):
2606         Call initializeAllowedArgumentClasses.
2607
2608         (-[WKRemoteObjectInterface _allowedArgumentClassesForSelector:]):
2609         Add new getter.
2610
2611         * Shared/API/Cocoa/WKRemoteObjectInterfaceInternal.h:
2612
2613 2013-11-06  Anders Carlsson  <andersca@apple.com>
2614
2615         Remove dead code
2616         https://bugs.webkit.org/show_bug.cgi?id=123902
2617
2618         Reviewed by Tim Horton.
2619
2620         Remove the PageClient::containingWindowGraphicsContext() as well as the
2621         WKPageSetDebugPaintFlags and WKPageGetDebugPaintFlags API functions.
2622
2623         * UIProcess/API/C/WKPage.cpp:
2624         * UIProcess/API/mac/PageClientImpl.h:
2625         * UIProcess/API/mac/PageClientImpl.mm:
2626         * UIProcess/PageClient.h:
2627         * UIProcess/WebPageProxy.cpp:
2628         * UIProcess/WebPageProxy.h:
2629         * UIProcess/mac/WebPageProxyMac.mm:
2630         (WebKit::WebPageProxy::searchTheWeb):
2631
2632 2013-11-06  Dan Bernstein  <mitz@apple.com>
2633
2634         Promoted WKBrowsingContextHistoryDelegate.h to private.
2635
2636         Rubber-stamped by Sam Weinig.
2637
2638         * WebKit2.xcodeproj/project.pbxproj:
2639
2640 2013-11-06  Dan Bernstein  <mitz@apple.com>
2641
2642         [Cocoa] History delegate
2643         https://bugs.webkit.org/show_bug.cgi?id=123837
2644
2645         Reviewed by Sam Weinig.
2646
2647         * Shared/Cocoa/APIObject.mm:
2648         (WebKit::APIObject::newObject): Allocate a WKNavigationData if the object is a
2649         WebNavigationData.
2650
2651         * Shared/Cocoa/WKNSString.h:
2652         (WebKit::wrapper): Added. Returns a WebString’s wrapper as an NSString.
2653
2654         * Shared/Cocoa/WKNSURL.h:
2655         (WebKit::wrapper): Added. Returns a WebURL’s wrapper as an NSURL.
2656
2657         * UIProcess/API/C/WKNavigationData.cpp: Renamed.
2658         * UIProcess/API/C/WKNavigationData.h: Renamed.
2659         * UIProcess/API/C/WKNavigationDataRef.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKNavigationData.cpp.
2660         * UIProcess/API/C/WKNavigationDataRef.h: Copied from Source/WebKit2/UIProcess/API/C/WKNavigationData.h.
2661
2662         * UIProcess/API/mac/WKBrowsingContextController.h: Declared historyDelegate property.
2663
2664         * UIProcess/API/mac/WKProcessGroup.mm:
2665         (didNavigateWithNavigationData): Added history client callback that calls the browsing
2666         context’s history delegate.
2667         (didPerformClientRedirect): Ditto.
2668         (didPerformServerRedirect): Ditto.
2669         (didUpdateHistoryTitle): Ditto.
2670         (setUpHistoryClient): Added.
2671         (-[WKProcessGroup initWithInjectedBundleURL:]): Added call to setUpHistoryClient.
2672         (-[WKProcessGroup dealloc]): Clear the history client.
2673
2674         * UIProcess/Cocoa/WKBrowsingContextHistoryDelegate.h: Added.
2675
2676         * UIProcess/Cocoa/WKNavigationData.h: Added.
2677         * UIProcess/Cocoa/WKNavigationData.mm: Added.
2678         (-[WKNavigationData dealloc]): Calls the WebNavigationData destructor.
2679         (-[WKNavigationData title]): Added.
2680         (-[WKNavigationData originalRequest]): Added.
2681         (-[WKNavigationData destinationURL]): Added.
2682         (-[WKNavigationData _apiObject]): Returns the wrapped WebNavigationData.
2683         * UIProcess/Cocoa/WKNavigationDataInternal.h: Added.
2684         (WebKit::wrapper): Added. Returns a WebNavigationData’s wrapper as a WKNavigationData.
2685         * WebKit2.xcodeproj/project.pbxproj: Updated for renames and additions.
2686
2687 2013-11-05  Anders Carlsson  <andersca@apple.com>
2688
2689         Begin work on decoding invocations
2690         https://bugs.webkit.org/show_bug.cgi?id=123838
2691
2692         Reviewed by Dan Bernstein.
2693
2694         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2695         (encodeInvocation):
2696         Declare the type string and selector keys as constants.
2697
2698         (encodeObject):
2699         Make sure to encode the class name for NSInvocations as well.
2700
2701         (decodeInvocation):
2702         Figure out the local and remove method signatures and make sure that they are equal.
2703
2704         * Shared/API/Cocoa/WKRemoteObjectInterface.mm:
2705         (methodArgumentTypeEncodingForSelector):
2706         Helper function that returns the type encoding for a given selector.
2707
2708         (-[WKRemoteObjectInterface _methodSignatureForSelector:]):
2709         Helper function that returns a method signature for the method with the name referred to by selector.
2710
2711         * Shared/API/Cocoa/WKRemoteObjectInterfaceInternal.h: Added.
2712         Add internal header.
2713
2714         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
2715         (-[WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]):
2716         Pass the right object to the WKRemoteObjectDecoder initializer and decode the invocation.
2717
2718         * WebKit2.xcodeproj/project.pbxproj:
2719         Add internal header.
2720
2721 2013-11-05  Anders Carlsson  <andersca@apple.com>
2722
2723         WKRemoteObjectDecoder should know which interface it's decoding for
2724         https://bugs.webkit.org/show_bug.cgi?id=123833
2725
2726         Reviewed by Andreas Kling.
2727
2728         Move the interface identifier out into the root object body dictionary and make 
2729         the encoded invocation a sibling of it. That way we can look up the interface before
2730         creating the decoder.
2731         
2732         Also, manage exported objects and interfaces in a separate hash map.
2733
2734         * Shared/API/Cocoa/WKRemoteObjectCoder.h:
2735         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2736         (-[WKRemoteObjectDecoder initWithInterface:rootObjectDictionary:WebKit::]):
2737         (decodeInvocation):
2738         (decodeObject):
2739         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
2740         (-[WKRemoteObjectRegistry registerExportedObject:interface:]):
2741         (-[WKRemoteObjectRegistry unregisterExportedObject:interface:]):
2742         (-[WKRemoteObjectRegistry _sendInvocation:interface:]):
2743         (-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
2744         (-[WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]):
2745
2746 2013-11-05  Anders Carlsson  <andersca@apple.com>
2747
2748         Add support for decoding NSStrings
2749         https://bugs.webkit.org/show_bug.cgi?id=123829
2750
2751         Reviewed by Andreas Kling.
2752
2753         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2754         (encodeObject):
2755         (-[WKRemoteObjectDecoder allowsKeyedCoding]):
2756         Always return YES.
2757
2758         (-[WKRemoteObjectDecoder containsValueForKey:]):
2759         Look up the key in the current dictionary.
2760
2761         (-[WKRemoteObjectDecoder decodeBytesForKey:returnedLength:]):
2762         Try to get the WebData object and return its data + size.
2763
2764         (-[WKRemoteObjectDecoder requiresSecureCoding]):
2765         Return YES.
2766
2767         (checkIfClassIsAllowed):
2768         Check if the class or any of its superclasses are are allowed.
2769
2770         (validateClass):
2771         Call checkIfClassIsAllowed and validate that the class conforms to NSSecureCoding.
2772
2773         (decodeObject):
2774         Get the class name, verify that the class exists and is allowed. 
2775         Allocate and initialize an object using initWithCoder:.
2776
2777         (-[WKRemoteObjectDecoder decodeObjectOfClasses:forKey:]):
2778         Set the allowed classes, look up the object in _currentDictionary and call decodeObject.
2779
2780         (-[WKRemoteObjectDecoder allowedClasses]):
2781         Return _allowedClasses.
2782
2783         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
2784         (-[WKRemoteObjectRegistry _sendInvocation:interface:]):
2785         Declare interfaceIdentifier as a constant.
2786
2787         (-[WKRemoteObjectRegistry _invokeMessageWithBody:]):
2788         Decode the interface identifier.
2789
2790         * Shared/ImmutableDictionary.h:
2791         (WebKit::ImmutableDictionary::get):
2792         (WebKit::ImmutableDictionary::size):
2793         (WebKit::ImmutableDictionary::map):
2794         Make member functions const.
2795
2796 2013-11-05  Benjamin Poulain  <benjamin@webkit.org>
2797
2798         Fix Mountain Lion Debug bot after r158689
2799
2800         Unreviewed.
2801
2802         It looks like WebGeolocationManagerProxy::stopUpdating() and WebGeolocationManagerProxy::processDidClose()
2803         are racing in some cases, causing the assertion to fail.
2804
2805         That case is handled properly in the last if() branch of WebGeolocationManagerProxy::removeRequester().
2806         This patch remove the overzealous assertion.
2807
2808         * UIProcess/WebGeolocationManagerProxy.cpp:
2809         (WebKit::WebGeolocationManagerProxy::removeRequester):
2810
2811 2013-11-05  Tim Horton  <timothy_horton@apple.com>
2812
2813         Remote Layer Tree: Apply layer changes to LayerTypeCustom layers to the custom layer in the Web process, not to the CALayerHost
2814         https://bugs.webkit.org/show_bug.cgi?id=123818
2815
2816         Reviewed by Anders Carlsson.
2817
2818         Changes to the properties of a PlatformCALayer of type LayerTypeCustom are intended
2819         to affect the custom CALayer; however, we were bundling them up with the transaction
2820         and applying them to the CALayerHost, leading to important properties being lost.
2821
2822         Instead, apply them to the Web-process-side CALayer when building the transaction.
2823
2824         * Shared/mac/RemoteLayerTreePropertyApplier.h: Added.
2825         * Shared/mac/RemoteLayerTreePropertyApplier.mm: Added.
2826         (WebKit::cgColorFromColor):
2827         (WebKit::toCAFilterType):
2828         (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
2829         (WebKit::RemoteLayerTreePropertyApplier::disableActionsForLayer):
2830         Move code to apply LayerProperties to a CALayer from RemoteLayerTreeHost.
2831         Move code to disable actions on a CALayer from RemoteLayerTreeHost.
2832
2833         * UIProcess/mac/RemoteLayerTreeHost.mm:
2834         (WebKit::RemoteLayerTreeHost::commit):
2835         (WebKit::RemoteLayerTreeHost::createLayer):
2836         Use RemoteLayerTreePropertyApplier.
2837         Hand it a map of LayerID->CALayer so that it can look up related layers
2838         for children and mask layers.
2839
2840         * WebKit2.xcodeproj/project.pbxproj:
2841         Add RemoteLayerTreePropertyApplier.{h,mm}
2842
2843         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
2844         (PlatformCALayerRemote::recursiveBuildTransaction):
2845         Upon commit, apply changes to LayerTypeCustom layers to the platform layer.
2846         Setting children or maskLayer won't work, since we don't know about other raw CALayers.
2847         This is OK, since nothing uses those properties on custom layers.
2848
2849         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.cpp:
2850         (PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
2851         Disable actions on the root custom layer.
2852
2853 2013-11-05  Anders Carlsson  <andersca@apple.com>
2854
2855         Begin work on a WKRemoteObjectDecoder object
2856         https://bugs.webkit.org/show_bug.cgi?id=123819
2857
2858         Reviewed by Dan Bernstein.
2859
2860         * Shared/API/Cocoa/WKRemoteObjectCoder.h:
2861         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2862         (-[WKRemoteObjectDecoder initWithRootObjectDictionary:]):
2863         Add designated initializer.
2864
2865         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
2866         (-[WKRemoteObjectRegistry _handleMessageWithName:body:]):
2867         If the message has the expected name and body type, pass it along to -_invokeMessageWithBody:.
2868
2869         (-[WKRemoteObjectRegistry _invokeMessageWithBody:]):
2870         Create a decoder.
2871
2872 2013-11-05  Benjamin Poulain  <benjamin@webkit.org>
2873
2874         [WK2] Add a WebKit2 API for Geolocation's highAccuracy
2875         https://bugs.webkit.org/show_bug.cgi?id=123786
2876
2877         Reviewed by Darin Adler.
2878
2879         This adds support for highAccuracy Geolocation with WebKit2.
2880
2881         The key is to track which page/requester need what kind of geolocation
2882         in order to change between high and low accuracy as pages run and disappear.
2883
2884         WebGeolocationManager and WebGeolocationManagerProxy have very similar roles
2885         but for different sources:
2886         -WebGeolocationManager tracks which live page require high accuracy geolocation.
2887          When the state changes, it forward the information to the UIProcess.
2888         -WebGeolocationManagerProxy tracks which WebContent processes needs high accuracy.
2889
2890         * Shared/APIClientTraits.cpp:
2891         * Shared/APIClientTraits.h:
2892         * UIProcess/API/C/WKGeolocationManager.h:
2893         * UIProcess/WebGeolocationManagerProxy.cpp:
2894         (WebKit::WebGeolocationManagerProxy::startUpdating):
2895         (WebKit::WebGeolocationManagerProxy::removeRequester):
2896         (WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy):
2897         * UIProcess/WebGeolocationManagerProxy.h:
2898         (WebKit::WebGeolocationManagerProxy::isUpdating):
2899         (WebKit::WebGeolocationManagerProxy::isHighAccuracyEnabled):
2900         * UIProcess/WebGeolocationManagerProxy.messages.in:
2901         * UIProcess/WebGeolocationProvider.cpp:
2902         (WebKit::WebGeolocationProvider::setEnableHighAccuracy):
2903         * UIProcess/WebGeolocationProvider.h:
2904         * WebProcess/Geolocation/WebGeolocationManager.cpp:
2905         (WebKit::WebGeolocationManager::registerWebPage):
2906         (WebKit::WebGeolocationManager::unregisterWebPage):
2907         (WebKit::WebGeolocationManager::setEnableHighAccuracyForPage):
2908         * WebProcess/Geolocation/WebGeolocationManager.h:
2909         (WebKit::WebGeolocationManager::isUpdating):
2910         (WebKit::WebGeolocationManager::isHighAccuracyEnabled):
2911         * WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
2912         (WebKit::WebGeolocationClient::setEnableHighAccuracy):
2913
2914 2013-11-05  Anders Carlsson  <andersca@apple.com>
2915
2916         Implement more NSCoder methods
2917         https://bugs.webkit.org/show_bug.cgi?id=123815
2918
2919         Reviewed by Dan Bernstein.
2920
2921         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2922         (encodeObject):
2923         Assert that object is not nil.
2924
2925         (createEncodedObject):
2926         Handle nil objects.
2927
2928         (-[WKRemoteObjectEncoder encodeValueOfObjCType:at:]):
2929         Call the right object stream encoding function based on the object type.
2930
2931         (-[WKRemoteObjectEncoder encodeBool:forKey:]):
2932         (-[WKRemoteObjectEncoder encodeInt64:forKey:]):
2933         (-[WKRemoteObjectEncoder encodeDouble:forKey:]):
2934         Create APIObjects and add them to the current dictionary.
2935
2936 2013-11-05  Anders Carlsson  <andersca@apple.com>
2937
2938         Encode the class name
2939         https://bugs.webkit.org/show_bug.cgi?id=123813
2940
2941         Reviewed by Dan Bernstein.
2942
2943         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2944         (encodeObject):
2945         Get the Class using -[NSObject classForCoder] and encode its name in the object dictionary.
2946
2947 2013-11-05  Anders Carlsson  <andersca@apple.com>
2948
2949         Clean up the WKRemoteObjectEncoder code
2950         https://bugs.webkit.org/show_bug.cgi?id=123811
2951
2952         Reviewed by Dan Bernstein.
2953
2954         Add a new object stream array to be used for the non-keyed encoding values
2955         and free functions for encoding values to the object stream. Simplify object encoding
2956         by moving the dictionary creation out into a separate function and ditching the block based methods.
2957
2958         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
2959         (ensureObjectStream):
2960         Add helper function to create an object stream.
2961
2962         (encodeToObjectStream):
2963         Add overloads for encoding values into the object streams.
2964
2965         (encodeInvocation):
2966         Add helper function for encoding an NSInvocation.
2967
2968         (encodeObject):
2969         Call encodeInvocation if needed, otherwise just use encodeWithCoder:.
2970
2971         (createEncodedObject):
2972         Helper function that sets up a dictionary, encodes the object into the dictionary and then returns the dictionary.
2973
2974         (-[WKRemoteObjectEncoder encodeObject:forKey:]):
2975         Call createEncodedObject.    
2976
2977 2013-11-04  Brady Eidson  <beidson@apple.com>
2978
2979         IDB: Split backend Cursors and Transactions into their own files
2980         https://bugs.webkit.org/show_bug.cgi?id=123789
2981
2982         Reviewed by Alexey Proskuryakov.
2983
2984         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
2985         (WebKit::WebIDBFactoryBackend::createCursorBackend):
2986         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
2987
2988 2013-11-04  Alexey Proskuryakov  <ap@apple.com>
2989
2990         DumpRenderTree should reset its preferences file on launch
2991         https://bugs.webkit.org/show_bug.cgi?id=29751
2992
2993         Reviewed by Dan Bernstein.
2994
2995         * UIProcess/mac/WKFullKeyboardAccessWatcher.mm:
2996         (-[WKFullKeyboardAccessWatcher retrieveKeyboardUIModeFromPreferences:]):
2997         Further fix reading of AppleKeyboardUIMode - reading it from kCFPreferencesAnyApplication
2998         domain meant that current application's domain was explcitly ignored, and the only
2999         way to override the setting in WTR was through argument domain.
3000
3001 2013-11-04  Tim Horton  <timothy_horton@apple.com>
3002
3003         Remote Layer Tree: Make LayerTypeCustom remote-host CALayers from the Web process
3004         https://bugs.webkit.org/show_bug.cgi?id=123766
3005
3006         Reviewed by Anders Carlsson.
3007
3008         Put each LayerTypeCustom layer into a CAContext, so that we can
3009         host small CALayer trees (for video, plugins, etc.) from the Web process
3010         to the UI process without proxying their (more complex) content.
3011
3012         * Shared/mac/RemoteLayerTreeTransaction.h:
3013         * Shared/mac/RemoteLayerTreeTransaction.mm:
3014         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
3015         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
3016         (WebKit::RemoteLayerTreeTransaction::dump):
3017         Store, encode, and dump the CAContext ID of custom layers.
3018
3019         * UIProcess/mac/RemoteLayerTreeHost.mm:
3020         (WebKit::RemoteLayerTreeHost::createLayer):
3021         Create a CALayerHost with the CAContext ID from the Web process.
3022
3023         * WebKit2.xcodeproj/project.pbxproj:
3024         Add PlatformCALayerRemoteCustom.
3025
3026         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
3027         (WebKit::GraphicsLayerCARemote::createPlatformCALayer):
3028         Call the newly-added custom-layer constructor.
3029
3030         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3031         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3032         (PlatformCALayerRemote::create):
3033         (PlatformCALayerRemote::PlatformCALayerRemote):
3034         Move the call to layerWasCreated() out to ::create(), so that all of
3035         the constructors for this class and all subclasses have completed
3036         before we call it (so that layerWasCreated() can store the context ID
3037         in the created layer properties object).
3038
3039         (WebKit::PlatformCALayerRemote::hostingContextID):
3040         Should never be reached on the base class, only PlatformCALayerRemoteCustom.
3041
3042         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.cpp: Added.
3043         (PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
3044         (PlatformCALayerRemoteCustom::~PlatformCALayerRemoteCustom):
3045         (PlatformCALayerRemoteCustom::hostingContextID):
3046         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h: Added.
3047         Add PlatformCALayerRemoteCustom, which owns a LayerHostingContext
3048         which it will use to share a custom CALayer tree with the UI process.
3049
3050         * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
3051         Drive-by remove an unnecessary include.
3052
3053         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
3054         (WebKit::RemoteLayerTreeContext::layerWasCreated):
3055         Store the CAContext ID with the layer creation properties so it can
3056         be used to create a CALayerHost upon commit in the UI process.
3057
3058 2013-11-04  Tim Horton  <timothy_horton@apple.com>
3059
3060         Remove PlatformCALayer::playerLayer
3061         https://bugs.webkit.org/show_bug.cgi?id=123764
3062
3063         Reviewed by Sam Weinig.
3064
3065         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3066         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3067         Remove playerLayer().
3068
3069 2013-11-04  Anders Carlsson  <andersca@apple.com>
3070
3071         WKRemoteObjectEncoder should escape keys
3072         https://bugs.webkit.org/show_bug.cgi?id=123761
3073
3074         Reviewed by Tim Horton.
3075
3076         Keys that start with $ will be reserved for use by the coder, so prepend an extra
3077         $ to keys that already start with $ to avoid clashes.
3078
3079         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3080         (escapeKey):
3081         (-[WKRemoteObjectEncoder encodeBytes:length:forKey:]):
3082         (-[WKRemoteObjectEncoder _encodeObjectForKey:usingBlock:]):
3083
3084 2013-11-04  Benjamin Poulain  <bpoulain@apple.com>
3085
3086         [WK2] Update WebGeolocationManager to support multiple WebContent processes
3087         https://bugs.webkit.org/show_bug.cgi?id=123658
3088
3089         Reviewed by Anders Carlsson.
3090
3091         Change WebGeolocationManagerProxy to track which WebProcessProxy needs geolocation.
3092
3093         * UIProcess/WebContext.cpp:
3094         (WebKit::WebContext::disconnectProcess):
3095         WebContext::disconnectProcess does not handle ContextSupplement yet when using multiple
3096         WebContent processes. Add an explicit call for WebGeolocationManagerProxy as a temporary
3097         solution.
3098
3099         * UIProcess/WebGeolocationManagerProxy.cpp:
3100         (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
3101         (WebKit::WebGeolocationManagerProxy::contextDestroyed):
3102         (WebKit::WebGeolocationManagerProxy::processDidClose):
3103         (WebKit::WebGeolocationManagerProxy::startUpdating):
3104         (WebKit::WebGeolocationManagerProxy::stopUpdating):
3105         (WebKit::WebGeolocationManagerProxy::removeRequester):
3106         * UIProcess/WebGeolocationManagerProxy.h:
3107         * UIProcess/WebGeolocationManagerProxy.messages.in:
3108
3109 2013-11-01  Jer Noble  <jer.noble@apple.com>
3110
3111         [PluginProxy] Add a setting to disable video plugin proxy support in HTMLMediaElement.
3112         https://bugs.webkit.org/show_bug.cgi?id=123621
3113
3114         Reviewed by Eric Carlson.
3115
3116         Add WebKit2 functions for setting then new isVideoPluginProxyEnabled preference.
3117
3118         * Shared/WebPreferencesStore.h:
3119         * UIProcess/API/C/WKPreferences.cpp:
3120         (WKPreferencesSetVideoPluginProxyEnabled):
3121         (WKPreferencesGetVideoPluginProxyEnabled):
3122         * UIProcess/API/C/WKPreferences.h:
3123         * WebProcess/WebPage/WebPage.cpp:
3124         (WebKit::WebPage::updatePreferences):
3125
3126 2013-11-04  Anders Carlsson  <andersca@apple.com>
3127
3128         More WKRemoteObjectRegistry work
3129         https://bugs.webkit.org/show_bug.cgi?id=123754
3130
3131         Reviewed by Dan Bernstein.
3132
3133         * Shared/API/Cocoa/WKRemoteObjectCoder.h:
3134         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3135         (-[WKRemoteObjectEncoder rootObjectDictionary]):
3136         Add a getter for the root object dictionary.
3137
3138         * Shared/API/Cocoa/WKRemoteObjectRegistry.mm:
3139         (-[WKRemoteObjectRegistry _sendInvocation:interface:]):
3140         Call _sendMessageWithBody:.
3141         (-[WKRemoteObjectRegistry _sendMessageWithBody:]):
3142         Call WebConnection::postMessage.
3143
3144 2013-11-03  Dan Bernstein  <mitz@apple.com>
3145
3146         [Cocoa] Wrappers' -copyWithZone: should copy if the collection is mutable
3147         https://bugs.webkit.org/show_bug.cgi?id=123707
3148
3149         Reviewed by Geoff Garen and Anders Carlsson.
3150
3151         * Shared/Cocoa/WKNSArray.mm:
3152         (-[WKNSArray copyWithZone:]): If the array is mutable, make a copy.
3153         * Shared/Cocoa/WKNSDictionary.mm:
3154         (-[WKNSDictionary copyWithZone:]): If the dictionary is mutable, make a copy.
3155         * Shared/ImmutableArray.h:
3156         (WebKit::ImmutableArray::entries): Added this accessor.
3157
3158 2013-11-03  Dan Bernstein  <mitz@apple.com>
3159
3160         Reverted r158538.
3161
3162         * Shared/Cocoa/WKNSArray.mm:
3163         (-[WKNSArray copyWithZone:]):
3164         * Shared/Cocoa/WKNSDictionary.mm:
3165         (-[WKNSDictionary copyWithZone:]):
3166         * Shared/ImmutableArray.h:
3167
3168 2013-11-03  Dan Bernstein  <mitz@apple.com>
3169
3170         [Cocoa] Wrappers' -copyWithZone: should copy if the collection is mutable
3171         https://bugs.webkit.org/show_bug.cgi?id=123707
3172
3173         Reviewed by Geoff Garen.
3174
3175         * Shared/Cocoa/WKNSArray.mm:
3176         (-[WKNSArray copyWithZone:]): If the array is mutable, make a copy.
3177         * Shared/Cocoa/WKNSDictionary.mm:
3178         (-[WKNSDictionary copyWithZone:]): If the dictionary is mutable, make a copy.
3179         * Shared/ImmutableArray.h:
3180         (WebKit::ImmutableArray::entries): Added this accessor.
3181
3182 2013-11-02  Dan Bernstein  <mitz@apple.com>
3183
3184         [Cocoa] Wrappers mishandle NULL values in arrays and dictionaries
3185         https://bugs.webkit.org/show_bug.cgi?id=123671
3186
3187         Reviewed by Darin Adler.
3188
3189         * Shared/Cocoa/WKNSArray.mm:
3190         (-[WKNSArray objectAtIndex:]): Represent a NULL object as NSNull.
3191         * Shared/Cocoa/WKNSDictionary.mm:
3192         (-[WKNSDictionary objectForKey:]): Represent a NULL value as NSNull.
3193         * Shared/ImmutableDictionary.h:
3194         (WebKit::ImmutableDictionary::get): Added this overload that returns whether the key exists.
3195
3196 2013-11-02  Dan Bernstein  <mitz@apple.com>
3197
3198         Fixed release builds.
3199
3200         * Shared/Cocoa/WKNSDictionary.mm:
3201         (-[WKNSDictionary initWithObjects:forKeys:count:]):
3202
3203 2013-11-02  Dan Bernstein  <mitz@apple.com>
3204
3205         [Cocoa] Add WKNSDictionary
3206         https://bugs.webkit.org/show_bug.cgi?id=123660
3207
3208         Reviewed by Anders Carlsson.
3209
3210         * Shared/Cocoa/APIObject.mm:
3211         (WebKit::APIObject::newObject): Allocate a WKNSDictionary if the APIObject is a dictionary.
3212         * Shared/Cocoa/WKNSDictionary.h: Added.
3213         (WebKit::wrapper):  Added. Returns an ImmutableDictionary’s wrapper as an NSDictionary.
3214         * Shared/Cocoa/WKNSDictionary.mm: Added.
3215         (-[WKNSDictionary dealloc]): Calls the ImmutableDictionary destructor.
3216         (-[WKNSDictionary count]): Added.
3217         (-[WKNSDictionary objectForKey:]): Added.
3218         (-[WKNSDictionary keyEnumerator]): Added.
3219         (-[WKNSDictionary copyWithZone:]): Retains self.
3220         (-[WKNSDictionary _apiObject]): Returns the wrapped ImmutableDictionary.
3221         * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
3222
3223 2013-11-02  Tim Horton  <timothy_horton@apple.com>
3224
3225         Address some review comments noted in r158463
3226         https://bugs.webkit.org/show_bug.cgi?id=123646
3227
3228         Reviewed by Darin Adler.
3229
3230         * Shared/mac/RemoteLayerBackingStore.mm:
3231         Put our __has_include ifs all on one line.
3232
3233         (createIOSurface):
3234         IOSurfaceAlignProperty returns size_t, not unsigned long.
3235
3236         (RemoteLayerBackingStore::display):
3237         (RemoteLayerBackingStore::drawInContext):
3238         Create the frontImage in display() and hand it to drawInContext().
3239
3240         Use the GraphicsContext API instead of CG itself for clearRect().
3241
3242         When using ShareableBitmap, replace m_frontBuffer instead of
3243         having a backBuffer local; the CGImageRef will retain the
3244         ShareableBitmap it references.
3245
3246         Duplicate our drawInContext() calls so we don't have to allocate
3247         a GraphicsContext on the heap in the IOSurface case.
3248
3249         Don't bother clearing frontContext; it'll happen for us at
3250         the appropriate time. Instead, assert that it's still alive after
3251         we drop our reference to the frontImage created from it.
3252
3253 2013-11-02  Zan Dobersek  <zdobersek@igalia.com>
3254
3255         [GTK] invalid use of incomplete type 'class WTF::PassOwnPtr<WTF::Vector<unsigned char> >'
3256         https://bugs.webkit.org/show_bug.cgi?id=123601
3257
3258         Reviewed by Carlos Garcia Campos.
3259
3260         * WebProcess/Plugins/Netscape/NetscapePluginStream.cpp: Explicitly include the PassOwnPtr.h header
3261         as certain configurations on the GTK port don't ensure that the header is included indirectly.
3262
3263 2013-11-02  Vitaly Katunin  <vkatunin@luxoft.com>
3264
3265         [GTK] invalid application of 'sizeof' to incomplete type
3266         https://bugs.webkit.org/show_bug.cgi?id=123502
3267
3268         Reviewed by Carlos Garcia Campos.
3269
3270         * Shared/WebCoreArgumentCoders.cpp:
3271
3272 2013-11-01  Tim Horton  <timothy_horton@apple.com>
3273
3274         Remote Layer Tree: Crashes allocating incredibly large backing store for tiled backing layers
3275         https://bugs.webkit.org/show_bug.cgi?id=123651
3276
3277         Reviewed by Simon Fraser.
3278
3279         * Shared/mac/RemoteLayerBackingStore.mm:
3280         (RemoteLayerBackingStore::display):
3281         (RemoteLayerBackingStore::drawInContext):
3282         We can't dirty the whole layer if we have no existing front buffer if
3283         we have no paints, because that will lead to layers which were never
3284         setNeedsDisplay()'d getting backing store. Added back an assertion
3285         that will catch this, too.
3286
3287 2013-11-01  Dan Bernstein  <mitz@apple.com>
3288
3289         [Cocoa] WKObject seems to be initializing its target in a thread-safe manner, but really is not
3290         https://bugs.webkit.org/show_bug.cgi?id=123640
3291
3292         Reviewed by Darin Adler.
3293
3294         * Shared/Cocoa/WKObject.mm:
3295         (initializeTargetIfNeeded): Removed misleading incorrect code.
3296
3297 2013-11-01  Benjamin Poulain  <benjamin@webkit.org>
3298
3299         [WK2] Create a unique identifier for WebPageGroup if the input name is empty
3300         https://bugs.webkit.org/show_bug.cgi?id=123606
3301
3302         Reviewed by Andreas Kling.
3303
3304         Strengthen the "public" API of page group.
3305         If someone uses WKBrowsingContextGroup with a nil or empty string, the related WKString
3306         would be empty, and all the WKBrowsingContextGroup end up with the same identifier.
3307
3308         * UIProcess/WebPageGroup.cpp:
3309         (WebKit::WebPageGroup::WebPageGroup):
3310
3311 2013-11-01  Dan Bernstein  <mitz@apple.com>
3312
3313         [Cocoa] Avoid some double-wrapping of strings and URLs
3314         https://bugs.webkit.org/show_bug.cgi?id=123632
3315
3316         Reviewed by Anders Carlsson.
3317
3318         * Shared/API/c/cf/WKStringCF.cpp: Removed.
3319         * Shared/API/c/cf/WKStringCF.mm: Copied from Source/WebKit2/Shared/API/c/cf/WKStringCF.cpp.
3320         (wkNSStringClass): Added this helper.
3321         (WKStringCreateWithCFString): If the passed-in CFString is already wrapping a WebString,
3322         then retain it and return it.
3323         * Shared/API/c/cf/WKURLCF.cpp: Removed.
3324         * Shared/API/c/cf/WKURLCF.mm: Copied from Source/WebKit2/Shared/API/c/cf/WKURLCF.cpp.
3325         (wkNSURLClass): Added this helper.
3326         (WKURLCreateWithCFURL): If the passed-in CFURL is already wrapping a WebURL, then retain it
3327         and return it.
3328         * WebKit2.xcodeproj/project.pbxproj: Updated for renames.
3329
3330 2013-11-01  Anders Carlsson  <andersca@apple.com>
3331
3332         Begin work on encoding argument types
3333         https://bugs.webkit.org/show_bug.cgi?id=123631
3334
3335         Reviewed by Dan Bernstein.
3336
3337         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3338         (-[WKRemoteObjectEncoder _encodeInvocation:forKey:]):
3339         Encode argument types in an array.
3340
3341         (-[WKRemoteObjectEncoder _encodedObjectUsingBlock:]):
3342         Add new helper method that encodes an object and returns the dictionary.
3343
3344         (-[WKRemoteObjectEncoder _encodeObjectForKey:usingBlock:]):
3345         Implement this in terms of _encodedObjectUsingBlock:.
3346
3347         * Shared/MutableArray.cpp:
3348         (WebKit::MutableArray::append):
3349         * Shared/MutableArray.h:
3350         Change append to take a PassRefPtr.
3351
3352 2013-10-31  Gavin Barraclough  <barraclough@apple.com>
3353
3354         Rename InWindowState -> ViewState
3355         https://bugs.webkit.org/show_bug.cgi?id=123584
3356
3357         Rubber stamped by Sam Weinig.
3358
3359         WebPageProxy::setViewState offers the option to wait for a reply. Previously this option
3360         was only available via setIsInWindow, hence the mechanism to wait to the update has
3361         'InWindowState' in method and variable names (i.e.
3362         'WebPageProxy::waitForDidUpdateInWindowState'). Since the mechanism is now applicable to
3363         all ViewState changes, rename to reflect this.
3364
3365         * UIProcess/API/mac/WKView.mm:
3366         (-[WKView endDeferringViewInWindowChangesSync]):
3367         * UIProcess/WebPageProxy.cpp:
3368         (WebKit::WebPageProxy::WebPageProxy):
3369         (WebKit::WebPageProxy::waitForDidUpdateViewState):
3370         (WebKit::WebPageProxy::resetStateAfterProcessExited):
3371         * UIProcess/WebPageProxy.h:
3372         (WebKit::WebPageProxy::didUpdateViewState):
3373         * UIProcess/WebPageProxy.messages.in:
3374         * WebProcess/WebPage/WebPage.cpp:
3375         (WebKit::WebPage::WebPage):
3376         (WebKit::WebPage::didUpdateViewStateTimerFired):
3377         (WebKit::WebPage::setViewState):
3378         * WebProcess/WebPage/WebPage.h:
3379         * WebProcess/WebPage/WebPage.messages.in:
3380         * WebProcess/WebPage/mac/WebPageMac.mm:
3381         (WebKit::WebPage::didUpdateViewStateTimerFired):
3382
3383 2013-11-01  Tim Horton  <timothy_horton@apple.com>
3384
3385         Remote Layer Tree: Move RemoteLayerBackingStore to Shared/
3386         https://bugs.webkit.org/show_bug.cgi?id=123646
3387
3388         Reviewed by Darin Adler.
3389
3390         Move RemoteLayerBackingStore to Shared/, since it is
3391         used on both the UI and Web process side of things.
3392
3393         * Shared/mac/RemoteLayerBackingStore.h: Renamed from Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerBackingStore.h.
3394         * Shared/mac/RemoteLayerBackingStore.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/RemoteLayerBackingStore.mm.
3395         * WebKit2.xcodeproj/project.pbxproj:
3396
3397 2013-11-01  Tim Horton  <timothy_horton@apple.com>
3398
3399         Remote Layer Tree: Vend layer contents via IOSurfaces
3400         https://bugs.webkit.org/show_bug.cgi?id=123600
3401
3402         Reviewed by Anders Carlsson.
3403
3404         Address some review comments from Darin (and subsequently Anders).
3405
3406         * WebProcess/WebPage/mac/RemoteLayerBackingStore.h:
3407         (WebKit::RemoteLayerBackingStore::surface):
3408         No need for .get() here.
3409
3410         * WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
3411         (RemoteLayerBackingStore::ensureBackingStore):
3412         All on one line for readability.
3413
3414         (createIOSurfaceContext):
3415         This 'if' is meaningless.
3416
3417         (createIOSurface):
3418         No need for a RetainPtr here, the dictionary is autoreleased.
3419
3420         (RemoteLayerBackingStore::display):
3421         Snuggle 'context' up next to the other declarations.
3422
3423 2013-11-01  Anders Carlsson  <andersca@apple.com>
3424
3425         Don't use the C API in WKRemoteObjectCoder
3426         https://bugs.webkit.org/show_bug.cgi?id=123627
3427
3428         Reviewed by Dan Bernstein.
3429
3430         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3431         (-[WKRemoteObjectEncoder init]):
3432         (-[WKRemoteObjectEncoder encodeBytes:length:forKey:]):
3433         (-[WKRemoteObjectEncoder _encodeObjectForKey:usingBlock:]):
3434         * Shared/ImmutableDictionary.h:
3435         * Shared/MutableDictionary.cpp:
3436         (WebKit::MutableDictionary::add):
3437         (WebKit::MutableDictionary::set):
3438         * Shared/MutableDictionary.h:
3439
3440 2013-11-01  Emilio Pozuelo Monfort  <pochu27@gmail.com>
3441
3442         Fix build on non-linux platforms
3443         https://bugs.webkit.org/show_bug.cgi?id=123622
3444
3445         Reviewed by Darin Adler.
3446
3447         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
3448
3449 2013-11-01  Brian Holt  <brian.holt@samsung.com>
3450
3451         [GTK] [WK2] Crash in webkitWebViewLoadFailedWithTLSErrors
3452         https://bugs.webkit.org/show_bug.cgi?id=123618
3453
3454         Reviewed by Mario Sanchez Prada.
3455
3456         The GOwnPtrSoup header was not included which meant that the
3457         specialization for GOwnPtr<SoupURI> was not used and instead the
3458         default freeOwnedGPtr which calls g_free is used and crashes.
3459
3460         * UIProcess/API/gtk/WebKitWebView.cpp:
3461
3462 2013-10-31  Tim Horton  <timothy_horton@apple.com>
3463
3464         Fix a typo/review comment from Dan, in http://trac.webkit.org/changeset/158413
3465
3466         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3467
3468 2013-10-31  Tim Horton  <timothy_horton@apple.com>
3469
3470         Remote Layer Tree: Vend layer contents via IOSurfaces
3471         https://bugs.webkit.org/show_bug.cgi?id=123600
3472
3473         Reviewed by Anders Carlsson.
3474
3475         * Configurations/WebKit2.xcconfig:
3476         Link WebKit2 against IOSurface.
3477
3478         * Shared/mac/RemoteLayerTreeTransaction.mm:
3479         (WebKit::dumpChangedLayers):
3480         Dump the size of the backing store instead of the pointer of its
3481         SharedBitmap, because that's slightly more useful.
3482
3483         * UIProcess/mac/RemoteLayerTreeHost.mm:
3484         (WebKit::RemoteLayerTreeHost::commit):
3485         If a layer's backing store uses accelerated drawing, hand the IOSurface
3486         to the CALayer for display.
3487
3488         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3489         (PlatformCALayerRemote::PlatformCALayerRemote):
3490         Initialize contentsScale to 1 to match CA. Other properties will follow.
3491
3492         (PlatformCALayerRemote::ensureBackingStore):
3493         Instead of replacing the RemoteLayerBackingStore when its properties
3494         change, allow it to update them on the fly. Replacing them caused
3495         us to throw away repaint rects when the accelerated drawing
3496         flag was flipped.
3497
3498         (PlatformCALayerRemote::acceleratesDrawing):
3499         (PlatformCALayerRemote::setAcceleratesDrawing):
3500         Store the accelerated drawing flag and mark it dirty when it changes.
3501
3502         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3503         * WebProcess/WebPage/mac/RemoteLayerBackingStore.h:
3504         (WebKit::RemoteLayerBackingStore::image):
3505         Rename bitmap() to image() and have it create a CGImageRef from
3506         the ShareableBitmap, ready for direct application to a CALayer.
3507
3508         (WebKit::RemoteLayerBackingStore::surface):
3509         Return a IOSurface ready for direct application to a CALayer.
3510
3511         (WebKit::RemoteLayerBackingStore::acceleratesDrawing):
3512         (WebKit::RemoteLayerBackingStore::hasFrontBuffer):
3513         Return whether or not we have a front buffer/surface.
3514
3515         * WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
3516         Forward-declare some CGIOSurface SPI.
3517
3518         (RemoteLayerBackingStore::RemoteLayerBackingStore):
3519         (RemoteLayerBackingStore::ensureBackingStore):
3520         Throw away our front image and reset flags if needed.
3521
3522         (RemoteLayerBackingStore::encode):
3523         (RemoteLayerBackingStore::decode):
3524         En/decode the front surface instead of the ShareableBitmap if needed,
3525         using CoreIPC::MachPort. Destroy&n