[WK2] Build fix after r160464
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-12-11  KyungTae Kim  <ktf.kim@samsung.com>
2
3         [WK2] Build fix after r160464
4         https://bugs.webkit.org/show_bug.cgi?id=125615
5
6         Reviewed by Gyuyoung Kim.
7
8         Modify the 2nd parameter for calling WebContext::addMessageReceiver from "this" to "*this"
9         because the parameter type is modified from CoreIPC::MessageReceiver* to CoreIPC::MessageReceiver&
10
11         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
12         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
13         * UIProcess/WebBatteryManagerProxy.cpp:
14         (WebKit::WebBatteryManagerProxy::WebBatteryManagerProxy):
15         * UIProcess/WebNetworkInfoManagerProxy.cpp:
16         (WebKit::WebNetworkInfoManagerProxy::WebNetworkInfoManagerProxy):
17         * UIProcess/WebVibrationProxy.cpp:
18         (WebKit::WebVibrationProxy::WebVibrationProxy):
19         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
20         (WebKit::WebSoupRequestManagerProxy::WebSoupRequestManagerProxy):
21         * WebProcess/Battery/WebBatteryManager.cpp:
22         (WebKit::WebBatteryManager::WebBatteryManager):
23         * WebProcess/NetworkInfo/WebNetworkInfoManager.cpp:
24         (WebKit::WebNetworkInfoManager::WebNetworkInfoManager):
25         * WebProcess/soup/WebSoupRequestManager.cpp:
26         (WebKit::WebSoupRequestManager::WebSoupRequestManager):
27
28 2013-12-11  Anders Carlsson  <andersca@apple.com>
29
30         MessageReceiverMap should take MessageReceiver objects by reference
31         https://bugs.webkit.org/show_bug.cgi?id=125605
32
33         Reviewed by Tim Horton.
34
35         * Platform/CoreIPC/MessageReceiverMap.cpp:
36         (CoreIPC::MessageReceiverMap::addMessageReceiver):
37         * Platform/CoreIPC/MessageReceiverMap.h:
38         * Shared/Authentication/AuthenticationManager.cpp:
39         (WebKit::AuthenticationManager::AuthenticationManager):
40         * Shared/ChildProcess.cpp:
41         (WebKit::ChildProcess::addMessageReceiver):
42         * Shared/ChildProcess.h:
43         * Shared/ChildProcessProxy.cpp:
44         (WebKit::ChildProcessProxy::addMessageReceiver):
45         * Shared/ChildProcessProxy.h:
46         * UIProcess/Downloads/DownloadProxyMap.cpp:
47         (WebKit::DownloadProxyMap::createDownloadProxy):
48         * UIProcess/DrawingAreaProxy.cpp:
49         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
50         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
51         (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
52         * UIProcess/WebApplicationCacheManagerProxy.cpp:
53         (WebKit::WebApplicationCacheManagerProxy::WebApplicationCacheManagerProxy):
54         * UIProcess/WebConnectionToWebProcess.cpp:
55         (WebKit::WebConnectionToWebProcess::WebConnectionToWebProcess):
56         * UIProcess/WebContext.cpp:
57         (WebKit::WebContext::WebContext):
58         (WebKit::WebContext::addMessageReceiver):
59         * UIProcess/WebContext.h:
60         * UIProcess/WebCookieManagerProxy.cpp:
61         (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
62         * UIProcess/WebDatabaseManagerProxy.cpp:
63         (WebKit::WebDatabaseManagerProxy::WebDatabaseManagerProxy):
64         * UIProcess/WebFullScreenManagerProxy.cpp:
65         (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy):
66         * UIProcess/WebGeolocationManagerProxy.cpp:
67         (WebKit::WebGeolocationManagerProxy::WebGeolocationManagerProxy):
68         * UIProcess/WebIconDatabase.cpp:
69         (WebKit::WebIconDatabase::WebIconDatabase):
70         * UIProcess/WebInspectorProxy.cpp:
71         (WebKit::WebInspectorProxy::WebInspectorProxy):
72         * UIProcess/WebMediaCacheManagerProxy.cpp:
73         (WebKit::WebMediaCacheManagerProxy::WebMediaCacheManagerProxy):
74         * UIProcess/WebOriginDataManagerProxy.cpp:
75         (WebKit::WebOriginDataManagerProxy::WebOriginDataManagerProxy):
76         * UIProcess/WebPageProxy.cpp:
77         (WebKit::WebPageProxy::WebPageProxy):
78         (WebKit::WebPageProxy::reattachToWebProcess):
79         * UIProcess/WebResourceCacheManagerProxy.cpp:
80         (WebKit::WebResourceCacheManagerProxy::WebResourceCacheManagerProxy):
81         * UIProcess/mac/RemoteLayerTreeHost.mm:
82         (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
83         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
84         (WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
85         * WebProcess/Cookies/WebCookieManager.cpp:
86         (WebKit::WebCookieManager::WebCookieManager):
87         * WebProcess/Geolocation/WebGeolocationManager.cpp:
88         (WebKit::WebGeolocationManager::WebGeolocationManager):
89         * WebProcess/IconDatabase/WebIconDatabaseProxy.cpp:
90         (WebKit::WebIconDatabaseProxy::WebIconDatabaseProxy):
91         * WebProcess/MediaCache/WebMediaCacheManager.cpp:
92         (WebKit::WebMediaCacheManager::WebMediaCacheManager):
93         * WebProcess/Notifications/WebNotificationManager.cpp:
94         (WebKit::WebNotificationManager::WebNotificationManager):
95         * WebProcess/OriginData/WebOriginDataManager.cpp:
96         (WebKit::WebOriginDataManager::WebOriginDataManager):
97         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
98         (WebKit::WebResourceCacheManager::WebResourceCacheManager):
99         * WebProcess/Storage/StorageAreaMap.cpp:
100         (WebKit::StorageAreaMap::StorageAreaMap):
101         * WebProcess/WebConnectionToUIProcess.cpp:
102         (WebKit::WebConnectionToUIProcess::WebConnectionToUIProcess):
103         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
104         (WebKit::WebDatabaseManager::WebDatabaseManager):
105         * WebProcess/WebPage/WebPage.cpp:
106         (WebKit::WebPage::WebPage):
107
108 2013-12-11  Joseph Pecoraro  <pecoraro@apple.com>
109
110         Web Inspector: Push More Inspector Required Classes Down into JavaScriptCore
111         https://bugs.webkit.org/show_bug.cgi?id=125324
112
113         Reviewed by Timothy Hatcher.
114
115         * WebProcess/Plugins/PluginView.cpp:
116         (WebKit::PluginView::performJavaScriptURLRequest):
117         * WebProcess/WebPage/WebInspector.cpp:
118         * WebProcess/WebPage/WebInspector.h:
119         * WebProcess/WebPage/WebPage.cpp:
120
121 2013-12-11  Anders Carlsson  <andersca@apple.com>
122
123         Remove platform specific gunk from WebURLRequest and WebURLResponse
124         https://bugs.webkit.org/show_bug.cgi?id=125589
125
126         Reviewed by Andreas Kling.
127
128         * Shared/API/c/WKURLRequest.cpp:
129         (WKURLRequestCopyURL):
130         * Shared/API/c/mac/WKURLRequestNS.mm:
131         (WKURLRequestCopyNSURLRequest):
132         * Shared/API/c/mac/WKURLResponseNS.mm:
133         (WKURLResponseCopyNSURLResponse):
134         * Shared/WebURLRequest.cpp:
135         * Shared/WebURLRequest.h:
136         * Shared/WebURLResponse.h:
137         * Shared/mac/WebURLRequestMac.mm: Removed.
138         * Shared/mac/WebURLResponseMac.mm: Removed.
139         * UIProcess/WebInspectorProxy.cpp:
140         (WebKit::isMainInspectorPage):
141         * WebKit2.xcodeproj/project.pbxproj:
142
143 2013-12-11  José Dapena Paz  <jdapena@igalia.com> and Zan Dobersek  <zdobersek@igalia.com>
144
145         [GTK][WK2] Add the WebKitBatteryProvider class
146         https://bugs.webkit.org/show_bug.cgi?id=115720
147
148         Reviewed by Martin Robinson.
149
150         This patch adds the WebKitBatteryProvider class which sets up a BatteryProviderUPower instance,
151         controlling the provider's activity when instrumented to do so by the WebBatteryManagerProxy
152         and relaying the battery status updates from the battery provider to the battery manager.
153
154         * GNUmakefile.list.am: Add the build targets for the new source files.
155         * UIProcess/API/gtk/WebKitBatteryProvider.cpp: Added.
156         (toBatteryProvider): A helper inline method that casts the client info to the battery provider instance.
157         (startUpdatingCallback): Relays the instruction to the WebKitBattery instance.
158         (stopUpdatingCallback): Ditto.
159         (WebKitBatteryProvider::create):
160         (WebKitBatteryProvider::WebKitBatteryProvider): Set up a WKBatteryProvider and set it to the passed-in battery manager.
161         (WebKitBatteryProvider::~WebKitBatteryProvider): Force the BatteryProviderUPower to stop updating.
162         (WebKitBatteryProvider::startUpdating): Relays the instruction to the BatteryProviderUPower instance.
163         (WebKitBatteryProvider::stopUpdating): Ditto.
164         (WebKitBatteryProvider::notifyBatteryStatusUnavailable): Update the battery manager with the new status that
165         has the default values that are to be used when the implementation cannot determine the battery status (as per
166         the Battery Status API specification).
167         (WebKitBatteryProvider::notifyBatteryStatusUpdated): Update the battery status.
168         * UIProcess/API/gtk/WebKitBatteryProvider.h: Added.
169         (WebKitBatteryProvider): Define the WebKitBatteryProvider reference-counted interface that also inherits from the
170         BatteryProviderUPowerClient interface.
171         * UIProcess/API/gtk/WebKitWebContext.cpp:
172         (_WebKitWebContextPrivate): Add a WebKitBatteryProvider member variable to the struct.
173         (createDefaultWebContext): Create a new battery provider when initializing the default web context.
174
175 2013-12-11  José Dapena Paz  <jdapena@igalia.com> and Zan Dobersek  <zdobersek@igalia.com>
176
177         [GTK] Add a UPower-based BatteryProvider
178         https://bugs.webkit.org/show_bug.cgi?id=115719
179
180         Reviewed by Martin Robinson.
181
182         * GNUmakefile.am: Link the libwebkit2gtk library against the upower-glib library.
183
184 2013-12-11  Gustavo Noronha Silva  <gns@gnome.org>
185
186         [GTK] Support right-side attachment of the inspector
187         https://bugs.webkit.org/show_bug.cgi?id=124126
188
189         Reviewed by Carlos Garcia Campos.
190
191         * UIProcess/API/C/gtk/WKInspectorClientGtk.h: add changed attached width callback.
192         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
193         (webkitWebViewBaseAddWebInspector): take attachment side parameter into account when adding the
194         inspector view.
195         (webkitWebViewBaseContainerRemove): renamed inspectorViewHeight to inspectorViewSize.
196         (resizeWebKitWebViewBaseFromAllocation): take attachment side into account when allocating the
197         sizes for the inspector view and the inspected view.
198         (webkitWebViewBaseSetInspectorViewSize): renamed from webkitWebViewBaseSetInspectorViewHeight.
199         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
200         * UIProcess/gtk/WebInspectorClientGtk.cpp:
201         (WebKit::WebInspectorClientGtk::didChangeAttachedWidth): notify client that view width has changed.
202         * UIProcess/gtk/WebInspectorClientGtk.h:
203         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
204         (WebKit::WebInspectorProxy::platformAttach): use attachment side for setting the default size
205         for the inspector view.
206         (WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): use the new generic SetInspectorViewSize.
207         (WebKit::WebInspectorProxy::platformSetAttachedWindowWidth): allow setting the inspector view width.
208
209 2013-12-11  Brendan Long  <b.long@cablelabs.com>
210
211         [GTK] Add "enable-mediasource" property to WebKitWebSettings
212         https://bugs.webkit.org/show_bug.cgi?id=125566
213
214         Reviewed by Philippe Normand.
215
216         * UIProcess/API/gtk/WebKitSettings.cpp:
217         (webKitSettingsSetProperty):
218         (webKitSettingsGetProperty):
219         (webkit_settings_class_init):
220         (webkit_settings_get_enable_mediasource):
221         (webkit_settings_set_enable_mediasource):
222         * UIProcess/API/gtk/WebKitSettings.h:
223         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
224         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
225         (testWebKitSettings):
226
227 2013-12-11  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
228
229         [EFL] Fix build with CONTEXT_MENUS flag set OFF
230         https:///bugs.webkit.org/show_bug.cgi?id=125572
231
232         Reviewed by Gyuyoung Kim.
233
234         Fix EFL build by adding necessary guard, also UNUSED_PARAM macros where added.
235
236         * Shared/API/c/WKContextMenuItem.cpp: Added UNUSED_PARAM macros.
237         (WKContextMenuItemCreateAsAction):
238         (WKContextMenuItemCreateAsCheckableAction):
239         (WKContextMenuItemCreateAsSubmenu):
240         (WKContextMenuItemGetTag):
241         (WKContextMenuItemGetType):
242         (WKContextMenuItemCopyTitle):
243         (WKContextMenuItemGetEnabled):
244         (WKContextMenuItemGetChecked):
245         (WKContextMenuCopySubmenuItems):
246         (WKContextMenuItemGetUserData):
247         (WKContextMenuItemSetUserData):
248         * UIProcess/API/C/WKPage.cpp: Ditto.
249         (WKPageSetPageContextMenuClient):
250         (WKPageSelectContextMenuItem):
251         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp: Ditto.
252         (WKBundlePageSetContextMenuClient):
253         (WKBundlePageClickMenuItem):
254         (WKBundlePageCopyContextMenuItems):
255         (WKBundlePageCopyContextMenuAtPointInWindow)
256         * UIProcess/efl/WebViewEfl.cpp: Guard createContextMenuProxy method.
257         * UIProcess/efl/WebViewEfl.h: Ditto.
258
259 2013-12-11  Kwang Yul Seo  <skyul@company100.net>
260
261         [WK2][Soup] Implement NetworkProcess::allowSpecificHTTPSCertificateForHost
262         https://bugs.webkit.org/show_bug.cgi?id=125557
263
264         Reviewed by Carlos Garcia Campos.
265
266         Do what WebProcess::allowSpecificHTTPSCertificateForHost does.
267
268         * NetworkProcess/soup/NetworkProcessSoup.cpp:
269         (WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
270
271 2013-12-10  Mark Rowe  <mrowe@apple.com>
272
273         <http://webkit.org/b/125556> WebKit doesn't deal with longer bundle versions correctly
274         <rdar://problem/15634192>
275
276         Reviewed by Dan Bernstein.
277
278         * UIProcess/mac/WebPageProxyMac.mm:
279         (WebKit::userVisibleWebKitVersionString): Strip as many leading digits as is necessary to
280         bring the major component of the version down to 3 digits.
281
282 2013-12-10  Ryuan Choi  <ryuan.choi@samsung.com>
283
284         Unreviewed GTK build fix attempt after r160395 (second)
285
286         * GNUmakefile.list.am:
287         Added new files for UserData, APIFrameHandle, APIGeometry and APIPageHandle.
288
289 2013-12-10  Ryuan Choi  <ryuan.choi@samsung.com>
290
291         Unreviewed GTK build fix attempt after r160395
292
293         Renamed WebUInt64 to API::UInt64, WebDouble to API::Double, WebBoolean
294         to API::Boolean.
295
296         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
297         (didReceiveWebViewMessageFromInjectedBundle):
298         * UIProcess/API/gtk/WebKitWebView.cpp:
299         (webkit_web_view_get_snapshot):
300         * UIProcess/API/gtk/WebKitWindowProperties.cpp: Included APINumber.h instead of WebNumber.h
301         (webkitWindowPropertiesUpdateFromWebWindowFeatures):
302         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
303         (didInitiateLoadForResource):
304         (willSendRequestForFrame):
305         (didReceiveResponseForResource):
306         (didReceiveContentLengthForResource):
307         (didFinishLoadForResource):
308         (didFailLoadForResource):
309         (webkitWebPageDidReceiveMessage):
310
311 2013-12-10  Dan Bernstein  <mitz@apple.com>
312
313         All observable PageLoadState properties should change in an atomic fashion, with properly nested change notifications
314         https://bugs.webkit.org/show_bug.cgi?id=125431
315
316         Reviewed by Anders Carlsson.
317
318         Made PageLoadState maintain two copies of its state data members, one representing the
319         committed state and one possibly containing uncommitted changes. When changes are committed,
320         change notifications are sent and the uncommitted state is copied into the committed state.
321         Changes can be committed explicitly at any time, but are also committed when the last
322         outstanding transaction ends. Transactions are RAII objects vended by the PageLoadState.
323         Mutating the PageLoadState requires holding a Transaction, which is enforced by making all
324         the mutating member functions take a Transaction::Token. Passing a Token also marks the
325         PageLoadState as possibly having uncommitted changes.
326
327         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
328         Added PageLoadStateObserver::{will,did}ChangeActiveURL overrides that call
329         -{will,did}ChangeValueForKey:.
330
331         * UIProcess/PageLoadState.cpp:
332         Moved constant from the middle of the file to the beginning and reworded comment.
333         (WebKit::PageLoadState::PageLoadState): Added initializers for new member variables, removed
334         initialization of members that are not part of Data, which initializes them in its
335         constructor.
336         (WebKit::PageLoadState::endTransaction): Added. Calles when a Transaction is destructed.
337         Decrements the outstanding transaction count, and if it is zero, commits changes.
338         (WebKit::PageLoadState::commitChanges): Added. Checks for differences in observable
339         properties between the committed state and the uncommitted state, then makes appropriate
340         willChange Observer callbacks, then copies the uncommitted state into the committed state,
341         then makes appropriate didChange Observer callbacks in reverse order. Also added active URL
342         to the set of observable properties.
343         (WebKit::PageLoadState::reset): Changed to take a transaction token, act on
344         m_uncommittedState, and not make observer callbacks.
345         (WebKit::PageLoadState::isLoading): Changed to access m_committedState.
346         (WebKit::PageLoadState::activeURL): Changed to call a static function factored out of this.
347         (WebKit::PageLoadState::estimatedProgress): Ditto.
348         (WebKit::PageLoadState::pendingAPIRequestURL): Changed to access m_committedState.
349         (WebKit::PageLoadState::setPendingAPIRequestURL): Changed to take a transaction token, act
350         on m_uncommittedState, and not make observer callbacks.
351         (WebKit::PageLoadState::clearPendingAPIRequestURL): Ditto.
352         (WebKit::PageLoadState::didStartProvisionalLoad): Ditto.
353         (WebKit::PageLoadState::didReceiveServerRedirectForProvisionalLoad): Ditto.
354         (WebKit::PageLoadState::didFailProvisionalLoad): Ditto.
355         (WebKit::PageLoadState::didCommitLoad): Ditto.
356         (WebKit::PageLoadState::didFinishLoad): Ditto.
357         (WebKit::PageLoadState::didFailLoad): Ditto.
358         (WebKit::PageLoadState::didSameDocumentNavigation): Ditto.
359         (WebKit::PageLoadState::setUnreachableURL): Ditto.
360         (WebKit::PageLoadState::title): Changed to access m_committedState.
361         (WebKit::PageLoadState::setTitle): Changed to take a transaction token, act on
362         m_uncommittedState, and not make observer callbacks.
363         (WebKit::PageLoadState::didStartProgress): Ditto.
364         (WebKit::PageLoadState::didChangeProgress): Ditto.
365         (WebKit::PageLoadState::didFinishProgress): Ditto.
366         * UIProcess/PageLoadState.h:
367         (WebKit::PageLoadState::Transaction::Transaction): Added. Calls
368         PageLoadState::beginTransaction.
369         (WebKit::PageLoadState::Transaction::~Transaction): Added. Calls
370         PageLoadState::endTransaction.
371         (WebKit::PageLoadState::Transaction::Token::Token): Added. Sets m_mayHaveUncommittedChanges.
372         (WebKit::PageLoadState::transaction): Added. Returns a Transaction for this PageLoadState.
373         (WebKit::PageLoadState::provisionalURL): Changed to access m_committedState.
374         (WebKit::PageLoadState::url): Ditto.
375         (WebKit::PageLoadState::unreachableURL): Ditto.
376         (WebKit::PageLoadState::beginTransaction): Added. Increments the outstanding transaction
377         count.
378         (WebKit::PageLoadState::Data::Data): Added. Moved internal state members into this struct
379         and made its constructor initialize state and estimatedProgress.
380
381         * UIProcess/WebPageProxy.cpp:
382         (WebKit::WebPageProxy::loadURL): Changed to create a PageLoadState::Transaction and pass it
383         along.
384         (WebKit::WebPageProxy::loadURLRequest): Ditto.
385         (WebKit::WebPageProxy::loadAlternateHTMLString): Ditto.
386         (WebKit::WebPageProxy::reload): Ditto.
387         (WebKit::WebPageProxy::goForward): Ditto.
388         (WebKit::WebPageProxy::goBack): Ditto.
389         (WebKit::WebPageProxy::goToBackForwardItem): Ditto.
390         (WebKit::WebPageProxy::receivedPolicyDecision): Ditto.
391         (WebKit::WebPageProxy::didStartProgress): Ditto. Also added a call to
392         PageLoadState::commitChanges before calling the client, so that the client sees the updated
393         state.
394         (WebKit::WebPageProxy::didChangeProgress): Ditto.
395         (WebKit::WebPageProxy::didFinishProgress): Ditto.
396         (WebKit::WebPageProxy::didStartProvisionalLoadForFrame): Ditto.
397         (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame): Ditto.
398         (WebKit::WebPageProxy::didFailProvisionalLoadForFrame): Ditto.
399         (WebKit::WebPageProxy::didCommitLoadForFrame): Ditto.
400         (WebKit::WebPageProxy::didFinishLoadForFrame): Ditto.
401         (WebKit::WebPageProxy::didFailLoadForFrame): Ditto.
402         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame): Ditto.
403         (WebKit::WebPageProxy::didReceiveTitleForFrame): Ditto.
404         (WebKit::WebPageProxy::decidePolicyForNavigationAction): Changed to create a
405         PageLoadState::Transaction and pass it along.
406         (WebKit::WebPageProxy::processDidCrash): Ditto. This addressed a FIXME about the client not
407         seeing the state prior to the crash, because now the changes cuased by reset() aren’t
408         committed until after the client callback.
409
410         * UIProcess/cf/WebPageProxyCF.cpp:
411         (WebKit::WebPageProxy::restoreFromSessionStateData): Changed to create a
412         PageLoadState::Transaction and pass it along.
413
414 2013-12-10  Ryuan Choi  <ryuan.choi@samsung.com>
415
416         Unreviewed EFL build fix attempt
417
418         * CMakeLists.txt: Added APIGeometry.cpp to source lists.
419
420 2013-12-10  Anders Carlsson  <andersca@apple.com>
421
422         Move number and geometry classes into the API namespace
423         https://bugs.webkit.org/show_bug.cgi?id=125549
424
425         Reviewed by Geoffrey Garen.
426
427         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
428         (-[WKRemoteObjectEncoder encodeBool:forKey:]):
429         (-[WKRemoteObjectEncoder encodeInt64:forKey:]):
430         (-[WKRemoteObjectEncoder encodeDouble:forKey:]):
431         (-[WKRemoteObjectDecoder decodeBoolForKey:]):
432         (-[WKRemoteObjectDecoder decodeInt64ForKey:]):
433         (-[WKRemoteObjectDecoder decodeDoubleForKey:]):
434         * Shared/API/c/WKGeometry.cpp:
435         (WKSizeGetTypeID):
436         (WKPointGetTypeID):
437         (WKRectGetTypeID):
438         (WKPointCreate):
439         (WKSizeCreate):
440         (WKRectCreate):
441         * Shared/API/c/WKNumber.cpp:
442         (WKBooleanGetTypeID):
443         (WKBooleanCreate):
444         (WKDoubleGetTypeID):
445         (WKDoubleCreate):
446         (WKUInt64GetTypeID):
447         (WKUInt64Create):
448         * Shared/API/c/WKSharedAPICast.h:
449         * Shared/APIGeometry.cpp:
450         (API::Point::encode):
451         (API::Point::decode):
452         (API::Size::encode):
453         (API::Size::decode):
454         (API::Rect::encode):
455         (API::Rect::decode):
456         * Shared/APIGeometry.h:
457         (API::Size::create):
458         (API::Size::Size):
459         (API::Point::create):
460         (API::Point::Point):
461         (API::Rect::create):
462         (API::Rect::Rect):
463         * Shared/APINumber.h:
464         (API::Number::create):
465         (API::Number::decode):
466         (API::Number::Number):
467         * Shared/APIObject.h:
468         * Shared/Plugins/Netscape/PluginInformation.cpp:
469         (WebKit::getPluginModuleInformation):
470         (WebKit::createPluginInformationDictionary):
471         * Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
472         (WebKit::getPlatformPluginModuleInformation):
473         * Shared/UserData.cpp:
474         (WebKit::UserData::encode):
475         (WebKit::UserData::decode):
476         * Shared/UserMessageCoders.h:
477         (WebKit::UserMessageEncoder::baseEncode):
478         (WebKit::UserMessageDecoder::baseDecode):
479         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
480         (WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions):
481         (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
482         * UIProcess/Notifications/WebNotificationProvider.cpp:
483         (WebKit::WebNotificationProvider::clearNotifications):
484         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
485         (WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy):
486         (WebKit::PlugInAutoStartProvider::setAutoStartOriginsTable):
487         * UIProcess/StatisticsRequest.cpp:
488         (WebKit::addToDictionaryFromHashMap):
489         * UIProcess/WebDatabaseManagerProxy.cpp:
490         (WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
491         * UIProcess/WebPageProxy.cpp:
492         (WebKit::WebPageProxy::didFindStringMatches):
493         * UIProcess/WebUIClient.cpp:
494         (WebKit::WebUIClient::createNewPage):
495         * WebProcess/WebPage/WebPage.cpp:
496         (WebKit::WebPage::trackedRepaintRects):
497         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
498         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
499
500 2013-12-10  Anders Carlsson  <andersca@apple.com>
501
502         Add encode and decode functions to WebNumber
503         https://bugs.webkit.org/show_bug.cgi?id=125547
504
505         Reviewed by Beth Dakin.
506
507         * Shared/APINumber.h:
508         (WebKit::WebNumber::encode):
509         (WebKit::WebNumber::decode):
510         * Shared/UserData.cpp:
511         (WebKit::UserData::encode):
512         (WebKit::UserData::decode):
513
514 2013-12-10  Nick Diego Yamane  <nick.yamane@openbossa.org>
515
516         [EFL] One more WK2 build fix
517         https://bugs.webkit.org/show_bug.cgi?id=125544
518
519         API::TypedObject has been renamed to API::ObjectImpl
520
521         Reviewed by Tim Horton.
522
523         * Shared/WebBatteryStatus.h:
524         * Shared/WebNetworkInfo.h:
525         * UIProcess/CoordinatedGraphics/WebView.h:
526         * UIProcess/WebBatteryManagerProxy.h:
527         * UIProcess/WebNetworkInfoManagerProxy.h:
528         * UIProcess/WebTextChecker.h:
529         * UIProcess/WebVibrationProxy.h:
530         * UIProcess/WebViewportAttributes.h:
531         * UIProcess/efl/WebPopupItemEfl.h:
532         * UIProcess/soup/WebSoupRequestManagerProxy.h:
533
534 2013-12-10  Anders Carlsson  <andersca@apple.com>
535
536         Rename WebNumber.h to APINumber.h
537         https://bugs.webkit.org/show_bug.cgi?id=125545
538
539         Reviewed by Beth Dakin.
540
541         * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
542         * Shared/API/c/WKNumber.cpp:
543         * Shared/API/c/WKSharedAPICast.h:
544         * Shared/APINumber.h: Renamed from Source/WebKit2/Shared/WebNumber.h.
545         * Shared/Plugins/Netscape/PluginInformation.cpp:
546         * Shared/Plugins/Netscape/mac/PluginInformationMac.mm:
547         * Shared/UserData.cpp:
548         * Shared/UserMessageCoders.h:
549         * UIProcess/API/C/mac/WKContextPrivateMac.mm:
550         * UIProcess/Notifications/WebNotificationProvider.cpp:
551         * UIProcess/WebUIClient.cpp:
552         * WebKit2.xcodeproj/project.pbxproj:
553
554 2013-12-10  Anders Carlsson  <andersca@apple.com>
555
556         UserData should handle geometry types
557         https://bugs.webkit.org/show_bug.cgi?id=125542
558
559         Reviewed by Andreas Kling.
560
561         Rename WebGeometry.h to APIGeometry.h in preparation for moving the classes into the API namespace.
562         Add encode/decode functions to geometry classes. Use them in UserData::encode and UserData::decode.
563
564         * Shared/API/c/WKGeometry.cpp:
565         * Shared/APIGeometry.cpp: Added.
566         * Shared/APIGeometry.h: Renamed from Source/WebKit2/Shared/WebGeometry.h.
567         (WebKit::UserData::encode):
568         (WebKit::UserData::decode):
569         * Shared/UserMessageCoders.h:
570         * WebKit2.xcodeproj/project.pbxproj:
571         * WebProcess/WebPage/WebPage.cpp:
572
573 2013-12-10  Beth Dakin  <bdakin@apple.com>
574
575         https://bugs.webkit.org/show_bug.cgi?id=125533
576         BackgroundExtendsBeyondPage setting should be switchable per WKView
577         -and corresponding-
578         <rdar://problem/15571310>
579
580         Reviewed by Anders Carlsson.
581
582         This patch removes the WKPreferences API and adds WKPage API in its place. To 
583         ensure that the setting sticks after a crash, it is also now a creation parameter.
584
585         * Shared/WebPageCreationParameters.cpp:
586         (WebKit::WebPageCreationParameters::encode):
587         (WebKit::WebPageCreationParameters::decode):
588         * Shared/WebPageCreationParameters.h:
589         * UIProcess/API/C/WKPage.cpp:
590         (WKPageSetBackgroundExtendsBeyondPage):
591         (WKPageBackgroundExtendsBeyondPage):
592         * UIProcess/API/C/WKPage.h:
593         * UIProcess/API/C/WKPreferences.cpp:
594         * UIProcess/API/C/WKPreferencesPrivate.h:
595         * UIProcess/WebPageProxy.cpp:
596         (WebKit::WebPageProxy::WebPageProxy):
597         (WebKit::WebPageProxy::setBackgroundExtendsBeyondPage):
598         (WebKit::WebPageProxy::backgroundExtendsBeyondPage):
599         (WebKit::WebPageProxy::initializeCreationParameters):
600         * UIProcess/WebPageProxy.h:
601         * WebProcess/WebPage/WebPage.cpp:
602         (WebKit::WebPage::WebPage):
603         (WebKit::WebPage::setBackgroundExtendsBeyondPage):
604         (WebKit::WebPage::updatePreferences):
605         * WebProcess/WebPage/WebPage.h:
606         * WebProcess/WebPage/WebPage.messages.in:
607
608 2013-12-10  Anders Carlsson  <andersca@apple.com>
609
610         Rename API::TypedObject to API::ObjectImpl
611         https://bugs.webkit.org/show_bug.cgi?id=125539
612
613         Reviewed by Tim Horton.
614
615         All API::Objects are by definition typed, so ObjectImpl makes more sense as a name.
616
617         * Shared/APIArray.h:
618         * Shared/APIFrameHandle.h:
619         * Shared/APIObject.h:
620         (API::ObjectImpl::~ObjectImpl):
621         (API::ObjectImpl::ObjectImpl):
622         * Shared/APIPageHandle.h:
623         * Shared/ImmutableDictionary.h:
624         * Shared/WebArchive.h:
625         * Shared/WebArchiveResource.h:
626         * Shared/WebBackForwardListItem.h:
627         * Shared/WebCertificateInfo.h:
628         * Shared/WebConnection.h:
629         * Shared/WebContextMenuItem.h:
630         * Shared/WebData.h:
631         * Shared/WebError.h:
632         * Shared/WebGeolocationPosition.h:
633         * Shared/WebGeometry.h:
634         * Shared/WebHitTestResult.h:
635         * Shared/WebImage.h:
636         * Shared/WebNumber.h:
637         * Shared/WebOpenPanelParameters.h:
638         * Shared/WebRenderLayer.h:
639         * Shared/WebRenderObject.h:
640         * Shared/WebSecurityOrigin.h:
641         * Shared/WebSerializedScriptValue.h:
642         * Shared/WebString.h:
643         * Shared/WebURL.h:
644         * Shared/WebURLRequest.h:
645         * Shared/WebURLResponse.h:
646         * Shared/WebUserContentURLPattern.h:
647         * Shared/mac/ObjCObjectGraph.h:
648         * UIProcess/APINavigationData.h:
649         * UIProcess/Authentication/AuthenticationChallengeProxy.h:
650         * UIProcess/Authentication/AuthenticationDecisionListener.h:
651         * UIProcess/Authentication/WebCredential.h:
652         * UIProcess/Authentication/WebProtectionSpace.h:
653         * UIProcess/Downloads/DownloadProxy.h:
654         * UIProcess/GeolocationPermissionRequestProxy.h:
655         * UIProcess/Notifications/NotificationPermissionRequest.h:
656         * UIProcess/Notifications/WebNotification.h:
657         * UIProcess/Notifications/WebNotificationManagerProxy.h:
658         * UIProcess/Plugins/WebPluginSiteDataManager.h:
659         * UIProcess/WebApplicationCacheManagerProxy.h:
660         * UIProcess/WebBackForwardList.h:
661         * UIProcess/WebColorPickerResultListenerProxy.h:
662         * UIProcess/WebContext.h:
663         * UIProcess/WebCookieManagerProxy.h:
664         * UIProcess/WebDatabaseManagerProxy.h:
665         * UIProcess/WebEditCommandProxy.h:
666         * UIProcess/WebFrameProxy.h:
667         * UIProcess/WebGeolocationManagerProxy.h:
668         * UIProcess/WebGrammarDetail.h:
669         * UIProcess/WebIconDatabase.h:
670         * UIProcess/WebInspectorProxy.h:
671         * UIProcess/WebKeyValueStorageManager.h:
672         * UIProcess/WebMediaCacheManagerProxy.h:
673         * UIProcess/WebOpenPanelResultListenerProxy.h:
674         * UIProcess/WebOriginDataManagerProxy.h:
675         * UIProcess/WebPageGroup.h:
676         * UIProcess/WebPageProxy.h:
677         * UIProcess/WebPreferences.h:
678         * UIProcess/WebResourceCacheManagerProxy.h:
679         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
680         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.h:
681         * WebProcess/InjectedBundle/InjectedBundle.h:
682         * WebProcess/InjectedBundle/InjectedBundleBackForwardList.h:
683         * WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.h:
684         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.h:
685         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
686         * WebProcess/InjectedBundle/InjectedBundleNavigationAction.h:
687         * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
688         * WebProcess/WebPage/PageBanner.h:
689         * WebProcess/WebPage/PageOverlay.h:
690         * WebProcess/WebPage/WebFrame.h:
691         * WebProcess/WebPage/WebInspector.h:
692         * WebProcess/WebPage/WebPage.h:
693         * WebProcess/WebPage/WebPageGroupProxy.h:
694
695 2013-12-10  Nick Diego Yamane  <nick.yamane@openbossa.org>
696
697         [EFL] Fix WK2 build after r160341
698         https://bugs.webkit.org/show_bug.cgi?id=125529
699
700         Reviewed by Anders Carlsson.
701
702         * CMakeLists.txt: Added new files UserData.cpp, APIFrameHandle.cpp and APIPageHandle.cpp.
703
704 2013-12-10  Anders Carlsson  <andersca@apple.com>
705
706         Add more API object types to UserData
707         https://bugs.webkit.org/show_bug.cgi?id=125532
708
709         Reviewed by Beth Dakin.
710
711         * Shared/UserData.cpp:
712         (WebKit::UserData::transform):
713         Handle dictionaries.
714
715         (WebKit::UserData::encode):
716         (WebKit::UserData::decode):
717         Handle more API::Objects.
718
719 2013-12-10  Anders Carlsson  <andersca@apple.com>
720
721         More UserData work
722         https://bugs.webkit.org/show_bug.cgi?id=125524
723
724         Reviewed by Dan Bernstein.
725
726         * Shared/APIObject.h:
727         * Shared/UserData.cpp:
728         (WebKit::UserData::transform):
729         New helper function that takes an API::Object and returns a new API::Object with all "sub-objects" (arrays etc)
730         transformed by calling the transformer.
731
732         * Shared/UserData.h:
733         (WebKit::UserData::object):
734         New getter.
735
736         * UIProcess/WebProcessProxy.cpp:
737         (WebKit::WebProcessProxy::apiObjectByConvertingToHandles):
738         Helper function that creates a new API::Object graph by converting WebFrameProxy objects to FrameHandles.
739
740         * WebProcess/WebProcess.cpp:
741         (WebKit::WebProcess::apiObjectByConvertingFromHandles):
742         Helper function that creates a new API::Object graph by converting FrameHandles to WebFrame objects.
743
744 2013-12-10  Alberto Garcia  <berto@igalia.com>
745
746         [WK2] [SOUP] Allow running the network process with an arbitrary prefix command
747         https://bugs.webkit.org/show_bug.cgi?id=125520
748
749         Reviewed by Carlos Garcia Campos.
750
751         Launch the network process using NETWORK_PROCESS_CMD_PREFIX as a
752         prefix. Useful for debugging the web process with gdb, valgrind,
753         etc.
754
755         * UIProcess/Network/soup/NetworkProcessProxySoup.cpp:
756         (WebKit::NetworkProcessProxy::platformGetLaunchOptions):
757
758 2013-12-10  Kwang Yul Seo  <skyul@company100.net>
759
760         Allow us to use network process with a single process model
761         https://bugs.webkit.org/show_bug.cgi?id=125507
762
763         Reviewed by Brady Eidson.
764
765         Currently, WebContext::sendToNetworkingProcess and
766         WebContext::sendToNetworkingProcessRelaunchingIfNecessary assume that
767         network process is not used when the given process model is
768         ProcessModelSharedSecondaryProcess. This is not consistent with
769         WebContext::networkingProcessConnection which returns the networking
770         process connection for ProcessModelSharedSecondaryProcess.
771
772         * UIProcess/WebContext.h:
773         (WebKit::WebContext::sendToNetworkingProcess):
774         (WebKit::WebContext::sendToNetworkingProcessRelaunchingIfNecessary):
775
776 2013-12-10  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
777
778         Unreviewed EFL build fix
779
780         * CMakeLists.txt: Remove UIProcess/DrawingAreaProxy.cpp.
781         * PlatformGTK.cmake: Add the file above.
782
783 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
784
785         [GTK] [CMake] Add support for building the WebKit injected bundle
786         https://bugs.webkit.org/show_bug.cgi?id=116373
787
788         Reviewed by Gustavo Noronha Silva.
789
790         * PlatformGTK.cmake: Add support for building the InjectedBundle and link the WebKit2
791         shared library against the GObject DOM bindings.
792         * WebProcess/gtk/WebGtkExtensionManager.h: Properly export symbols used by the InjectedBundle.
793
794 2013-12-10  Kwang Yul Seo  <skyul@company100.net>
795
796         [WK2][SOUP] WebContext::setIgnoreTLSErrors should send SetIgnoreTLSErrors to the network process when network process is enabled
797         https://bugs.webkit.org/show_bug.cgi?id=125505
798
799         Reviewed by Carlos Garcia Campos.
800
801         This is a follow-up patch for r160355.
802
803         * UIProcess/gtk/WebContextGtk.cpp:
804         (WebKit::WebContext::setIgnoreTLSErrors):
805
806 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
807
808         Try to fix the EFL build
809
810         * CMakeLists.txt: Remove DrawingAreaImpl.cpp from the global list.
811         * PlatformGTK.cmake: Move it to the GTK+ specific list.
812
813 2013-12-10  Martin Robinson  <mrobinson@igalia.com>
814
815         Various fixes for the CMake GTK+ build
816
817         Reviewed by Gustavo Noronha.
818
819         * CMakeLists.txt: Update the source lists.
820         * PlatformGTK.cmake: Ditto.
821
822 2013-12-10  Alberto Garcia  <berto@igalia.com>
823
824         [WK2] [GTK] Enable the network process in the WebContext
825         https://bugs.webkit.org/show_bug.cgi?id=125494
826
827         Reviewed by Carlos Garcia Campos.
828
829         This should be initialized using the setUsesNetworkProcess() API.
830
831         * UIProcess/API/gtk/WebKitWebContext.cpp:
832         (createDefaultWebContext):
833         * UIProcess/gtk/WebContextGtk.cpp:
834         (WebKit::WebContext::platformInitializeWebProcess):
835
836 2013-12-10  Brian Holt  <brian.holt@samsung.com>
837
838         [WK2][SOUP] initialise the Network Process with ignoreTLSErrors
839         https://bugs.webkit.org/show_bug.cgi?id=125490
840
841         ResourceHandleSoup in the Network Process and is not initialised with
842         a policy on ignoring TLS errors.  This simply requires that the
843         appropriate message is created for the Network Process and the
844         parameter created for initialisation.
845
846         Reviewed by Gustavo Noronha Silva.
847
848         * NetworkProcess/NetworkProcess.h:
849         * NetworkProcess/NetworkProcess.messages.in:
850         * NetworkProcess/soup/NetworkProcessSoup.cpp:
851         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
852         (WebKit::NetworkProcess::setIgnoreTLSErrors):
853         * Shared/Network/NetworkProcessCreationParameters.cpp:
854         (WebKit::NetworkProcessCreationParameters::encode):
855         (WebKit::NetworkProcessCreationParameters::decode):
856         * Shared/Network/NetworkProcessCreationParameters.h:
857         * UIProcess/gtk/WebContextGtk.cpp:
858         (WebKit::WebContext::platformInitializeWebProcess):
859         * UIProcess/soup/WebContextSoup.cpp:
860         (WebKit::WebContext::platformInitializeNetworkProcess):
861
862 2013-12-09  Anders Carlsson  <andersca@apple.com>
863
864         Begin working on a UserData class intended to replace UserMessageCoders
865         https://bugs.webkit.org/show_bug.cgi?id=125471
866
867         Reviewed by Sam Weinig.
868
869         * Shared/APIFrameHandle.cpp: Added.
870         * Shared/APIFrameHandle.h: Added.
871         Add a new API::FrameHandle class that represents a frame.
872
873         * Shared/APIObject.h:
874         * Shared/APIPageHandle.cpp: Added.
875         * Shared/APIPageHandle.h: Added.
876         Add a new API::PageHandle class that represents a page.
877
878         * Shared/UserData.cpp: Added.
879         (WebKit::UserData::UserData):
880         (WebKit::UserData::~UserData):
881         (WebKit::UserData::encode):
882         (WebKit::UserData::decode):
883         * Shared/UserData.h: Added.
884         Add a UserData class that can be encoded and decoded. This will be used for sending data
885          between the web process and UI process without doing any of the Page -> BundlePage etc conversions.
886         * WebKit2.xcodeproj/project.pbxproj:
887
888 2013-12-09  Ryuan Choi  <ryuan.choi@samsung.com>
889
890         [EFL][WK2] LayoutTests are broken after r160301
891         https://bugs.webkit.org/show_bug.cgi?id=125447
892
893         Reviewed by Darin Adler.
894
895         r160301 moved FullScreenManagerProxyClient logic to WebViewEfl, child class
896         of CoordinatedGraphics::WebView, because implementations are EFL specific.
897         However, CoordinatedGraphics::WebView creates WebPageProxy in constructor and
898         WebPageProxy requires FullScreenManagerProxyClient in constructor.
899         So, All WK2/Efl based applications got crashed
900
901         This patch adds virtual methods for FullScreenManagerProxyClient to CoordinatedGraphics::WebView
902         so that WebPageProxy can get FullScreenManagerProxyClient instance without
903         pure viertual methods.
904
905         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
906         (WKViewExitFullScreen):
907         * UIProcess/CoordinatedGraphics/WebView.cpp:
908         (WebKit::WebView::fullScreenManagerProxyClient):
909         (WebKit::WebView::requestExitFullScreen):
910         renamed from exitFullScreen not to conflict with methods of FullScreenManagerProxyClient.
911         * UIProcess/CoordinatedGraphics/WebView.h:
912         * UIProcess/efl/WebViewEfl.cpp:
913         * UIProcess/efl/WebViewEfl.h:
914
915 2013-12-09  Sergio Villar Senin  <svillar@igalia.com>
916
917         [WK2] Add UNIX_DOMAIN_SOCKETS specific bits for supporting NetworkProcess
918         https://bugs.webkit.org/show_bug.cgi?id=110093
919
920         Reviewed by Martin Robinson.
921
922         Original patch by Balazs Kelemen <kbalazs@webkit.org>.
923
924         Adds the UNIX specific bits to support connections to the
925         NetworkProcess. Since the process of creating the pair of sockets
926         is exactly the same as in the PluginProcess, I've decided to
927         refactor it in ConnectionUnix::createPlatformConnection(). This
928         can be reused later to create a cross-platform solution and remove
929         all the ifdefs (see bug 110978).
930
931         * NetworkProcess/NetworkProcess.cpp:
932         (WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
933         * Platform/CoreIPC/Connection.h:
934         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
935         (CoreIPC::Connection::createPlatformConnection):
936         * PluginProcess/PluginProcess.cpp:
937         (WebKit::PluginProcess::createWebProcessConnection):
938         * UIProcess/Network/NetworkProcessProxy.cpp:
939         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
940         (WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
941         * WebProcess/WebProcess.cpp:
942         (WebKit::WebProcess::ensureNetworkProcessConnection):
943
944 2013-12-09  Kwang Yul Seo  <skyul@company100.net>
945
946         [WK2][Soup] Support cache model in NetworkProcess
947         https://bugs.webkit.org/show_bug.cgi?id=118343
948
949         Reviewed by Carlos Garcia Campos.
950
951         Original patch by Kwang Yul Seo <skyul@company100.net> and Csaba Osztrogonác <ossy@webkit.org>.
952
953         Copied cache model code from WebProcess.
954         NetworkProcess is configured not to use the WebCore memory cache.
955
956         * NetworkProcess/soup/NetworkProcessSoup.cpp:
957         (WebKit::getCacheDiskFreeSize):
958         (WebKit::getMemorySize):
959         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
960         Initialize soup cache.
961         (WebKit::NetworkProcess::platformSetCacheModel):
962         Copied code from WebProcess::platformSetCacheModel but removed
963         WebCore memory cache initialization because NetworkProcess does not use
964         the WebCore memory cache.
965         (WebKit::NetworkProcess::clearCacheForAllOrigins):
966         Copied code from WebProcess::clearCacheForAllOrigins.
967         * NetworkProcess/unix/NetworkProcessMainUnix.cpp:
968         Copied initialization code from WebProcessMainGtk.cpp.
969         (WebKit::NetworkProcessMain):
970         * WebProcess/soup/WebProcessSoup.cpp:
971         (WebKit::WebProcess::platformSetCacheModel):
972         Don't set the disk cache if NetworkProcess is used.
973         (WebKit::WebProcess::platformClearResourceCaches):
974         Don't clear the non-existing disk cache. (if NetworkProcess is used)
975         (WebKit::WebProcess::platformInitializeWebProcess):
976         Don't initialize the disk cache if NetworkProcess is used.
977
978 2013-12-09  Gustavo Noronha Silva  <gns@gnome.org>
979
980         [GTK] run-webkit-tests may DOS the system, specially in debug builds
981         https://bugs.webkit.org/show_bug.cgi?id=125436
982
983         Reviewed by Martin Robinson.
984
985         * GNUmakefile.am: use -no-fast-install for WebKitWebProcess and WebKitPluginProcess so
986         they do not need to be relinked the first time they are executed in-tree.
987
988 2013-12-09  Zan Dobersek  <zdobersek@igalia.com>
989
990         [GTK][WK2] Move WebFullScreenManagerProxyGtk logic to PageClientImpl
991         https://bugs.webkit.org/show_bug.cgi?id=125440
992
993         Reviewed by Martin Robinson.
994
995         Make PageClientImpl a WebFullScreenManagerProxyClient. This brings the GTK port in line
996         with changes in r160296 and fixes the WK2 build for that port.
997
998         * GNUmakefile.list.am:
999         * UIProcess/API/gtk/PageClientImpl.cpp:
1000         (WebKit::PageClientImpl::fullScreenManagerProxyClient):
1001         (WebKit::PageClientImpl::closeFullScreenManager):
1002         (WebKit::PageClientImpl::isFullScreen):
1003         (WebKit::PageClientImpl::enterFullScreen):
1004         (WebKit::PageClientImpl::exitFullScreen):
1005         (WebKit::PageClientImpl::beganEnterFullScreen):
1006         (WebKit::PageClientImpl::beganExitFullScreen):
1007         * UIProcess/API/gtk/PageClientImpl.h:
1008         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
1009         (webkitWebViewBaseCreateWebPage):
1010         * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp:
1011
1012 2013-12-09  Brian Holt  <brian.holt@samsung.com>
1013
1014         [WK2][Gtk] Add support for ENABLE_NETWORK_PROCESS to the build system
1015         https://bugs.webkit.org/show_bug.cgi?id=118231
1016
1017         Reviewed by Martin Robinson.
1018
1019         Original patch by Kwang Yul Seo  <skyul@company100.net>.
1020
1021         Add source files to the build system and build NetworkProcess executable.
1022
1023         * GNUmakefile.am:
1024         * GNUmakefile.list.am:
1025         * NetworkProcess/unix/NetworkProcessMainUnix.cpp:
1026         * UIProcess/gtk/WebContextGtk.cpp:
1027         (WebKit::WebContext::platformInitializeWebProcess):
1028
1029 2013-12-08  Ryuan Choi  <ryuan.choi@samsung.com>
1030
1031         [EFL][WK2] Move FullScreenManager logic to WebViewEfl
1032         https://bugs.webkit.org/show_bug.cgi?id=125438
1033
1034         Reviewed by Gyuyoung Kim.
1035
1036         This patch fixed build break on EFL port Since r160296.
1037
1038         * PlatformEfl.cmake: Removed WebFullScreenManagerProxyEfl.cpp.
1039         * UIProcess/WebFullScreenManagerProxy.cpp: Removed EFL specific code.
1040         (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy):
1041         * UIProcess/WebFullScreenManagerProxy.h: Ditto.
1042         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp: Removed file and moved logic to WebViewEfl.
1043         * UIProcess/efl/WebViewEfl.cpp:
1044         (WebKit::WebViewEfl::WebViewEfl):
1045         (WebKit::WebViewEfl::setEwkView): Removed call to setWebView().
1046         (WebKit::WebViewEfl::fullScreenManagerProxyClient):
1047         (WebKit::WebViewEfl::isFullScreen):
1048         (WebKit::WebViewEfl::enterFullScreen):
1049         (WebKit::WebViewEfl::exitFullScreen):
1050         * UIProcess/efl/WebViewEfl.h:
1051
1052 2013-12-08  Sam Weinig  <sam@webkit.org>
1053
1054         Remove WebContext::sharedProcessContext()
1055         https://bugs.webkit.org/show_bug.cgi?id=125437
1056
1057         Reviewed by Dan Bernstein.
1058
1059         * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
1060         * UIProcess/WebContext.cpp:
1061         * UIProcess/WebContext.h:
1062
1063 2013-12-08  Sam Weinig  <sam@webkit.org>
1064
1065         Fix the iOS build.
1066
1067         * UIProcess/API/ios/PageClientImplIOS.h:
1068         * UIProcess/API/ios/PageClientImplIOS.mm:
1069         * UIProcess/ios/WebFullScreenManagerProxyIOS.mm: Removed.
1070
1071 2013-12-08  Sam Weinig  <sam@webkit.org>
1072
1073         [Cocoa] Remove knowledge of the WKView from the WebFullScreenManagerProxy by adding a proper client
1074         https://bugs.webkit.org/show_bug.cgi?id=125427
1075
1076         Reviewed by Dan Bernstein.
1077
1078         * UIProcess/API/mac/PageClientImpl.h:
1079         * UIProcess/API/mac/PageClientImpl.mm:
1080         (WebKit::PageClientImpl::fullScreenManagerProxyClient):
1081         (WebKit::PageClientImpl::closeFullScreenManager):
1082         (WebKit::PageClientImpl::isFullScreen):
1083         (WebKit::PageClientImpl::enterFullScreen):
1084         (WebKit::PageClientImpl::exitFullScreen):
1085         (WebKit::PageClientImpl::beganEnterFullScreen):
1086         (WebKit::PageClientImpl::beganExitFullScreen):
1087         Implement the new client.
1088
1089         * UIProcess/API/mac/WKView.mm:
1090         Remove call to setWebView() and do some cleanup.
1091
1092         * UIProcess/API/mac/WKViewInternal.h:
1093         Convert to property syntax and re-arrange.
1094
1095         * UIProcess/PageClient.h:
1096         Expose access to the new client.
1097
1098         * UIProcess/WebFullScreenManagerProxy.cpp:
1099         (WebKit::WebFullScreenManagerProxy::create):
1100         (WebKit::WebFullScreenManagerProxy::WebFullScreenManagerProxy):
1101         (WebKit::WebFullScreenManagerProxy::invalidate):
1102         (WebKit::WebFullScreenManagerProxy::close):
1103         (WebKit::WebFullScreenManagerProxy::isFullScreen):
1104         (WebKit::WebFullScreenManagerProxy::enterFullScreen):
1105         (WebKit::WebFullScreenManagerProxy::exitFullScreen):
1106         (WebKit::WebFullScreenManagerProxy::beganEnterFullScreen):
1107         (WebKit::WebFullScreenManagerProxy::beganExitFullScreen):
1108         * UIProcess/WebFullScreenManagerProxy.h:
1109         Use the new client.
1110
1111         * UIProcess/WebPageProxy.cpp:
1112         Pass the new client.
1113
1114         * UIProcess/mac/WebFullScreenManagerProxyMac.mm:
1115         Removed. Now goes through the client.
1116
1117         * WebKit2.xcodeproj/project.pbxproj:
1118         Remove WebFullScreenManagerProxyMac.mm.
1119
1120 2013-12-07  Sam Weinig  <sam@webkit.org>
1121
1122         [Cocoa] Remove webProcessPlugInInitialize: from the WKWebProcessPlugIn protocol
1123         https://bugs.webkit.org/show_bug.cgi?id=125405
1124
1125         Reviewed by Dan Bernstein.
1126
1127         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
1128         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1129         (WebKit::InjectedBundle::load):
1130
1131 2013-12-08  Brian Holt  <brian.holt@samsung.com>
1132
1133         [WK2] Guard include of SecItemShim.h with ENABLE(SEC_ITEM_SHIM)
1134         https://bugs.webkit.org/show_bug.cgi?id=125415
1135
1136         Reviewed by Gustavo Noronha Silva.
1137
1138         * NetworkProcess/NetworkProcess.cpp:
1139         * UIProcess/Network/NetworkProcessProxy.cpp:
1140
1141 2013-12-07  Sam Weinig  <sam@webkit.org>
1142
1143         [Cocoa] Make WKWebProcessPlugInController work with WKObject wrapping
1144         https://bugs.webkit.org/show_bug.cgi?id=125404
1145
1146         Reviewed by Dan Bernstein.
1147
1148         * Shared/Cocoa/APIObject.mm:
1149         (API::Object::newObject):
1150         * Shared/mac/ObjCObjectGraphCoders.mm:
1151         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
1152         (-[WKWebProcessPlugInController dealloc]):
1153         (didCreatePage):
1154         (willDestroyPage):
1155         (-[WKWebProcessPlugInController _setPrincipalClassInstance:]):
1156         (-[WKWebProcessPlugInController API::]):
1157         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
1158         (WebKit::wrapper):
1159         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h:
1160         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1161         (WebKit::InjectedBundle::load):
1162
1163 2013-12-07  Dan Bernstein  <mitz@apple.com>
1164
1165         [Cocoa] WebData has a generic wrapper
1166         https://bugs.webkit.org/show_bug.cgi?id=125402
1167
1168         Reviewed by Sam Weinig.
1169
1170         Added WKNSData, an NSData subclass that conforms to WKObject and wraps a WebData.
1171
1172         * Shared/Cocoa/APIObject.mm:
1173         (API::Object::newObject): Allocate a WKNSData if the API::Object is data.
1174         * Shared/Cocoa/WKNSData.h: Added.
1175         (WebKit::wrapper): Added. Returns a WebData’s wrapper as an NSData.
1176         * Shared/Cocoa/WKNSData.mm: Added.
1177         (-[WKNSData dealloc]): Calls the WebData destructor.
1178         (-[WKNSData length]): Added.
1179         (-[WKNSData bytes]): Added.
1180         (-[WKNSData copyWithZone:]): Retains self.
1181         (-[WKNSData _apiObject]): Returns the wrapped WebData.
1182         * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
1183
1184 2013-12-07  Sam Weinig  <sam@webkit.org>
1185
1186         [Cocoa] Make WKWebProcessPlugInBrowserContextController work with WKObject wrapping
1187         https://bugs.webkit.org/show_bug.cgi?id=125403
1188
1189         Reviewed by Dan Bernstein.
1190
1191         * Shared/Cocoa/APIObject.mm:
1192         (API::Object::newObject):
1193         * Shared/mac/ObjCObjectGraphCoders.mm:
1194         (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode):
1195         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
1196         (didCreatePage):
1197         (willDestroyPage):
1198         (setUpBundleClient):
1199         (-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundle:]):
1200         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
1201         (-[WKWebProcessPlugInBrowserContextController dealloc]):
1202         (-[WKWebProcessPlugInBrowserContextController mainFrameDocument]):
1203         (-[WKWebProcessPlugInBrowserContextController selectedRange]):
1204         (-[WKWebProcessPlugInBrowserContextController API::]):
1205         (-[WKWebProcessPlugInBrowserContextController _bundlePageRef]):
1206         (-[WKWebProcessPlugInBrowserContextController handle]):
1207         (+[WKWebProcessPlugInBrowserContextController lookUpBrowsingContextFromHandle:]):
1208         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
1209         (WebKit::wrapper):
1210         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
1211         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1212         (WebKit::InjectedBundle::load):
1213
1214 2013-12-07  Gustavo Noronha Silva  <gns@gnome.org>
1215
1216         Fix API test expectation following 160220.
1217
1218         Rubber-stamped by Martin Robinson.
1219
1220         * UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
1221         (testAtspiBasicHierarchy): check for ATK_ROLE_DOCUMENT_WEB instead of ATK_ROLE_DOCUMENT_FRAME.
1222
1223 2013-12-06  Enrica Casucci  <enrica@apple.com>
1224
1225         Make insertText message asynchronous for iOS.
1226
1227         Reviewed by Benjamin Poulain.
1228
1229         * UIProcess/ios/WebPageProxyIOS.mm:
1230         (WebKit::WebPageProxy::insertText):
1231         * WebProcess/WebPage/WebPage.h:
1232         * WebProcess/WebPage/WebPage.messages.in:
1233         * WebProcess/WebPage/ios/WebPageIOS.mm:
1234         (WebKit::WebPage::insertText):
1235
1236 2013-12-05  Jer Noble  <jer.noble@apple.com>
1237
1238         [MSE] Add a runtime-setting for the MediaSource constructor.
1239         https://bugs.webkit.org/show_bug.cgi?id=125336
1240
1241         Reviewed by Eric Carlson.
1242
1243         Add a private WKPreferences API to control the WebCore mediaSourceEnabled setting.
1244
1245         * Shared/WebPreferencesStore.h:
1246         * UIProcess/API/C/WKPreferences.cpp:
1247         (WKPreferencesSetMediaSourceEnabled):
1248         (WKPreferencesGetMediaSourceEnabled):
1249         * UIProcess/API/C/WKPreferencesPrivate.h:
1250         * WebProcess/WebPage/WebPage.cpp:
1251         (WebKit::WebPage::updatePreferences):
1252
1253 2013-12-06  Dan Bernstein  <mitz@apple.com>
1254
1255         <rdar://problem/15606872> REGRESSION (r160148): Mail throws an exception during launch
1256         https://bugs.webkit.org/show_bug.cgi?id=125362
1257
1258         Reviewed by Sam Weinig.
1259
1260         There were two problems in how WKConnection was made to work with WKObject: first,
1261         API::Object::newObject() was not updated to allocate the correct wrapper class, and second,
1262         WebConnection has subclasses with additional data members, which don’t fit in the object
1263         storage ivar.
1264
1265         * Shared/Cocoa/APIObject.mm:
1266         (API::Object::newObject): Changed to allocate a WKConnection of the required size.
1267         * UIProcess/API/Cocoa/WKConnection.mm:
1268         Removed _connection ivar.
1269         (-[WKConnection dealloc]): Changed to use -_connection accessor instead of ivar.
1270         (-[WKConnection setDelegate:]): Ditto.
1271         (-[WKConnection sendMessageWithName:body:]): Ditto.
1272         (-[WKConnection remoteObjectRegistry]): Ditto.
1273         (-[WKConnection _connection]): Added.
1274         (-[WKConnection _apiObject]): Changed to return the object in the instance extra storage.
1275
1276 2013-12-06  Dan Bernstein  <mitz@apple.com>
1277
1278         [Cocoa] Add load delegate methods for responding to authentication challenges
1279         https://bugs.webkit.org/show_bug.cgi?id=125333
1280
1281         Reviewed by Darin Adler.
1282
1283         * Shared/Cocoa/APIObject.mm:
1284         (API::Object::newObject): Allocate a WKNSURLAuthenticationChallenge if the object is an
1285         AuthenticationChallengeProxy.
1286
1287         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1288         (canAuthenticateAgainstProtectionSpaceInFrame): Implemented this WKPageLoaderClient callback
1289         by calling the load delegate.
1290         (didReceiveAuthenticationChallengeInFrame): Ditto.
1291         (setUpPageLoaderClient): Set the above callbacks in the client structure.
1292
1293         * UIProcess/API/Cocoa/WKBrowsingContextLoadDelegatePrivate.h: Added. Declares two new
1294         delegate methods.
1295
1296         * UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.h: Added.
1297         (WebKit::wrapper): Added. Returns an AuthenticationChallengeProxy’s wrapper as an
1298         NSURLAuthenticationChallenge.
1299         * UIProcess/API/Cocoa/WKNSURLAuthenticationChallenge.mm: Added.
1300         (-[WKNSURLAuthenticationChallenge _web_createTarget]): Override this WKObject method to
1301         return a copy of the challenge with the sender set to a shared instance of
1302         WKNSURLAuthenticationChallengeSender.
1303         (-[WKNSURLAuthenticationChallenge _web_authenticationChallengeProxy]): Added. Returns the
1304         wrapped object.
1305         (-[WKNSURLAuthenticationChallengeSender cancelAuthenticationChallenge:]): Added. Calls
1306         AuthenticationDecisionListener::cancel.
1307         (-[WKNSURLAuthenticationChallengeSender continueWithoutCredentialForAuthenticationChallenge:]):
1308         Added. Calls AuthenticationDecisionListener::useCredential, passing nullptr.
1309         (-[WKNSURLAuthenticationChallengeSender useCredential:forAuthenticationChallenge:]): Added.
1310         Calls AuthenticationDecisionListener::useCredential, passing the credential.
1311
1312         * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
1313
1314 2013-12-05  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1315
1316         Introduce IMAGE_TYPE_CASTS, and use it
1317         https://bugs.webkit.org/show_bug.cgi?id=125330
1318
1319         Reviewed by Ryosuke Niwa.
1320
1321         As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
1322         BitmapImage, SVGImage can use it to generate toFoo() type case helper functions.
1323
1324         * WebProcess/Plugins/PluginView.cpp:
1325         (WebKit::PluginView::pluginSnapshotTimerFired):
1326
1327 2013-12-05  Mark Lam  <mark.lam@apple.com>
1328
1329         C Loop LLINT layout test regressions.
1330         https://bugs.webkit.org/show_bug.cgi?id=125314.
1331
1332         Reviewed by Geoffrey Garen.
1333
1334         The regression was due to the ENABLE_LLINT_C_LOOP flag not being included
1335         in the build of the WebKit and WebKit2 components. As a result, some fields
1336         in JSC::VM were ifdef'ed out in WebCore and JSC, but not in WebKit and
1337         WebKit2. This resulted in VM::m_initializingObjectClass having 2 different
1338         offsets depending on whether it is accessed from WebCore and JSC or from
1339         WebKit and WebKit2, and chaos ensued.
1340
1341         This issue will manifest when we pass --cloop to build-webkit.
1342         The fix is simply to add ENABLE_LLINT_C_LOOP to FEATURE_DEFINES for WebKit
1343         and WebKit2.
1344
1345         * Configurations/FeatureDefines.xcconfig:
1346
1347 2013-12-04  Oliver Hunt  <oliver@apple.com>
1348
1349         Refactor static getter function prototype to include thisValue in addition to the base object
1350         https://bugs.webkit.org/show_bug.cgi?id=124461
1351
1352         Reviewed by Geoffrey Garen.
1353
1354         Update the WK2 JSC usage to the new static getter API
1355
1356         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
1357         (WebKit::callMethod):
1358         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1359         (WebKit::callNPJSObject):
1360         (WebKit::constructWithConstructor):
1361         (WebKit::JSNPObject::propertyGetter):
1362         (WebKit::JSNPObject::methodGetter):
1363         * WebProcess/Plugins/Netscape/JSNPObject.h:
1364         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1365         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
1366         (WebKit::NPRuntimeObjectMap::finalize):
1367         * WebProcess/WebPage/WebFrame.cpp:
1368         (WebKit::WebFrame::frameForContext):
1369         (WebKit::WebFrame::counterValue):
1370
1371 2013-12-05  Commit Queue  <commit-queue@webkit.org>
1372
1373         Unreviewed, rolling out r160133.
1374         http://trac.webkit.org/changeset/160133
1375         https://bugs.webkit.org/show_bug.cgi?id=125325
1376
1377         broke bindings tests on all the bots (Requested by thorton on
1378         #webkit).
1379
1380         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
1381         (WebKit::callMethod):
1382         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1383         (WebKit::callNPJSObject):
1384         (WebKit::constructWithConstructor):
1385         (WebKit::JSNPObject::propertyGetter):
1386         (WebKit::JSNPObject::methodGetter):
1387         * WebProcess/Plugins/Netscape/JSNPObject.h:
1388         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1389         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
1390         (WebKit::NPRuntimeObjectMap::finalize):
1391         * WebProcess/WebPage/WebFrame.cpp:
1392         (WebKit::WebFrame::counterValue):
1393
1394 2013-12-05  Chris Fleizach  <cfleizach@apple.com>
1395
1396         AX: Seed: safari extension installation crashes safari under voice over and freezes voice over
1397         https://bugs.webkit.org/show_bug.cgi?id=125308
1398
1399         Reviewed by Anders Carlsson.
1400
1401         Much like Javascript alerts, we need to allow accessibility clients to continue to interact with the WebProcess thread
1402         when using dispatchDecidePolicyResponses.
1403
1404         * Platform/CoreIPC/MessageSender.h:
1405         (CoreIPC::MessageSender::sendSync):
1406         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1407         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1408
1409 2013-12-05  Anders Carlsson  <andersca@apple.com>
1410
1411         "Use Selection for Find" doesn't work in PDF viewed in Safari
1412         https://bugs.webkit.org/show_bug.cgi?id=125319
1413         <rdar://problem/15486983>
1414
1415         Reviewed by Tim Horton.
1416
1417         * WebProcess/Plugins/PDF/PDFPlugin.h:
1418         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1419         (-[WKPDFLayerControllerDelegate writeItemsToPasteboard:withTypes:]):
1420         Pass NSGeneralPboard to writeItemsToPasteboard.
1421
1422         (WebKit::PDFPlugin::handleEditingCommand):
1423         Handle takeFindStringFromSelection by getting the current selection string and writing it to the find pasteboard.
1424
1425         (WebKit::PDFPlugin::isEditingCommandEnabled):
1426         Handle takeFindStringFromSelection.
1427
1428         (WebKit::PDFPlugin::writeItemsToPasteboard):
1429         Update this to take a pasteboard name.
1430
1431 2013-12-05  Anders Carlsson  <andersca@apple.com>
1432
1433         WebKit2 API should use weak ownership for delegate properties rather than assign
1434         https://bugs.webkit.org/show_bug.cgi?id=125316
1435         <rdar://problem/15560614>
1436
1437         Reviewed by Dan Bernstein.
1438
1439         Use WeakObjCPtr for the delegates.
1440
1441         * UIProcess/API/Cocoa/WKBrowsingContextController.h:
1442         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1443         (didStartProvisionalLoadForFrame):
1444         (didReceiveServerRedirectForProvisionalLoadForFrame):
1445         (didFailProvisionalLoadWithErrorForFrame):
1446         (didCommitLoadForFrame):
1447         (didFinishLoadForFrame):
1448         (didFailLoadWithErrorForFrame):
1449         (didStartProgress):
1450         (didChangeProgress):
1451         (didFinishProgress):
1452         (didChangeBackForwardList):
1453         (setUpPagePolicyClient):
1454         (-[WKBrowsingContextController loadDelegate]):
1455         (-[WKBrowsingContextController setLoadDelegate:]):
1456         (-[WKBrowsingContextController policyDelegate]):
1457         (-[WKBrowsingContextController setPolicyDelegate:]):
1458         (-[WKBrowsingContextController historyDelegate]):
1459         (-[WKBrowsingContextController setHistoryDelegate:]):
1460         * UIProcess/API/Cocoa/WKBrowsingContextControllerInternal.h:
1461         * UIProcess/API/Cocoa/WKConnection.mm:
1462         (didReceiveMessage):
1463         (didClose):
1464         (-[WKConnection delegate]):
1465         (-[WKConnection setDelegate:]):
1466         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1467         (didCreateConnection):
1468         (getInjectedBundleInitializationUserData):
1469         (didNavigateWithNavigationData):
1470         (didPerformClientRedirect):
1471         (didPerformServerRedirect):
1472         (didUpdateHistoryTitle):
1473         (-[WKProcessGroup delegate]):
1474         (-[WKProcessGroup setDelegate:]):
1475
1476 2013-12-05  Anders Carlsson  <andersca@apple.com>
1477
1478         Tweak WeakObjCPtr
1479         https://bugs.webkit.org/show_bug.cgi?id=125311
1480
1481         Reviewed by Darin Adler.
1482
1483         Make it possible to use WeakObjCPtr with pointer types such as id. Also,
1484         add a getAutoreleased() member that will load the weak pointer and retain + autorelease it.
1485
1486         * Shared/mac/WeakObjCPtr.h:
1487         (WebKit::WeakObjCPtr::WeakObjCPtr):
1488         (WebKit::WeakObjCPtr::operator=):
1489         (WebKit::WeakObjCPtr::get):
1490         (WebKit::WeakObjCPtr::getAutoreleased):
1491
1492 2013-12-05  Zan Dobersek  <zdobersek@igalia.com>
1493
1494         [GTK][WK2] Clean up WorkQueueGtk
1495         https://bugs.webkit.org/show_bug.cgi?id=125177
1496
1497         Reviewed by Carlos Garcia Campos.
1498
1499         Clean up the GTK implementation of the WorkQueue class a bit.
1500         - registerSocketEventHandler doesn't take a condition argument anymore -- G_IO_IN was the only condition ever passed into
1501         that method so that is now the hard-coded default.
1502         - Clean up the declarations of GTK-specific bits in the WorkQueue header file. SocketEventSourceIterator typedef is removed
1503         and auto will be used instead.
1504         - WorkQueue::dispatchOnTermination and WorkQueue::SocketEventSource::performWorkOnTermination methods were unused and now removed.
1505         - WorkQueue::SocketEventSource doesn't expect a GIO condition anymore, and WorkQueue::SocketEventSource::checkCondition is removed.
1506         G_IO_IN condition was the only one used is now hard-coded into the check in WorkQueue::SocketEventSource::eventCallback.
1507         - Removed an unnecessary non-null assertion for the heap-allocated SocketEventSource.
1508         - Removed a technically duplicated assertion that a file descriptor is already present in the event sources map. Moved the
1509         assertion before the HashMap::find() call.
1510         - Removed two unnecessary assertions that non-null values are being returned by g_idle_source_new() and g_timeout_source_new().
1511         Both functions are guaranteed to return non-null values.
1512
1513         * Platform/CoreIPC/unix/ConnectionUnix.cpp:
1514         (CoreIPC::Connection::open):
1515         * Platform/WorkQueue.h:
1516         * Platform/gtk/WorkQueueGtk.cpp:
1517         (WorkQueue::SocketEventSource::SocketEventSource):
1518         (WorkQueue::SocketEventSource::eventCallback):
1519         (WorkQueue::registerSocketEventHandler):
1520         (WorkQueue::unregisterSocketEventHandler):
1521         (WorkQueue::dispatch):
1522         (WorkQueue::dispatchAfterDelay):
1523
1524 2013-12-04  Gergo Balogh  <geryxyz@inf.u-szeged.hu>
1525
1526         Report error when #else is used in message receiver generator's input.
1527         https://bugs.webkit.org/show_bug.cgi?id=124147
1528
1529         Reviewed by Csaba Osztrogonác.
1530
1531         * Scripts/webkit2/messages_unittest.py:
1532         (UnsupportedPrecompilerDirectiveTest):
1533         (UnsupportedPrecompilerDirectiveTest.test_error_at_else):
1534         (UnsupportedPrecompilerDirectiveTest.test_error_at_elif):
1535         * Scripts/webkit2/parser.py:
1536         (parse):
1537
1538 2013-12-04  Sam Weinig  <sam@webkit.org>
1539
1540         [Cocoa] Make WKConnection work with WKObject wrapping
1541         https://bugs.webkit.org/show_bug.cgi?id=125266
1542
1543         Reviewed by Dan Bernstein.
1544
1545         * UIProcess/API/Cocoa/WKConnection.mm:
1546         (-[WKConnection dealloc]):
1547         (didReceiveMessage):
1548         (didClose):
1549         (setUpClient):
1550         (-[WKConnection delegate]):
1551         (-[WKConnection setDelegate:]):
1552         (-[WKConnection sendMessageWithName:body:]):
1553         (-[WKConnection remoteObjectRegistry]):
1554         (-[WKConnection API::]):
1555         * UIProcess/API/Cocoa/WKConnectionInternal.h:
1556         (WebKit::wrapper):
1557         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1558         (didCreateConnection):
1559         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
1560         (-[WKWebProcessPlugInController _initWithPrincipalClassInstance:bundleRef:]):
1561         (-[WKWebProcessPlugInController connection]):
1562         (-[WKWebProcessPlugInController _bundleRef]):
1563
1564 2013-12-04  Anders Carlsson  <andersca@apple.com>
1565
1566         Add a WeakObjCPtr class
1567         https://bugs.webkit.org/show_bug.cgi?id=125267
1568
1569         Reviewed by Geoffrey Garen.
1570
1571         WeakObjCPtr is a zeroing weak reference class template that will be used for delegates.
1572
1573         * Shared/mac/WeakObjCPtr.h: Added.
1574         (WebKit::WeakObjCPtr::WeakObjCPtr):
1575         (WebKit::WeakObjCPtr::~WeakObjCPtr):
1576         (WebKit::WeakObjCPtr::operator=):
1577         (WebKit::WeakObjCPtr::get):
1578         * WebKit2.xcodeproj/project.pbxproj:
1579
1580 2013-12-04  Ryuan Choi  <ryuan.choi@samsung.com>
1581
1582         Unreviewed EFL build fix after r160135
1583
1584         * CMakeLists.txt: Added rendering/line to include lists.
1585
1586 2013-12-04  Anders Carlsson  <andersca@apple.com>
1587
1588         Make the estimatedProgress property observable using KVO
1589         https://bugs.webkit.org/show_bug.cgi?id=125259
1590
1591         Reviewed by Dan Bernstein.
1592
1593         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1594         * UIProcess/PageLoadState.cpp:
1595         (WebKit::PageLoadState::PageLoadState):
1596         (WebKit::PageLoadState::reset):
1597         (WebKit::PageLoadState::activeURL):
1598         (WebKit::PageLoadState::estimatedProgress):
1599         (WebKit::PageLoadState::setPendingAPIRequestURL):
1600         (WebKit::PageLoadState::clearPendingAPIRequestURL):
1601         (WebKit::PageLoadState::didStartProgress):
1602         (WebKit::PageLoadState::didChangeProgress):
1603         (WebKit::PageLoadState::didFinishProgress):
1604         * UIProcess/PageLoadState.h:
1605         Move m_estimatedProgress to the page load state and call the observers when it changes.
1606
1607         * UIProcess/WebPageProxy.cpp:
1608         (WebKit::WebPageProxy::WebPageProxy):
1609         (WebKit::WebPageProxy::estimatedProgress):
1610         (WebKit::WebPageProxy::didStartProgress):
1611         (WebKit::WebPageProxy::didChangeProgress):
1612         (WebKit::WebPageProxy::didFinishProgress):
1613         (WebKit::WebPageProxy::resetState):
1614         Call through to m_pageLoadState.
1615
1616         * UIProcess/WebPageProxy.h:
1617
1618 2013-12-04  Nick Diego Yamane  <nick.yamane@openbossa.org>
1619
1620         [WK2] Including SecItemShim.h should be guarded by ENABLE(SEC_ITEM_SHIM)
1621         https://bugs.webkit.org/show_bug.cgi?id=125255
1622
1623         Reviewed by Anders Carlsson.
1624
1625         * UIProcess/WebProcessProxy.cpp:
1626         * WebProcess/WebProcess.cpp:
1627
1628 2013-12-04  Oliver Hunt  <oliver@apple.com>
1629
1630         Refactor static getter function prototype to include thisValue in addition to the base object
1631         https://bugs.webkit.org/show_bug.cgi?id=124461
1632
1633         Reviewed by Geoffrey Garen.
1634
1635         Update the WK2 JSC usage to the new static getter API
1636
1637         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
1638         (WebKit::callMethod):
1639         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1640         (WebKit::callNPJSObject):
1641         (WebKit::constructWithConstructor):
1642         (WebKit::JSNPObject::propertyGetter):
1643         (WebKit::JSNPObject::methodGetter):
1644         * WebProcess/Plugins/Netscape/JSNPObject.h:
1645         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1646         (WebKit::NPRuntimeObjectMap::getOrCreateNPObject):
1647         (WebKit::NPRuntimeObjectMap::finalize):
1648         * WebProcess/WebPage/WebFrame.cpp:
1649         (WebKit::WebFrame::frameForContext):
1650         (WebKit::WebFrame::counterValue):
1651
1652 2013-12-04  Anders Carlsson  <andersca@apple.com>
1653
1654         Add a loading property to WKBrowsingContextController
1655         https://bugs.webkit.org/show_bug.cgi?id=125256
1656
1657         Reviewed by Dan Bernstein.
1658
1659         * UIProcess/API/Cocoa/WKBrowsingContextController.h:
1660         Add loading property.
1661
1662         * UIProcess/API/Cocoa/WKBrowsingContextConteroller.mm:
1663         Implement willChangeIsLoading and didChangeIsLoading and call the relevant KVO methods.
1664
1665         (-[WKBrowsingContextController isLoading]):
1666         Call through to the PageLoadState.
1667
1668         * UIProcess/PageLoadState.cpp:
1669         (WebKit::PageLoadState::reset):
1670         Use setState.
1671
1672         (WebKit::PageLoadState::isLoading):
1673         Call isLoadingState.
1674
1675         (WebKit::PageLoadState::didStartProvisionalLoad):
1676         Use setState.
1677
1678         (WebKit::PageLoadState::didFailProvisionalLoad):
1679         Use setState.
1680
1681         (WebKit::PageLoadState::didCommitLoad):
1682         Use setState.
1683
1684         (WebKit::PageLoadState::didFinishLoad):
1685         Use setState.
1686
1687         (WebKit::PageLoadState::didFailLoad):
1688         Use setState.
1689
1690         (WebKit::PageLoadState::isLoadingState):
1691         Helper function for determining whether a state is a loading state or not.
1692
1693         (WebKit::PageLoadState::setState):
1694         If setting the state will cause "isLoading" to change, call out to the observers.
1695
1696         * UIProcess/PageLoadState.h:
1697
1698 2013-12-04  Nick Diego Yamane  <nick.yamane@openbossa.org>
1699
1700         [EFL][GTK][WK2] Remove unnecessary reinterpret_casts when setting API clients
1701         https://bugs.webkit.org/show_bug.cgi?id=125231
1702
1703         Reviewed by Anders Carlsson.
1704
1705         After r159988, WKClients have to be instantiated with a specific
1706         version of that client and its Base field has to used when setting it.
1707         Eg:
1708
1709             WKFullScreenClientV0 wkClient = {
1710                 {
1711                     0, // version
1712                     this, // clientInfo
1713                 },
1714                     willEnterFullScreen,
1715                     willExitFullScreen
1716             };
1717             WKViewSetFullScreenClientGtk(this, &wkClient.base);
1718
1719         So we don't need the reinterpret_casts introduced in r160075.
1720
1721         * UIProcess/API/gtk/WebKitFullscreenClient.cpp:
1722         (attachFullScreenClientToView): reinterpret_cast<WKFooClientBase*>(&client) -> &client.base
1723         * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
1724         (attachRequestManagerClientToContext): Ditto.
1725         * UIProcess/API/gtk/WebKitTextChecker.cpp:
1726         (WebKitTextChecker::WebKitTextChecker): Ditto.
1727         * UIProcess/API/gtk/WebKitWebInspector.cpp:
1728         (webkitWebInspectorCreate): Ditto.
1729         * UIProcess/efl/BatteryProvider.cpp:
1730         (BatteryProvider::BatteryProvider): Ditto.
1731         * UIProcess/efl/NetworkInfoProvider.cpp:
1732         (NetworkInfoProvider::NetworkInfoProvider): Ditto.
1733         * UIProcess/efl/PageUIClientEfl.cpp:
1734         (WebKit::PageUIClientEfl::PageUIClientEfl): Ditto.
1735         * UIProcess/efl/RequestManagerClientEfl.cpp:
1736         (WebKit::RequestManagerClientEfl::RequestManagerClientEfl): Ditto.
1737         * UIProcess/efl/TextCheckerClientEfl.cpp:
1738         (TextCheckerClientEfl::TextCheckerClientEfl): Ditto.
1739         * UIProcess/efl/VibrationClientEfl.cpp:
1740         (VibrationClientEfl::VibrationClientEfl): Ditto.
1741         * UIProcess/efl/ViewClientEfl.cpp:
1742         (WebKit::ViewClientEfl::ViewClientEfl): Ditto.
1743
1744 2013-12-04  Nick Diego Yamane  <nick.yamane@openbossa.org>
1745
1746         [GTK][WK2] Fix build after r160104
1747         https://bugs.webkit.org/show_bug.cgi?id=125240
1748
1749         Reviewed by Anders Carlsson.
1750
1751         Using specific version of API client when instantiating them.
1752         Applied that same change to the following files:
1753
1754         * UIProcess/API/gtk/WebKitContextMenuClient.cpp:
1755         * UIProcess/API/gtk/WebKitCookieManager.cpp:
1756         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
1757         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
1758         * UIProcess/API/gtk/WebKitFindController.cpp:
1759         * UIProcess/API/gtk/WebKitFormClient.cpp:
1760         * UIProcess/API/gtk/WebKitGeolocationProvider.cpp:
1761         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
1762         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1763         * UIProcess/API/gtk/WebKitPolicyClient.cpp:
1764         * UIProcess/API/gtk/WebKitUIClient.cpp:
1765         * WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
1766         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1767
1768 2013-12-04  Dan Bernstein  <mitz@apple.com>
1769
1770         Fixed the 32-bit Mac build.
1771
1772         * Shared/mac/WebCoreArgumentCodersMac.mm:
1773         (CoreIPC::::encodePlatformData):
1774
1775 2013-12-04  Dan Bernstein  <mitz@apple.com>
1776
1777         [Mac] When NSError user info is missing NSErrorPeerCertificateChainKey, ArgumentCoder should extract it from NSURLErrorFailingURLPeerTrustErrorKey
1778         https://bugs.webkit.org/show_bug.cgi?id=125251
1779
1780         Reviewed by Anders Carlsson.
1781
1782         * Shared/mac/WebCoreArgumentCodersMac.mm:
1783         (CoreIPC::::encodePlatformData): If the user info doesn’t include
1784         NSURLErrorFailingURLPeerTrustErrorKey, copy the peer certificate chain from the peer trust
1785         under NSURLErrorFailingURLPeerTrustErrorKey. On the decoding side, it will appear under the
1786         NSURLErrorFailingURLPeerTrustErrorKey, because a trust object can’t be fully serialized.
1787
1788 2013-12-04  Dan Bernstein  <mitz@apple.com>
1789
1790         Replace USE(SECURITY_FRAMEWORK) with finer-grained defines
1791         https://bugs.webkit.org/show_bug.cgi?id=125242
1792
1793         Reviewed by Sam Weinig.
1794
1795         * Configurations/WebKit2.xcconfig: Removed “-framework Security” from the linker flags, now
1796         that it’s included in the target’s Link Binary with Libraries build phase.
1797         * NetworkProcess/NetworkProcess.cpp:
1798         (WebKit::NetworkProcess::initializeConnection): Changed to use ENABLE(SEC_ITEM_SHIM).
1799         * NetworkProcess/mac/NetworkProcessMac.mm:
1800         (WebKit::NetworkProcess::platformInitializeNetworkProcess): Ditto.
1801         * Shared/Authentication/AuthenticationManager.cpp: Changed to use HAVE(SEC_IDENTITY).
1802         * Shared/Authentication/mac/AuthenticationManager.mac.mm: Ditto.
1803         * Shared/cf/ArgumentCodersCF.cpp:
1804         (CoreIPC::typeFromCFTypeRef): Removed use of USE(SECURITY_FRAMEWORK) since all CF platforms
1805         use it. Added HAVE(SEC_KEYCHAIN) where needed.
1806         (CoreIPC::encode): Ditto.
1807         (CoreIPC::decode): Ditto.
1808         * Shared/cf/ArgumentCodersCF.h: Ditto.
1809         * Shared/mac/SecItemShim.cpp: Chanegd to use ENABLE(SEC_ITEM_SHIM).
1810         * Shared/mac/SecItemShim.h: Ditto.
1811         * Shared/mac/SecItemShim.messages.in: Ditto.
1812         * UIProcess/Network/NetworkProcessProxy.cpp:
1813         (WebKit::NetworkProcessProxy::connectionWillOpen): Ditto.
1814         * UIProcess/WebProcessProxy.cpp:
1815         (WebKit::WebProcessProxy::connectionWillOpen): Ditto.
1816         * UIProcess/mac/SecItemShimProxy.cpp: Ditto.
1817         * UIProcess/mac/SecItemShimProxy.h: Ditto,
1818         * UIProcess/mac/SecItemShimProxy.messages.in: Ditto.
1819         * WebKit2.xcodeproj/project.pbxproj: Link Security.framework unconditionally.
1820         * WebProcess/WebProcess.cpp:
1821         (WebKit::WebProcess::initializeConnection): Changed to use ENABLE(SEC_ITEM_SHIM).
1822         * WebProcess/mac/WebProcessMac.mm:
1823         (WebKit::WebProcess::platformInitializeProcess): Ditto.
1824         * config.h: Defined ENABLE_SEC_ITEM_SHIM.
1825
1826 2013-12-04  Csaba Osztrogonác  <ossy@webkit.org>
1827
1828         [EFL][WK2] Buildfix after r160104
1829         https://bugs.webkit.org/show_bug.cgi?id=125233
1830
1831         Reviewed by Anders Carlsson.
1832
1833         * UIProcess/API/efl/ewk_cookie_manager.cpp:
1834         (EwkCookieManager::EwkCookieManager):
1835         * UIProcess/API/efl/ewk_favicon_database.cpp:
1836         (EwkFaviconDatabase::EwkFaviconDatabase):
1837         * UIProcess/efl/ContextHistoryClientEfl.cpp:
1838         (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
1839         * UIProcess/efl/ContextMenuClientEfl.cpp:
1840         (ContextMenuClientEfl::ContextMenuClientEfl):
1841         * UIProcess/efl/DownloadManagerEfl.cpp:
1842         (WebKit::DownloadManagerEfl::DownloadManagerEfl):
1843         * UIProcess/efl/FindClientEfl.cpp:
1844         (WebKit::FindClientEfl::FindClientEfl):
1845         * UIProcess/efl/FormClientEfl.cpp:
1846         (WebKit::FormClientEfl::FormClientEfl):
1847         * UIProcess/efl/PageLoadClientEfl.cpp:
1848         (WebKit::PageLoadClientEfl::PageLoadClientEfl):
1849         * UIProcess/efl/PagePolicyClientEfl.cpp:
1850         (WebKit::PagePolicyClientEfl::PagePolicyClientEfl):
1851         * UIProcess/efl/PageUIClientEfl.cpp:
1852         (WebKit::PageUIClientEfl::PageUIClientEfl):
1853
1854 2013-12-03  Anders Carlsson  <andersca@apple.com>
1855
1856         Deprecate all unversioned client structs in favor of having explicit versioned structs
1857         https://bugs.webkit.org/show_bug.cgi?id=125203
1858
1859         Reviewed by Dan Bernstein.
1860
1861         Deprecate all the "current version" enums and unversioned client structs.
1862
1863         * Shared/API/c/WKConnectionRef.cpp:
1864         (WKConnectionSetConnectionClient):
1865         * Shared/API/c/WKConnectionRef.h:
1866         * UIProcess/API/C/WKContext.cpp:
1867         (WKContextSetClient):
1868         (WKContextSetInjectedBundleClient):
1869         (WKContextSetHistoryClient):
1870         (WKContextSetDownloadClient):
1871         (WKContextSetConnectionClient):
1872         * UIProcess/API/C/WKContext.h:
1873         * UIProcess/API/C/WKContextConnectionClient.h:
1874         * UIProcess/API/C/WKContextDownloadClient.h:
1875         * UIProcess/API/C/WKContextHistoryClient.h:
1876         * UIProcess/API/C/WKContextInjectedBundleClient.h:
1877         * UIProcess/API/C/WKCookieManager.cpp:
1878         (WKCookieManagerSetClient):
1879         * UIProcess/API/C/WKCookieManager.h:
1880         * UIProcess/API/C/WKDatabaseManager.cpp:
1881         (WKDatabaseManagerSetClient):
1882         * UIProcess/API/C/WKDatabaseManager.h:
1883         * UIProcess/API/C/WKGeolocationManager.cpp:
1884         (WKGeolocationManagerSetProvider):
1885         * UIProcess/API/C/WKGeolocationManager.h:
1886         * UIProcess/API/C/WKIconDatabase.cpp:
1887         (WKIconDatabaseSetIconDatabaseClient):
1888         * UIProcess/API/C/WKIconDatabase.h:
1889         * UIProcess/API/C/WKOriginDataManager.cpp:
1890         (WKOriginDataManagerSetChangeClient):
1891         * UIProcess/API/C/WKOriginDataManager.h:
1892         * UIProcess/API/C/WKPage.cpp:
1893         (WKPageSetPageContextMenuClient):
1894         (WKPageSetPageFindClient):
1895         (WKPageSetPageFindMatchesClient):
1896         (WKPageSetPageFormClient):
1897         (WKPageSetPageLoaderClient):
1898         (WKPageSetPagePolicyClient):
1899         (WKPageSetPageUIClient):
1900         * UIProcess/API/C/WKPage.h:
1901         * UIProcess/API/C/WKPageContextMenuClient.h:
1902         * UIProcess/API/C/WKPageFindClient.h:
1903         * UIProcess/API/C/WKPageFindMatchesClient.h:
1904         * UIProcess/API/C/WKPageFormClient.h:
1905         * UIProcess/API/C/WKPageLoaderClient.h:
1906         * UIProcess/API/C/WKPagePolicyClient.h:
1907         * UIProcess/API/C/WKPageUIClient.h:
1908         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1909         (setUpPagePolicyClient):
1910         * UIProcess/API/Cocoa/WKConnection.mm:
1911         (setUpClient):
1912         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1913         (setUpConnectionClient):
1914         (setUpInectedBundleClient):
1915         (setUpHistoryClient):
1916         * UIProcess/WebInspectorProxy.cpp:
1917         (WebKit::WebInspectorProxy::createInspectorPage):
1918         * UIProcess/WebUIClient.cpp:
1919         (WebKit::WebUIClient::createNewPage):
1920         (WebKit::WebUIClient::mouseDidMoveOverElement):
1921         * UIProcess/mac/WebInspectorProxyMac.mm:
1922         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1923         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1924         (WKBundleSetClient):
1925         * WebProcess/InjectedBundle/API/c/WKBundle.h:
1926         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1927         (WKBundlePageSetContextMenuClient):
1928         (WKBundlePageSetEditorClient):
1929         (WKBundlePageSetFormClient):
1930         (WKBundlePageSetPageLoaderClient):
1931         (WKBundlePageSetResourceLoadClient):
1932         (WKBundlePageSetPolicyClient):
1933         (WKBundlePageSetUIClient):
1934         (WKBundlePageSetFullScreenClient):
1935         (WKBundlePageSetDiagnosticLoggingClient):
1936         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1937         * WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h:
1938         * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
1939         * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
1940         * WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h:
1941         * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
1942         * WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h:
1943         * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
1944         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
1945         (WKBundlePageOverlayCreate):
1946         (WKBundlePageOverlaySetAccessibilityClient):
1947         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
1948         * WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h:
1949         * WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h:
1950         * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
1951         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.h:
1952         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
1953         (WKBundlePageBannerCreateBannerWithCALayer):
1954         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
1955         (setUpBundleClient):
1956
1957 2013-12-04  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
1958
1959         Fix build warnings in DownloadAuthenticationClient.cpp
1960         https://bugs.webkit.org/show_bug.cgi?id=124920
1961
1962         Reviewed by Alexey Proskuryakov.
1963
1964         Fix unused parameter warnings in DownloadAuthenticationClient.cpp
1965
1966         * Shared/Downloads/DownloadAuthenticationClient.cpp:
1967         (WebKit::DownloadAuthenticationClient::receivedCredential):
1968         (WebKit::DownloadAuthenticationClient::receivedRequestToContinueWithoutCredential):
1969         (WebKit::DownloadAuthenticationClient::receivedCancellation):
1970
1971 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
1972
1973         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
1974         https://bugs.webkit.org/show_bug.cgi?id=124613
1975
1976         Reviewed by Timothy Hatcher.
1977
1978         * WebProcess/WebCoreSupport/WebInspectorClient.h:
1979         * WebProcess/WebPage/WebInspector.cpp:
1980         Updated includes.
1981
1982         * WebProcess/WebPage/WebPage.cpp:
1983         (WebKit::WebPage::WebPage):
1984         * WebProcess/com.apple.WebProcess.sb.in:
1985         Allow the WebProcess to access the "com.apple.webinspector" named
1986         XPC service to expose its WebCore::Page's to remote debuggers.
1987
1988 2013-12-04  David Farler  <dfarler@apple.com>
1989
1990         Use All-iOS target when building WK2 on iOS
1991         <rdar://problem/15574494>
1992
1993         Reviewed by David Kilzer.
1994
1995         * Makefile:
1996         Add -target All-iOS to OTHER_OPTIONS if iphoneos or iphonesimulator
1997         is in the SDKROOT make option.
1998
1999 2013-12-04  Nick Diego Yamane  <nick.yamane@openbossa.org>
2000
2001         [EFL][WK2] Fix build after API::Client changes
2002         https://bugs.webkit.org/show_bug.cgi?id=125206
2003
2004         Reviewed by Csaba Osztrogonác.
2005
2006         * CMakeLists.txt:
2007         * GNUmakefile.list.am:
2008         * Shared/API/c/WKDeclarationSpecifiers.h:
2009         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
2010         (WKViewSetViewClient):
2011         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
2012         * UIProcess/API/C/WKBatteryManager.cpp:
2013         (WKBatteryManagerSetProvider):
2014         * UIProcess/API/C/WKBatteryManager.h:
2015         * UIProcess/API/C/WKNetworkInfoManager.cpp:
2016         (WKNetworkInfoManagerSetProvider):
2017         * UIProcess/API/C/WKNetworkInfoManager.h:
2018         * UIProcess/API/C/WKTextChecker.cpp:
2019         (WKTextCheckerSetClient):
2020         * UIProcess/API/C/WKTextChecker.h:
2021         * UIProcess/API/C/WKVibration.cpp:
2022         (WKVibrationSetProvider):
2023         * UIProcess/API/C/WKVibration.h:
2024         * UIProcess/API/C/efl/WKPageEfl.cpp:
2025         (WKPageSetUIPopupMenuClient):
2026         * UIProcess/API/C/efl/WKPageEfl.h:
2027         * UIProcess/API/C/gtk/WKFullScreenClientGtk.cpp:
2028         (WKViewSetFullScreenClientGtk):
2029         * UIProcess/API/C/gtk/WKFullScreenClientGtk.h:
2030         * UIProcess/API/C/gtk/WKInspectorClientGtk.cpp:
2031         (WKInspectorSetInspectorClientGtk):
2032         * UIProcess/API/C/gtk/WKInspectorClientGtk.h:
2033         * UIProcess/API/C/soup/WKSoupRequestManager.cpp:
2034         (WKSoupRequestManagerSetClient):
2035         * UIProcess/API/C/soup/WKSoupRequestManager.h:
2036         * UIProcess/API/gtk/WebKitFullscreenClient.cpp:
2037         (attachFullScreenClientToView):
2038         * UIProcess/API/gtk/WebKitRequestManagerClient.cpp:
2039         (attachRequestManagerClientToContext):
2040         * UIProcess/API/gtk/WebKitTextChecker.cpp:
2041         (WebKitTextChecker::WebKitTextChecker):
2042         * UIProcess/API/gtk/WebKitWebInspector.cpp:
2043         (webkitWebInspectorCreate):
2044         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2045         (webkitWebViewBaseInitializeFullScreenClient):
2046         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
2047         * UIProcess/CoordinatedGraphics/WebView.cpp:
2048         (WebKit::WebView::initializeClient):
2049         * UIProcess/CoordinatedGraphics/WebView.h:
2050         * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
2051         (WebKit::WebViewClient::viewNeedsDisplay):
2052         (WebKit::WebViewClient::didChangeContentsSize):
2053         (WebKit::WebViewClient::webProcessCrashed):
2054         (WebKit::WebViewClient::webProcessDidRelaunch):
2055         (WebKit::WebViewClient::didChangeContentsPosition):
2056         (WebKit::WebViewClient::didRenderFrame):
2057         (WebKit::WebViewClient::didCompletePageTransition):
2058         (WebKit::WebViewClient::didChangeViewportAttributes):
2059         (WebKit::WebViewClient::didChangeTooltip):
2060         (WebKit::WebViewClient::didFindZoomableArea):
2061         (WebKit::WebViewClient::doneWithTouchEvent):
2062         * UIProcess/CoordinatedGraphics/WebViewClient.h:
2063         * UIProcess/WebBatteryManagerProxy.cpp:
2064         (WebKit::WebBatteryManagerProxy::initializeProvider):
2065         * UIProcess/WebBatteryManagerProxy.h:
2066         * UIProcess/WebBatteryProvider.cpp:
2067         (WebKit::WebBatteryProvider::startUpdating):
2068         (WebKit::WebBatteryProvider::stopUpdating):
2069         * UIProcess/WebBatteryProvider.h:
2070         * UIProcess/WebInspectorProxy.h:
2071         * UIProcess/WebNetworkInfoManagerProxy.cpp:
2072         (WebKit::WebNetworkInfoManagerProxy::initializeProvider):
2073         * UIProcess/WebNetworkInfoManagerProxy.h:
2074         * UIProcess/WebNetworkInfoProvider.cpp:
2075         (WebKit::WebNetworkInfoProvider::startUpdating):
2076         (WebKit::WebNetworkInfoProvider::stopUpdating):
2077         (WebKit::WebNetworkInfoProvider::bandwidth):
2078         (WebKit::WebNetworkInfoProvider::isMetered):
2079         * UIProcess/WebNetworkInfoProvider.h:
2080         * UIProcess/WebPageProxy.h:
2081         * UIProcess/WebTextChecker.cpp:
2082         (WebKit::WebTextChecker::setClient):
2083         * UIProcess/WebTextChecker.h:
2084         * UIProcess/WebTextCheckerClient.cpp:
2085         (WebKit::WebTextCheckerClient::continuousSpellCheckingAllowed):
2086         (WebKit::WebTextCheckerClient::continuousSpellCheckingEnabled):
2087         (WebKit::WebTextCheckerClient::setContinuousSpellCheckingEnabled):
2088         (WebKit::WebTextCheckerClient::grammarCheckingEnabled):
2089         (WebKit::WebTextCheckerClient::setGrammarCheckingEnabled):
2090         (WebKit::WebTextCheckerClient::uniqueSpellDocumentTag):
2091         (WebKit::WebTextCheckerClient::closeSpellDocumentWithTag):
2092         (WebKit::WebTextCheckerClient::checkSpellingOfString):
2093         (WebKit::WebTextCheckerClient::checkGrammarOfString):
2094         (WebKit::WebTextCheckerClient::spellingUIIsShowing):
2095         (WebKit::WebTextCheckerClient::toggleSpellingUIIsShowing):
2096         (WebKit::WebTextCheckerClient::updateSpellingUIWithMisspelledWord):
2097         (WebKit::WebTextCheckerClient::updateSpellingUIWithGrammarString):
2098         (WebKit::WebTextCheckerClient::guessesForWord):
2099         (WebKit::WebTextCheckerClient::learnWord):
2100         (WebKit::WebTextCheckerClient::ignoreWord):
2101         * UIProcess/WebTextCheckerClient.h:
2102         * UIProcess/WebVibrationProvider.cpp:
2103         (WebKit::WebVibrationProvider::vibrate):
2104         (WebKit::WebVibrationProvider::cancelVibration):
2105         * UIProcess/WebVibrationProvider.h:
2106         * UIProcess/WebVibrationProxy.cpp:
2107         (WebKit::WebVibrationProxy::initializeProvider):
2108         * UIProcess/WebVibrationProxy.h:
2109         * UIProcess/efl/BatteryProvider.cpp:
2110         (BatteryProvider::BatteryProvider):
2111         * UIProcess/efl/NetworkInfoProvider.cpp:
2112         (NetworkInfoProvider::NetworkInfoProvider):
2113         * UIProcess/efl/PageUIClientEfl.cpp:
2114         (WebKit::PageUIClientEfl::PageUIClientEfl):
2115         * UIProcess/efl/RequestManagerClientEfl.cpp:
2116         (WebKit::RequestManagerClientEfl::RequestManagerClientEfl):
2117         * UIProcess/efl/TextCheckerClientEfl.cpp:
2118         (TextCheckerClientEfl::TextCheckerClientEfl):
2119         * UIProcess/efl/VibrationClientEfl.cpp:
2120         (VibrationClientEfl::VibrationClientEfl):
2121         * UIProcess/efl/ViewClientEfl.cpp:
2122         (WebKit::ViewClientEfl::ViewClientEfl):
2123         * UIProcess/efl/WebPageProxyEfl.cpp:
2124         (WebKit::WebPageProxy::initializeUIPopupMenuClient):
2125         * UIProcess/efl/WebUIPopupMenuClient.cpp:
2126         (WebUIPopupMenuClient::showPopupMenu):
2127         (WebUIPopupMenuClient::hidePopupMenu):
2128         * UIProcess/efl/WebUIPopupMenuClient.h:
2129         * UIProcess/gtk/WebFullScreenClientGtk.cpp:
2130         (WebKit::WebFullScreenClientGtk::willEnterFullScreen):
2131         (WebKit::WebFullScreenClientGtk::willExitFullScreen):
2132         * UIProcess/gtk/WebFullScreenClientGtk.h:
2133         * UIProcess/gtk/WebInspectorClientGtk.cpp:
2134         (WebKit::WebInspectorClientGtk::openWindow):
2135         (WebKit::WebInspectorClientGtk::didClose):
2136         (WebKit::WebInspectorClientGtk::bringToFront):
2137         (WebKit::WebInspectorClientGtk::inspectedURLChanged):
2138         (WebKit::WebInspectorClientGtk::attach):
2139         (WebKit::WebInspectorClientGtk::detach):
2140         (WebKit::WebInspectorClientGtk::didChangeAttachedHeight):
2141         * UIProcess/gtk/WebInspectorClientGtk.h:
2142         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
2143         (WebKit::WebInspectorProxy::initializeInspectorClientGtk):
2144         * UIProcess/soup/WebSoupRequestManagerClient.cpp:
2145         (WebKit::WebSoupRequestManagerClient::didReceiveURIRequest):
2146         (WebKit::WebSoupRequestManagerClient::didFailToLoadURIRequest):
2147         * UIProcess/soup/WebSoupRequestManagerClient.h:
2148         * UIProcess/soup/WebSoupRequestManagerProxy.cpp:
2149         (WebKit::WebSoupRequestManagerProxy::initializeClient):
2150         * UIProcess/soup/WebSoupRequestManagerProxy.h:
2151
2152 2013-12-03  Simon Fraser  <simon.fraser@apple.com>
2153
2154         WKContentView should just use InitializeWebKit2()
2155         https://bugs.webkit.org/show_bug.cgi?id=125209
2156
2157         Reviewed by Benjamin Poulain.
2158         
2159         Rather than calling an motley selection of init fuctions,
2160         WKContentView should use the one true init function, InitializeWebKit2().
2161
2162         * Shared/WebKit2Initialize.cpp: On iOS, we need to call InitWebCoreThreadSystemInterface().
2163         (WebKit::InitializeWebKit2):
2164         * UIProcess/API/ios/WKContentView.mm: Remove various unused #imports.
2165         (-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
2166
2167 2013-12-03  Anders Carlsson  <andersca@apple.com>
2168
2169         PageOverlayClientImpl should be a proper API::Client
2170         https://bugs.webkit.org/show_bug.cgi?id=125199
2171
2172         Reviewed by Tim Horton.
2173
2174         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2175         (PageOverlayClientImpl::PageOverlayClientImpl):
2176         (PageOverlayClientImpl::setAccessibilityClient):
2177         (PageOverlayClientImpl::willMoveToWebPage):
2178         (PageOverlayClientImpl::didMoveToWebPage):
2179         (PageOverlayClientImpl::drawRect):
2180         (PageOverlayClientImpl::mouseEvent):
2181         (PageOverlayClientImpl::copyAccessibilityAttributeValue):
2182         (PageOverlayClientImpl::copyAccessibilityAttributeNames):
2183         (WKBundlePageOverlayCreate):
2184         (WKBundlePageOverlaySetAccessibilityClient):
2185
2186 2013-12-03  Anders Carlsson  <andersca@apple.com>
2187
2188         Initialize the PageBannerClientImpl API::Client
2189         https://bugs.webkit.org/show_bug.cgi?id=125198
2190
2191         Reviewed by Tim Horton.
2192
2193         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
2194         (PageBannerClientImpl::PageBannerClientImpl):
2195
2196 2013-12-03  Tim Horton  <timothy_horton@apple.com>
2197
2198         Remote Layer Tree: Force repaint
2199         https://bugs.webkit.org/show_bug.cgi?id=125189
2200         <rdar://problem/15541789>
2201
2202         Reviewed by Anders Carlsson.
2203
2204         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
2205         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
2206         (WebKit::RemoteLayerTreeContext::forceRepaint):
2207         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2208         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2209         (WebKit::RemoteLayerTreeDrawingArea::forceRepaint):
2210         Implement WebProcess-synchronous force repaint.
2211         We don't need the async variant because it is only needed
2212         to synchronize with the WebProcess-side threaded scrolling
2213         tree, which is not a component of the remote layer tree model.
2214         The UI process will not handle the callback until after
2215         RemoteLayerTreeHost::commit is complete, ensuring that the commit
2216         is actually done.
2217
2218 2013-12-03  Simon Fraser  <simon.fraser@apple.com>
2219
2220         Remove some iOS-related documentScale code
2221         https://bugs.webkit.org/show_bug.cgi?id=125194
2222
2223         Reviewed by Enrica Casucci.
2224         
2225         Upstream bits of removal of Frame::documentScale on iOS.
2226
2227         * WebProcess/WebPage/WebPage.cpp:
2228         (WebKit::WebPage::updatePreferences): Whitespace.
2229         * WebProcess/WebPage/ios/WebPageIOS.mm:
2230         (WebKit::WebPage::didFinishZooming): Don't call setDocumentScale().
2231         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Remove minimumDocumentScale().
2232         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm: Ditto.
2233         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea): We delegate page scaling on iOS.
2234         (WebKit::RemoteLayerTreeDrawingArea::setDeviceScaleFactor):
2235
2236 2013-12-03  Anders Carlsson  <andersca@apple.com>
2237
2238         PageBannerClientImpl should be an API::Client
2239         https://bugs.webkit.org/show_bug.cgi?id=125190
2240
2241         Reviewed by Tim Horton.
2242
2243         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
2244         (PageBannerClientImpl::PageBannerClientImpl):
2245         (PageBannerClientImpl::~PageBannerClientImpl):
2246         (WKBundlePageBannerCreateBannerWithCALayer):
2247
2248 2013-12-03  Dan Bernstein  <mitz@apple.com>
2249
2250         [Cocoa] Give two load delegate methods more conventional names
2251         https://bugs.webkit.org/show_bug.cgi?id=125183
2252
2253         Reviewed by Anders Carlsson.
2254
2255         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
2256         (didFailProvisionalLoadWithErrorForFrame): Updated for rename.
2257         (didFailLoadWithErrorForFrame): Ditto.
2258         * UIProcess/API/Cocoa/WKBrowsingContextLoadDelegate.h: Renamed
2259         -browsingContextControllerDidFailProvisionalLoad:withError: to
2260         -browsingContextController:didFailProvisionalLoadWithError: and
2261         -browsingContextControllerDidFailLoad:withError: to
2262         -browsingContextController:didFailLoadWithError:.
2263
2264 2013-12-03  Anders Carlsson  <andersca@apple.com>
2265
2266         Deprecate WKNotificationProvider
2267         https://bugs.webkit.org/show_bug.cgi?id=125178
2268
2269         Reviewed by Sam Weinig.
2270
2271         * Shared/API/c/WKDeclarationSpecifiers.h:
2272         Add WK_DEPRECATED and WK_ENUM_DEPRECATED macros so we can things as deprecated.
2273
2274         * UIProcess/API/C/WKNotificationManager.cpp:
2275         (WKNotificationManagerSetProvider):
2276         * UIProcess/API/C/WKNotificationManager.h:
2277         WKNotificationManagerSetProvider now takes a WKNotificationProviderBase.
2278
2279         * UIProcess/API/C/WKNotificationProvider.h:
2280         Deprecate WKNotificationProvider and kWKNotificationProviderCurrentVersion.
2281
2282 2013-12-03  Brady Eidson  <beidson@apple.com>
2283
2284         Indexed Database work should be done on a non-main queue
2285         https://bugs.webkit.org/show_bug.cgi?id=125127
2286
2287         Reviewed by Darin Adler.
2288
2289         Add a non-main WorkQueue to the DatabaseProcess:
2290         * DatabaseProcess/DatabaseProcess.cpp:
2291         (WebKit::DatabaseProcess::DatabaseProcess):
2292         (WebKit::DatabaseProcess::queue):
2293         * DatabaseProcess/DatabaseProcess.h:
2294
2295         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2296         (WebKit::UniqueIDBDatabase::UniqueIDBDatabase):
2297         (WebKit::UniqueIDBDatabase::enqueueDatabaseQueueRequest): Add an AsyncRequest to the deque then schedule performing
2298           the requests on the background WorkQueue.
2299         (WebKit::UniqueIDBDatabase::processDatabaseRequestQueue): Processes all enqueued database requests.
2300         (WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): Renamed from getIDBDatabaseMetadata().
2301         (WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadataInternal): For doing i/o on a background queue/thread.
2302         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2303
2304         Add a creator that takes the abort handler as an argument, and rename requestedCompleted()
2305         to completeRequest(). This makes more sense in more situations:
2306         * Shared/AsyncRequest.cpp:
2307         (WebKit::AsyncRequest::AsyncRequest):
2308         (WebKit::AsyncRequest::setAbortHandler):
2309         * Shared/AsyncRequest.h:
2310         (WebKit::AsyncRequest::completeRequest):
2311
2312         Update for the AsyncRequest rename:
2313         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2314         (WebKit::WebIDBServerConnection::didGetOrEstablishIDBDatabaseMetadata):
2315
2316         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
2317         (WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata):
2318
2319 2013-12-03  Tim Horton  <timothy_horton@apple.com>
2320
2321         Remove TiledCoreAnimationDrawingArea(Proxy)IOS
2322         https://bugs.webkit.org/show_bug.cgi?id=125176
2323
2324         Reviewed by Simon Fraser.
2325
2326         Remove unused code.
2327
2328         * UIProcess/API/ios/WKContentView.mm:
2329         * UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.h: Removed.
2330         * UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm: Removed.
2331         * Shared/DrawingAreaInfo.h:
2332         * WebProcess/WebPage/DrawingArea.cpp:
2333         (WebKit::DrawingArea::create):
2334         * WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.h: Removed.
2335         * WebProcess/WebPage/ios/TiledCoreAnimationDrawingAreaIOS.mm: Removed.
2336
2337 2013-12-03  Anders Carlsson  <andersca@apple.com>
2338
2339         Remove old WebKit::APIClient cruft
2340         https://bugs.webkit.org/show_bug.cgi?id=125173
2341
2342         Reviewed by Antti Koivisto.
2343
2344         * Shared/APIClient.h:
2345         * Shared/APIClientTraits.cpp: Removed.
2346         * Shared/APIClientTraits.h: Removed.
2347         * WebKit2.xcodeproj/project.pbxproj:
2348         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2349
2350 2013-12-03  Enrica Casucci  <enrica@apple.com>
2351
2352         Build fix for iOS.
2353
2354         Reviewed by Tim Horton.
2355
2356         * Shared/WebCoreArgumentCoders.cpp: Added missing header.
2357
2358 2013-12-03  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
2359
2360         Remove WTF:: prefix from types in messages.in files.
2361         https://bugs.webkit.org/show_bug.cgi?id=124578
2362
2363         Reviewed by Anders Carlsson.
2364
2365         The WTF:: prefixes are removed from the messages.in files, and the
2366         messages.py now handles unprefixed non-template WTF classes (only
2367         the WTF::String class is used currently). Tests are also updated.
2368
2369         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2370         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
2371         * NetworkProcess/NetworkProcess.messages.in:
2372         * PluginProcess/PluginControllerProxy.messages.in:
2373         * PluginProcess/PluginProcess.messages.in:
2374         * Scripts/webkit2/messages.py:
2375         (forward_declarations_and_headers):
2376         (class_template_headers):
2377         (argument_coder_headers_for_type):
2378         * Scripts/webkit2/messages_unittest.py:
2379         (std):
2380         * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in:
2381         * UIProcess/Downloads/DownloadProxy.messages.in:
2382         * UIProcess/Plugins/PluginProcessProxy.messages.in:
2383         * UIProcess/Storage/StorageManager.messages.in:
2384         * UIProcess/WebContext.messages.in:
2385         * UIProcess/WebCookieManagerProxy.messages.in:
2386         * UIProcess/WebDatabaseManagerProxy.messages.in:
2387         * UIProcess/WebIconDatabase.messages.in:
2388         * UIProcess/WebInspectorProxy.messages.in:
2389         * UIProcess/WebMediaCacheManagerProxy.messages.in:
2390         * UIProcess/WebPageProxy.messages.in:
2391         * UIProcess/WebProcessProxy.messages.in:
2392         * WebProcess/Cookies/WebCookieManager.messages.in:
2393         * WebProcess/Geolocation/WebGeolocationManager.messages.in:
2394         * WebProcess/MediaCache/WebMediaCacheManager.messages.in:
2395         * WebProcess/Notifications/WebNotificationManager.messages.in:
2396         * WebProcess/Plugins/PluginProcessConnection.messages.in:
2397         * WebProcess/Plugins/PluginProxy.messages.in:
2398         * WebProcess/Storage/StorageAreaMap.messages.in:
2399         * WebProcess/WebCoreSupport/WebDatabaseManager.messages.in:
2400         * WebProcess/WebPage/WebInspector.messages.in:
2401         * WebProcess/WebPage/WebPage.messages.in:
2402         * WebProcess/WebProcess.messages.in:
2403         * WebProcess/soup/WebSoupRequestManager.messages.in:
2404
2405 2013-12-03  Anders Carlsson  <andersca@apple.com>
2406
2407         Tweak build fixes.
2408
2409         * Shared/APIClient.h:
2410
2411 2013-12-03  Laszlo Vidacs  <lac@inf.u-szeged.hu>
2412
2413         Fix EFL build error in WK2 (159965)
2414         https://bugs.webkit.org/show_bug.cgi?id=125153
2415
2416         Reviewed by Darin Adler.
2417
2418         * Shared/APIClient.h:
2419
2420 2013-12-03  Seokju Kwon  <seokju@webkit.org>
2421
2422         Debug build fix : Add '<algorithm>' for 'std::is_sorted' after r159965.
2423         https://bugs.webkit.org/show_bug.cgi?id=125140
2424
2425         Reviewed by Csaba Osztrogonác.
2426
2427         * Shared/APIClient.h:
2428
2429 2013-12-03  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
2430
2431         Fix EFL build with INPUT_TYPE_COLOR disabled.
2432         https://bugs.webkit.org/show_bug.cgi?id=125065
2433
2434         Reviewed by Zoltan Herczeg.
2435
2436         * UIProcess/API/efl/ewk_color_picker.cpp:
2437
2438 2013-12-03  Dariusz Frankiewicz  <d.frankiewic@samsung.com>
2439
2440         Add spatial navigation API in EFL port
2441         https://bugs.webkit.org/show_bug.cgi?id=125002
2442
2443         Reviewed by Gyuyoung Kim.
2444
2445         API enables capability of turning on and off spatial navigation
2446         and check is state.
2447         Spatial navigation is the ability to navigate between focusable
2448         elements by keyboard.
2449
2450         * UIProcess/API/efl/ewk_settings.cpp:
2451         (ewk_settings_spatial_navigation_enabled_set):
2452         (ewk_settings_spatial_navigation_enabled_get):
2453         * UIProcess/API/efl/ewk_settings.h:
2454         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2455         (TEST_F):
2456
2457 2013-12-02  Zan Dobersek  <zdobersek@igalia.com>
2458
2459         Build fixes for GCC-using ports after r159965 and later
2460         https://bugs.webkit.org/show_bug.cgi?id=125136
2461
2462         GCC doesn't process API::ClientTraits template instantiations unless they're done
2463         inside the API namespace.
2464
2465         * Shared/WebConnectionClient.h:
2466         * UIProcess/Notifications/WebNotificationProvider.h:
2467         * UIProcess/WebContextClient.h:
2468         * UIProcess/WebContextConnectionClient.h:
2469         * UIProcess/WebContextInjectedBundleClient.h:
2470         * UIProcess/WebCookieManagerProxyClient.h:
2471         * UIProcess/WebDatabaseManagerProxyClient.h:
2472         * UIProcess/WebDownloadClient.h:
2473         * UIProcess/WebFindClient.h:
2474         * UIProcess/WebFormClient.h:
2475         * UIProcess/WebGeolocationProvider.h:
2476         * UIProcess/WebHistoryClient.h:
2477         * UIProcess/WebIconDatabaseClient.h:
2478         * UIProcess/WebLoaderClient.h:
2479         * UIProcess/WebOriginDataManagerProxyChangeClient.h:
2480         * UIProcess/WebPageContextMenuClient.h:
2481         * UIProcess/WebPolicyClient.h:
2482         * UIProcess/WebUIClient.h:
2483         * WebProcess/InjectedBundle/InjectedBundleClient.h:
2484         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
2485         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
2486         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
2487         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
2488         * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
2489         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2490         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
2491         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
2492         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
2493
2494 2013-12-02  Dan Bernstein  <mitz@apple.com>
2495
2496         Build fix.
2497
2498         * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
2499         (-[WKGeolocationProviderIOS initWithContext:]):
2500
2501 2013-12-02  Martin Hock  <mhock@apple.com>
2502
2503         Add ability to iterate over API::Array
2504         https://bugs.webkit.org/show_bug.cgi?id=124533
2505
2506         Reviewed by Sam Weinig.
2507
2508         * GNUmakefile.list.am:
2509         * Shared/APIArray.h:
2510         * Shared/FilterIterator.h:
2511         * Shared/IteratorPair.h:
2512         * WebKit2.xcodeproj/project.pbxproj:
2513         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2514         (WebKit::toStringVector):
2515         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
2516         (WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
2517
2518 2013-12-02  Dan Bernstein  <mitz@apple.com>
2519
2520         [Cocoa] WebProtectionSpace has a generic wrapper
2521         https://bugs.webkit.org/show_bug.cgi?id=125125
2522
2523         Reviewed by Anders Carlsson.
2524
2525         Added WKNSURLProtectionSpace.
2526
2527         * Shared/Cocoa/APIObject.mm:
2528         (API::Object::newObject): Allocate a WKNSURLProtectionSpace if the object is a
2529         WebProtectionSpace.
2530         * Shared/Cocoa/WKNSURLProtectionSpace.h: Added.
2531         (WebKit::wrapper): Added. Returns a WebProtecitonSpace’s wrapper as an NSURLProtectionSpace.
2532         * Shared/Cocoa/WKNSURLProtectionSpace.mm: Added.
2533         (-[WKNSURLProtectionSpace copyWithZone:]): Retains self.
2534         * UIProcess/Authentication/WebProtectionSpace.h:
2535         (WebKit::WebProtectionSpace::protectionSpace): Added an accessor for the
2536         WebCore::ProtectionSpace.
2537         * WebKit2.xcodeproj/project.pbxproj: Added references to new files.
2538
2539 2013-12-02  Anders Carlsson  <andersca@apple.com>
2540
2541         Replace uses of WebKit::APIClient with API::Client
2542         https://bugs.webkit.org/show_bug.cgi?id=125129
2543
2544         Reviewed by Andreas Kling.
2545
2546         * Shared/API/c/WKConnectionRef.cpp:
2547         (WKConnectionSetConnectionClient):
2548         * Shared/WebConnection.cpp:
2549         (WebKit::WebConnection::initializeConnectionClient):
2550         * Shared/WebConnection.h:
2551         * Shared/WebConnectionClient.cpp:
2552         (WebKit::WebConnectionClient::didReceiveMessage):
2553         (WebKit::WebConnectionClient::didClose):
2554         * Shared/WebConnectionClient.h:
2555         * UIProcess/API/C/WKContext.cpp:
2556         (WKContextSetClient):
2557         (WKContextSetInjectedBundleClient):
2558         (WKContextSetHistoryClient):
2559         (WKContextSetDownloadClient):
2560         (WKContextSetConnectionClient):
2561         * UIProcess/API/C/WKCookieManager.cpp:
2562         (WKCookieManagerSetClient):
2563         * UIProcess/API/C/WKDatabaseManager.cpp:
2564         (WKDatabaseManagerSetClient):
2565         * UIProcess/API/C/WKGeolocationManager.cpp:
2566         (WKGeolocationManagerSetProvider):
2567         * UIProcess/API/C/WKIconDatabase.cpp:
2568         (WKIconDatabaseSetIconDatabaseClient):
2569         * UIProcess/API/C/WKNotificationManager.cpp:
2570         (WKNotificationManagerSetProvider):
2571         * UIProcess/API/C/WKOriginDataManager.cpp:
2572         (WKOriginDataManagerSetChangeClient):
2573         * UIProcess/API/C/WKPage.cpp:
2574         (WKPageSetPageContextMenuClient):
2575         (WKPageSetPageFindClient):
2576         (WKPageSetPageFindMatchesClient):
2577         (WKPageSetPageFormClient):
2578         (WKPageSetPagePolicyClient):
2579         (WKPageSetPageUIClient):
2580         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
2581         (setUpPagePolicyClient):
2582         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
2583         (WebKit::WebNotificationManagerProxy::initializeProvider):
2584         * UIProcess/Notifications/WebNotificationManagerProxy.h:
2585         * UIProcess/Notifications/WebNotificationProvider.cpp:
2586         (WebKit::WebNotificationProvider::show):
2587         (WebKit::WebNotificationProvider::cancel):
2588         (WebKit::WebNotificationProvider::didDestroyNotification):
2589         (WebKit::WebNotificationProvider::clearNotifications):
2590         (WebKit::WebNotificationProvider::addNotificationManager):
2591         (WebKit::WebNotificationProvider::removeNotificationManager):
2592         (WebKit::WebNotificationProvider::notificationPermissions):
2593         * UIProcess/Notifications/WebNotificationProvider.h:
2594         * UIProcess/WebContext.cpp:
2595         (WebKit::WebContext::initializeClient):
2596         (WebKit::WebContext::initializeInjectedBundleClient):
2597         (WebKit::WebContext::initializeConnectionClient):
2598         (WebKit::WebContext::initializeHistoryClient):
2599         (WebKit::WebContext::initializeDownloadClient):
2600         * UIProcess/WebContext.h:
2601         * UIProcess/WebContextClient.cpp:
2602         (WebKit::WebContextClient::plugInAutoStartOriginHashesChanged):
2603         (WebKit::WebContextClient::networkProcessDidCrash):
2604         (WebKit::WebContextClient::plugInInformationBecameAvailable):
2605         * UIProcess/WebContextClient.h:
2606         * UIProcess/WebContextConnectionClient.cpp:
2607         (WebKit::WebContextConnectionClient::didCreateConnection):
2608         * UIProcess/WebContextConnectionClient.h:
2609         * UIProcess/WebContextInjectedBundleClient.cpp:
2610         (WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):
2611         (WebKit::WebContextInjectedBundleClient::didReceiveSynchronousMessageFromInjectedBundle):
2612         (WebKit::WebContextInjectedBundleClient::getInjectedBundleInitializationUserData):
2613         * UIProcess/WebContextInjectedBundleClient.h:
2614         * UIProcess/WebCookieManagerProxy.cpp:
2615         (WebKit::WebCookieManagerProxy::initializeClient):
2616         * UIProcess/WebCookieManagerProxy.h:
2617         * UIProcess/WebCookieManagerProxyClient.cpp:
2618         (WebKit::WebCookieManagerProxyClient::cookiesDidChange):
2619         * UIProcess/WebCookieManagerProxyClient.h:
2620         * UIProcess/WebDatabaseManagerProxy.cpp:
2621         (WebKit::WebDatabaseManagerProxy::initializeClient):
2622         * UIProcess/WebDatabaseManagerProxy.h:
2623         * UIProcess/WebDatabaseManagerProxyClient.cpp:
2624         (WebKit::WebDatabaseManagerProxyClient::didModifyOrigin):
2625         (WebKit::WebDatabaseManagerProxyClient::didModifyDatabase):
2626         * UIProcess/WebDatabaseManagerProxyClient.h:
2627         * UIProcess/WebDownloadClient.cpp:
2628         (WebKit::WebDownloadClient::didStart):
2629         (WebKit::WebDownloadClient::didReceiveAuthenticationChallenge):
2630         (WebKit::WebDownloadClient::didReceiveResponse):
2631         (WebKit::WebDownloadClient::didReceiveData):
2632         (WebKit::WebDownloadClient::shouldDecodeSourceDataOfMIMEType):
2633         (WebKit::WebDownloadClient::decideDestinationWithSuggestedFilename):
2634         (WebKit::WebDownloadClient::didCreateDestination):
2635         (WebKit::WebDownloadClient::didFinish):
2636         (WebKit::WebDownloadClient::didFail):
2637         (WebKit::WebDownloadClient::didCancel):
2638         (WebKit::WebDownloadClient::processDidCrash):
2639         * UIProcess/WebDownloadClient.h:
2640         * UIProcess/WebFindClient.cpp:
2641         (WebKit::WebFindClient::didFindString):
2642         (WebKit::WebFindClient::didFailToFindString):
2643         (WebKit::WebFindClient::didCountStringMatches):
2644         (WebKit::WebFindMatchesClient::didFindStringMatches):
2645         (WebKit::WebFindMatchesClient::didGetImageForMatchResult):
2646         * UIProcess/WebFindClient.h:
2647         * UIProcess/WebFormClient.cpp:
2648         (WebKit::WebFormClient::willSubmitForm):
2649         * UIProcess/WebFormClient.h:
2650         * UIProcess/WebGeolocationManagerProxy.cpp:
2651         (WebKit::WebGeolocationManagerProxy::initializeProvider):
2652         * UIProcess/WebGeolocationManagerProxy.h:
2653         * UIProcess/WebGeolocationProvider.cpp:
2654         (WebKit::WebGeolocationProvider::startUpdating):
2655         (WebKit::WebGeolocationProvider::stopUpdating):
2656         (WebKit::WebGeolocationProvider::setEnableHighAccuracy):
2657         * UIProcess/WebGeolocationProvider.h:
2658         * UIProcess/WebHistoryClient.cpp:
2659         (WebKit::WebHistoryClient::didNavigateWithNavigationData):
2660         (WebKit::WebHistoryClient::didPerformClientRedirect):
2661         (WebKit::WebHistoryClient::didPerformServerRedirect):
2662         (WebKit::WebHistoryClient::didUpdateHistoryTitle):
2663         (WebKit::WebHistoryClient::populateVisitedLinks):
2664         * UIProcess/WebHistoryClient.h:
2665         * UIProcess/WebIconDatabase.cpp:
2666         (WebKit::WebIconDatabase::initializeIconDatabaseClient):
2667         * UIProcess/WebIconDatabase.h:
2668         * UIProcess/WebIconDatabaseClient.cpp:
2669         (WebKit::WebIconDatabaseClient::didChangeIconForPageURL):
2670         (WebKit::WebIconDatabaseClient::didRemoveAllIcons):
2671         (WebKit::WebIconDatabaseClient::iconDataReadyForPageURL):
2672         * UIProcess/WebIconDatabaseClient.h:
2673         * UIProcess/WebInspectorProxy.cpp:
2674         (WebKit::WebInspectorProxy::createInspectorPage):
2675         * UIProcess/WebLoaderClient.h:
2676         * UIProcess/WebOriginDataManagerProxy.cpp:
2677         (WebKit::WebOriginDataManagerProxy::setChangeClient):
2678         * UIProcess/WebOriginDataManagerProxy.h:
2679         * UIProcess/WebOriginDataManagerProxyChangeClient.cpp:
2680         (WebKit::WebOriginDataManagerProxyChangeClient::didChange):
2681         * UIProcess/WebOriginDataManagerProxyChangeClient.h:
2682         * UIProcess/WebPageContextMenuClient.cpp:
2683         (WebKit::WebPageContextMenuClient::getContextMenuFromProposedMenu):
2684         (WebKit::WebPageContextMenuClient::customContextMenuItemSelected):
2685         (WebKit::WebPageContextMenuClient::contextMenuDismissed):
2686         (WebKit::WebPageContextMenuClient::showContextMenu):
2687         (WebKit::WebPageContextMenuClient::hideContextMenu):
2688         * UIProcess/WebPageContextMenuClient.h:
2689         * UIProcess/WebPageProxy.cpp:
2690         (WebKit::WebPageProxy::initializePolicyClient):
2691         (WebKit::WebPageProxy::initializeFormClient):
2692         (WebKit::WebPageProxy::initializeUIClient):
2693         (WebKit::WebPageProxy::initializeFindClient):
2694         (WebKit::WebPageProxy::initializeFindMatchesClient):
2695         (WebKit::WebPageProxy::initializeContextMenuClient):
2696         * UIProcess/WebPageProxy.h:
2697         * UIProcess/WebPolicyClient.cpp:
2698         (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
2699         (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
2700         (WebKit::WebPolicyClient::decidePolicyForResponse):
2701         (WebKit::WebPolicyClient::unableToImplementPolicy):
2702         * UIProcess/WebPolicyClient.h:
2703         * UIProcess/WebUIClient.cpp:
2704         (WebKit::WebUIClient::createNewPage):
2705         (WebKit::WebUIClient::showPage):
2706         (WebKit::WebUIClient::close):
2707         (WebKit::WebUIClient::takeFocus):
2708         (WebKit::WebUIClient::focus):
2709         (WebKit::WebUIClient::unfocus):
2710         (WebKit::WebUIClient::runJavaScriptAlert):
2711         (WebKit::WebUIClient::runJavaScriptConfirm):
2712         (WebKit::WebUIClient::runJavaScriptPrompt):
2713         (WebKit::WebUIClient::setStatusText):
2714         (WebKit::WebUIClient::mouseDidMoveOverElement):
2715         (WebKit::WebUIClient::unavailablePluginButtonClicked):
2716         (WebKit::WebUIClient::didNotHandleKeyEvent):
2717         (WebKit::WebUIClient::didNotHandleWheelEvent):
2718         (WebKit::WebUIClient::toolbarsAreVisible):
2719         (WebKit::WebUIClient::setToolbarsAreVisible):
2720         (WebKit::WebUIClient::menuBarIsVisible):
2721         (WebKit::WebUIClient::setMenuBarIsVisible):
2722         (WebKit::WebUIClient::statusBarIsVisible):
2723         (WebKit::WebUIClient::setStatusBarIsVisible):
2724         (WebKit::WebUIClient::isResizable):
2725         (WebKit::WebUIClient::setIsResizable):
2726         (WebKit::WebUIClient::setWindowFrame):
2727         (WebKit::WebUIClient::windowFrame):
2728         (WebKit::WebUIClient::runBeforeUnloadConfirmPanel):
2729         (WebKit::WebUIClient::didDraw):
2730         (WebKit::WebUIClient::pageDidScroll):
2731         (WebKit::WebUIClient::exceededDatabaseQuota):
2732         (WebKit::WebUIClient::runOpenPanel):
2733         (WebKit::WebUIClient::decidePolicyForGeolocationPermissionRequest):
2734         (WebKit::WebUIClient::decidePolicyForNotificationPermissionRequest):
2735         (WebKit::WebUIClient::headerHeight):
2736         (WebKit::WebUIClient::footerHeight):
2737         (WebKit::WebUIClient::drawHeader):
2738         (WebKit::WebUIClient::drawFooter):
2739         (WebKit::WebUIClient::printFrame):
2740         (WebKit::WebUIClient::runModal):
2741         (WebKit::WebUIClient::saveDataToFileInDownloadsFolder):
2742         (WebKit::WebUIClient::shouldInterruptJavaScript):
2743         (WebKit::WebUIClient::showColorPicker):
2744         (WebKit::WebUIClient::hideColorPicker):
2745         * UIProcess/WebUIClient.h:
2746         * UIProcess/mac/WebInspectorProxyMac.mm:
2747         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2748         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2749         (WKBundleSetClient):
2750         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2751         (WKBundlePageSetContextMenuClient):
2752         (WKBundlePageSetEditorClient):
2753         (WKBundlePageSetFormClient):
2754         (WKBundlePageSetPageLoaderClient):
2755         (WKBundlePageSetResourceLoadClient):
2756         (WKBundlePageSetPolicyClient):
2757         (WKBundlePageSetUIClient):
2758         (WKBundlePageSetFullScreenClient):
2759         (WKBundlePageSetDiagnosticLoggingClient):
2760         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2761         (WebKit::InjectedBundle::initializeClient):
2762         * WebProcess/InjectedBundle/InjectedBundle.h:
2763         * WebProcess/InjectedBundle/InjectedBundleClient.cpp:
2764         (WebKit::InjectedBundleClient::didCreatePage):
2765         (WebKit::InjectedBundleClient::willDestroyPage):
2766         (WebKit::InjectedBundleClient::didInitializePageGroup):
2767         (WebKit::InjectedBundleClient::didReceiveMessage):
2768         (WebKit::InjectedBundleClient::didReceiveMessageToPage):
2769         * WebProcess/InjectedBundle/InjectedBundleClient.h:
2770         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
2771         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
2772         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.h:
2773         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
2774         (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage):
2775         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
2776         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
2777         (WebKit::InjectedBundlePageEditorClient::shouldBeginEditing):
2778         (WebKit::InjectedBundlePageEditorClient::shouldEndEditing):
2779         (WebKit::InjectedBundlePageEditorClient::shouldInsertNode):
2780         (WebKit::InjectedBundlePageEditorClient::shouldInsertText):
2781         (WebKit::InjectedBundlePageEditorClient::shouldDeleteRange):
2782         (WebKit::InjectedBundlePageEditorClient::shouldChangeSelectedRange):
2783         (WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
2784         (WebKit::InjectedBundlePageEditorClient::didBeginEditing):
2785         (WebKit::InjectedBundlePageEditorClient::didEndEditing):
2786         (WebKit::InjectedBundlePageEditorClient::didChange):
2787         (WebKit::InjectedBundlePageEditorClient::didChangeSelection):
2788         (WebKit::InjectedBundlePageEditorClient::willWriteToPasteboard):
2789         (WebKit::InjectedBundlePageEditorClient::getPasteboardDataForRange):
2790         (WebKit::InjectedBundlePageEditorClient::didWriteToPasteboard):
2791         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.h:
2792         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
2793         (WebKit::InjectedBundlePageFormClient::didFocusTextField):
2794         (WebKit::InjectedBundlePageFormClient::textFieldDidBeginEditing):
2795         (WebKit::InjectedBundlePageFormClient::textFieldDidEndEditing):
2796         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextField):
2797         (WebKit::InjectedBundlePageFormClient::textDidChangeInTextArea):
2798         (WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField):
2799         (WebKit::InjectedBundlePageFormClient::willSendSubmitEvent):
2800         (WebKit::InjectedBundlePageFormClient::willSubmitForm):
2801         (WebKit::InjectedBundlePageFormClient::didAssociateFormControls):
2802         (WebKit::InjectedBundlePageFormClient::shouldNotifyOnFormChanges):
2803         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
2804         * WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.h:
2805         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2806         (WebKit::InjectedBundlePageLoaderClient::willLoadURLRequest):
2807         (WebKit::InjectedBundlePageLoaderClient::willLoadDataRequest):
2808         (WebKit::InjectedBundlePageLoaderClient::shouldGoToBackForwardListItem):
2809         (WebKit::InjectedBundlePageLoaderClient::didStartProvisionalLoadForFrame):
2810         (WebKit::InjectedBundlePageLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
2811         (WebKit::InjectedBundlePageLoaderClient::didFailProvisionalLoadWithErrorForFrame):
2812         (WebKit::InjectedBundlePageLoaderClient::didCommitLoadForFrame):
2813         (WebKit::InjectedBundlePageLoaderClient::didFinishDocumentLoadForFrame):
2814         (WebKit::InjectedBundlePageLoaderClient::didFinishLoadForFrame):
2815         (WebKit::InjectedBundlePageLoaderClient::didFinishProgress):
2816         (WebKit::InjectedBundlePageLoaderClient::didFailLoadWithErrorForFrame):
2817         (WebKit::InjectedBundlePageLoaderClient::didSameDocumentNavigationForFrame):
2818         (WebKit::InjectedBundlePageLoaderClient::didReceiveTitleForFrame):
2819         (WebKit::InjectedBundlePageLoaderClient::didRemoveFrameFromHierarchy):
2820         (WebKit::InjectedBundlePageLoaderClient::didDisplayInsecureContentForFrame):
2821         (WebKit::InjectedBundlePageLoaderClient::didRunInsecureContentForFrame):
2822         (WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
2823         (WebKit::InjectedBundlePageLoaderClient::didFirstLayoutForFrame):
2824         (WebKit::InjectedBundlePageLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
2825         (WebKit::InjectedBundlePageLoaderClient::didLayoutForFrame):
2826         (WebKit::InjectedBundlePageLoaderClient::didLayout):
2827         (WebKit::InjectedBundlePageLoaderClient::didClearWindowObjectForFrame):
2828         (WebKit::InjectedBundlePageLoaderClient::didCancelClientRedirectForFrame):
2829         (WebKit::InjectedBundlePageLoaderClient::willPerformClientRedirectForFrame):
2830         (WebKit::InjectedBundlePageLoaderClient::didHandleOnloadEventsForFrame):
2831         (WebKit::InjectedBundlePageLoaderClient::globalObjectIsAvailableForFrame):
2832         (WebKit::InjectedBundlePageLoaderClient::willDisconnectDOMWindowExtensionFromGlobalObject):
2833         (WebKit::InjectedBundlePageLoaderClient::didReconnectDOMWindowExtensionToGlobalObject):
2834         (WebKit::InjectedBundlePageLoaderClient::willDestroyGlobalObjectForDOMWindowExtension):
2835         (WebKit::InjectedBundlePageLoaderClient::shouldForceUniversalAccessFromLocalURL):
2836         (WebKit::InjectedBundlePageLoaderClient::featuresUsedInPage):
2837         (WebKit::InjectedBundlePageLoaderClient::willDestroyFrame):
2838         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2839         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
2840         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNavigationAction):
2841         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForNewWindowAction):
2842         (WebKit::InjectedBundlePagePolicyClient::decidePolicyForResponse):
2843         (WebKit::InjectedBundlePagePolicyClient::unableToImplementPolicy):
2844         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.h:
2845         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
2846         (WebKit::InjectedBundlePageResourceLoadClient::didInitiateLoadForResource):
2847         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
2848         (WebKit::InjectedBundlePageResourceLoadClient::didReceiveResponseForResource):
2849         (WebKit::InjectedBundlePageResourceLoadClient::didReceiveContentLengthForResource):
2850         (WebKit::InjectedBundlePageResourceLoadClient::didFinishLoadForResource):
2851         (WebKit::InjectedBundlePageResourceLoadClient::didFailLoadForResource):
2852         (WebKit::InjectedBundlePageResourceLoadClient::shouldCacheResponse):
2853         (WebKit::InjectedBundlePageResourceLoadClient::shouldUseCredentialStorage):
2854         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.h:
2855         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
2856         (WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
2857         (WebKit::InjectedBundlePageUIClient::willSetStatusbarText):
2858         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptAlert):
2859         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptConfirm):
2860         (WebKit::InjectedBundlePageUIClient::willRunJavaScriptPrompt):
2861         (WebKit::InjectedBundlePageUIClient::mouseDidMoveOverElement):
2862         (WebKit::InjectedBundlePageUIClient::pageDidScroll):
2863         (WebKit::InjectedBundlePageUIClient::shouldGenerateFileForUpload):
2864         (WebKit::InjectedBundlePageUIClient::generateFileForUpload):
2865         (WebKit::InjectedBundlePageUIClient::statusBarIsVisible):
2866         (WebKit::InjectedBundlePageUIClient::menuBarIsVisible):
2867         (WebKit::InjectedBundlePageUIClient::toolbarsAreVisible):
2868         (WebKit::InjectedBundlePageUIClient::didReachApplicationCacheOriginQuota):
2869         (WebKit::InjectedBundlePageUIClient::didExceedDatabaseQuota):
2870         (WebKit::InjectedBundlePageUIClient::plugInStartLabelTitle):
2871         (WebKit::InjectedBundlePageUIClient::plugInStartLabelSubtitle):
2872         (WebKit::InjectedBundlePageUIClient::plugInExtraStyleSheet):
2873         (WebKit::InjectedBundlePageUIClient::plugInExtraScript):
2874         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
2875         * WebProcess/WebPage/WebPage.cpp:
2876         (WebKit::WebPage::initializeInjectedBundleContextMenuClient):
2877         (WebKit::WebPage::initializeInjectedBundleEditorClient):
2878         (WebKit::WebPage::initializeInjectedBundleFormClient):
2879         (WebKit::WebPage::initializeInjectedBundleLoaderClient):
2880         (WebKit::WebPage::initializeInjectedBundlePolicyClient):
2881         (WebKit::WebPage::initializeInjectedBundleResourceLoadClient):
2882         (WebKit::WebPage::initializeInjectedBundleUIClient):
2883         (WebKit::WebPage::initializeInjectedBundleFullScreenClient):
2884         (WebKit::WebPage::initializeInjectedBundleDiagnosticLoggingClient):
2885         * WebProcess/WebPage/WebPage.h:
2886
2887 2013-12-02  Enrica Casucci  <enrica@apple.com>
2888
2889         Merging some more iOS WebKit2 stuff.
2890         https://bugs.webkit.org/show_bug.cgi?id=125119
2891
2892         Reviewed by Tim Horton.
2893
2894         * Shared/EditorState.h:
2895         * Shared/NativeWebKeyboardEvent.h:
2896         * Shared/NativeWebMouseEvent.h:
2897         * Shared/NativeWebTouchEvent.h:
2898         * Shared/mac/RemoteLayerBackingStore.h:
2899         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
2900         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2901         * UIProcess/PageClient.h:
2902         * UIProcess/ios/TiledCoreAnimationDrawingAreaProxyIOS.mm:
2903         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
2904         * UIProcess/mac/SecItemShimProxy.messages.in:
2905         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2906         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2907         * WebProcess/WebPage/WebPage.cpp:
2908         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2909         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2910
2911 2013-12-02  Anders Carlsson  <andersca@apple.com>
2912
2913         Add versioned structs for the remaining clients
2914         https://bugs.webkit.org/show_bug.cgi?id=125123
2915
2916         Reviewed by Andreas Kling.
2917
2918         * UIProcess/API/C/WKContext.h:
2919         * UIProcess/API/C/WKContextConnectionClient.h:
2920         * UIProcess/API/C/WKContextDownloadClient.h:
2921         * UIProcess/API/C/WKContextHistoryClient.h:
2922         * UIProcess/API/C/WKContextInjectedBundleClient.h:
2923         * UIProcess/API/C/WKOriginDataManager.h:
2924
2925 2013-12-02  Anders Carlsson  <andersca@apple.com>
2926
2927         Move WKContext clients to separate files
2928         https://bugs.webkit.org/show_bug.cgi?id=125121
2929
2930         Reviewed by Andreas Kling.
2931
2932         * UIProcess/API/C/WKContext.h:
2933         * UIProcess/API/C/WKContextConnectionClient.h: Added.
2934         * UIProcess/API/C/WKContextDownloadClient.h: Added.
2935         * UIProcess/API/C/WKContextHistoryClient.h: Added.
2936         * UIProcess/API/C/WKContextInjectedBundleClient.h: Added.
2937         * WebKit2.xcodeproj/project.pbxproj:
2938
2939 2013-12-02  Sam Weinig  <sam@webkit.org>
2940
2941         WebPageGroups should keep track of what processes they are being used by
2942         https://bugs.webkit.org/show_bug.cgi?id=124556
2943
2944         Reviewed by Anders Carlsson.
2945
2946         * UIProcess/WebContextUserMessageCoders.h:
2947         (WebKit::WebContextUserMessageEncoder::encode):
2948         (WebKit::WebContextUserMessageDecoder::decode):
2949         * UIProcess/WebPageGroup.cpp:
2950         (WebKit::WebPageGroup::addProcess):
2951         (WebKit::WebPageGroup::disconnectProcess):
2952         * UIProcess/WebPageGroup.h:
2953         (WebKit::WebPageGroup::sendToAllProcessesInGroup):
2954         * UIProcess/WebPageProxy.cpp:
2955         (WebKit::WebPageProxy::initializeWebPage):
2956         * UIProcess/WebProcessProxy.cpp:
2957         (WebKit::WebProcessProxy::disconnect):
2958         (WebKit::WebProcessProxy::webPageGroup):
2959         (WebKit::WebProcessProxy::addWebPageGroup):
2960         * UIProcess/WebProcessProxy.h:
2961         * WebProcess/WebProcess.cpp:
2962         (WebKit::WebProcess::webPageGroup):
2963
2964 2013-12-02  Anders Carlsson  <andersca@apple.com>
2965
2966         Add versioned structs for all clients except the ones in WKContext.h
2967         https://bugs.webkit.org/show_bug.cgi?id=125120
2968
2969         Reviewed by Andreas Kling.
2970
2971         * Shared/API/c/WKConnectionRef.h:
2972         * UIProcess/API/C/WKCookieManager.h:
2973         * UIProcess/API/C/WKDatabaseManager.h:
2974         * UIProcess/API/C/WKGeolocationManager.h:
2975         * UIProcess/API/C/WKIconDatabase.h:
2976         * UIProcess/API/C/WKNotificationProvider.h:
2977         * UIProcess/API/C/WKPageContextMenuClient.h:
2978         * UIProcess/API/C/WKPageFindClient.h:
2979         * UIProcess/API/C/WKPageFindMatchesClient.h:
2980         * UIProcess/API/C/WKPageFormClient.h:
2981         * UIProcess/API/C/WKPageLoaderClient.h:
2982         * UIProcess/API/C/WKPagePolicyClient.h:
2983         * UIProcess/API/C/WKPageUIClient.h:
2984         * WebProcess/InjectedBundle/API/c/WKBundle.h:
2985         * WebProcess/InjectedBundle/API/c/WKBundlePageBanner.h:
2986         * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h:
2987         * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
2988         * WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h:
2989         * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
2990         * WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h:
2991         * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h:
2992         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
2993         * WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h:
2994         * WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h:
2995         * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h:
2996
2997 2013-12-02  Anders Carlsson  <andersca@apple.com>
2998
2999         Split bundle page clients out into separate headers
3000         https://bugs.webkit.org/show_bug.cgi?id=125115
3001
3002         Reviewed by Andreas Kling.
3003
3004         * WebKit2.xcodeproj/project.pbxproj:
3005         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
3006         * WebProcess/InjectedBundle/API/c/WKBundlePageContextMenuClient.h: Added.
3007         * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h: Added.
3008         * WebProcess/InjectedBundle/API/c/WKBundlePageEditorClient.h: Added.
3009         * WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h: Added.
3010         * WebProcess/InjectedBundle/API/c/WKBundlePageFullScreenClient.h: Added.
3011         * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Added.
3012         * WebProcess/InjectedBundle/API/c/WKBundlePagePolicyClient.h: Added.
3013         * WebProcess/InjectedBundle/API/c/WKBundlePageResourceLoadClient.h: Added.
3014         * WebProcess/InjectedBundle/API/c/WKBundlePageUIClient.h: Added.
3015
3016 2013-12-02  Nick Diego Yamane  <nick.yamane@openbossa.org>
3017
3018         [WK2] Improve readability of 'generate_message_handler' function
3019         https://bugs.webkit.org/show_bug.cgi?id=125085
3020
3021         Reviewed by Sam Weinig.
3022
3023         * Scripts/webkit2/messages.py:
3024         (generate_message_handler):
3025
3026 2013-12-02  Tim Horton  <timothy_horton@apple.com>
3027
3028         Remote Layer Tree: Support cloning layers
3029         https://bugs.webkit.org/show_bug.cgi?id=124874
3030         <rdar://problem/15349468>
3031
3032         Reviewed by Simon Fraser.
3033
3034         We use PlatformCALayer::clone for CSS reflections, so implement it.
3035
3036         Also, since many reflections testcases also use masks,
3037         working on this revealed that masks weren't working, because
3038         we weren't flushing mask layers.
3039
3040         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
3041         (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
3042         * Shared/mac/RemoteLayerTreeTransaction.mm:
3043         (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
3044         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
3045         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
3046         Rename maskLayer->maskLayerID since it's a LayerID.
3047
3048         * UIProcess/mac/RemoteLayerTreeHost.mm:
3049         (WebKit::RemoteLayerTreeHost::commit):
3050         Don't try to look up the layer if it's null.
3051
3052         * Shared/mac/RemoteLayerTreeTransaction.h:
3053         (WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):
3054         * Shared/mac/RemoteLayerTreeTransaction.mm:
3055         (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
3056         Keep track of all properties that have ever been changed on a layer.
3057
3058         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3059         (PlatformCALayerRemote::create):
3060         (PlatformCALayerRemote::PlatformCALayerRemote):
3061         (PlatformCALayerRemote::clone):
3062         Copy all of the layer properties from the original to the clone,
3063         and mark all properties that have ever been modified as
3064         needing to be flushed to the UI process.
3065
3066         (PlatformCALayerRemote::recursiveBuildTransaction):
3067         Flush our mask layer, if we have one.
3068
3069         (PlatformCALayerRemote::setMask):
3070         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3071         Store the mask layer we're given. Our owning GraphicsLayer will
3072         hold on to it for us.
3073
3074 2013-12-02  Anders Carlsson  <andersca@apple.com>
3075
3076         WKPageLoaderClient should be versioned
3077         https://bugs.webkit.org/show_bug.cgi?id=125104
3078
3079         Reviewed by Sam Weinig.
3080
3081         Add multiple versions of the WKPageLoaderClient struct. In a subsequent patch,
3082         WKPageLoaderClient and kWKPageLoaderClientCurrentVersion will be deprecated. Instead,
3083         users of the API are supposed to explicitly choose a version and a versioned struct.
3084
3085         * Shared/APIClient.h:
3086         Add a new API::Client class with a new ClientTraits template that uses std::tuple for versions.
3087
3088         * Shared/APIClientTraits.cpp:
3089         * Shared/APIClientTraits.h:
3090         Remove WKPageLoaderClient interface sizes.
3091
3092         * UIProcess/API/C/WKPage.cpp:
3093         (WKPageSetPageLoaderClient):
3094         Add an explicit cast to WKPageLoaderClientBase. In an upcoming patch, WKPageSetPageLoaderClient
3095         will be changed to take a WKPageLoaderClientBase instead.
3096
3097         * UIProcess/API/C/WKPageLoaderClient.h:
3098         Add new versions.
3099
3100         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3101         (setUpPageLoaderClient):
3102         Use an explicit version.
3103
3104         * UIProcess/WebLoaderClient.cpp:
3105         (WebKit::WebLoaderClient::didStartProvisionalLoadForFrame):
3106         (WebKit::WebLoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
3107         (WebKit::WebLoaderClient::didFailProvisionalLoadWithErrorForFrame):
3108         (WebKit::WebLoaderClient::didCommitLoadForFrame):
3109         (WebKit::WebLoaderClient::didFinishDocumentLoadForFrame):
3110         (WebKit::WebLoaderClient::didFinishLoadForFrame):
3111         (WebKit::WebLoaderClient::didFailLoadWithErrorForFrame):
3112         (WebKit::WebLoaderClient::didSameDocumentNavigationForFrame):
3113         (WebKit::WebLoaderClient::didReceiveTitleForFrame):
3114         (WebKit::WebLoaderClient::didFirstLayoutForFrame):
3115         (WebKit::WebLoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
3116         (WebKit::WebLoaderClient::didLayout):
3117         (WebKit::WebLoaderClient::didRemoveFrameFromHierarchy):
3118         (WebKit::WebLoaderClient::didDisplayInsecureContentForFrame):
3119         (WebKit::WebLoaderClient::didRunInsecureContentForFrame):
3120         (WebKit::WebLoaderClient::didDetectXSSForFrame):
3121         (WebKit::WebLoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
3122         (WebKit::WebLoaderClient::didReceiveAuthenticationChallengeInFrame):
3123         (WebKit::WebLoaderClient::didStartProgress):
3124         (WebKit::WebLoaderClient::didChangeProgress):
3125         (WebKit::WebLoaderClient::didFinishProgress):
3126         (WebKit::WebLoaderClient::processDidBecomeUnresponsive):
3127         (WebKit::WebLoaderClient::interactionOccurredWhileProcessUnresponsive):
3128         (WebKit::WebLoaderClient::processDidBecomeResponsive):
3129         (WebKit::WebLoaderClient::processDidCrash):
3130         (WebKit::WebLoaderClient::didChangeBackForwardList):
3131         (WebKit::WebLoaderClient::shouldGoToBackForwardListItem):
3132         (WebKit::WebLoaderClient::willGoToBackForwardListItem):
3133         (WebKit::WebLoaderClient::didFailToInitializePlugin):
3134         (WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
3135         (WebKit::WebLoaderClient::pluginLoadPolicy):
3136         Go through client.base everywhere.
3137
3138         * UIProcess/WebLoaderClient.h:
3139         Add API::ClientTraits specialization. Change WebLoaderClient to derive from API::Client<WKPageLoaderClientBase>.
3140
3141         * UIProcess/WebPageProxy.cpp:
3142         (WebKit::WebPageProxy::initializeLoaderClient):
3143         This now takes a WKPageLoaderClientBase*.
3144         
3145 2013-12-02  Beth Dakin  <bdakin@apple.com>
3146
3147         Add a setting to opt into a mode where the background extends and fixed elements 
3148         don't move on rubber-band
3149         https://bugs.webkit.org/show_bug.cgi?id=124745
3150
3151         Reviewed by Tim Horton.
3152
3153         Add SPI to enable the new setting.
3154
3155         * Shared/WebPreferencesStore.h:
3156         * UIProcess/API/C/WKPreferences.cpp:
3157         (WKPreferencesSetBackgroundShouldExtendBeyondPage):
3158         (WKPreferencesGetBackgroundShouldExtendBeyondPage):
3159         * UIProcess/API/C/WKPreferencesPrivate.h:
3160         * WebProcess/WebPage/WebPage.cpp:
3161         (WebKit::WebPage::updatePreferences):
3162
3163 2013-12-02  Tim Horton  <timothy_horton@apple.com>
3164
3165         Remote Layer Tree: Hook up setLayerTreeStateIsFrozen
3166         https://bugs.webkit.org/show_bug.cgi?id=124872
3167
3168         Reviewed by Brent Fulgham.
3169
3170         setLayerTreeStateIsFrozen is the mechanism used to ensure that
3171         layer property changes (including new backing store) aren't committed
3172         while e.g. the page is reconfigured for printing.
3173
3174         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
3175         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
3176         (WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
3177         (WebKit::RemoteLayerTreeContext::flushLayers):
3178         (WebKit::RemoteLayerTreeContext::setIsFlushingSuspended):
3179         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3180         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3181         (WebKit::RemoteLayerTreeDrawingArea::setLayerTreeStateIsFrozen):
3182
3183 2013-12-02  Tim Horton  <timothy_horton@apple.com>
3184
3185         Remote Layer Tree: Disable direct image compositing
3186         https://bugs.webkit.org/show_bug.cgi?id=124875
3187         <rdar://problem/15446024>
3188
3189         Reviewed by Simon Fraser.
3190
3191         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
3192         Image-as-layer-contents is not implemented for the remote layer tree.
3193
3194 2013-12-01  ChangSeok Oh  <changseok.oh@collabora.com>
3195
3196         Unreviewed Gtk port Build fix after r159903
3197
3198         * UIProcess/DrawingAreaProxyImpl.cpp:
3199         (WebKit::DrawingAreaProxyImpl::layerHostingModeDidChange):
3200         (WebKit::DrawingAreaProxyImpl::update):
3201         (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
3202         (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
3203         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
3204         * UIProcess/gtk/WebFullScreenManagerProxyGtk.cpp:
3205         (WebKit::WebFullScreenManagerProxy::invalidate):
3206         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
3207         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
3208         * UIProcess/gtk/WebPageProxyGtk.cpp:
3209         (WebKit::WebPageProxy::setAcceleratedCompositingWindowId):
3210
3211 2013-12-01  Sam Weinig  <sam@webkit.org>
3212
3213         Give UserMessageEncoders WebProcessProxy reference (like the decoders already have)
3214         https://bugs.webkit.org/show_bug.cgi?id=125053
3215
3216         Reviewed by Dan Bernstein.
3217
3218         - Give the UserMessageEncoders a process reference.
3219         - Switch UserMessageDecoders to storing a process reference, rather than pointer.
3220
3221         * Shared/UserMessageCoders.h:
3222         * Shared/mac/ObjCObjectGraphCoders.h:
3223         * Shared/mac/ObjCObjectGraphCoders.mm:
3224         * UIProcess/WebConnectionToWebProcess.cpp:
3225         * UIProcess/WebContext.cpp:
3226         * UIProcess/WebContextUserMessageCoders.h:
3227         * UIProcess/WebPageProxy.cpp:
3228         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h:
3229
3230 2013-12-01  Sam Weinig  <sam@webkit.org>
3231
3232         [Cocoa] The PageLoadState::Observer is not being set on iOS
3233         https://bugs.webkit.org/show_bug.cgi?id=125051
3234
3235         Reviewed by Dan Bernstein.
3236
3237         * UIProcess/ios/WebPageProxyIOS.mm:
3238         (WebKit::WebPageProxy::platformInitialize):
3239         Add missing call to _finishInitialization.
3240
3241 2013-12-01  Ryuan Choi  <ryuan.choi@samsung.com>
3242
3243         Unreviewed EFL Build fix attempt after r159903
3244
3245         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
3246         (WebKit::CoordinatedDrawingAreaProxy::layerHostingModeDidChange):
3247         (WebKit::CoordinatedDrawingAreaProxy::update):
3248         (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState):
3249         (WebKit::CoordinatedDrawingAreaProxy::sendUpdateBackingStoreState):
3250         (WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
3251         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
3252         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
3253         (WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
3254         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
3255         (WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
3256         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
3257         (WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):
3258         * UIProcess/WebTextChecker.cpp:
3259         (WebKit::WebTextChecker::checkSpelling):
3260         (WebKit::WebTextChecker::changeSpellingToWord):
3261         * UIProcess/WebTextChecker.h:
3262         * UIProcess/WebVibrationProxy.cpp:
3263         (WebKit::WebVibrationProxy::WebVibrationProxy):
3264         (WebKit::WebVibrationProxy::~WebVibrationProxy):
3265         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
3266         (WebKit::WebFullScreenManagerProxy::invalidate):
3267         * UIProcess/efl/WebInspectorProxyEfl.cpp:
3268         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
3269         * UIProcess/efl/WebPageProxyEfl.cpp:
3270         (WebKit::WebPageProxy::setThemePath):
3271         (WebKit::WebPageProxy::confirmComposition):
3272         (WebKit::WebPageProxy::setComposition):
3273         (WebKit::WebPageProxy::cancelComposition):
3274
3275 2013-12-01  Sam Weinig  <sam@webkit.org>
3276
3277         Fix the iOS build.
3278
3279         * UIProcess/API/ios/WKContentView.mm:
3280         * UIProcess/API/ios/WKInteractionView.mm:
3281         * UIProcess/ios/WebPageProxyIOS.mm:
3282
3283 2013-12-01  Sam Weinig  <sam@webkit.org>
3284
3285         [CTTE] The WebPageProxy's WebProcessProxy is never null so it should be stored in a Ref
3286         https://bugs.webkit.org/show_bug.cgi?id=125047
3287
3288         Reviewed by Dan Bernstein.
3289
3290         * UIProcess/API/C/WKPage.cpp:
3291         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
3292         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3293         * UIProcess/API/mac/WKView.mm:
3294         * UIProcess/Downloads/DownloadProxy.cpp:
3295         * UIProcess/Downloads/DownloadProxy.h:
3296         * UIProcess/Downloads/DownloadProxyMap.cpp:
3297         * UIProcess/Downloads/DownloadProxyMap.h:
3298         * UIProcess/DrawingAreaProxy.cpp:
3299         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
3300         * UIProcess/Network/NetworkProcessProxy.cpp:
3301         * UIProcess/Network/NetworkProcessProxy.h:
3302         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
3303         * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
3304         * UIProcess/WebContext.cpp:
3305         * UIProcess/WebContext.h:
3306         * UIProcess/WebEditCommandProxy.cpp:
3307         * UIProcess/WebFrameProxy.cpp:
3308         * UIProcess/WebFullScreenManagerProxy.cpp:
3309         * UIProcess/WebInspectorProxy.cpp:
3310         * UIProcess/WebPageGroup.h:
3311         * UIProcess/WebPageProxy.cpp:
3312         * UIProcess/WebPageProxy.h:
3313         * UIProcess/WebProcessProxy.cpp:
3314         * UIProcess/WebProcessProxy.h:
3315         * UIProcess/cf/WebPageProxyCF.cpp:
3316         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
3317         * UIProcess/mac/RemoteLayerTreeHost.mm:
3318         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
3319         * UIProcess/mac/WebFullScreenManagerProxyMac.mm:
3320         * UIProcess/mac/WebInspectorProxyMac.mm:
3321         * UIProcess/mac/WebPageProxyMac.mm:
3322
3323 2013-12-01  Ryuan Choi  <ryuan.choi@samsung.com>
3324
3325         [EFL][CoordinatedGraphics] Clear m_contentsSize when new contents are loaded
3326         https://bugs.webkit.org/show_bug.cgi?id=125033
3327
3328         Reviewed by Gyuyoung Kim.
3329
3330         m_contentsSize should be cleared when new contents are loaded so that PageViewportController
3331         would take care of newly loaded contents with same size as previous one.
3332         It's because PageViewportController is cleared not to make wrong behaviour
3333         while loading when new contents are committed.
3334
3335         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3336         (TEST_F):
3337         Improve tests to check contents,size,changed signal when loaded contents having
3338         same size with previous one.
3339         * UIProcess/CoordinatedGraphics/WebView.cpp:
3340         (WebKit::WebView::didCommitLoadForMainFrame): Cleared m_contentsSize.
3341
3342 2013-12-01  Philippe Normand  <pnormand@igalia.com>
3343
3344         Unreviewed GTK build fix after r159896.
3345
3346         * UIProcess/API/gtk/WebKitWebContext.cpp:
3347         (webkitWebContextCreatePageForWebView):
3348         * UIProcess/API/gtk/WebKitWebView.cpp:
3349         (webkitWebViewConstructed):
3350         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3351         (webkitWebViewBaseUpdatePreferences):
3352
3353 2013-12-01  Ryuan Choi  <ryuan.choi@samsung.com>
3354
3355         Unreviewed build fix after r159896.
3356
3357         * UIProcess/API/efl/ewk_settings.cpp:
3358         (EwkSettings::preferences):
3359         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
3360         (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy):
3361         * UIProcess/CoordinatedGraphics/WebView.cpp:
3362         (WebKit::WebView::WebView):
3363
3364 2013-11-30  Sam Weinig  <sam@webkit.org>
3365
3366         [CTTE] The WebPageProxy's WebPageGroup is never null so it should be stored in a Ref
3367         https://bugs.webkit.org/show_bug.cgi?id=125038
3368
3369         Reviewed by Dan Bernstein.
3370
3371         * UIProcess/API/C/WKPage.cpp:
3372         (WKPageGetPageGroup):
3373         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
3374         (WKPageIsURLKnownHSTSHost):
3375         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3376         (-[WKBrowsingContextController browsingContextGroup]):
3377         * UIProcess/API/mac/WKView.mm:
3378         (-[WKView _preferencesDidChange]):
3379         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
3380         * UIProcess/WebContext.cpp:
3381         (WebKit::WebContext::WebContext):
3382         (WebKit::WebContext::createWebPage):
3383         * UIProcess/WebContext.h:
3384         * UIProcess/WebInspectorProxy.cpp:
3385         (WebKit::WebInspectorPageGroups::inspectorLevel):
3386         (WebKit::WebInspectorPageGroups::isInspectorPageGroup):
3387         (WebKit::WebInspectorPageGroups::inspectorPageGroupLevel):
3388         (WebKit::WebInspectorProxy::isInspectorPage):
3389         * UIProcess/WebInspectorProxy.h:
3390         * UIProcess/WebPageGroup.cpp:
3391         (WebKit::WebPageGroup::createNonNull):
3392         * UIProcess/WebPageGroup.h:
3393         * UIProcess/WebPageProxy.cpp:
3394         (WebKit::WebPageProxy::create):
3395         (WebKit::WebPageProxy::WebPageProxy):
3396         (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
3397         (WebKit::WebPageProxy::preferencesDidChange):
3398         * UIProcess/WebPageProxy.h:
3399         (WebKit::WebPageProxy::pageGroup):
3400         * UIProcess/WebProcessProxy.cpp:
3401         (WebKit::WebProcessProxy::createWebPage):
3402         * UIProcess/WebProcessProxy.h:
3403         * UIProcess/mac/WebInspectorProxyMac.mm:
3404         (WebKit::WebInspectorProxy::createInspectorWindow):
3405         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
3406         (WebKit::WebInspectorProxy::windowFrameDidChange):
3407         * UIProcess/mac/WebProcessProxyMac.mm:
3408         (WebKit::WebProcessProxy::pageIsProcessSuppressible):
3409
3410 2013-11-30  Dan Bernstein  <mitz@apple.com>
3411
3412         Added a version of +[NSURL _web_URLWithWTFString:relativeToURL:] that doesn’t take a base URL and switched all callers to it.
3413         https://bugs.webkit.org/show_bug.cgi?id=125040
3414
3415         Reviewed by Sam Weinig.
3416
3417         * Shared/Cocoa/WKNSURLExtras.h: Declared new method.
3418         * Shared/Cocoa/WKNSURLExtras.mm:
3419         (urlWithWTFString): Added helper function.
3420         (+[NSURL _web_URLWithWTFString:]): Added.
3421         (+[NSURL _web_URLWithWTFString:relativeToURL:]): Changed to use helper function.
3422         * UIProcess/API/Cocoa/WKBackForwardListItem.mm:
3423         (-[WKBackForwardListItem URL]): Changed to call new method.
3424         (-[WKBackForwardListItem originalURL]): Ditto.
3425         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3426         (-[WKBrowsingContextController activeURL]): Ditto.
3427         (-[WKBrowsingContextController provisionalURL]): Ditto.
3428         (-[WKBrowsingContextController committedURL]): Ditto.
3429         (-[WKBrowsingContextController unreachableURL]): Ditto.
3430         (setUpPagePolicyClient): Ditto.
3431         * UIProcess/API/Cocoa/WKNavigationData.mm:
3432         (-[WKNavigationData destinationURL]): Ditto.
3433
3434 2013-11-30  Dan Bernstein  <mitz@apple.com>
3435
3436         [Cocoa] Stop using the WKPageRef API in WKBrowsingContextController
3437         https://bugs.webkit.org/show_bug.cgi?id=125036
3438
3439         Reviewed by Sam Weinig.
3440
3441         * Shared/Cocoa/WKNSURLExtras.h: Declared new method.
3442         * Shared/Cocoa/WKNSURLExtras.mm:
3443         (-[NSURL _web_originalDataAsWTFString]): Added. Returns a WTF::String with the receiver’s
3444         bytes.
3445
3446         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3447         (-[WKBrowsingContextController loadRequest:userData:]):
3448         (-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:userData:]):
3449         (-[WKBrowsingContextController loadHTMLString:baseURL:userData:]):
3450         (-[WKBrowsingContextController loadAlternateHTMLString:baseURL:forUnreachableURL:]):
3451         (-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):
3452         (-[WKBrowsingContextController stopLoading]):
3453         (-[WKBrowsingContextController reload]):
3454         (-[WKBrowsingContextController reloadFromOrigin]):
3455         (-[WKBrowsingContextController goForward]):
3456         (-[WKBrowsingContextController canGoForward]):
3457         (-[WKBrowsingContextController goBack]):
3458         (-[WKBrowsingContextController canGoBack]):
3459         (-[WKBrowsingContextController activeURL]):
3460         (-[WKBrowsingContextController provisionalURL]):
3461         (-[WKBrowsingContextController committedURL]):
3462         (-[WKBrowsingContextController title]):
3463         (-[WKBrowsingContextController textZoom]):
3464         (-[WKBrowsingContextController setTextZoom:]):
3465         (-[WKBrowsingContextController pageZoom]):
3466         (-[WKBrowsingContextController setPageZoom:]):
3467         (setUpPageLoaderClient):
3468         (setUpPagePolicyClient):
3469         (-[WKBrowsingContextController setLoadDelegate:]):
3470  &nbs