c8689a4ddc82cb2eb6cb9f1b61af8e88c13ccb8b
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-10-21  Dan Bernstein  <mitz@apple.com>
2
3         Try to fix the Mac 32-bit build.
4
5         * UIProcess/API/mac/WKBrowsingContextController.h:
6         * UIProcess/API/mac/WKBrowsingContextController.mm:
7
8 2013-10-21  Tim Horton  <timothy_horton@apple.com>
9
10         Give up on building RemoteLayerTreeTransaction::dump on Lion, it just won't work.
11
12         This definitely ought to fix the build.
13
14         * Shared/mac/RemoteLayerTreeTransaction.h:
15         * Shared/mac/RemoteLayerTreeTransaction.mm:
16         * UIProcess/mac/RemoteLayerTreeHost.mm:
17         (WebKit::RemoteLayerTreeHost::commit):
18
19 2013-10-21  Tim Horton  <timothy_horton@apple.com>
20
21         Maybe a Lion build fix after r157731, part 2.
22
23         * Shared/mac/RemoteLayerTreeTransaction.mm:
24         (WebKit::RemoteLayerTreeTextStream::operator<<):
25
26 2013-10-21  Dan Bernstein  <mitz@apple.com>
27
28         [Cocoa] Back/forward list UI process API
29         https://bugs.webkit.org/show_bug.cgi?id=123109
30
31         Reviewed by Darin Adler.
32
33         * CMakeLists.txt: Updated for renames.
34         * GNUmakefile.list.am: Ditto.
35
36         * Shared/Cocoa: Added.
37         * Shared/Cocoa/WKNSArray.h: Added. WKNSArray is an internal NSArray subclass backed by
38         a WebKit::ImmutableArray.
39         * Shared/Cocoa/WKNSArray.mm: Added.
40         (+[WKNSArray web_arrayWithImmutableArray:]): Added.
41         (-[WKNSArray web_initWithImmutableArray:]): Added.
42         (-[WKNSArray count]): Added.
43         (-[WKNSArray objectAtIndex:]): Added.
44         (-[WKNSArray copyWithZone:]): Added.
45
46         * Shared/Cocoa/WKNSObjectExtras.h: Added. Declares a category on NSObject that allows us to
47         vend WebKit API objects as Objective-C objects.
48         * Shared/Cocoa/WKNSObjectExtras.mm: Added.
49         (-[WKObject initWithAPIObject:]): WKObject is the generic Cocoa wrapper for API objects.
50         (-[WKObject isEqual:]): Check for equality of the underlying object.
51         (-[WKObject hash]): Return a pointer to the underlying object.
52         (-[WKObject description]): Added.
53         (+[NSObject _web_objectWithAPIObject:]): Added. Returns an appropriate Objective-C object
54         for the given API object. Currently returns a WKBackForwardListItem for a back/forward list
55         item and a generic WKObject for all other types.
56
57         * UIProcess/API/C/WKBackForwardList.cpp: Renamed.
58         * UIProcess/API/C/WKBackForwardList.h: Renamed.
59         * UIProcess/API/C/WKBackForwardListItem.cpp: Renamed.
60         * UIProcess/API/C/WKBackForwardListItem.h: Renamed.
61         * UIProcess/API/C/WKBackForwardListItemRef.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardListItem.cpp.
62         * UIProcess/API/C/WKBackForwardListItemRef.h: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardListItem.h.
63         * UIProcess/API/C/WKBackForwardListRef.cpp: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardList.cpp.
64         * UIProcess/API/C/WKBackForwardListRef.h: Copied from Source/WebKit2/UIProcess/API/C/WKBackForwardList.h.
65
66         * UIProcess/API/C/WebKit2_C.h: Updated for header renames.
67
68         * UIProcess/API/efl/ewk_back_forward_list.cpp: Updated for rename.
69         * UIProcess/API/efl/ewk_back_forward_list_item.cpp: Ditto.
70
71         * UIProcess/API/mac/WKBrowsingContextController.h: Declared backForwardList property.
72         * UIProcess/API/mac/WKBrowsingContextController.mm:
73         (-[WKBrowsingContextController backForwardList]): Added this accessor.
74
75         * UIProcess/Cocoa: Added.
76         * UIProcess/Cocoa/WKBackForwardList.h: Added.
77         * UIProcess/Cocoa/WKBackForwardList.mm: Added.
78         (toWKBackForwardListItem): Added this helper.
79         (-[WKBackForwardList currentItem]): Added.
80         (-[WKBackForwardList backItem]): Added.
81         (-[WKBackForwardList forwardItem]): Added.
82         (-[WKBackForwardList itemAtIndex:]): Added.
83         (-[WKBackForwardList backListCount]): Added.
84         (-[WKBackForwardList forwardListCount]): Added.
85         (-[WKBackForwardList backListWithLimit:]): Added.
86         (-[WKBackForwardList forwardListWithLimit:]): Added.
87         (-[WKBackForwardList _initWithList:]): Added.
88         * UIProcess/Cocoa/WKBackForwardListInternal.h: Added.
89
90         * UIProcess/Cocoa/WKBackForwardListItem.h: Added.
91         * UIProcess/Cocoa/WKBackForwardListItem.mm: Added.
92         (-[WKBackForwardListItem URL]): Added.
93         (-[WKBackForwardListItem title]): Added.
94         (-[WKBackForwardListItem originalURL]): Added.
95         (-[WKBackForwardListItem isEqual:]): Check for equality of the underlying object.
96         (-[WKBackForwardListItem hash]): Return a pointer to the underlying object
97         (-[WKBackForwardListItem _initWithItem:]): Added.
98         * UIProcess/Cocoa/WKBackForwardListItemInternal.h: Added.
99
100         * WebKit2.xcodeproj/project.pbxproj: Updated for renames and additions.
101
102 2013-10-21  Tim Horton  <timothy_horton@apple.com>
103
104         Maybe a Lion build fix after r157731.
105
106         * Shared/mac/RemoteLayerTreeTransaction.mm:
107         (WebKit::RemoteLayerTreeTextStream::operator<<):
108
109 2013-10-21  Tim Horton  <timothy_horton@apple.com>
110
111         Remote Layer Tree: Clean up transaction logging
112         https://bugs.webkit.org/show_bug.cgi?id=123116
113
114         Reviewed by Anders Carlsson.
115
116         * Shared/mac/RemoteLayerTreeTransaction.mm:
117         (WebKit::RemoteLayerTreeTextStream::RemoteLayerTreeTextStream):
118         (WebKit::RemoteLayerTreeTextStream::increaseIndent):
119         (WebKit::RemoteLayerTreeTextStream::decreaseIndent):
120         (WebKit::RemoteLayerTreeTextStream::writeIndent):
121         (WebKit::RemoteLayerTreeTextStream::operator<<):
122         Add some stream operator overrides for various types we need to dump.
123         Add a notion of current indent to our TextStream subclass to make it
124         easy to keep track of where we are.
125
126         (WebKit::dumpProperty):
127         Added, hand any arbitrary type to RemoteLayerTreeTransaction.
128
129         (WebKit::dumpChangedLayers):
130         (WebKit::RemoteLayerTreeTransaction::dump):
131         Make use of TextStream.
132
133 2013-10-21  Brady Eidson  <beidson@apple.com>
134
135         Transition most use of IDBBackingStoreLevelDB to IDBBackingStoreInterface
136         https://bugs.webkit.org/show_bug.cgi?id=123105
137
138         Reviewed by Anders Carlsson.
139
140         Stub out a new pure virtual method:
141         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
142         (WebKit::WebIDBFactoryBackend::createTransactionBackend):
143         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
144
145 2013-10-21  Tim Horton  <timothy_horton@apple.com>
146
147         Remote Layer Tree: Backing store should take contentsScale into account
148         https://bugs.webkit.org/show_bug.cgi?id=123106
149
150         Reviewed by Simon Fraser.
151
152         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
153         (PlatformCALayerRemote::ensureBackingStore):
154         (PlatformCALayerRemote::setNeedsDisplay):
155         (PlatformCALayerRemote::setContentsScale):
156         Inform the backing store of the contentsScale, and when it changes.
157
158         * WebProcess/WebPage/mac/RemoteLayerBackingStore.h:
159         (WebKit::RemoteLayerBackingStore::scale): Added.
160         (WebKit::RemoteLayerBackingStore::mapToContentCoordinates): Added.
161         * WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
162         (RemoteLayerBackingStore::RemoteLayerBackingStore):
163         (RemoteLayerBackingStore::encode):
164         (RemoteLayerBackingStore::decode):
165         (RemoteLayerBackingStore::mapToContentCoordinates):
166         Factor out flipping so we can use it for repaints in multiple places.
167
168         (RemoteLayerBackingStore::setNeedsDisplay):
169         (RemoteLayerBackingStore::display):
170         Create a buffer scaled up by contentsScale, take the scale into account
171         when copying clean bits from the front buffer, and apply the scale before
172         painting into the back buffer.
173
174 2013-10-21  Gergo Balogh  <geryxyz@inf.u-szeged.hu>
175
176         Remove qt from generate-forwarding-headers.pl
177         https://bugs.webkit.org/show_bug.cgi?id=123090
178
179         Reviewed by Andreas Kling.
180
181         * Scripts/generate-forwarding-headers.pl:
182
183 2013-10-21  Zan Dobersek  <zdobersek@igalia.com>
184
185         [GTK] g-ir-scanner should use the configured C compiler
186         https://bugs.webkit.org/show_bug.cgi?id=123088
187
188         Reviewed by Carlos Garcia Campos.
189
190         * GNUmakefile.am: Pass the C compiler that was detected at configuration to the g-ir-scanner command
191         via the CC environment variable. This solves the issue of the scanner running the GCC compiler with
192         the Clang-specific CFLAGS.
193
194 2013-10-20  Dan Bernstein  <mitz@apple.com>
195
196         [Cocoa] Loading progress API
197         https://bugs.webkit.org/show_bug.cgi?id=123069
198
199         Reviewed by Sam Weinig.
200
201         * UIProcess/API/mac/WKBrowsingContextController.h: Declared estimatedProgress property.
202         * UIProcess/API/mac/WKBrowsingContextController.mm:
203         (-[WKBrowsingContextController estimatedProgress]): Added.
204         (didStartProgress): Added. Calls new delegate method
205         -browsingContextControllerDidStartProgress:.
206         (didChangeProgress): Added. Calls new delegate method
207         -browsingContextController:estimatedProgressChangedTo:.
208         (didFinishProgress): Added. Calls new delegate method
209         -browsingContextControllerDidFinishProgress:.
210         (setUpPageLoaderClient): Hook up new client functions.
211         * UIProcess/API/mac/WKBrowsingContextLoadDelegate.h: Declared new delegate methods.
212
213 2013-10-20  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
214
215         Removing "unused parameter" compiling warnings from WebKit2 and WebCore
216         https://bugs.webkit.org/show_bug.cgi?id=123075
217
218         Reviewed by Andreas Kling.
219
220         * NetworkProcess/NetworkProcessPlatformStrategies.cpp:
221         (WebKit::NetworkProcessPlatformStrategies::loadResourceSynchronously):
222         * UIProcess/API/C/WKContext.cpp:
223         (WKContextGetPluginSiteDataManager):
224         * UIProcess/API/C/WKPreferences.cpp:
225         (WKPreferencesSetInspectorUsesWebKitUserInterface):
226         (WKPreferencesGetInspectorUsesWebKitUserInterface):
227         * UIProcess/WebProcessProxy.cpp:
228         (WebKit::WebProcessProxy::getPlugins):
229         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
230         (WKBundlePageSetFullScreenClient):
231         (WKBundlePageWillEnterFullScreen):
232         (WKBundlePageDidEnterFullScreen):
233         (WKBundlePageWillExitFullScreen):
234         (WKBundlePageDidExitFullScreen):
235         * WebProcess/MediaCache/WebMediaCacheManager.cpp:
236         (WebKit::WebMediaCacheManager::clearCacheForHostname):
237         * WebProcess/OriginData/WebOriginDataManager.cpp:
238         (WebKit::WebOriginDataManager::getOrigins):
239         (WebKit::WebOriginDataManager::deleteEntriesForOrigin):
240         (WebKit::WebOriginDataManager::deleteAllEntries):
241         (WebKit::WebOriginDataManager::startObservingChanges):
242         (WebKit::WebOriginDataManager::stopObservingChanges):
243         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
244         (WebKit::WebFrameLoaderClient::createPlugin):
245         (WebKit::WebFrameLoaderClient::recreatePlugin):
246         * WebProcess/WebPage/EventDispatcher.cpp:
247         (WebKit::EventDispatcher::wheelEvent):
248         * WebProcess/WebPage/WebPage.cpp:
249         (WebKit::WebPage::canPluginHandleResponse):
250
251 2013-10-19  Jer Noble  <jer.noble@apple.com>
252
253         Unreviewed roll out of r157695; broke Mac builds.
254
255         * Configurations/FeatureDefines.xcconfig:
256
257 2013-10-07  Jer Noble  <jer.noble@apple.com>
258
259         [MSE] [Mac] Enable MediaSource on the Mac
260         https://bugs.webkit.org/show_bug.cgi?id=122484
261
262         Reviewed by Darin Adler.
263
264         Enable ENABLE_MEDIA_SOURCE.
265
266         * Configurations/FeatureDefines.xcconfig:
267
268 2013-10-19  Dan Bernstein  <mitz@apple.com>
269
270         Fix the Mac 32-bit build by reverting r157676, r157678, and r157679.
271
272 2013-10-19  Dan Bernstein  <mitz@apple.com>
273
274         Try to fix the Mac 32-bit build.
275
276         * UIProcess/mac/WKFullScreenWindowController.h:
277         * UIProcess/mac/WKFullScreenWindowController.mm:
278
279 2013-10-19  Dan Bernstein  <mitz@apple.com>
280
281         Try to fix the Mac 32-bit build.
282
283         * UIProcess/API/mac/WKView.h:
284         * UIProcess/API/mac/WKView.mm:
285         * UIProcess/API/mac/WKViewInternal.h:
286         * UIProcess/API/mac/WKViewPrivate.h:
287
288 2013-10-19  Dan Bernstein  <mitz@apple.com>
289
290         [Cocoa] Remove some indirection that was only necessary for supporting the legacy Objective-C runtime
291         https://bugs.webkit.org/show_bug.cgi?id=123065
292
293         Reviewed by Sam Weinig.
294
295         * UIProcess/API/mac/WKBrowsingContextController.h: Added WK_API_ENABLED guard. Removed _data
296         ivar and WKBrowsingContextControllerData class declaration.
297         * UIProcess/API/mac/WKBrowsingContextController.mm: Added WK_API_ENABLED guard. Removed
298         WKBrowsingContextControllerData class and moved _pageRef ivar directly into
299         WKBrowsingContextController, declaring it in the @implementation. Removed ivar and accessors
300         for the loadDelegate property, letting the compiler synthesize them.
301         (-[WKBrowsingContextController dealloc]): Removed indirection via _data.
302         (-[WKBrowsingContextController _pageRef]): Ditto.
303         (-[WKBrowsingContextController loadRequest:userData:]): Removed indirection via -_pageRef.
304         (-[WKBrowsingContextController loadFileURL:restrictToFilesWithin:userData:]): Ditto.
305         (-[WKBrowsingContextController loadHTMLString:baseURL:userData:]): Ditto.
306         (-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):
307         Ditto.
308         (-[WKBrowsingContextController stopLoading]): Ditto.
309         (-[WKBrowsingContextController reload]): Ditto.
310         (-[WKBrowsingContextController reloadFromOrigin]): Ditto.
311         (-[WKBrowsingContextController goForward]): Ditto.
312         (-[WKBrowsingContextController canGoForward]): Ditto.
313         (-[WKBrowsingContextController goBack]): Ditto.
314         (-[WKBrowsingContextController canGoBack]): Ditto.
315         (-[WKBrowsingContextController activeURL]): Ditto.
316         (-[WKBrowsingContextController provisionalURL]): Ditto.
317         (-[WKBrowsingContextController committedURL]): Ditto.
318         (-[WKBrowsingContextController title]): Ditto.
319         (-[WKBrowsingContextController textZoom]): Ditto.
320         (-[WKBrowsingContextController setTextZoom:]): Ditto.
321         (-[WKBrowsingContextController pageZoom]): Ditto.
322         (-[WKBrowsingContextController setPageZoom:]): Ditto.
323         (-[WKBrowsingContextController setPaginationMode:]): Ditto.
324         (-[WKBrowsingContextController paginationMode]): Ditto.
325         (-[WKBrowsingContextController setPaginationBehavesLikeColumns:]): Ditto.
326         (-[WKBrowsingContextController paginationBehavesLikeColumns]): Ditto.
327         (-[WKBrowsingContextController setPageLength:]): Ditto.
328         (-[WKBrowsingContextController pageLength]): Ditto.
329         (-[WKBrowsingContextController setGapBetweenPages:]): Ditto.
330         (-[WKBrowsingContextController gapBetweenPages]): Ditto.
331         (-[WKBrowsingContextController pageCount]): Ditto.
332         (-[WKBrowsingContextController _initWithPageRef:]): Removed indirection via _data.
333         * UIProcess/API/mac/WKBrowsingContextControllerInternal.h: Added WK_API_ENABLED guard.
334         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h: Ditto.
335
336         * UIProcess/API/mac/WKBrowsingContextGroup.h: Added WK_API_ENABLED guard. Removed _data ivar
337         and WKBrowsingContextGroupData class declaration.
338         * UIProcess/API/mac/WKBrowsingContextGroup.mm: Added WK_API_ENABLED guard. Removed
339         WKBrowsingContextGroupData class and moved _pageGroupRef ivar directly info
340         WKBrowsingContextGroup, declaring it in the @implementation.
341         (-[WKBrowsingContextGroup initWithIdentifier:]): Removed indirection via _data.
342         (-[WKBrowsingContextGroup _pageGroupRef]): Ditto.
343         * UIProcess/API/mac/WKBrowsingContextGroupPrivate.h: Added WK_API_ENABLED guard.
344
345         * UIProcess/API/mac/WKConnection.h: Added WK_API_ENABLED guard. Removed _data ivar and
346         WKConnectionData class declaration.
347         * UIProcess/API/mac/WKConnection.mm: Added WK_API_ENABLED guard. Removed WKConnectionData
348         class and moved _connectionRef ivar directly into WKConnection, declaring it in the
349         @implementation. Removed ivar and accessors for the delegate property, letting the compiler
350         synthesize them.
351         (-[WKConnection dealloc]): Removed indirection via _data.
352         (-[WKConnection sendMessageWithName:body:]): Ditto.
353         (-[WKConnection _initWithConnectionRef:]): Ditto.
354         * UIProcess/API/mac/WKConnectionInternal.h: Added WK_API_ENABLED guard.
355
356         * UIProcess/API/mac/WKProcessGroup.h: Added WK_API_ENABLED guard. Replaced forward
357         declaration of WKConnection with an import. Removed _data ivar and WKProcessGroupData class
358         declaration.
359         * UIProcess/API/mac/WKProcessGroup.mm: Added WK_API_ENABLED guard. Removed
360         WKProcessGroupData class and moved _contextRef ivar directly into WKProcessGroup, declaring
361         it in the @implementation. Removed ivar and accessors for the delegate property, letting the
362         compiler synthesize them.
363         (-[WKProcessGroup initWithInjectedBundleURL:]): Removed indirection via _data.
364         (-[WKProcessGroup dealloc]): Ditto.
365         (-[WKProcessGroup _contextRef]): Ditto.
366         * UIProcess/API/mac/WKProcessGroupPrivate.h: Added WK_API_ENABLED guard.
367
368 2013-10-19  Andreas Kling  <akling@apple.com>
369
370         Attempt to get Lion building.
371
372         * UIProcess/mac/WebColorPickerMac.h:
373
374 2013-10-18  Tim Horton  <timothy_horton@apple.com>
375
376         Remote Layer Tree: Double-buffering and minimization of repaints
377         https://bugs.webkit.org/show_bug.cgi?id=123043
378
379         Reviewed by Simon Fraser.
380
381         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
382         (PlatformCALayerRemote::ensureBackingStore):
383         Don't worry about isOpaque with RemoteLayerBackingStore; this is a
384         optimization that is causing trouble; we can re-add it later.
385
386         (PlatformCALayerRemote::setBounds):
387         Make sure that we will repaint if our bounds change.
388
389         * WebProcess/WebPage/mac/RemoteLayerBackingStore.h:
390         (WebKit::RemoteLayerBackingStore::bitmap):
391         Keep a front and back buffer; return the front buffer when being asked for the bitmap.
392         Keep a Region of repaint areas.
393
394         * WebProcess/WebPage/mac/RemoteLayerBackingStore.mm:
395         (RemoteLayerBackingStore::RemoteLayerBackingStore):
396         (RemoteLayerBackingStore::encode):
397         (RemoteLayerBackingStore::decode):
398         Serialize only the front buffer, since the UI process only needs that.
399
400         (RemoteLayerBackingStore::setNeedsDisplay):
401         Store repaint rects instead of always setting the whole layer to be dirty.
402
403         (RemoteLayerBackingStore::display):
404         Paint into the back buffer (copying valid parts over from the front buffer),
405         then swap it to the front buffer. Use drawLayerContents so we get repaint counters, etc.
406
407 2013-10-18  Anders Carlsson  <andersca@apple.com>
408
409         Try to fix the Lion build.
410
411         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
412
413 2013-10-18  Anders Carlsson  <andersca@apple.com>
414
415         Remove spaces between template angle brackets
416         https://bugs.webkit.org/show_bug.cgi?id=123040
417
418         Reviewed by Andreas Kling.
419
420         * UIProcess/mac/WebColorPickerMac.h:
421         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
422         * WebProcess/WebProcess.cpp:
423         (WebKit::WebProcess::setProcessSuppressionEnabled):
424
425 2013-10-18  Brady Eidson  <beidson@apple.com>
426
427         Get rid of IDBFactoryBackendLevelDB and IDBTransactionBackendLevelDB in IDBDatabaseBackendLevelDB.
428         https://bugs.webkit.org/show_bug.cgi?id=123039
429
430         Reviewed by Anders Carlsson.
431
432         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
433         (WebKit::WebIDBFactoryBackend::removeIDBDatabaseBackend): Stub out this new interface method.
434         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
435
436 2013-10-18  Dan Bernstein  <mitz@apple.com>
437
438         [Cocoa] WKBrowsingController accessors crash instead of returning nil
439         https://bugs.webkit.org/show_bug.cgi?id=123036
440
441         Reviewed by Anders Carlsson.
442
443         * UIProcess/API/mac/WKBrowsingContextController.mm:
444         (autoreleased): Return nil if the object is NULL.
445
446 2013-10-18  Anders Carlsson  <andersca@apple.com>
447
448         Remove some Windows specific code from WebKit2
449         https://bugs.webkit.org/show_bug.cgi?id=123034
450
451         Reviewed by Beth Dakin.
452
453         * Platform/PlatformProcessIdentifier.h:
454         * Shared/API/c/WKDeclarationSpecifiers.h:
455         * UIProcess/API/C/WKNativeEvent.h:
456         * UIProcess/API/C/WKPreferencesPrivate.h:
457         * config.h:
458
459 2013-10-18  Dan Bernstein  <mitz@apple.com>
460
461         Removed the __MAC_OS_X_VERSION_MIN_REQUIRED condition from the definition of WK_API_ENABLED.
462
463         Rubber-stamped by Anders Carlsson.
464
465         * Shared/API/Cocoa/WKFoundation.h:
466
467 2013-10-17  Tim Horton  <timothy_horton@apple.com>
468
469         Remote Layer Tree: Proxy layer contents to the UI process
470         http://bugs.webkit.org/show_bug.cgi?id=123003
471
472         Reviewed by Anders Carlsson.
473
474         Proxy layer contents to the UI process. Contents are painted into ShareableBitmaps
475         for now, and are fully repainted on any invalidation. Also, contents do not respect
476         any kind of scale or use of contentsRect/etc.
477
478         * Shared/mac/RemoteLayerTreeTransaction.h:
479         * Shared/mac/RemoteLayerTreeTransaction.mm:
480         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
481         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
482         (WebKit::dumpChangedLayers):
483         Store/encode/decode/dump the new RemoteLayerBackingStore.
484
485         * UIProcess/mac/RemoteLayerTreeHost.mm:
486         (WebKit::RemoteLayerTreeHost::commit):
487         Fix a mistake where contentsRect was getting reset when contentsScale changed.
488         Set the layer contents when the backing store changes.
489
490         * WebKit2.xcodeproj/project.pbxproj:
491         Add RemoteLayerBackingStore.
492
493         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
494         (PlatformCALayerRemote::recursiveBuildTransaction):
495         Paint while building our transaction, and mark the backing store as changed
496         if we did any painting.
497
498         (PlatformCALayerRemote::ensureBackingStore):
499         Keep the backing store's properties up-to-date with our layer.
500
501         (PlatformCALayerRemote::setNeedsDisplay):
502         Inform the backing store that it needs to paint.
503
504         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
505
506         * WebProcess/WebPage/mac/RemoteLayerBackingStore.h: Added.
507         * WebProcess/WebPage/mac/RemoteLayerBackingStore.mm: Added.
508         (RemoteLayerBackingStore::RemoteLayerBackingStore):
509         (RemoteLayerBackingStore::encode):
510         (RemoteLayerBackingStore::decode):
511         Encode/decode our ShareableBitmap (via its handle) and size.
512
513         (RemoteLayerBackingStore::setNeedsDisplay):
514         For now, repaint the world.
515
516         (RemoteLayerBackingStore::display):
517         Create a new bitmap if needed, and paint into it.
518
519 2013-10-17  Dan Bernstein  <mitz@apple.com>
520
521         Fixed a typo in the definition of WK_API_ENABLED.
522
523         * Shared/API/Cocoa/WKFoundation.h: It’s 101000, not 10100.
524
525 2013-10-17  Dan Bernstein  <mitz@apple.com>
526
527         Add and deploy WK_API_ENABLED guards
528         https://bugs.webkit.org/show_bug.cgi?id=123008
529
530         Reviewed by Darin Adler.
531
532         * Shared/API/Cocoa: Added.
533         * Shared/API/Cocoa/WKFoundation.h: Added. Defined WK_API_ENABLED based on whether the
534         Objective-C API should be enabled in the current configuration.
535         * Shared/mac/ObjCObjectGraphCoders.mm:
536         (WebKit::typeFromObject): Changed to use WK_API_ENABLED.
537         (WebKit::WebContextObjCObjectGraphEncoderImpl::encode): Ditto.
538         (WebKit::WebContextObjCObjectGraphDecoderImpl::decode): Ditto.
539         (WebKit::InjectedBundleObjCObjectGraphEncoderImpl::encode): Ditto.
540         (WebKit::InjectedBundleObjCObjectGraphDecoderImpl::decode): Ditto.
541         * UIProcess/API/mac/WKTypeRefWrapper.h: Ditto.
542         * UIProcess/API/mac/WKTypeRefWrapper.mm: Ditto.
543         * UIProcess/API/mac/WebKit2.h: Imported WKFoundation.h.
544         * WebKit2.xcodeproj/project.pbxproj: Added new Cocoa group in Shared/API. Added
545         WKFoundation.h as a public header.
546         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.h:
547         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
548         * WebProcess/InjectedBundle/API/mac/WKDOMElement.h:
549         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
550         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.h:
551         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
552         * WebProcess/InjectedBundle/API/mac/WKDOMNode.h:
553         * WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
554         * WebProcess/InjectedBundle/API/mac/WKDOMNodePrivate.h:
555         * WebProcess/InjectedBundle/API/mac/WKDOMRange.h:
556         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
557         * WebProcess/InjectedBundle/API/mac/WKDOMRangePrivate.h:
558         * WebProcess/InjectedBundle/API/mac/WKDOMText.h:
559         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
560         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.h:
561         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
562         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.h:
563         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
564         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.h:
565         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
566         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerInternal.h:
567         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
568         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInInternal.h:
569         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h:
570         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
571         (WebKit::InjectedBundle::load):
572
573 2013-10-17  Csaba Osztrogonác  <ossy@webkit.org>
574
575         [WK2] Speculative buildfixes for GTK and EFL after r157582.
576
577         * CMakeLists.txt:
578         * GNUmakefile.am:
579
580 2013-10-17  Martin Hock  <mhock@apple.com>
581
582         Refactor stored website data APIs
583         https://bugs.webkit.org/show_bug.cgi?id=122781
584
585         Reviewed by Brady Eidson.
586
587         Add WebOriginDataManager along with corresponding class
588         WebOriginDataManagerProxy and API WKOriginDataManager.
589
590         Currently, the new files are unused.
591
592         WKOriginDataManager should subsume the functionality of:
593         WKApplicationCacheManager, WKCookieManager, WKDatabaseManager,
594         WKKeyValueStorageManager, WKMediaCacheManager,
595         WKPluginSiteDataManager, and WKResourceCacheManager.
596
597         * CMakeLists.txt:
598         * DerivedSources.make:
599         * GNUmakefile.am:
600         * GNUmakefile.list.am:
601         * Shared/API/c/WKBase.h:
602         * Shared/APIObject.h:
603         * UIProcess/API/C/WKAPICast.h:
604         * UIProcess/API/C/WKContext.cpp:
605         (WKContextGetOriginDataManager):
606         * UIProcess/API/C/WKContext.h:
607         * UIProcess/API/C/WKOriginDataManager.cpp: Added.
608         (WKOriginDataManagerGetTypeID):
609         (WKOriginDataManagerGetOrigins):
610         (WKOriginDataManagerDeleteEntriesForOrigin):
611         (WKOriginDataManagerDeleteAllEntries):
612         (WKOriginDataManagerStartObservingChanges):
613         (WKOriginDataManagerStopObservingChanges):
614         (WKOriginDataManagerSetChangeClient):
615         * UIProcess/API/C/WKOriginDataManager.h: Added.
616         * UIProcess/WebOriginDataManagerProxy.cpp: Added.
617         (WebKit::WebOriginDataManagerProxy::supplementName):
618         (WebKit::WebOriginDataManagerProxy::create):
619         (WebKit::WebOriginDataManagerProxy::WebOriginDataManagerProxy):
620         (WebKit::WebOriginDataManagerProxy::~WebOriginDataManagerProxy):
621         (WebKit::WebOriginDataManagerProxy::contextDestroyed):
622         (WebKit::WebOriginDataManagerProxy::processDidClose):
623         (WebKit::WebOriginDataManagerProxy::shouldTerminate):
624         (WebKit::WebOriginDataManagerProxy::refWebContextSupplement):
625         (WebKit::WebOriginDataManagerProxy::derefWebContextSupplement):
626         (WebKit::WebOriginDataManagerProxy::getOrigins):
627         (WebKit::WebOriginDataManagerProxy::didGetOrigins):
628         (WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin):
629         (WebKit::WebOriginDataManagerProxy::deleteAllEntries):
630         (WebKit::WebOriginDataManagerProxy::startObservingChanges):
631         (WebKit::WebOriginDataManagerProxy::stopObservingChanges):
632         (WebKit::WebOriginDataManagerProxy::setChangeClient):
633         (WebKit::WebOriginDataManagerProxy::didChange):
634         * UIProcess/WebOriginDataManagerProxy.h: Added.
635         * UIProcess/WebOriginDataManagerProxy.messages.in: Added.
636         * UIProcess/WebOriginDataManagerProxyChangeClient.cpp: Added.
637         (WebKit::WebOriginDataManagerProxyChangeClient::didChange):
638         * UIProcess/WebOriginDataManagerProxyChangeClient.h: Added.
639         * WebKit2.xcodeproj/project.pbxproj:
640         * WebProcess/OriginData/WebOriginDataManager.cpp: Added.
641         (WebKit::WebOriginDataManager::supplementName):
642         (WebKit::WebOriginDataManager::WebOriginDataManager):
643         (WebKit::WebOriginDataManager::getOrigins):
644         (WebKit::WebOriginDataManager::deleteEntriesForOrigin):
645         (WebKit::WebOriginDataManager::deleteAllEntries):
646         (WebKit::WebOriginDataManager::startObservingChanges):
647         (WebKit::WebOriginDataManager::stopObservingChanges):
648         * WebProcess/OriginData/WebOriginDataManager.h: Added.
649         * WebProcess/OriginData/WebOriginDataManager.messages.in: Added.
650
651 2013-10-17  Brady Eidson  <beidson@apple.com>
652
653         Blind attempt at gtk-wk2 build fix.
654
655         * GNUmakefile.am:
656
657 2013-10-17  Brady Eidson  <beidson@apple.com>
658
659         Add scaffolding for IDBDatabaseBackends in Web and Database processes
660         https://bugs.webkit.org/show_bug.cgi?id=122971
661
662         Reviewed by Tim Horton.
663
664         This patch:
665         - Adds a WebProcessIDBDatabaseBackend
666         - Adds a DatabaseProcessIDBDatabaseBackend
667         - Establishes the basic messaging between them
668         - Actually creates those backends as the result of an indexedDB.open() call from javascript
669
670         * DerivedSources.make:
671         * WebKit2.xcodeproj/project.pbxproj:
672         * Platform/Logging.h:
673
674         Hook up messaging so (Web/Database)ProcessIDBDatabaseBackends can message each other:
675         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
676         (WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
677         (WebKit::DatabaseToWebProcessConnection::establishIDBDatabaseBackend):
678         * DatabaseProcess/DatabaseToWebProcessConnection.h:
679         (WebKit::DatabaseToWebProcessConnection::connection):
680         * DatabaseProcess/DatabaseToWebProcessConnection.messages.in: Added.
681
682         DatabaseProcess side of an IDBDatabaseBackend:
683         * DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.cpp:
684         (WebKit::DatabaseProcessIDBDatabaseBackend::DatabaseProcessIDBDatabaseBackend):
685         (WebKit::DatabaseProcessIDBDatabaseBackend::~DatabaseProcessIDBDatabaseBackend):
686         (WebKit::DatabaseProcessIDBDatabaseBackend::openConnection):
687         (WebKit::DatabaseProcessIDBDatabaseBackend::messageSenderConnection):
688         * DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.h: Added.
689         (WebKit::DatabaseProcessIDBDatabaseBackend::create):
690         * DatabaseProcess/IndexedDB/DatabaseProcessIDBDatabaseBackend.messages.in: Added.
691
692         WebProcess side of an IDBDatabaseBackend:
693         * WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.cpp: Added.
694         (WebKit::generateBackendIdentifier):
695         (WebKit::WebProcessIDBDatabaseBackend::WebProcessIDBDatabaseBackend):
696         (WebKit::WebProcessIDBDatabaseBackend::~WebProcessIDBDatabaseBackend):
697         (WebKit::WebProcessIDBDatabaseBackend::openConnection):
698         (WebKit::WebProcessIDBDatabaseBackend::createObjectStore):
699         (WebKit::WebProcessIDBDatabaseBackend::deleteObjectStore):
700         (WebKit::WebProcessIDBDatabaseBackend::createTransaction):
701         (WebKit::WebProcessIDBDatabaseBackend::close):
702         (WebKit::WebProcessIDBDatabaseBackend::commit):
703         (WebKit::WebProcessIDBDatabaseBackend::abort):
704         (WebKit::WebProcessIDBDatabaseBackend::createIndex):
705         (WebKit::WebProcessIDBDatabaseBackend::deleteIndex):
706         (WebKit::WebProcessIDBDatabaseBackend::get):
707         (WebKit::WebProcessIDBDatabaseBackend::put):
708         (WebKit::WebProcessIDBDatabaseBackend::setIndexKeys):
709         (WebKit::WebProcessIDBDatabaseBackend::setIndexesReady):
710         (WebKit::WebProcessIDBDatabaseBackend::openCursor):
711         (WebKit::WebProcessIDBDatabaseBackend::count):
712         (WebKit::WebProcessIDBDatabaseBackend::deleteRange):
713         (WebKit::WebProcessIDBDatabaseBackend::clear):
714         (WebKit::WebProcessIDBDatabaseBackend::messageSenderConnection):
715         (WebKit::WebProcessIDBDatabaseBackend::establishDatabaseProcessBackend):
716         * WebProcess/Databases/IndexedDB/WebProcessIDBDatabaseBackend.h: Added.
717         (WebKit::WebProcessIDBDatabaseBackend::create):
718
719         Basic shared utilities that multiple processes will need going forward:
720         * Shared/Databases/IndexedDB/IDBUtilities.cpp:
721         (WebKit::uniqueDatabaseIdentifier):
722         * Shared/Databases/IndexedDB/IDBUtilities.h:
723
724         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
725         (WebKit::sharedDatabaseBackendMap):
726         (WebKit::WebIDBFactoryBackend::open): Actually establish an IDBDatabaseBackend in the DatabaseProcess
727           when indexedDB.open() is called, even if it does nothing for now.
728
729         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
730         * WebProcess/Databases/WebToDatabaseProcessConnection.h:
731
732 2013-10-17  Attila Dusnoki  <h047679@stud.u-szeged.hu>
733
734         [WK2] REGRESSION(r156472): scrolling coordinator is always enabled incorrectly.
735         https://bugs.webkit.org/show_bug.cgi?id=122958
736
737         Reviewed by Tim Horton.
738
739         * WebProcess/WebPage/WebPage.cpp:
740         (WebKit::WebPage::WebPage): Missing ENABLE(THREADED_SCROLLING) guard added.
741
742 2013-10-17  Mark Rowe  <mrowe@apple.com>
743
744         <rdar://problem/15183901> WebKit2 XPC services load the wrong frameworks when running
745         from the staged frameworks location.
746
747         Build the XPC services with DYLD_VERSIONED_FRAMEWORK_PATH when USE_STAGING_INSTALL_PATH
748         is set to YES. This is necessary because there's no way to specify environment variables
749         to be used when an XPC service is launched.
750
751         Reviewed by Anders Carlsson.
752
753         * Configurations/BaseTarget.xcconfig: Set OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH to contain the
754         DYLD_VERSIONED_FRAMEWORK_PATH value when USE_STAGING_INSTALL_PATH is YES.
755         * Configurations/BaseXPCService.xcconfig: Include OTHER_LDFLAGS_VERSIONED_FRAMEWORK_PATH in the
756         value of OTHER_LDFLAGS.
757         * Configurations/PluginService.32.xcconfig: Ditto.
758         * Configurations/PluginService.64.xcconfig: Ditto.
759
760 2013-10-16  Tim Horton  <timothy_horton@apple.com>
761
762         Remote Layer Tree: Complete support for simple layer properties
763         https://bugs.webkit.org/show_bug.cgi?id=122933
764
765         Reviewed by Anders Carlsson.
766
767         Add remote layer tree support for maskLayer, contentsRect, contentsScale,
768         minificationFilter, magnificationFilter, speed, and timeOffset.
769
770         * Shared/mac/RemoteLayerTreeTransaction.h:
771         * Shared/mac/RemoteLayerTreeTransaction.mm:
772         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
773         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
774         (WebKit::dumpProperty):
775         (WebKit::dumpChangedLayers):
776         Add the new properties.
777
778         * UIProcess/mac/RemoteLayerTreeHost.mm:
779         (WebKit::toCAFilterType):
780         (WebKit::RemoteLayerTreeHost::commit):
781         Apply the new properties.
782
783         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
784         (PlatformCALayerRemote::setSublayers):
785         (PlatformCALayerRemote::appendSublayer):
786         (PlatformCALayerRemote::insertSublayer):
787         Ensure that passed-in sublayers are always also PlatformCALayerRemote instances.
788         These are ASSERT_WITH_SECURITY_IMPLICATION as we will later unconditionally static_cast
789         them to PlatformCALayerRemote.
790
791         (PlatformCALayerRemote::setMask):
792         (PlatformCALayerRemote::setContentsRect):
793         (PlatformCALayerRemote::setMinificationFilter):
794         (PlatformCALayerRemote::setMagnificationFilter):
795         (PlatformCALayerRemote::setSpeed):
796         (PlatformCALayerRemote::setTimeOffset):
797         (PlatformCALayerRemote::contentsScale):
798         (PlatformCALayerRemote::setContentsScale):
799         Remove setFrame, store the new properties.
800
801         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
802         Remove setFrame, add isRemote, fix pointer side on playerLayer.
803
804 2013-10-16  Ryuan Choi  <ryuan.choi@samsung.com>
805
806         Unreviewed build fix attempt on EFL port after r157520 and r157523
807
808         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
809         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
810         Removed ArgumentCoder<TransformationMatrix> which caused redefinition build error
811         in EFL port.
812
813 2013-10-16  Anders Carlsson  <andersca@apple.com>
814
815         Remove Qt sandbox process code
816         https://bugs.webkit.org/show_bug.cgi?id=122920
817
818         Reviewed by Geoffrey Garen.
819
820         This code was only used by the Qt port, and the other Linux-based ports are using the seccomp based sandbox.
821
822         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.cpp: Removed.
823         * Shared/linux/SandboxProcess/SandboxEnvironmentLinux.h: Removed.
824
825 2013-10-16  Jochen Eisinger  <jochen@chromium.org>
826
827         A page should exit fullscreen mode if it opens a new popup
828         https://bugs.webkit.org/show_bug.cgi?id=122865
829
830         Reviewed by Jer Noble.
831
832         If a fullscreen page opens a popup, the popup would be hidden and
833         therefore invisible to the user. To avoid this, exit fullscreen mode
834         before opening a new window.
835
836         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
837         (WebKit::WebChromeClient::createWindow):
838
839 2013-10-16  Brady Eidson  <beidson@apple.com>
840
841         Blind attempt to fix non-DATABASE_PROCESS builds.
842
843         * WebProcess/WebProcess.cpp:
844
845 2013-10-16  Tim Horton  <timothy_horton@apple.com>
846
847         PlatformCALayer constructor should take layer type as an argument
848         https://bugs.webkit.org/show_bug.cgi?id=122915
849
850         Reviewed by Simon Fraser.
851
852         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
853         (PlatformCALayerRemote::PlatformCALayerRemote):
854         Use the new LayerType argument.
855
856 2013-10-16  Tim Horton  <timothy_horton@apple.com>
857
858         Remote Layer Tree: Use a default instead of an environment variable
859         https://bugs.webkit.org/show_bug.cgi?id=122913
860
861         Reviewed by Anders Carlsson.
862
863         * UIProcess/API/mac/WKView.mm:
864         (-[WKView std::WebKit::]):
865         Use the default 'WebKit2UseRemoteLayerTreeDrawingArea' instead of
866         the environment variable 'WK_USE_REMOTE_LAYER_TREE_DRAWING_AREA'
867         to indicate that WKViews should make RemoteLayerTreeDrawingAreas.
868
869 2013-10-15  Brady Eidson  <beidson@apple.com>
870
871         Flesh out the DatabaseProcess (and launch it!)
872         https://bugs.webkit.org/show_bug.cgi?id=122884
873
874         Reviewed by Tim Horton.
875
876         This patch adds actual process launching and basic messaging infrastructure for the DatabaseProcess.
877
878         It still does very little except exist.
879
880         Project file stuff:
881         * WebKit2.xcodeproj/project.pbxproj:
882         * DerivedSources.make:
883
884         WebContext owns the DatabaseProcess (much like the NetworkProcess):
885         * UIProcess/WebContext.cpp:
886         (WebKit::WebContext::ensureDatabaseProcess):
887         (WebKit::WebContext::getDatabaseProcessConnection):
888         * UIProcess/WebContext.h:
889
890         Add a basic DatabaseProcess that - for now - can only return a new Connection for a WebProcess:
891         * DatabaseProcess/DatabaseProcess.cpp:
892         (WebKit::DatabaseProcess::createDatabaseToWebProcessConnection):
893         * DatabaseProcess/DatabaseProcess.h:
894         * DatabaseProcess/DatabaseProcess.messages.in: Added.
895
896         Add an object to represent a single connection to a single WebProcess:
897         * DatabaseProcess/DatabaseToWebProcessConnection.cpp:
898         (WebKit::DatabaseToWebProcessConnection::create):
899         (WebKit::DatabaseToWebProcessConnection::DatabaseToWebProcessConnection):
900         (WebKit::DatabaseToWebProcessConnection::~DatabaseToWebProcessConnection):
901         (WebKit::DatabaseToWebProcessConnection::didReceiveMessage):
902         (WebKit::DatabaseToWebProcessConnection::didClose):
903         (WebKit::DatabaseToWebProcessConnection::didReceiveInvalidMessage):
904         * DatabaseProcess/DatabaseToWebProcessConnection.h:
905
906         Basic DatabaseProcessProxy with the ability to ask the DatabaseProcess for a connection to hand back to a WebProcess:
907         * UIProcess/Databases/DatabaseProcessProxy.cpp:
908         (WebKit::DatabaseProcessProxy::DatabaseProcessProxy):
909         (WebKit::DatabaseProcessProxy::getDatabaseProcessConnection):
910         (WebKit::DatabaseProcessProxy::didCreateDatabaseToWebProcessConnection):
911         (WebKit::DatabaseProcessProxy::didFinishLaunching):
912         * UIProcess/Databases/DatabaseProcessProxy.h:
913         * UIProcess/Databases/DatabaseProcessProxy.messages.in: Added.
914
915         Add an object to represent a WebProcess’s connection to a DatabaseProcess:
916         * WebProcess/Databases/WebToDatabaseProcessConnection.cpp:
917         (WebKit::WebToDatabaseProcessConnection::WebToDatabaseProcessConnection):
918         (WebKit::WebToDatabaseProcessConnection::~WebToDatabaseProcessConnection):
919         (WebKit::WebToDatabaseProcessConnection::didReceiveMessage):
920         (WebKit::WebToDatabaseProcessConnection::didClose):
921         (WebKit::WebToDatabaseProcessConnection::didReceiveInvalidMessage):
922         * WebProcess/Databases/WebToDatabaseProcessConnection.h:
923         (WebKit::WebToDatabaseProcessConnection::create):
924         (WebKit::WebToDatabaseProcessConnection::connection):
925
926         Give WebProcess(Proxy) an accessor for a Web -> Database process connection:
927         * WebProcess/WebProcess.cpp:
928         (WebKit::WebProcess::webToDatabaseProcessConnectionClosed):
929         (WebKit::WebProcess::webToDatabaseProcessConnection):
930         (WebKit::WebProcess::ensureWebToDatabaseProcessConnection):
931         * WebProcess/WebProcess.h:
932         * UIProcess/WebProcessProxy.cpp:
933         (WebKit::WebProcessProxy::getDatabaseProcessConnection):
934         * UIProcess/WebProcessProxy.h:
935         * UIProcess/WebProcessProxy.messages.in:
936
937         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
938         (WebKit::WebIDBFactoryBackend::open): Access the database process connection to test that it works.
939
940         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
941         (WebKit::WebPlatformStrategies::createIDBFactoryBackend): Keep non-DATABASE_PROCESS builds working.
942
943 2013-10-16  Tim Horton  <timothy_horton@apple.com>
944
945         RemoteLayerTree: Add support for more layer properties and transform layers
946         https://bugs.webkit.org/show_bug.cgi?id=122906
947
948         Reviewed by Anders Carlsson.
949
950         Add support for name, border width, border color, opacity, transform, sublayer transform,
951         hidden, geometry flipped, double sided, masks to bounds, and opaque layer properties.
952
953         Factor layer creation out from layer changes, so that we can create layers of the correct
954         type. Use this mechanism to create CATransformLayers when handed a LayerTypeTransformLayer.
955
956         * Shared/WebCoreArgumentCoders.cpp:
957         (CoreIPC::::encode):
958         (CoreIPC::::decode):
959         * Shared/WebCoreArgumentCoders.h:
960         Add coders for TransformationMatrix.
961
962         * Shared/mac/RemoteLayerTreeTransaction.h:
963         Add the new LayerChange values.
964
965         (WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):
966         LayerProperties::layerChanges should be a LayerChange.
967
968         (WebKit::RemoteLayerTreeTransaction::createdLayers):
969         Expose the list of newly created layers (for RemoteLayerTreeHost's consumption).
970
971         * Shared/mac/RemoteLayerTreeTransaction.mm:
972         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::LayerCreationProperties):
973         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
974         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
975         Add (and support coding) a new LayerCreationProperties struct, which is currently
976         just a pair of LayerID and PlatformCALayer::LayerType. Additional properties may follow.
977
978         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
979         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
980         Encode and decode all of the new layer properties.
981         Encode changedProperties as an enum, not an unsigned.
982
983         (WebKit::RemoteLayerTreeTransaction::encode):
984         (WebKit::RemoteLayerTreeTransaction::decode):
985         Encode and decode the list of newly created layers.
986
987         (WebKit::RemoteLayerTreeTransaction::setCreatedLayers):
988         Setter for the list of newly created layers, which comes from the
989         RemoteLayerTreeContext at commit time.
990
991         (WebKit::dumpProperty):
992         Helper function to dump TransformationMatrix instances.
993
994         (WebKit::dumpChangedLayers):
995         Dump all of the new layer properties.
996
997         (WebKit::RemoteLayerTreeTransaction::dump):
998         Dump the list of newly created layers.
999
1000         * UIProcess/mac/RemoteLayerTreeHost.h:
1001         * UIProcess/mac/RemoteLayerTreeHost.mm:
1002         (WebKit::cgColorFromColor):
1003         Factor out the code to make a CGColor from a WebCore::Color, as we need it
1004         for both border and background color.
1005
1006         (WebKit::RemoteLayerTreeHost::commit):
1007         Create layers before applying changes, using the new list of newly created layers.
1008         When applying changes, ensure that the layer we're interested in was already created.
1009         Rename "sublayer" to "layer", and use dot notation everywhere.
1010         Apply all the new layer properties to the layers.
1011
1012         (WebKit::RemoteLayerTreeHost::getLayer):
1013         (WebKit::RemoteLayerTreeHost::createLayer):
1014         Separate creating a new layer from retrieving it by ID.
1015         Ensure that a layer doesn't already exist when creating it.
1016         Support creating CATransformLayers.
1017
1018         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
1019         Disable accelerated animations, as we don't support proxying animations yet.
1020         This makes GraphicsLayer fall back to software animations, which already work wonderfully remotely.
1021
1022         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
1023         (PlatformCALayerRemote::PlatformCALayerRemote):
1024         Inform the RemoteLayerTreeContext of the creation of every PlatformCALayerRemote.
1025
1026         (PlatformCALayerRemote::removeFromSuperlayer):
1027         (PlatformCALayerRemote::replaceSublayer):
1028         (PlatformCALayerRemote::adoptSublayers):
1029         Assert when we hit a few critical unimplemented methods that would
1030         leave the layer tree in a broken state.
1031
1032         (PlatformCALayerRemote::isOpaque):
1033         (PlatformCALayerRemote::setOpaque):
1034         (PlatformCALayerRemote::transform):
1035         (PlatformCALayerRemote::setTransform):
1036         (PlatformCALayerRemote::sublayerTransform):
1037         (PlatformCALayerRemote::setSublayerTransform):
1038         (PlatformCALayerRemote::setHidden):
1039         (PlatformCALayerRemote::setGeometryFlipped):
1040         (PlatformCALayerRemote::isDoubleSided):
1041         (PlatformCALayerRemote::setDoubleSided):
1042         (PlatformCALayerRemote::masksToBounds):
1043         (PlatformCALayerRemote::setMasksToBounds):
1044         (PlatformCALayerRemote::setBorderWidth):
1045         (PlatformCALayerRemote::setBorderColor):
1046         (PlatformCALayerRemote::opacity):
1047         (PlatformCALayerRemote::setOpacity):
1048         (PlatformCALayerRemote::setName):
1049         Proxy all of these properties via RemoteLayerTreeTransaction.
1050
1051         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
1052         Add storage for the list of newly created layers.
1053         Use LayerID for the list of destroyed layers.
1054
1055         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
1056         (WebKit::RemoteLayerTreeContext::layerWasCreated):
1057         Store the ID and type of the newly created layer to be pushed to the UI process later.
1058
1059         (WebKit::RemoteLayerTreeContext::flushLayers):
1060         Push the created and destroyed layers to the transaction *after* flushing
1061         GraphicsLayers, so that any changes to e.g. structural layers will not be missed.
1062
1063 2013-10-16  Csaba Osztrogonác  <ossy@webkit.org>
1064
1065         [WK2][Efl][CMake] Add support for ENABLE_NETWORK_PROCESS to the build system
1066         https://bugs.webkit.org/show_bug.cgi?id=110139
1067
1068         Reviewed by Laszlo Gombos.
1069
1070         Original patch by Balazs Kelemen <kbalazs@webkit.org>
1071
1072         * CMakeLists.txt:
1073         * PlatformEfl.cmake:
1074
1075 2013-10-16  Robert Plociennik  <r.plociennik@samsung.com>
1076
1077         [EFL] Minibrowser can't load child window's location
1078         https://bugs.webkit.org/show_bug.cgi?id=122485
1079
1080         Reviewed by Gyuyoung Kim.
1081
1082         EwkView::createNewPage(), which is only called during handling of
1083         Messages::WebPageProxy::CreateNewPage message from WebProcess, no longer passes
1084         the URL to window_create(). As a result, no Messages::WebPage::LoadURL message
1085         is sent back, that would load the same URL twice and effectively cancel any
1086         other scheduled navigation inside WebProcess.
1087
1088         Additionally, since the url parameter in MiniBrowser's implementation of
1089         window_create() is only used internally and is prone to bugs as demonstrated
1090         in r139303 (d7f10c8), it has been removed in favour of explicit calls to
1091         ewk_view_url_set().
1092
1093         * UIProcess/API/efl/EwkView.cpp:
1094         (EwkView::createNewPage): No longer passes the URL to window_create() impl.
1095         * UIProcess/API/efl/ewk_view.h: window_create() no longer has the url parameter.
1096         * UIProcess/API/efl/tests/test_ewk2_window_features.cpp: Test methods updated to
1097             comply with the API change.
1098         (EWK2WindowFeaturesTest::createDefaultWindow): Ditto.
1099         (EWK2WindowFeaturesTest::createWindow): Ditto.
1100
1101 2013-10-15  Jae Hyun Park  <jae.park@company100.net>
1102
1103         Unreviewed. Build fix after r157476.
1104
1105         * GNUmakefile.am:
1106
1107 2013-10-15  Sergio Correia  <sergio.correia@openbossa.org>
1108
1109         [EFL][WK2] Make SeccompFilters build again after r156349 and r156353
1110         https://bugs.webkit.org/show_bug.cgi?id=122872
1111
1112         Reviewed by Anders Carlsson.
1113
1114         * Shared/linux/SeccompFilters/SeccompBroker.cpp:
1115         (WebKit::SeccompBrokerClient::dispatch): Fix usage of extinct 'create'
1116         methods of ArgumentEncoder/ArgumentDecoder.
1117         (WebKit::SeccompBroker::runLoop): Ditto.
1118
1119 2013-10-15  Jinwoo Song  <jinwoo7.song@samsung.com>
1120
1121         Removed argument coders for FloatPoint3D in CoodinatedGraphicsArgumentCoders.
1122         https://bugs.webkit.org/show_bug.cgi?id=122875
1123
1124         Reviewed by Gyuyoung Kim.
1125
1126         Argument coders for FloatPoint3D is added in WebCoreArgumentCoders after r157478
1127         and it caused redefinition build error in EFL port.
1128
1129         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
1130         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
1131
1132 2013-10-15  Dean Jackson  <dino@apple.com>
1133
1134         Add ENABLE_WEB_ANIMATIONS flag
1135         https://bugs.webkit.org/show_bug.cgi?id=122871
1136
1137         Reviewed by Tim Horton.
1138
1139         Eventually might be http://dev.w3.org/fxtf/web-animations/
1140         but this is just engine-internal work at the moment.
1141
1142         * Configurations/FeatureDefines.xcconfig:
1143
1144 2013-10-15  Tim Horton  <timothy_horton@apple.com>
1145
1146         Add a PlatformCALayer subclass that proxies its property changes across the process boundary
1147         https://bugs.webkit.org/show_bug.cgi?id=122773
1148
1149         Reviewed by Anders Carlsson.
1150
1151         PlatformCALayerRemote coordinates with RemoteLayerTreeDrawingArea and friends
1152         to enable cross-process proxying of the hierarchy of compositing layers.
1153
1154         In the Web process, we have GraphicsLayerCARemote, which owns 1+ PlatformCALayerRemote(s).
1155         Unlike PlatformCALayer{Mac, Win}, which own PlatformLayers (CALayer/CACFLayer),
1156         PlatformCALayerRemote stores any changes to its properties in a struct, and keeps track of
1157         which properties have changed since the last commit. Commits are scheduled and performed by
1158         RemoteLayerTreeContext, on RemoteLayerTreeDrawingArea's behalf, and result in
1159         RemoteLayerTreeTransaction encoding said property changes and throwing them across
1160         to the UI process, where RemoteLayerTreeHost applies them to a tree of CALayers kept there.
1161
1162         This code can be enabled by running with the WK_USE_REMOTE_LAYER_TREE_DRAWING_AREA
1163         environment variable set.
1164
1165         * Shared/WebCoreArgumentCoders.cpp:
1166         (CoreIPC::decode):
1167         (CoreIPC::encode):
1168         * Shared/WebCoreArgumentCoders.h:
1169         Add argument coders for FloatPoint3D.
1170
1171         * Shared/mac/RemoteLayerTreeTransaction.h:
1172         (WebKit::RemoteLayerTreeTransaction::LayerProperties::notePropertiesChanged):
1173         (WebKit::RemoteLayerTreeTransaction::changedLayers):
1174         (WebKit::RemoteLayerTreeTransaction::destroyedLayers):
1175         * Shared/mac/RemoteLayerTreeTransaction.mm:
1176         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
1177         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
1178         (WebKit::RemoteLayerTreeTransaction::decode):
1179         (WebKit::dumpChangedLayers):
1180         Add support for background color and anchor point in the layer transaction.
1181         Make layer position a 3D point because that's what it really is.
1182
1183         (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
1184         The logic in layerPropertiesChanged is moved into PlatformCALayerRemote.
1185
1186         * UIProcess/WebPageProxy.h:
1187         Include PlatformLayer.h; it seems annoying to successfully forward-declare
1188         PlatformLayer because of the difference in definition between Objective-C and C++.
1189         Drive-by un-indent some namespace contents and use OBJC_CLASS.
1190
1191         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
1192         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
1193         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
1194         (WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
1195         (WebKit::RemoteLayerTreeDrawingAreaProxy::didUpdateGeometry):
1196         (WebKit::RemoteLayerTreeDrawingAreaProxy::sendUpdateGeometry):
1197         Send geometry updates to the RemoteLayerTreeDrawingArea.
1198
1199         * UIProcess/mac/RemoteLayerTreeHost.h:
1200         * UIProcess/mac/RemoteLayerTreeHost.mm:
1201         (nullActionsDictionary):
1202         (WebKit::RemoteLayerTreeHost::commit):
1203         Apply layer property changes to the named sublayer.
1204
1205         (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
1206         Create CALayers instead of GraphicsLayers.
1207         Ensure that they won't perform implicit animations.
1208
1209         * UIProcess/mac/WebPageProxyMac.mm:
1210         (WebKit::WebPageProxy::setAcceleratedCompositingRootLayer):
1211         This should take a PlatformLayer instead of a GraphicsLayer, since we don't have
1212         GraphicsLayers in the UIProcess.
1213
1214         * WebKit2.xcodeproj/project.pbxproj:
1215         Add GraphicsLayerCARemote and PlatformCALayerRemote, remove RemoteGraphicsLayer.
1216
1217         * WebProcess/WebPage/mac/RemoteGraphicsLayer.h: Removed.
1218         * WebProcess/WebPage/mac/RemoteGraphicsLayer.mm: Removed.
1219
1220         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
1221         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
1222         (WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
1223         (WebKit::RemoteLayerTreeContext::setRootLayer):
1224         (WebKit::RemoteLayerTreeContext::layerWillBeDestroyed):
1225         (WebKit::RemoteLayerTreeContext::createGraphicsLayer):
1226         (WebKit::RemoteLayerTreeContext::flushLayers):
1227         Build our transaction while flushing; it has no reason to exist outside of that scope.
1228
1229         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
1230         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
1231         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
1232         (WebKit::RemoteLayerTreeDrawingArea::graphicsLayerFactory):
1233         (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
1234         (WebKit::RemoteLayerTreeDrawingArea::scheduleCompositingLayerFlush):
1235         (WebKit::RemoteLayerTreeDrawingArea::updateGeometry):
1236         Fix a capitalization typo.
1237         Update the WebPage's (and thus WebCore's) size when updateGeometry() is called.
1238
1239         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp: Added.
1240         (WebKit::GraphicsLayerCARemote::~GraphicsLayerCARemote):
1241         (WebKit::GraphicsLayerCARemote::filtersCanBeComposited):
1242         (WebKit::GraphicsLayerCARemote::createPlatformCALayer):
1243         Added. Delegate to PlatformCALayerRemote. Don't allow creation of a
1244         GraphicsLayerCARemote given a PlatformLayer, because with UI process compositing,
1245         there should be no PlatformLayer instances in the Web process.
1246
1247         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h: Added.
1248         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp: Added.
1249         (generateLayerID):
1250         Generate a layer ID for identification across processes.
1251
1252         (PlatformCALayerRemote::~PlatformCALayerRemote):
1253         Inform the RemoteLayerTreeContext that we've been destroyed, so it can convey
1254         that information to the UI process and the corresponding CALayer can be destroyed.
1255
1256         (PlatformCALayerRemote::recursiveBuildTransaction):
1257         Recursively accumulate changes in layer state on a RemoteLayerTreeTransaction.
1258
1259         The rest of this file is mostly an empty implementation of PlatformCALayer.
1260         A few properties are implemented so far; see below.
1261
1262         (PlatformCALayerRemote::setSublayers):
1263         (PlatformCALayerRemote::removeAllSublayers):
1264         (PlatformCALayerRemote::appendSublayer):
1265         (PlatformCALayerRemote::insertSublayer):
1266         Update our list of sublayers, and note that our children have changed.
1267         recursiveBuildTransaction() will walk our sublayers and record their IDs in the transaction.
1268
1269         (PlatformCALayerRemote::bounds):
1270         (PlatformCALayerRemote::setBounds):
1271         (PlatformCALayerRemote::position):
1272         (PlatformCALayerRemote::setPosition):
1273         (PlatformCALayerRemote::anchorPoint):
1274         (PlatformCALayerRemote::setAnchorPoint):
1275         (PlatformCALayerRemote::backgroundColor):
1276         (PlatformCALayerRemote::setBackgroundColor):
1277         Trivial implementations of basic layer properties, storing the new state in
1278         our LayerProperties struct and noting that they changed in the current commit.
1279         Properties with getters will return the last value that was set on the LayerProperties,
1280         so we don't clear the whole struct at the end of the transaction, just the mask of changed properties.
1281
1282         * WebProcess/WebPage/mac/PlatformCALayerRemote.h: Added.
1283
1284 2013-10-15  Brady Eidson  <beidson@apple.com>
1285
1286         Move WebProcess/IndexedDB to WebProcess/Databases/IndexedDB
1287
1288         Rubberstamped by Alexey Proskuryakov.
1289
1290         * CMakeLists.txt:
1291         * GNUmakefile.list.am:
1292         * WebKit2.xcodeproj/project.pbxproj:
1293
1294         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp: Renamed from Source/WebKit2/WebProcess/IndexedDB/WebIDBFactoryBackend.cpp.
1295         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h: Renamed from Source/WebKit2/WebProcess/IndexedDB/WebIDBFactoryBackend.h.
1296
1297 2013-10-15  Brady Eidson  <beidson@apple.com>
1298
1299         Add a skeleton Database process for future usage by Indexed Database.
1300         https://bugs.webkit.org/show_bug.cgi?id=122849
1301
1302         Reviewed by Sam Weinig.
1303
1304         This mostly our typical "Add a new process type" boilerplate.
1305
1306         * Configurations/DatabaseProcess.xcconfig: Added.
1307         * Configurations/DatabaseService.Development.xcconfig: Added.
1308         * Configurations/DatabaseService.xcconfig: Added.
1309         * WebKit2.xcodeproj/project.pbxproj:
1310         * WebKit2Prefix.h:
1311
1312         * DatabaseProcess/DatabaseProcess.cpp: Added.
1313         (WebKit::DatabaseProcess::shared):
1314         (WebKit::DatabaseProcess::DatabaseProcess):
1315         (WebKit::DatabaseProcess::~DatabaseProcess):
1316         (WebKit::DatabaseProcess::initializeConnection):
1317         (WebKit::DatabaseProcess::shouldTerminate):
1318         (WebKit::DatabaseProcess::didReceiveMessage):
1319         (WebKit::DatabaseProcess::didClose):
1320         (WebKit::DatabaseProcess::didReceiveInvalidMessage):
1321         (WebKit::DatabaseProcess::initializeProcess):
1322         (WebKit::DatabaseProcess::initializeProcessName):
1323         (WebKit::DatabaseProcess::initializeSandbox):
1324         * DatabaseProcess/DatabaseProcess.h: Added.
1325
1326         * DatabaseProcess/EntryPoint/mac/LegacyProcess/DatabaseProcessMain.mm: Added.
1327         (DatabaseProcessMain):
1328         * DatabaseProcess/EntryPoint/mac/LegacyProcess/Info.plist: Added.
1329         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: Added.
1330         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: Added.
1331         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm: Added.
1332         (DatabaseServiceInitializer):
1333
1334         * DatabaseProcess/mac/DatabaseProcessMac.mm: Added.
1335         (WebKit::DatabaseProcess::initializeProcess):
1336         (WebKit::DatabaseProcess::initializeProcessName):
1337         (WebKit::DatabaseProcess::initializeSandbox):
1338         * UIProcess/Databases/DatabaseProcessProxy.cpp: Added.
1339         (WebKit::DatabaseProcessProxy::create):
1340         (WebKit::DatabaseProcessProxy::DatabaseProcessProxy):
1341         (WebKit::DatabaseProcessProxy::~DatabaseProcessProxy):
1342         (WebKit::DatabaseProcessProxy::getLaunchOptions):
1343         (WebKit::DatabaseProcessProxy::connectionWillOpen):
1344         (WebKit::DatabaseProcessProxy::connectionWillClose):
1345         (WebKit::DatabaseProcessProxy::didReceiveMessage):
1346         (WebKit::DatabaseProcessProxy::didClose):
1347         (WebKit::DatabaseProcessProxy::didReceiveInvalidMessage):
1348         (WebKit::DatabaseProcessProxy::didFinishLaunching):
1349         * UIProcess/Databases/DatabaseProcessProxy.h: Added.
1350         * UIProcess/Databases/mac/DatabaseProcessProxyMac.mm: Added.
1351         (WebKit::shouldUseXPC):
1352         (WebKit::DatabaseProcessProxy::platformGetLaunchOptions):
1353
1354         * UIProcess/Launcher/ProcessLauncher.cpp:
1355         (WebKit::ProcessLauncher::processTypeAsString):
1356         (WebKit::ProcessLauncher::getProcessTypeFromString):
1357         * UIProcess/Launcher/ProcessLauncher.h:
1358         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1359         (WebKit::serviceName):
1360         (WebKit::createProcess):
1361
1362 2013-10-15  Csaba Osztrogonác  <ossy@webkit.org>
1363
1364         [Soup] Unreviewed buildfix after r157445 for ENABLE(NETWORK_PROCESS) builds.
1365
1366         * NetworkProcess/soup/NetworkProcessSoup.cpp:
1367         (WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
1368
1369 2013-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1370
1371         Unreviewed. Fix the GTK+ build after r157445.
1372
1373         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1374         (didFailProvisionalLoadWithErrorForFrame):
1375
1376 2013-10-15  Csaba Osztrogonác  <ossy@webkit.org>
1377
1378         Move PlatformCertificateInfo to WebCore and make the ResourceResponse primitives work in terms of that platform agnostic object
1379         https://bugs.webkit.org/show_bug.cgi?id=118520
1380
1381         Reviewed by Anders Carlsson.
1382
1383         Added PlatformCertificateInfo getter and setter to ResourceErrorBase
1384         and ResourceResponseBase so that getting and setting certificates
1385         becomes cross platform.
1386
1387         Changed the existing platform specific certificate getters and setters
1388         of ResourceError and ResourceResponse to use the
1389         PlatformCertificateInfo member.
1390
1391         Original patch by Kwang Yul Seo  <skyul@company100.net>
1392
1393         The following things were fixed by Csaba Osztrogonác:
1394         - trivial conflicts resolved in WebCore.exp.in, project.pbxproj, NetworkResourceLoader.cpp,
1395           WebPageProxy.h, WebFrameLoaderClient.cpp and PlatformEfl.cmake.
1396         - trivial fix in the new AsynchronousNetworkLoaderClient.cpp
1397         - style fixed (NULL -> 0 and smaller indentation in WebCoreArgumentCodersSoup.cpp)
1398         - obsolete change removed from NetworkResourceLoader.cpp
1399         - unneeded typo removed from ResourceHandleSoup.cpp
1400         - Fixed the if guard of including RetainPtr.h in PlatformCertificateInfo.h to make Windows build happy.
1401         - add PlatformCertificateInfoCFNet.cpp with empty constructor and destructor to make Windows build happy.
1402         - resolve conflict in Source/WebCore/WebCore.xcodeproj/project.pbxproj after r156488
1403         - rename KURL to URL after r156550.
1404         - remove obsolete Qt changes
1405         - added back initializers for m_soupFlags
1406         - included gio/gio.h instead of libsoup/soup.h in PlatformCertificateInfo.h
1407         - removed unused class forward declarations and includes
1408
1409         * GNUmakefile.list.am:
1410         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
1411         (WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
1412         * NetworkProcess/NetworkProcess.h:
1413         * NetworkProcess/NetworkProcess.messages.in:
1414         * NetworkProcess/NetworkResourceLoader.cpp:
1415         * NetworkProcess/mac/NetworkProcessMac.mm:
1416         * PlatformEfl.cmake:
1417         * PlatformGTK.cmake:
1418         * Shared/API/c/mac/WKCertificateInfoMac.mm:
1419         (WKCertificateInfoCreateWithCertficateChain):
1420         * Shared/Authentication/AuthenticationManager.h:
1421         * Shared/Authentication/AuthenticationManager.messages.in:
1422         * Shared/Authentication/mac/AuthenticationManager.mac.mm:
1423         * Shared/UserMessageCoders.h:
1424         (WebKit::UserMessageDecoder::baseDecode):
1425         * Shared/WebCertificateInfo.h:
1426         (WebKit::WebCertificateInfo::create):
1427         (WebKit::WebCertificateInfo::platformCertificateInfo):
1428         (WebKit::WebCertificateInfo::WebCertificateInfo):
1429         * Shared/WebCoreArgumentCoders.cpp:
1430         (CoreIPC::::decode):
1431         (CoreIPC::::encode):
1432         * Shared/WebCoreArgumentCoders.h:
1433         * Shared/mac/WebCoreArgumentCodersMac.mm:
1434         (CoreIPC::::encodePlatformData):
1435         (CoreIPC::::decodePlatformData):
1436         * Shared/soup/PlatformCertificateInfo.cpp: Removed.
1437         * Shared/soup/WebCoreArgumentCodersSoup.cpp:
1438         (CoreIPC::::encodePlatformData):
1439         (CoreIPC::::decodePlatformData):
1440         * Target.pri:
1441         * UIProcess/API/gtk/WebKitWebView.cpp:
1442         (webkit_web_view_get_tls_info):
1443         * UIProcess/Authentication/AuthenticationChallengeProxy.cpp:
1444         (WebKit::AuthenticationChallengeProxy::useCredential):
1445         * UIProcess/WebFrameProxy.cpp:
1446         (WebKit::WebFrameProxy::didCommitLoad):
1447         * UIProcess/WebFrameProxy.h:
1448         * UIProcess/WebPageProxy.h:
1449         * UIProcess/WebPageProxy.messages.in:
1450         * WebKit2.xcodeproj/project.pbxproj:
1451         * WebProcess/Network/WebResourceLoader.cpp:
1452         (WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
1453         * WebProcess/Network/WebResourceLoader.h:
1454         * WebProcess/Network/WebResourceLoader.messages.in:
1455         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1456         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1457
1458 2013-10-14  Csaba Osztrogonác  <ossy@webkit.org>
1459
1460         [WK2][Efl][Soup] Make NetworkProcessMainUnix handle proxy settings.
1461         https://bugs.webkit.org/show_bug.cgi?id=118388
1462
1463         Reviewed by Carlos Garcia Campos.
1464
1465         Original patch by Kwang Yul Seo <skyul@company100.net> .
1466
1467         Proxy configuration should honor the no_proxy environment variable
1468         same to WebProcess. It is necessary not to change the current behaviour.
1469         See https://bugs.webkit.org/show_bug.cgi?id=91747 for details.
1470
1471         The following things were fixed by Csaba Osztrogonác:
1472         - moved session variable before #if not to have conflict with https://bugs.webkit.org/show_bug.cgi?id=118343
1473         - added GRefPtr.h include
1474         - fixed ifdef guards
1475
1476         * NetworkProcess/unix/NetworkProcessMainUnix.cpp:
1477         (WebKit::NetworkProcessMain):
1478         Copied from WebProcessMainEfl.cpp.
1479
1480 2013-10-13  Darin Adler  <darin@apple.com>
1481
1482         Deprecate or remove deleteAllValues functions; there are only a few call sites left
1483         https://bugs.webkit.org/show_bug.cgi?id=122738
1484
1485         Reviewed by Anders Carlsson.
1486
1487         * Shared/Plugins/NPRemoteObjectMap.cpp:
1488         (WebKit::NPRemoteObjectMap::pluginDestroyed): Renamed deleteAllValues to
1489         deprecatedDeleteAllValues.
1490
1491 == Rolled over to ChangeLog-2013-10-13 ==