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