Remove the unneeded NetworkProcessCrashed message
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2012-12-15  Anders Carlsson  <andersca@apple.com>
2
3         Remove the unneeded NetworkProcessCrashed message
4         https://bugs.webkit.org/show_bug.cgi?id=105114
5
6         Reviewed by Sam Weinig.
7
8         Remove the NetworkProcessCrashed message; it's not needed since the connection member variable is already
9         nulled out in WebProcess::networkProcessConnectionClosed which is called when the Connection::Client::didClose member
10         function is called on the connection between the web process and network process.
11         
12         Furthermore, this message was handled on the connection queue which runs on a different thread and the handler was not
13         thread-safe so this could in theory cause bad crashes.
14
15         * UIProcess/Network/NetworkProcessProxy.cpp:
16         (WebKit::NetworkProcessProxy::didClose):
17         * WebProcess/WebProcess.cpp:
18         * WebProcess/WebProcess.h:
19         (WebProcess):
20         * WebProcess/WebProcess.messages.in:
21
22 2012-12-15  Anders Carlsson  <andersca@apple.com>
23
24         Add a DownloadProxyMap object to the NetworkProcessProxy object
25         https://bugs.webkit.org/show_bug.cgi?id=105112
26
27         Reviewed by Sam Weinig.
28
29         * UIProcess/Network/NetworkProcessProxy.cpp:
30         (WebKit::NetworkProcessProxy::createDownloadProxy):
31         (WebKit::NetworkProcessProxy::didClose):
32         * UIProcess/Network/NetworkProcessProxy.h:
33         * UIProcess/WebContext.cpp:
34         (WebKit::WebContext::createDownloadProxy):
35         * UIProcess/WebProcessProxy.cpp:
36         * UIProcess/WebProcessProxy.h:
37
38 2012-12-15  Anders Carlsson  <andersca@apple.com>
39
40         Move the download proxy map from the web context to the web process proxy
41         https://bugs.webkit.org/show_bug.cgi?id=105109
42
43         Reviewed by Andreas Kling.
44
45         More progress towards making downloads work with the networking process. Since downloads are handled by the
46         web process when not using a networking process, it makes sense for the download proxy map to live in the
47         web process proxy object.
48
49         * UIProcess/WebContext.cpp:
50         (WebKit::WebContext::WebContext):
51         (WebKit::WebContext::shouldTerminate):
52         (WebKit::WebContext::disconnectProcess):
53         (WebKit::WebContext::download):
54         (WebKit::WebContext::createDownloadProxy):
55         * UIProcess/WebContext.h:
56         (WebContext):
57         * UIProcess/WebProcessProxy.cpp:
58         (WebKit::WebProcessProxy::disconnect):
59         (WebKit::WebProcessProxy::shouldTerminate):
60         (WebKit):
61         (WebKit::WebProcessProxy::createDownloadProxy):
62         * UIProcess/WebProcessProxy.h:
63         (WebProcessProxy):
64
65 2012-12-15  Anders Carlsson  <andersca@apple.com>
66
67         DownloadProxy should keep a strong reference to its associated web context
68         https://bugs.webkit.org/show_bug.cgi?id=105107
69
70         Reviewed by Alexey Proskuryakov.
71
72         While this does create a ref-cycle, it's broken when the download completes, fails, is canceled or
73         if the process that's doing the download crashes.
74
75         * UIProcess/Downloads/DownloadProxy.cpp:
76         (WebKit::DownloadProxy::processDidClose):
77         (WebKit::DownloadProxy::didStart):
78         (WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
79         (WebKit::DownloadProxy::didReceiveResponse):
80         (WebKit::DownloadProxy::didReceiveData):
81         (WebKit::DownloadProxy::shouldDecodeSourceDataOfMIMEType):
82         (WebKit::DownloadProxy::decideDestinationWithSuggestedFilename):
83         (WebKit::DownloadProxy::didCreateDestination):
84         (WebKit::DownloadProxy::didFinish):
85         (WebKit::DownloadProxy::didFail):
86         (WebKit::DownloadProxy::didCancel):
87         * UIProcess/Downloads/DownloadProxy.h:
88         (DownloadProxy):
89
90 2012-12-15  Anders Carlsson  <andersca@apple.com>
91
92         Remove WebContext::downloadFinished
93         https://bugs.webkit.org/show_bug.cgi?id=105105
94
95         Reviewed by Sam Weinig.
96
97         Have DownloadProxyMap manage the message receiver map and remove WebContext::downloadFinished.
98
99         * UIProcess/Downloads/DownloadProxy.cpp:
100         (WebKit::DownloadProxy::didFinish):
101         (WebKit::DownloadProxy::didFail):
102         (WebKit::DownloadProxy::didCancel):
103         * UIProcess/Downloads/DownloadProxyMap.cpp:
104         (WebKit::DownloadProxyMap::DownloadProxyMap):
105         (WebKit::DownloadProxyMap::createDownloadProxy):
106         (WebKit::DownloadProxyMap::downloadFinished):
107         * UIProcess/Downloads/DownloadProxyMap.h:
108         (DownloadProxyMap):
109         * UIProcess/WebContext.cpp:
110         (WebKit::WebContext::WebContext):
111         (WebKit::WebContext::createDownloadProxy):
112         * UIProcess/WebContext.h:
113
114 2012-12-15  Sam Weinig  <sam@webkit.org>
115
116         Make the NetworkProcess be managed by the WebContext, rather than a singleton NetworkProcessMananger
117         https://bugs.webkit.org/show_bug.cgi?id=105104
118
119         Reviewed by Alexey Proskuryakov.
120
121         Move to having the WebContext own and manage the NetworkProcessProxy.
122
123         * UIProcess/Network/NetworkProcessManager.cpp: Removed.
124         * UIProcess/Network/NetworkProcessManager.h: Removed.
125         * UIProcess/Network/NetworkProcessProxy.cpp:
126         (WebKit::NetworkProcessProxy::create):
127         (WebKit::NetworkProcessProxy::NetworkProcessProxy):
128         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
129         * UIProcess/Network/NetworkProcessProxy.h:
130         (WebKit):
131         (NetworkProcessProxy):
132         * UIProcess/Network/mac/NetworkProcessManagerMac.mm: Removed.
133         * UIProcess/WebContext.cpp:
134         (WebKit::WebContext::ensureNetworkProcess):
135         (WebKit::WebContext::removeNetworkProcessProxy):
136         (WebKit::WebContext::getNetworkProcessConnection):
137         (WebKit::WebContext::willStartUsingPrivateBrowsing):
138         (WebKit::WebContext::willStopUsingPrivateBrowsing):
139         (WebKit::WebContext::createNewWebProcess):
140         * UIProcess/WebContext.h:
141         (WebKit):
142         (WebContext):
143         (WebKit::WebContext::networkProcess):
144         * UIProcess/WebProcessProxy.cpp:
145         (WebKit::WebProcessProxy::getNetworkProcessConnection):
146         * UIProcess/mac/WebContextMac.mm:
147         (WebKit::WebContext::applicationBecameVisible):
148         (WebKit::WebContext::applicationBecameOccluded):
149         * WebKit2.xcodeproj/project.pbxproj:
150
151 2012-12-15  Anders Carlsson  <andersca@apple.com>
152
153         DownloadProxy objects should know which DownloadProxyMap they belong to
154         https://bugs.webkit.org/show_bug.cgi?id=105102
155
156         Reviewed by Andy Estes.
157
158         * UIProcess/Downloads/DownloadProxy.cpp:
159         (WebKit::DownloadProxy::create):
160         (WebKit::DownloadProxy::DownloadProxy):
161         * UIProcess/Downloads/DownloadProxy.h:
162         (WebKit):
163         (DownloadProxy):
164         * UIProcess/Downloads/DownloadProxyMap.cpp:
165         (WebKit::DownloadProxyMap::createDownloadProxy):
166
167 2012-12-15  Andy Estes  <aestes@apple.com>
168
169         [WebKit2] Move CustomProtocolManager to Shared/
170         https://bugs.webkit.org/show_bug.cgi?id=105103
171
172         Reviewed by Sam Weinig.
173
174         CustomProtocolManager can be instantiated either in the NetworkProcess or the WebProcess, so it should live in Shared/.
175
176         * DerivedSources.make: Update the path where CustomProtocolManager.messages.in can be found.
177         * Shared/Network/CustomProtocols/CustomProtocolManager.h: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.h.
178         * Shared/Network/CustomProtocols/CustomProtocolManager.messages.in: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/CustomProtocolManager.messages.in.
179         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Renamed from Source/WebKit2/WebProcess/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm.
180         * WebKit2.xcodeproj/project.pbxproj:
181
182 2012-12-15  Sam Weinig  <sam@webkit.org>
183
184         Try to fix the Qt build.
185
186         * Target.pri:
187
188 2012-12-15  Anders Carlsson  <andersca@apple.com>
189
190         Get rid of DownloadProxyMap::downloads()
191         https://bugs.webkit.org/show_bug.cgi?id=105100
192
193         Reviewed by Sam Weinig.
194
195         Add the needed member functions to DownloadProxyMap and remove the downloads() member function.
196
197         * UIProcess/Downloads/DownloadProxyMap.cpp:
198         (WebKit::DownloadProxyMap::downloadFinished):
199         (WebKit::DownloadProxyMap::processDidClose):
200         (WebKit):
201         * UIProcess/Downloads/DownloadProxyMap.h:
202         (WebKit::DownloadProxyMap::isEmpty):
203         (DownloadProxyMap):
204         * UIProcess/WebContext.cpp:
205         (WebKit::WebContext::shouldTerminate):
206         (WebKit::WebContext::disconnectProcess):
207         (WebKit::WebContext::downloadFinished):
208
209 2012-12-15  Sam Weinig  <sam@webkit.org>
210
211         Move calculation of caches sizes based on the cache model to CacheModel.h/cpp
212         https://bugs.webkit.org/show_bug.cgi?id=105098
213
214         Reviewed by Anders Carlsson.
215
216         Move calculation of caches sizes based on the cache model to CacheModel.h/cpp so
217         that it can be used by more than just the WebProcess.
218
219         * CMakeLists.txt:
220         * GNUmakefile.list.am:
221         * Shared/CacheModel.cpp: Added.
222         (WebKit):
223         (WebKit::calculateCacheSizes):
224         * Shared/CacheModel.h:
225         * Target.pri:
226         * WebKit2.xcodeproj/project.pbxproj:
227         * WebProcess/WebProcess.cpp:
228         * WebProcess/WebProcess.h:
229         (WebProcess):
230         * win/WebKit2.vcproj:
231
232 2012-12-15  Anders Carlsson  <andersca@apple.com>
233
234         DownloadProxyMap shouldn't be a singleton after all
235         https://bugs.webkit.org/show_bug.cgi?id=105099
236
237         Reviewed by Sam Weinig.
238
239         Make the DownloadProxyMap be per context instead, and get rid of the m_downloads hash map from WebContext.
240
241         * UIProcess/Downloads/DownloadProxy.cpp:
242         (WebKit::DownloadProxy::didFinish):
243         (WebKit::DownloadProxy::didFail):
244         (WebKit::DownloadProxy::didCancel):
245         * UIProcess/Downloads/DownloadProxyMap.cpp:
246         (WebKit::DownloadProxyMap::~DownloadProxyMap):
247         * UIProcess/Downloads/DownloadProxyMap.h:
248         (DownloadProxyMap):
249         (WebKit::DownloadProxyMap::downloads):
250         * UIProcess/WebContext.cpp:
251         (WebKit::WebContext::shouldTerminate):
252         (WebKit::WebContext::disconnectProcess):
253         (WebKit::WebContext::createDownloadProxy):
254         (WebKit::WebContext::downloadFinished):
255         * UIProcess/WebContext.h:
256         (WebContext):
257
258 2012-12-15  No'am Rosenthal  <noam.rosenthal@nokia.com>
259
260         Disambiguate "background color" and "contents as solid color" on GraphicsLayer
261         https://bugs.webkit.org/show_bug.cgi?id=104842
262
263         Reviewed by Simon Fraser.
264
265         Rename overloads in coordinated graphics to account for the rename in GraphicsLayer.
266
267         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h:
268         (CoordinatedLayerInfo):
269         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
270         (WebKit::LayerTreeRenderer::setLayerState):
271         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
272         (WebCore::CoordinatedGraphicsLayer::setContentsToSolidColor):
273         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
274         (CoordinatedGraphicsLayer):
275
276 2012-12-15  Christophe Dumez  <christophe.dumez@intel.com>
277
278         [GTK][WK2] Memory leak in ChunkedUpdateDrawingArea::paintIntoUpdateChunk()
279         https://bugs.webkit.org/show_bug.cgi?id=105095
280
281         Reviewed by Martin Robinson.
282
283         Adopt the pointer returned by cairo_create() in
284         ChunkedUpdateDrawingArea::paintIntoUpdateChunk() to avoid leaking
285         memory.
286
287         * WebProcess/WebPage/gtk/ChunkedUpdateDrawingAreaGtk.cpp:
288         (WebKit::ChunkedUpdateDrawingArea::paintIntoUpdateChunk):
289
290 2012-12-15  Mark Lam  <mark.lam@apple.com>
291
292         Added #if ENABLE(SQL_DATABASE) around WebPlatformStrategies::getDatabaseServer().
293         https://bugs.webkit.org/show_bug.cgi?id=104934..
294
295         Not reviewed.
296
297         Greening the Qt Linux Release Minimal bot.
298
299         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
300         (WebKit):
301         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
302         (WebPlatformStrategies):
303
304 2012-12-15  Mark Lam  <mark.lam@apple.com>
305
306         Re-landing patch for "Introducing the DatabaseStrategy and database servers".
307         https://bugs.webkit.org/show_bug.cgi?id=104934.
308
309         Not reviewed.
310
311         Merged from r137767. Previously reviewed by Sam Weinig.
312
313         * CMakeLists.txt:
314         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
315         (WebKit::WebPlatformStrategies::createDatabaseStrategy):
316         (WebKit):
317         (WebKit::WebPlatformStrategies::getDatabaseServer):
318         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
319         (WebPlatformStrategies):
320
321 2012-12-14  Anders Carlsson  <andersca@apple.com>
322
323         DownloadProxy objects should be message receivers
324         https://bugs.webkit.org/show_bug.cgi?id=105068
325
326         Reviewed by Andreas Kling.
327
328         This simplifies the WebContext message dispatch code somewhat.
329
330         * UIProcess/Downloads/DownloadProxy.cpp:
331         (WebKit::DownloadProxy::didReceiveMessage):
332         (WebKit::DownloadProxy::didReceiveSyncMessage):
333         * UIProcess/Downloads/DownloadProxy.h:
334         (DownloadProxy):
335         * UIProcess/WebContext.cpp:
336         (WebKit::WebContext::createDownloadProxy):
337         (WebKit::WebContext::didReceiveMessage):
338         (WebKit::WebContext::didReceiveSyncMessage):
339
340 2012-12-14  Sheriff Bot  <webkit.review.bot@gmail.com>
341
342         Unreviewed, rolling out r137767.
343         http://trac.webkit.org/changeset/137767
344         https://bugs.webkit.org/show_bug.cgi?id=105062
345
346         Broke Mac builds. (Requested by mlam on #webkit).
347
348         * CMakeLists.txt:
349         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
350         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
351         (WebPlatformStrategies):
352
353 2012-12-14  Alexey Proskuryakov  <ap@apple.com>
354
355         <rdar://problem/12874760> NetworkProcess loads may get stuck when WebProcess quits
356         https://bugs.webkit.org/show_bug.cgi?id=105056
357
358         Reviewed by Anders Carlsson.
359
360         Make response maps per-connection.
361
362         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
363         (WebKit::NetworkConnectionToWebProcess::didClose): Cancel waiting for responses
364         from WebProcess, they will never arrive.
365
366         * NetworkProcess/NetworkConnectionToWebProcess.h:
367         (WebKit::NetworkConnectionToWebProcess::willSendRequestResponseMap):
368         (WebKit::NetworkConnectionToWebProcess::canAuthenticateAgainstProtectionSpaceResponseMap):
369         Maps now live here.
370
371         * NetworkProcess/NetworkResourceLoader.cpp:
372         (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose): Added a FIXME.
373
374         (WebKit::NetworkResourceLoader::willSendRequest):
375         (WebKit::NetworkResourceLoader::willSendRequestHandled):
376         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpace):
377         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceHandled):
378         Handle the cases where we can't send a request, or can't expect a response any more.
379
380         * Shared/BlockingResponseMap.h:
381         (BlockingResponseMap):
382         (BlockingResponseMap::BlockingResponseMap):
383         (BlockingResponseMap::~BlockingResponseMap):
384         (BlockingResponseMap::waitForResponse):
385         (BlockingResponseMap::didReceiveResponse):
386         (BlockingResponseMap::cancel):
387         (BlockingBoolResponseMap):
388         (BlockingBoolResponseMap::BlockingBoolResponseMap):
389         (BlockingBoolResponseMap::~BlockingBoolResponseMap):
390         (BlockingBoolResponseMap::waitForResponse):
391         (BlockingBoolResponseMap::didReceiveResponse):
392         (BlockingBoolResponseMap::cancel):
393         Added an ability to cancel, and slightly beefed up overall.
394
395 2012-12-14  Anders Carlsson  <andersca@apple.com>
396
397         DownloadProxyMap should keep track of outstanding DownloadProxy objects
398         https://bugs.webkit.org/show_bug.cgi?id=105053
399
400         Reviewed by Andreas Kling.
401
402         This is more work towards removing the m_downloads map from every WebContext object.
403
404         * UIProcess/Downloads/DownloadProxy.cpp:
405         (WebKit::DownloadProxy::didFinish):
406         (WebKit::DownloadProxy::didFail):
407         (WebKit::DownloadProxy::didCancel):
408         * UIProcess/Downloads/DownloadProxyMap.cpp:
409         (WebKit::DownloadProxyMap::createDownloadProxy):
410         (WebKit):
411         (WebKit::DownloadProxyMap::downloadFinished):
412         * UIProcess/Downloads/DownloadProxyMap.h:
413         (DownloadProxyMap):
414         * UIProcess/WebContext.cpp:
415         (WebKit::WebContext::createDownloadProxy):
416
417 2012-12-14  Mark Lam  <mark.lam@apple.com>
418
419         Introducing the DatabaseStrategy and database servers.
420         https://bugs.webkit.org/show_bug.cgi?id=104934.
421
422         Reviewed by Sam Weinig.
423
424         The database server is currently a placeholder that does nothing.
425
426         * CMakeLists.txt:
427         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
428         (WebKit::WebPlatformStrategies::createDatabaseStrategy):
429         (WebKit):
430         (WebKit::WebPlatformStrategies::getDatabaseServer):
431         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
432         (WebPlatformStrategies):
433
434 2012-12-14  Alexey Proskuryakov  <ap@apple.com>
435
436         Resource loads sometimes stall
437         https://bugs.webkit.org/show_bug.cgi?id=104976
438
439         Apply the same quick an dirty fix to BlockingBoolResponseMap.
440
441         * Shared/BlockingResponseMap.h:
442         (BlockingBoolResponseMap::didReceiveResponse):
443
444 2012-12-14  Anders Carlsson  <andersca@apple.com>
445
446         Add a DownloadsProxyMap class in preparation for moving the downloads map away from WebContext
447         https://bugs.webkit.org/show_bug.cgi?id=104980
448
449         Reviewed by Andreas Kling.
450
451         Currently the DownloadProxyMap doesn't really do anything; this initial change is to make sure that
452         adding the new files won't break any builds.
453
454         * CMakeLists.txt:
455         * GNUmakefile.list.am:
456         * Target.pri:
457         * UIProcess/Downloads/DownloadProxyMap.cpp: Added.
458         (WebKit):
459         (WebKit::DownloadProxyMap::shared):
460         (WebKit::DownloadProxyMap::DownloadProxyMap):
461         (WebKit::DownloadProxyMap::~DownloadProxyMap):
462         (WebKit::DownloadProxyMap::createDownloadProxy):
463         * UIProcess/Downloads/DownloadProxyMap.h: Added.
464         (WebKit):
465         (DownloadProxyMap):
466         * UIProcess/WebContext.cpp:
467         (WebKit::WebContext::createDownloadProxy):
468         * WebKit2.xcodeproj/project.pbxproj:
469         * win/WebKit2.vcproj:
470
471 2012-12-14  Anders Carlsson  <andersca@apple.com>
472
473         Fix assertion failure when the network process is enabled
474         https://bugs.webkit.org/show_bug.cgi?id=105040
475         <rdar://problem/12883632>
476
477         Reviewed by Alexey Proskuryakov.
478
479         Make sure that we don't call into the download manager when running with a network process.
480
481         * WebProcess/WebProcess.cpp:
482         (WebKit::WebProcess::shouldTerminate):
483
484 2012-12-14  Michelangelo De Simone  <michelangelo@webkit.org>
485
486         [CSS Shaders] Remove code for the other mesh box types (border-box | padding-box | content-box)
487         https://bugs.webkit.org/show_bug.cgi?id=103776
488
489         Reviewed by Dean Jackson.
490
491         The MeshBoxType has been removed and the code has been refactored. The specs will be updated shortly
492         and therefore this feature - even though it was not fully implemented yet - shall not be used anymore.
493
494         In this patch we remove everything but the parsing code, which shall be addressed in a different patch
495         (see: https://bugs.webkit.org/show_bug.cgi?id=103778).
496
497         Specification to be updated: http://dvcs.w3.org/hg/FXTF/raw-file/tip/filters/index.html#ltboxgt
498
499         Existing tests have been updated and new parsing legacy cases have been added.
500
501         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
502         (CoreIPC::::encode):
503         (CoreIPC::::decode):
504         * Shared/CoordinatedGraphics/WebCustomFilterOperation.h:
505         (WebCore::WebCustomFilterOperation::create):
506         (WebCore::WebCustomFilterOperation::WebCustomFilterOperation):
507
508 2012-12-14  Alexey Proskuryakov  <ap@apple.com>
509
510         <rdar://problem/12880750> RGRESSION: Crash when emptying cookie jar
511         https://bugs.webkit.org/show_bug.cgi?id=105038
512
513         Reviewed by Jessie Berlin.
514
515         Handle null context, which is used for cookie management functions.
516
517         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
518         (WebKit::WebPlatformStrategies::cookiesForDOM):
519         (WebKit::WebPlatformStrategies::setCookiesFromDOM):
520         (WebKit::WebPlatformStrategies::cookiesEnabled):
521         (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
522         (WebKit::WebPlatformStrategies::getRawCookies):
523         (WebKit::WebPlatformStrategies::deleteCookie):
524         (WebKit::WebPlatformStrategies::getHostnamesWithCookies):
525         (WebKit::WebPlatformStrategies::deleteCookiesForHostname):
526         (WebKit::WebPlatformStrategies::deleteAllCookies):
527
528 2012-12-14  Alberto Garcia  <agarcia@igalia.com>
529
530         [GTK] When in private mode WebKitGTK+ should not save HTTP authentication credentials to the persistent storage
531         https://bugs.webkit.org/show_bug.cgi?id=104910
532
533         Reviewed by Martin Robinson.
534
535         * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.cpp:
536         (WebKit::WebKit2GtkAuthenticationDialog::WebKit2GtkAuthenticationDialog):
537         * UIProcess/API/gtk/WebKit2GtkAuthenticationDialog.h:
538         (WebKit2GtkAuthenticationDialog):
539         GtkAuthenticationDialog has a new credential storage mode
540         parameter, so add it here too.
541
542         * UIProcess/API/gtk/WebKitWebView.cpp:
543         (webkitWebViewHandleAuthenticationChallenge):
544         When creating the GtkAuthenticationDialog, set the credential
545         storage mode using the private browsing setting from the current
546         page.
547
548 2012-12-14  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
549
550         [EFL][WK2] Fix EFL build after r137718
551         https://bugs.webkit.org/show_bug.cgi?id=105018
552
553         Unreviewed build fix.
554
555         The problem was that UNUSED_PARAM(size) was left in the code
556         for non-existent variable 'size'.
557
558         * UIProcess/efl/PageClientDefaultImpl.cpp:
559         (WebKit::PageClientDefaultImpl::updateViewportSize):
560         * UIProcess/efl/PageClientLegacyImpl.cpp:
561         (WebKit::PageClientLegacyImpl::updateViewportSize):
562
563 2012-12-13  Kenneth Rohde Christiansen  <kenneth@webkit.org>
564
565         [EFL][WK2] Do not pass size to updateViewportSize
566         https://bugs.webkit.org/show_bug.cgi?id=104994
567
568         Reviewed by Gyuyoung Kim.
569
570         There is no need to pass size to updateViewportSize as we
571         have direct access to it. This makes the code differ less
572         from Qt.
573
574         * UIProcess/API/efl/ewk_view.cpp:
575         (_ewk_view_smart_calculate):
576         * UIProcess/PageViewportController.cpp:
577         (WebKit::PageViewportController::pageDidRequestScroll):
578         * UIProcess/efl/PageClientBase.h:
579         (PageClientBase):
580         * UIProcess/efl/PageClientDefaultImpl.cpp:
581         (WebKit::PageClientDefaultImpl::updateViewportSize):
582         * UIProcess/efl/PageClientDefaultImpl.h:
583         (PageClientDefaultImpl):
584         * UIProcess/efl/PageClientLegacyImpl.cpp:
585         (WebKit::PageClientLegacyImpl::updateViewportSize):
586         * UIProcess/efl/PageClientLegacyImpl.h:
587         (PageClientLegacyImpl):
588         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
589         (WebKit::PageViewportControllerClientEfl::updateViewportSize):
590         * UIProcess/efl/PageViewportControllerClientEfl.h:
591         (PageViewportControllerClientEfl):
592
593 2012-12-13  Sanghyup Lee  <sh53.lee@samsung.com>
594
595         Fix build warning
596         https://bugs.webkit.org/show_bug.cgi?id=104978
597
598         Reviewed by Kentaro Hara.
599
600         Initialize parameter 'downloadID' to fix 'unused parameter' build warning.
601
602         * WebProcess/Downloads/Download.cpp:
603         (WebKit::Download::Download):
604
605 2012-12-13  Alexey Proskuryakov  <ap@apple.com>
606
607         Resource loads sometimes stall
608         https://bugs.webkit.org/show_bug.cgi?id=104976
609
610         Reviewed by Anders Carlsson.
611
612         Quick and dirty partial fix.
613
614         * Shared/BlockingResponseMap.h: (BlockingResponseMap::didReceiveResponse):
615         Wake up all threads, so that non-sequential responses don't break us. This is still
616         horribly inefficient,but should improve behavior quite a bit.
617
618 2012-12-13  Seokju Kwon  <seokju.kwon@gmail.com>
619
620         Fix unused parameter compile warnings
621         https://bugs.webkit.org/show_bug.cgi?id=104907
622
623         Reviewed by Kentaro Hara.
624
625         Use UNUSED_PARAM macro to fix build warning -Wunused-parameter
626         when ENABLE_INSPECTOR is disabled.
627
628         * UIProcess/API/C/WKInspector.cpp:
629         (WKInspectorGetPage):
630         (WKInspectorIsVisible):
631         (WKInspectorIsFront):
632         (WKInspectorShow):
633         (WKInspectorClose):
634         (WKInspectorShowConsole):
635         (WKInspectorShowResources):
636         (WKInspectorShowMainResourceForFrame):
637         (WKInspectorIsAttached):
638         (WKInspectorAttach):
639         (WKInspectorDetach):
640         (WKInspectorIsDebuggingJavaScript):
641         (WKInspectorToggleJavaScriptDebugging):
642         (WKInspectorIsProfilingJavaScript):
643         (WKInspectorToggleJavaScriptProfiling):
644         (WKInspectorIsProfilingPage):
645         (WKInspectorTogglePageProfiling):
646         * UIProcess/API/C/WKPage.cpp:
647         (WKPageGetInspector):
648
649 2012-12-13  Seokju Kwon  <seokju.kwon@gmail.com>
650
651         [QT][GTK][EFL] Add guard for WebInspectorServer
652         https://bugs.webkit.org/show_bug.cgi?id=104889
653
654         Reviewed by Kenneth Rohde Christiansen.
655
656         Add ENABLE(INSPECTOR_SERVER) guard around platform-specific implementation for WebInspectorServer.
657
658         * UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
659         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
660         * UIProcess/InspectorServer/qt/WebInspectorServerQt.cpp:
661
662 2012-12-13  Huang Dongsung  <luxtella@company100.net>
663
664         Coordinated Graphics: Reorder messages to CoordinatedLayerTreeHostProxy
665         https://bugs.webkit.org/show_bug.cgi?id=103843
666
667         Reviewed by Noam Rosenthal.
668
669         Clarify LayerTreeRenderer::setRootLayerID() can be called only once during its
670         lifecycle. LayerTreeRenderer, CoordinatedLayerTreeHost and CoordinatedLayerTreeHostProxy
671         have the same lifecycle to WebPage and the root layer is reused even if loading
672         new page, so it is impossible to call LayerTreeRenderer::setRootLayerID() more
673         than twice.
674
675         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
676         (WebKit::LayerTreeRenderer::setRootLayerID):
677
678 2012-12-13  Alexey Proskuryakov  <ap@apple.com>
679
680         <rdar://problem/12838354> DOM cookie access functions should respect private browsing
681         https://bugs.webkit.org/show_bug.cgi?id=104691
682
683         Reviewed by Anders Carlsson.
684
685         Remove obsolete FIXMEs, and fix one function that I overlooked.
686
687         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
688         (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
689         (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
690         (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
691         (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
692         (WebKit::NetworkConnectionToWebProcess::getRawCookies):
693         (WebKit::NetworkConnectionToWebProcess::deleteCookie):
694         (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies):
695         (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname):
696         (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
697
698 2012-12-13  Anders Carlsson  <andersca@apple.com>
699
700         DownloadManager shouldn't call the web process directly
701         https://bugs.webkit.org/show_bug.cgi?id=104946
702
703         Reviewed by Antti Koivisto.
704
705         Introduce the needed DownloadManager::Client member functions and have Download call them instead of calling the web process directly.
706
707         * WebProcess/Downloads/Download.cpp:
708         (WebKit::Download::Download):
709         (WebKit::Download::~Download):
710         (WebKit::Download::connection):
711         * WebProcess/Downloads/DownloadManager.cpp:
712         (WebKit::DownloadManager::DownloadManager):
713         (WebKit::DownloadManager::didCreateDownload):
714         (WebKit::DownloadManager::didDestroyDownload):
715         (WebKit::DownloadManager::connection):
716         * WebProcess/Downloads/DownloadManager.h:
717         * WebProcess/WebProcess.cpp:
718         (WebKit::WebProcess::didCreateDownload):
719         (WebKit::WebProcess::didDestroyDownload):
720         * WebProcess/WebProcess.h:
721
722 2012-12-13  Alexey Proskuryakov  <ap@apple.com>
723
724         <rdar://problem/12838354> Per-Tab WebProcess: DOM cookie access functions should respect private browsing
725         https://bugs.webkit.org/show_bug.cgi?id=104691
726
727         Reviewed by Sam Weinig.
728
729         Pass private browsing state from local context to remote one.
730
731         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
732         (WebKit::networkingContext):
733         (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
734         (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
735         (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
736         (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
737         (WebKit::NetworkConnectionToWebProcess::getRawCookies):
738         (WebKit::NetworkConnectionToWebProcess::deleteCookie):
739         (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies):
740         (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname):
741         (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
742         * NetworkProcess/NetworkConnectionToWebProcess.h:
743         * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
744         * NetworkProcess/mac/RemoteNetworkingContext.h:
745         * NetworkProcess/mac/RemoteNetworkingContext.mm:
746         (WebKit::RemoteNetworkingContext::inPrivateBrowsingMode):
747         (WebKit::RemoteNetworkingContext::storageSession):
748         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
749         (WebKit::WebPlatformStrategies::cookiesForDOM):
750         (WebKit::WebPlatformStrategies::setCookiesFromDOM):
751         (WebKit::WebPlatformStrategies::cookiesEnabled):
752         (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
753         (WebKit::WebPlatformStrategies::getRawCookies):
754         (WebKit::WebPlatformStrategies::deleteCookie):
755         (WebKit::WebPlatformStrategies::getHostnamesWithCookies):
756         (WebKit::WebPlatformStrategies::deleteCookiesForHostname):
757         (WebKit::WebPlatformStrategies::deleteAllCookies):
758         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
759         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
760         (WebKit::WebFrameNetworkingContext::inPrivateBrowsingMode):
761         (WebKit::WebFrameNetworkingContext::storageSession):
762         * WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
763         (WebFrameNetworkingContext::inPrivateBrowsingMode):
764
765 2012-12-13  Anders Carlsson  <andersca@apple.com>
766
767         Get rid of DownloadManager::shared
768         https://bugs.webkit.org/show_bug.cgi?id=104939
769
770         Reviewed by Andreas Kling.
771
772         Move the DownloadManager singleton to WebProcess and stub out a DownloadManager::Client class.
773
774         * WebProcess/Downloads/DownloadManager.cpp:
775         (WebKit::DownloadManager::DownloadManager):
776         * WebProcess/Downloads/DownloadManager.h:
777         (Client):
778         (WebKit::DownloadManager::Client::~Client):
779         (DownloadManager):
780         * WebProcess/WebPage/WebFrame.cpp:
781         (WebKit::WebFrame::startDownload):
782         (WebKit::WebFrame::convertHandleToDownload):
783         * WebProcess/WebProcess.cpp:
784         (WebKit::WebProcess::downloadManager):
785         (WebKit):
786         (WebKit::WebProcess::shouldTerminate):
787         (WebKit::WebProcess::downloadRequest):
788         (WebKit::WebProcess::cancelDownload):
789         (WebKit::WebProcess::startTransfer):
790         * WebProcess/WebProcess.h:
791         (WebProcess):
792
793 2012-12-12  Andy Estes  <aestes@apple.com>
794
795         [WebKit2] Only register NSNotificationCenter observers once per WebContext
796         https://bugs.webkit.org/show_bug.cgi?id=104879
797
798         Reviewed by Alexey Proskuryakov.
799
800         WebContext was mistakenly registering NSNotificationCenter observers
801         every time a new web process was created. In a multi-WebProcess world,
802         this caused duplicate observers to be needlessly registered. Fix this
803         by registering observers at WebContext creation time (and fix a related
804         bug where two of the observers were never unregistered).
805
806         * UIProcess/WebContext.h:
807         * UIProcess/mac/WebContextMac.mm:
808         (WebKit::WebContext::platformInitialize): Register observers when initializing the context.
809         (WebKit::WebContext::platformInitializeWebProcess): Don't register observers here.
810         (WebKit::WebContext::platformInvalidateContext): Unregister observers when invalidating the context.
811         (WebKit::WebContext::registerNotificationObservers):
812         (WebKit::WebContext::unregisterNotificationObservers):
813
814 2012-12-13  Anders Carlsson  <andersca@apple.com>
815
816         Download objects should keep track of their associated DownloadManager object
817         https://bugs.webkit.org/show_bug.cgi?id=104936
818
819         Reviewed by Andreas Kling.
820
821         This is the first step towards eliminating DownloadManager::shared.
822
823         * WebProcess/Downloads/Download.cpp:
824         (WebKit::Download::create):
825         (WebKit::Download::Download):
826         (WebKit::Download::didFinish):
827         (WebKit::Download::didFail):
828         (WebKit::Download::didCancel):
829         * WebProcess/Downloads/Download.h:
830         * WebProcess/Downloads/DownloadManager.cpp:
831         (WebKit::DownloadManager::startDownload):
832         (WebKit::DownloadManager::convertHandleToDownload):
833
834 2012-12-13  Anders Carlsson  <andersca@apple.com>
835
836         Remove unused initiatingPage parameter from download objects
837         https://bugs.webkit.org/show_bug.cgi?id=104933
838
839         Reviewed by Alexey Proskuryakov.
840
841         * WebProcess/Downloads/Download.h:
842         (Download):
843         * WebProcess/Downloads/DownloadManager.cpp:
844         (WebKit::DownloadManager::startDownload):
845         (WebKit::DownloadManager::convertHandleToDownload):
846         * WebProcess/Downloads/DownloadManager.h:
847         (DownloadManager):
848         * WebProcess/Downloads/cfnet/DownloadCFNet.cpp:
849         (WebKit::Download::start):
850         (WebKit::Download::startWithHandle):
851         * WebProcess/Downloads/curl/DownloadCurl.cpp:
852         (WebKit::Download::start):
853         (WebKit::Download::startWithHandle):
854         * WebProcess/Downloads/mac/DownloadMac.mm:
855         (WebKit::Download::start):
856         (WebKit::Download::startWithHandle):
857         * WebProcess/Downloads/qt/DownloadQt.cpp:
858         (WebKit::Download::start):
859         (WebKit::Download::startWithHandle):
860         * WebProcess/Downloads/soup/DownloadSoup.cpp:
861         (WebKit::Download::start):
862         (WebKit::Download::startWithHandle):
863         * WebProcess/WebPage/WebFrame.cpp:
864         (WebKit::WebFrame::startDownload):
865         (WebKit::WebFrame::convertHandleToDownload):
866         * WebProcess/WebProcess.cpp:
867         (WebKit::WebProcess::downloadRequest):
868
869 2012-12-13  Alexey Proskuryakov  <ap@apple.com>
870
871         <rdar://problem/12870065> Frequent NetworkProcess crashes due to null connection when closing tabs
872         https://bugs.webkit.org/show_bug.cgi?id=104922
873
874         Reviewed by Anders Carlsson.
875
876         Don't zero out connection pointers when a connection closes. There doesn't appear
877         to be any reason to do this.
878
879         Tested by hitting breakpoints in all relevant objects destructors to confirm that
880         this doesn't introduce leaks.
881
882         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
883         (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess):
884         (WebKit::NetworkConnectionToWebProcess::didClose):
885         * NetworkProcess/NetworkResourceLoader.cpp:
886         (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose):
887
888 2012-12-13  Thiago Marcos P. Santos  <thiago.santos@intel.com>
889
890         [EFL] Update the way we set the cookies policy
891         https://bugs.webkit.org/show_bug.cgi?id=104915
892
893         Reviewed by Kenneth Rohde Christiansen.
894
895         We are mistakenly assigning the cookie policy to the persistent storage
896         type which is not correct. This was caused by r137432 and is making
897         the unit tests fail.
898
899         * UIProcess/efl/WebContextEfl.cpp:
900         (WebKit::WebContext::platformInitializeWebProcess):
901
902 2012-12-13  Andras Becsi  <andras.becsi@digia.com>
903
904         [Qt][WK2] Fix painting on Mac with retina display
905         https://bugs.webkit.org/show_bug.cgi?id=104574
906
907         Unreviewed, removing leftover API test.
908
909         This hunk somehow did not make it into the final patch.
910
911         * UIProcess/API/qt/tests/qmltests/WebView/tst_devicePixelRatio.qml: Removed.
912
913 2012-12-13  Andras Becsi  <andras.becsi@digia.com>
914
915         [Qt][WK2] Fix painting on Mac with retina display
916         https://bugs.webkit.org/show_bug.cgi?id=104574
917
918         Reviewed by Kenneth Rohde Christiansen.
919
920         Since HiDPI support has been added and enabled in Qt we ended up
921         painting incorrectly scaled content on high-resolution screens.
922         Because the intrinsic device pixel ratio is always taken into
923         account by Qt when painting to high-resolution screens we should
924         automatically obtain the scale ratio from the window in which the
925         item is rendered instead of setting it in QML.
926
927         Qt does not make it possible to override the device pixel ratio
928         of the native window, therefore our experimental QML API for setting
929         a custom value is of no use any more and should be removed.
930
931         This patch fixes the scaling issue on Mac retina display by querying
932         the underlying window for the device scale factor and applying it to
933         the backing store and the scene-graph rendering of the content node.
934         Additionally removes the experimental API and related API tests.
935
936         * UIProcess/API/qt/qquickwebpage.cpp:
937         (QQuickWebPage::updatePaintNode):
938         * UIProcess/API/qt/qquickwebview.cpp:
939         (QQuickWebViewPrivate::QQuickWebViewPrivate):
940         (QQuickWebViewLegacyPrivate::updateViewportSize):
941         (QQuickWebViewFlickablePrivate::onComponentComplete):
942         * UIProcess/API/qt/qquickwebview_p.h:
943         * UIProcess/API/qt/tests/qquickwebview/tst_qquickwebview.cpp:
944         (tst_QQuickWebView::newWebView):
945         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
946         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
947         (WebKit::CoordinatedLayerTreeHostProxy::deviceScaleFactor):
948         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
949         (CoordinatedLayerTreeHostProxy):
950         * UIProcess/qt/QtWebPageSGNode.cpp:
951         (WebKit::ContentsSGNode::ContentsSGNode):
952         (WebKit::ContentsSGNode::render):
953         (WebKit::ContentsSGNode::clipRect):
954         (ContentsSGNode):
955         (WebKit::QtWebPageSGNode::QtWebPageSGNode):
956         (WebKit::QtWebPageSGNode::devicePixelRatio):
957         (WebKit):
958         (WebKit::QtWebPageSGNode::setRenderer):
959         * UIProcess/qt/QtWebPageSGNode.h:
960         (QtWebPageSGNode):
961
962 2012-12-13  Thiago Marcos P. Santos  <thiago.santos@intel.com>
963
964         [EFL] API tests failing because Vibration API is using unsigned as duration since r137410
965         https://bugs.webkit.org/show_bug.cgi?id=104914
966
967         Reviewed by Kenneth Rohde Christiansen.
968
969         Update the tests to reflect the data type coming from WebCore.
970
971         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
972         (VibrationCbData):
973         (onVibrate):
974
975 2012-12-13  Kenneth Rohde Christiansen  <kenneth@webkit.org>
976
977         [EFL][WK2] Device pixel ratio lost upon relaunch of the web process
978         https://bugs.webkit.org/show_bug.cgi?id=104913
979
980         Reviewed by Simon Hausmann.
981
982         Use setIntrinsicDeviceScaleFactor instead of setCustomDeviceScaleFactor
983         when setting the device pixel ratio to make the setting permanent and
984         make sure it is set as part of the web process creation parameters.
985
986         * UIProcess/API/efl/ewk_view.cpp:
987         (ewk_view_device_pixel_ratio_set):
988
989 2012-12-13  Jerome Pasion  <jerome.pasion@digia.com>
990
991         [Qt] Doc: Fixing Qt WebKit reference documentation.
992
993         Reviewed by Simon Hausmann.
994
995         Fixes:
996         -added \module for C++ classes and \qmlmodule for QML types
997         -added links to the Qt WebKit Examples pages
998         -fixed the qhp settings for Qt Creator
999
1000         Task-number: QTBUG-28583
1001         Task-number: QTBUG-28418
1002         Task-number: QTBUG-27646
1003
1004         * UIProcess/API/qt/qquickwebview.cpp:
1005
1006 2012-12-13  Jussi Kukkonen  <jussi.kukkonen@intel.com>
1007
1008         [EFL][GTK] Don't call deprecated g_type_init when glib => 2.35
1009         https://bugs.webkit.org/show_bug.cgi?id=103209
1010
1011         Reviewed by Kenneth Rohde Christiansen.
1012
1013         g_type_init() is deprecated from 2.35.0 onwards. Don't call it
1014         in that case to avoid warnings and/or build failure.
1015
1016         Also, remove a call to g_type_init() from WebProcessMainGtk():
1017         It is not needed if gtk_init() is called.
1018
1019         * UIProcess/API/efl/ewk_main.cpp:
1020         (ewk_init):
1021         * WebProcess/efl/WebProcessMainEfl.cpp:
1022         (WebKit::WebProcessMainEfl):
1023         * WebProcess/gtk/WebProcessMainGtk.cpp:
1024         (WebKit::WebProcessMainGtk):
1025
1026 2012-12-13  Joaquim Rocha  <jrocha@igalia.com>
1027
1028         REGRESSION (r137432): The /webkit2/WebKitCookieManager/accept-policy unit test is failing
1029         https://bugs.webkit.org/show_bug.cgi?id=104790
1030
1031         Reviewed by Carlos Garcia Campos.
1032
1033         The cookies accept policy and the cookies persistent storage type
1034         were not being correctly assigned.
1035
1036         * UIProcess/WebContext.cpp: Set the default value of the cookie
1037         accept policy.
1038         (WebKit::WebContext::WebContext):
1039         * UIProcess/gtk/WebContextGtk.cpp: Fix setting the cookies persistent
1040         storage type (it was mistakenly assigning the policy instead) and
1041         set the accept policy which was missing.
1042         (WebKit::WebContext::platformInitializeWebProcess):
1043
1044 2012-12-13  Jon Lee  <jonlee@apple.com>
1045
1046         plugin snapshotting accepts bad snapshot after 5 seconds
1047         https://bugs.webkit.org/show_bug.cgi?id=104886
1048         <rdar://problem/12838753>
1049
1050         Reviewed by Maciej Stachowiak.
1051
1052         * WebProcess/Plugins/PluginView.cpp: Increase to 60 tries, equating to a little over 60 seconds total.
1053
1054 2012-12-12  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1055
1056         NetworkInfoController needs to support destructor
1057         https://bugs.webkit.org/show_bug.cgi?id=104642
1058
1059         Reviewed by Kentaro Hara.
1060
1061         Though NetworkInfoController can be referenced by each port in order to update network status change,
1062         there is no virtual interface to destroy it. Beside each port client also needs to be destroyed when
1063         controller is destroyed.
1064
1065         * UIProcess/efl/NetworkInfoProvider.cpp:
1066         (NetworkInfoProvider::networkInfoControllerDestroyed):
1067         * UIProcess/efl/NetworkInfoProvider.h:
1068         (NetworkInfoProvider):
1069         * WebProcess/WebCoreSupport/WebNetworkInfoClient.cpp:
1070         (WebKit::WebNetworkInfoClient::networkInfoControllerDestroyed):
1071         (WebKit):
1072         * WebProcess/WebCoreSupport/WebNetworkInfoClient.h:
1073         (WebNetworkInfoClient):
1074
1075 2012-12-12  Andy Estes  <aestes@apple.com>
1076
1077         Rename currentMousePosition() to lastKnownMousePosition() and mark it as OVERRIDE.
1078
1079         * WebProcess/Plugins/PDF/PDFPlugin.h:
1080
1081 2012-12-12  Seokju Kwon  <seokju.kwon@gmail.com>
1082
1083         [EFL] Refactor duplicate code into EflInspectorUtilities
1084         https://bugs.webkit.org/show_bug.cgi?id=104329
1085
1086         Reviewed by Kenneth Rohde Christiansen.
1087
1088         Remove duplicated work to get the resource path for inspector.
1089         And use WebCore::inspectorResourcePath().
1090
1091         * UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp:
1092         (WebKit::WebInspectorServer::platformResourceForPath):
1093         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1094         (WebKit::WebInspectorProxy::inspectorBaseURL):
1095
1096 2012-12-12  Mark Lam  <mark.lam@apple.com>
1097
1098         Encapsulate externally used webdatabase APIs in DatabaseManager.
1099         https://bugs.webkit.org/show_bug.cgi?id=104741.
1100
1101         Reviewed by Sam Weinig.
1102
1103         Use DatabaseManager instead of accessing DatabaseTracker, AbstractDatabase,
1104         and DatabaseContext directly. This is to prepare for upcoming webkit2
1105         refactoring.
1106
1107         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1108         (WebKit::WebChromeClient::exceededDatabaseQuota):
1109         * WebProcess/WebCoreSupport/WebDatabaseManager.cpp:
1110         (WebKit::WebDatabaseManager::initialize):
1111         (WebKit::WebDatabaseManager::WebDatabaseManager):
1112         (WebKit::WebDatabaseManager::getDatabasesByOrigin):
1113         (WebKit::WebDatabaseManager::getDatabaseOrigins):
1114         (WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
1115         (WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
1116         (WebKit::WebDatabaseManager::deleteAllDatabases):
1117         (WebKit::WebDatabaseManager::setQuotaForOrigin):
1118         * WebProcess/WebCoreSupport/WebDatabaseManager.h:
1119         (WebDatabaseManager):
1120         * WebProcess/WebPage/WebPage.cpp:
1121         (WebKit::WebPage::updatePreferences):
1122
1123 2012-12-12  Alexey Proskuryakov  <ap@apple.com>
1124
1125         <rdar://problem/12862512> Crashes in NetworkResourceLoadScheduler::receivedRedirect
1126         https://bugs.webkit.org/show_bug.cgi?id=104844
1127
1128         Reviewed by Sam Weinig.
1129
1130         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1131         (WebKit::NetworkResourceLoadScheduler::receivedRedirect): The load may be already
1132         canceled.
1133
1134         * WebProcess/Network/WebResourceLoader.cpp:
1135         (WebKit::WebResourceLoader::didReceiveResponse): Expanded logging a little.
1136
1137 2012-12-12  Andras Becsi  <andras.becsi@digia.com>
1138
1139         [Qt][WK2] Fix the build on Mac
1140
1141         Unreviewed build fix.
1142
1143         Add missing virtual destructor with empty
1144         definition to fix missing vtable error
1145         in test util's LoadStartedCatcher.
1146
1147         * UIProcess/API/qt/tests/util.h:
1148         (LoadStartedCatcher::~LoadStartedCatcher):
1149
1150 2012-12-12  Alexey Proskuryakov  <ap@apple.com>
1151
1152         Make LOG() work in WebProcess and NetworkProcess
1153         https://bugs.webkit.org/show_bug.cgi?id=104718
1154
1155         Reviewed by Tim Horton.
1156
1157         * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):
1158         Initialize WebCore and WebKit2 logging.
1159
1160         * Platform/Logging.cpp: (WebKit::initializeLogChannelsIfNecessary):
1161         Added Network and NetworkScheduling. Re-ordered to match declaration order,
1162         alphabetical clearly doesn't help here.
1163
1164         * WebProcess/WebProcess.cpp: (WebKit::WebProcess::WebProcess): Initialize WebKit2
1165         logging in addition to WebCore.
1166
1167         * UIProcess/WebContext.cpp: (WebKit::WebContext::WebContext): Initialize WebKit2
1168         logging in addition to WebCore.
1169
1170 2012-12-12  Simon Pena  <spena@igalia.com>
1171
1172         [GTK] Add sections documentation to WebKit2 GTK+ API
1173         https://bugs.webkit.org/show_bug.cgi?id=104484
1174
1175         Reviewed by Martin Robinson.
1176
1177         Many of the sections in the WebKit2 GTK+ API documentation were
1178         missing. This commit adds new documentation, in some cases
1179         adapting it from WebKitGtk+ and in others writing it from the
1180         scratch.
1181
1182         It also removes the WebKitWebViewBase class from the documentation
1183         index, since it is not really relevant.
1184
1185         * UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
1186         * UIProcess/API/gtk/WebKitContextMenu.cpp:
1187         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
1188         * UIProcess/API/gtk/WebKitCookieManager.cpp:
1189         * UIProcess/API/gtk/WebKitDownload.cpp:
1190         * UIProcess/API/gtk/WebKitError.cpp:
1191         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
1192         * UIProcess/API/gtk/WebKitFindController.cpp:
1193         * UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
1194         * UIProcess/API/gtk/WebKitPlugin.cpp:
1195         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
1196         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
1197         * UIProcess/API/gtk/WebKitURIRequest.cpp:
1198         * UIProcess/API/gtk/WebKitURIResponse.cpp:
1199         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
1200         * UIProcess/API/gtk/WebKitVersion.cpp:
1201         * UIProcess/API/gtk/WebKitWebContext.cpp:
1202         * UIProcess/API/gtk/WebKitWebInspector.cpp:
1203         * UIProcess/API/gtk/WebKitWebResource.cpp:
1204         (webkit_web_resource_class_init):
1205         * UIProcess/API/gtk/WebKitWebView.cpp:
1206         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml:
1207
1208 2012-12-12  Kondapally Kalyan  <kalyan.kondapally@intel.com>
1209
1210         [EFL [WebGL] [Wk2] Resizing the canvas breaks WebGL.
1211         https://bugs.webkit.org/show_bug.cgi?id=104535.
1212
1213         Reviewed by Kenneth Rohde Christiansen.
1214
1215         GraphicsContext3DEfl does not re-create the surface on canvas resize, this
1216         conflicted with the logic in coordinated graphics Layer.
1217         CoordinatedGraphicsLayer checks for GraphicsSurfaceToken to decide if the surface
1218         in UI-Process should be recreated or not. With this
1219         patch we also check for size of the platform Layer.
1220
1221         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1222         (WebCore::CoordinatedGraphicsLayer::setContentsToCanvas):
1223         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1224         (CoordinatedGraphicsLayer):
1225
1226 2012-12-12  Sheriff Bot  <webkit.review.bot@gmail.com>
1227
1228         Unreviewed, rolling out r137438.
1229         http://trac.webkit.org/changeset/137438
1230         https://bugs.webkit.org/show_bug.cgi?id=104798
1231
1232         assertion reached when removing tile (Requested by tmpsantos
1233         on #webkit).
1234
1235         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1236         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1237         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
1238         (WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
1239         (WebCore::CoordinatedGraphicsLayer::setContentsScale):
1240         (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
1241         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreUpdatesAllowed):
1242         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
1243         (WebCore::CoordinatedGraphicsLayer::createTile):
1244         (WebCore::CoordinatedGraphicsLayer::updateTile):
1245         (WebCore::CoordinatedGraphicsLayer::removeTile):
1246         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
1247         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
1248         (WebCore::CoordinatedGraphicsLayer::adjustVisibleRect):
1249         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
1250         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1251         (CoordinatedGraphicsLayerClient):
1252         (CoordinatedGraphicsLayer):
1253         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1254         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
1255         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
1256         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
1257         (WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
1258         (WebKit):
1259         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1260         (CoordinatedLayerTreeHost):
1261
1262 2012-12-12  Mario Sanchez Prada  <mario@webkit.org>
1263
1264         [GTK][WK2] New API to detect display/execution of insecure content
1265         https://bugs.webkit.org/show_bug.cgi?id=104578
1266
1267         Reviewed by Martin Robinson.
1268
1269         Added new API and documentation for detecting insecure content.
1270
1271         Implemented needed functions from C API's WKPageLoaderClient
1272
1273         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1274         (didDisplayInsecureContentForFrame): Implemented.
1275         (didRunInsecureContentForFrame): Ditto.
1276         (attachLoaderClientToView): Added newly implemented functions.
1277
1278         Added new 'insecure-content-detected' signal to API.
1279
1280         * UIProcess/API/gtk/WebKitWebView.cpp:
1281         (webkit_web_view_class_init): Installed new signal.
1282         (webkitWebViewInsecureContentDetected): Helper function aded to
1283         private API to emit the new signal from the page loader client.
1284         * UIProcess/API/gtk/WebKitWebView.h:
1285         (_WebKitWebViewClass): Added new signal.
1286
1287         * UIProcess/API/gtk/WebKitWebViewPrivate.h: Added prototype of the
1288         new helper function webkitWebViewInsecureContentDetected().
1289
1290         Added new unit tests.
1291
1292         * UIProcess/API/gtk/tests/TestSSL.cpp:
1293         (testSSL): Updated to the new variable name for the https server.
1294         (testInsecureContent): New unit test.
1295         (httpsServerCallback): Renamed from serverCallback() and updated
1296         to return HTML content linking to external resources in an
1297         insecure (plain http) server, to be used by the new test.
1298         (httpServerCallback): New callback for a new http server, that
1299         will serve a script and an image when requested.
1300         (beforeAll): Run the new http server, besides the https one.
1301         (afterAll): Delete both the http and the https server.
1302
1303         Updated documentation with new API.
1304
1305         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added references
1306         to the new WebKitInsecureContentEvent enum type.
1307
1308 2012-12-12  Huang Dongsung  <luxtella@company100.net>
1309
1310         Coordinated Graphics: Refactor TiledBackingStore code in CoordinatedGraphicsLayer.
1311         https://bugs.webkit.org/show_bug.cgi?id=103959
1312
1313         Reviewed by Kenneth Rohde Christiansen.
1314
1315         Currently, CoordinatedGraphicsLayer has complex code related to TiledBackingStore.
1316         It has two problem.
1317         1. CoordinatedGraphicsLayer hacks TiledBackingStore to prevent
1318         TiledBackingStore from asynchronously sending UpdateTile message to UI
1319         Process.
1320         2. CreateTile and RemoveTile message can be sent to UI Process at any time.
1321
1322         This patch makes CoordinatedGraphicsLayer use TiledBackingStore more explicitly.
1323         It means only during flushing layer states, CoordinatedGraphicsLayer
1324         calls methods of TiledBackingStore, which indirectly call createTile(),
1325         updateTile() and removeTile().
1326
1327         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1328         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
1329         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
1330         (WebCore::CoordinatedGraphicsLayer::setVisibleContentRectTrajectoryVector):
1331         (WebCore::CoordinatedGraphicsLayer::setContentsScale):
1332         (WebCore::CoordinatedGraphicsLayer::adjustContentsScale):
1333         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreHasPendingTileCreation):
1334         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
1335         (WebCore::CoordinatedGraphicsLayer::createTile):
1336         (WebCore::CoordinatedGraphicsLayer::updateTile):
1337         (WebCore::CoordinatedGraphicsLayer::removeTile):
1338         (WebCore::CoordinatedGraphicsLayer::updateContentBuffers):
1339         (WebCore::CoordinatedGraphicsLayer::purgeBackingStores):
1340         (WebCore::CoordinatedGraphicsLayer::setNeedsVisibleRectAdjustment):
1341         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
1342         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1343         (CoordinatedGraphicsLayerClient):
1344         (CoordinatedGraphicsLayer):
1345         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1346         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
1347         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
1348         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
1349         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1350         (CoordinatedLayerTreeHost):
1351
1352 2012-12-12  Joaquim Rocha  <jrocha@igalia.com>
1353
1354         [GTK] Cookies' storage path and policy are not set when the WebProcess is killed and relaunched
1355         https://bugs.webkit.org/show_bug.cgi?id=104370
1356
1357         Reviewed by Carlos Garcia Campos.
1358
1359         This issue happens on ports that use Soup and causes problems like not finding the stored cookies
1360         nor their policy when the WebProcess is relaunched. As an example of a problem caused by this,
1361         a previously logged in user will not be logged in again when the process is relaunched and the
1362         policy used is always the same one.
1363
1364         * Shared/WebProcessCreationParameters.cpp:
1365         (WebKit::WebProcessCreationParameters::encode): Encode cookies' persistent storage path,
1366         storage type and acceptance policy.
1367         (WebKit::WebProcessCreationParameters::decode): Decode cookies' persistent storage path,
1368         storage type and acceptance policy.
1369         * Shared/WebProcessCreationParameters.h: Create 3 variables to hold the values mentioned above.
1370         (WebProcessCreationParameters):
1371         * UIProcess/WebCookieManagerProxy.cpp:
1372         (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
1373         (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Call WebCookieManagerProxySoup::setCookieAcceptPolicy.
1374         * UIProcess/WebCookieManagerProxy.h: Declare new Soup's methods setCookieAcceptPolicy, cookieAcceptPolicy and
1375         cookiePersistentStorage as well as the variables m_cookieAcceptPolicy and m_cookiePersistentStorage.
1376         (WebCookieManagerProxy):
1377         * UIProcess/efl/WebContextEfl.cpp: Assign the parameters' cookiePersistentStoragePath and
1378         cookiePersistentStorageType with the respective values.
1379         (WebKit::WebContext::platformInitializeWebProcess):
1380         * UIProcess/gtk/WebContextGtk.cpp: Assign the parameters' cookiePersistentStoragePath and
1381         cookiePersistentStorageType with the respective values.
1382         (WebKit::WebContext::platformInitializeWebProcess):
1383         * UIProcess/soup/WebCookieManagerProxySoup.cpp:
1384         (WebKit::WebCookieManagerProxy::setCookiePersistentStorage): Assign the m_cookiePersistentStorage pair
1385         with the method's parameters.
1386         (WebKit):
1387         (WebKit::WebCookieManagerProxy::getCookiePersistentStorage): Implement this getter.
1388         * WebProcess/Cookies/WebCookieManager.h: Declare setCookiePersistentStorage.
1389         (WebCookieManager):
1390         * WebProcess/soup/WebProcessSoup.cpp:
1391         (WebKit::WebProcess::platformInitializeWebProcess): Set the cookies' persistent storage and policy
1392         using the WebCookieManager's methods.
1393
1394 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
1395
1396         [EFL][WK2] Duplicated WebPageGroup initialization
1397         https://bugs.webkit.org/show_bug.cgi?id=103229
1398
1399         Reviewed by Kenneth Rohde Christiansen.
1400
1401         WebPageGroup does not need to be created in creating EwkView when the pageGroupRef is 0
1402         because the default WebPageGroup(m_defaultPageGroup) is created in WebContext constructor.
1403
1404         As a side effect on the duplicated initialization, pageGroupID increases even when the EwkView
1405         is created with default context.
1406
1407         * UIProcess/API/efl/ewk_view.cpp:
1408         (createEwkView):
1409
1410 2012-12-11  Sam Weinig  <sam@webkit.org>
1411
1412         Add API to set the maximum number of processes allowed in a WKContext
1413         https://bugs.webkit.org/show_bug.cgi?id=104769
1414
1415         Reviewed by Dan Bernstein.
1416
1417         Switch from using NSUserDefaults to a WKContext API to set the maximum number of processes
1418         for a context.
1419
1420         * UIProcess/API/C/WKContext.cpp:
1421         (WKContextSetMaximumNumberOfProcesses):
1422         (WKContextGetMaximumNumberOfProcesses):
1423         * UIProcess/API/C/WKContext.h:
1424         * UIProcess/WebContext.cpp:
1425         (WebKit::WebContext::setMaximumNumberOfProcesses):
1426         (WebKit):
1427         * UIProcess/WebContext.h:
1428         (WebContext):
1429         (WebKit::WebContext::maximumNumberOfProcesses):
1430         * UIProcess/mac/WebContextMac.mm:
1431         (WebKit::registerUserDefaultsIfNeeded):
1432         (WebKit::WebContext::platformInitialize):
1433
1434 2012-12-11  Kihong Kwon  <kihong.kwon@samsung.com>
1435
1436         Vibration API: IDL type doesn't match implementation type
1437         https://bugs.webkit.org/show_bug.cgi?id=103899
1438
1439         Reviewed by Kentaro Hara.
1440
1441         According to WebIDL, "unsigned long" corresponds to "unsigned" in the platform.
1442         Therefore unsigned long need to be changed to unsigned for the Vibration API.
1443         - Change a parameter type of vibrate function from uint64_t to uint_32_t.
1444
1445         * UIProcess/API/C/WKVibration.h:
1446         * UIProcess/API/efl/EwkViewCallbacks.h:
1447         * UIProcess/WebVibrationProvider.cpp:
1448         (WebKit::WebVibrationProvider::vibrate):
1449         * UIProcess/WebVibrationProvider.h:
1450         (WebVibrationProvider):
1451         * UIProcess/WebVibrationProxy.cpp:
1452         (WebKit::WebVibrationProxy::vibrate):
1453         * UIProcess/WebVibrationProxy.h:
1454         (WebVibrationProxy):
1455         * UIProcess/WebVibrationProxy.messages.in:
1456         * UIProcess/efl/VibrationClientEfl.cpp:
1457         (VibrationClientEfl::vibrateCallback):
1458         * UIProcess/efl/VibrationClientEfl.h:
1459         (VibrationClientEfl):
1460         * WebProcess/WebCoreSupport/WebVibrationClient.cpp:
1461         (WebKit::WebVibrationClient::vibrate):
1462         * WebProcess/WebCoreSupport/WebVibrationClient.h:
1463         (WebVibrationClient):
1464
1465 2012-12-11  Alexey Proskuryakov  <ap@apple.com>
1466
1467         <rdar://problem/12857870> [WK2 NetworkProcess] Cannot load HTTPS sites
1468         https://bugs.webkit.org/show_bug.cgi?id=104732
1469
1470         Reviewed by Anders Carlsson.
1471
1472         * Shared/BlockingResponseMap.h: (BlockingBoolResponseMap::waitForResponse):
1473         Fixed to make sense.
1474
1475 2012-12-11  Xianzhu Wang  <wangxianzhu@chromium.org>
1476
1477         Add window.internals.mainThreadScrollReasonsAsText for testing slow scrolling
1478         https://bugs.webkit.org/show_bug.cgi?id=104714
1479
1480         Reviewed by Eric Seidel.
1481
1482         Export symbol Page::mainThreadScrollingReasonsAsText().
1483
1484         * win/WebKit2.def.in:
1485
1486 2012-12-11  Gwang Yoon Hwang  <ryumiel@company100.net>
1487
1488         Coordinated Graphics: Rename LayerTreeCoordinator to CoordinatedLayerTreeHost
1489         https://bugs.webkit.org/show_bug.cgi?id=104641
1490
1491         Reviewed by Noam Rosenthal.
1492
1493         The name of LayerTreeCoordinator does not match LayerTreeHost.  This
1494         patch renames it to CoordinatedLayerTreeHost. And make a getter for
1495         CoordinatedLayerTreeHostProxy in QQuickWebPagePrivate to make a cleaner code.
1496
1497         No new tests - just a refactoring.
1498
1499         * CMakeLists.txt:
1500         * DerivedSources.pri:
1501         * Platform/CoreIPC/MessageID.h:
1502         * Target.pri:
1503         * UIProcess/API/efl/EwkViewImpl.cpp:
1504         (EwkViewImpl::layerTreeRenderer):
1505         * UIProcess/API/qt/qquickwebpage.cpp:
1506         (QQuickWebPagePrivate::paint):
1507         (QQuickWebPagePrivate::coordinatedLayerTreeHostProxy):
1508         (QQuickWebPage::updatePaintNode):
1509         (QQuickWebPagePrivate::updateSize):
1510         * UIProcess/API/qt/qquickwebpage_p_p.h:
1511         (WebKit):
1512         (QQuickWebPagePrivate):
1513         * UIProcess/API/qt/raw/qrawwebview.cpp:
1514         (QRawWebView::setSize):
1515         (QRawWebView::layerTreeRenderer):
1516         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp.
1517         (WebKit):
1518         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
1519         (WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
1520         (WebKit::CoordinatedLayerTreeHostProxy::updateViewport):
1521         (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
1522         (WebKit::CoordinatedLayerTreeHostProxy::createTileForLayer):
1523         (WebKit::CoordinatedLayerTreeHostProxy::updateTileForLayer):
1524         (WebKit::CoordinatedLayerTreeHostProxy::removeTileForLayer):
1525         (WebKit::CoordinatedLayerTreeHostProxy::createUpdateAtlas):
1526         (WebKit::CoordinatedLayerTreeHostProxy::removeUpdateAtlas):
1527         (WebKit::CoordinatedLayerTreeHostProxy::deleteCompositingLayer):
1528         (WebKit::CoordinatedLayerTreeHostProxy::setRootCompositingLayer):
1529         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerState):
1530         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerChildren):
1531         (WebKit::CoordinatedLayerTreeHostProxy::setCompositingLayerFilters):
1532         (WebKit::CoordinatedLayerTreeHostProxy::removeCustomFilterProgram):
1533         (WebKit::CoordinatedLayerTreeHostProxy::createCustomFilterProgram):
1534         (WebKit::CoordinatedLayerTreeHostProxy::didRenderFrame):
1535         (WebKit::CoordinatedLayerTreeHostProxy::createImageBacking):
1536         (WebKit::CoordinatedLayerTreeHostProxy::updateImageBacking):
1537         (WebKit::CoordinatedLayerTreeHostProxy::clearImageBackingContents):
1538         (WebKit::CoordinatedLayerTreeHostProxy::removeImageBacking):
1539         (WebKit::CoordinatedLayerTreeHostProxy::setContentsSize):
1540         (WebKit::CoordinatedLayerTreeHostProxy::setLayerAnimations):
1541         (WebKit::CoordinatedLayerTreeHostProxy::setAnimationsLocked):
1542         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
1543         (WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
1544         (WebKit::CoordinatedLayerTreeHostProxy::requestAnimationFrame):
1545         (WebKit::CoordinatedLayerTreeHostProxy::animationFrameReady):
1546         (WebKit::CoordinatedLayerTreeHostProxy::didChangeScrollPosition):
1547         (WebKit::CoordinatedLayerTreeHostProxy::createCanvas):
1548         (WebKit::CoordinatedLayerTreeHostProxy::syncCanvas):
1549         (WebKit::CoordinatedLayerTreeHostProxy::destroyCanvas):
1550         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
1551         (WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):
1552         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h.
1553         (WebKit):
1554         (CoordinatedLayerTreeHostProxy):
1555         (WebKit::CoordinatedLayerTreeHostProxy::layerTreeRenderer):
1556         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in.
1557         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
1558         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
1559         (WebKit::LayerTreeRenderer::animationFrameReady):
1560         (WebKit::LayerTreeRenderer::updateViewport):
1561         (WebKit::LayerTreeRenderer::renderNextFrame):
1562         (WebKit::LayerTreeRenderer::purgeBackingStores):
1563         (WebKit::LayerTreeRenderer::detach):
1564         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
1565         (WebKit):
1566         (LayerTreeRenderer):
1567         * UIProcess/DrawingAreaProxy.cpp:
1568         (WebKit::DrawingAreaProxy::didReceiveCoordinatedLayerTreeHostProxyMessage):
1569         * UIProcess/DrawingAreaProxy.h:
1570         (WebKit):
1571         (WebKit::DrawingAreaProxy::coordinatedLayerTreeHostProxy):
1572         (DrawingAreaProxy):
1573         * UIProcess/DrawingAreaProxyImpl.cpp:
1574         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
1575         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
1576         (WebKit::DrawingAreaProxyImpl::didReceiveCoordinatedLayerTreeHostProxyMessage):
1577         (WebKit::DrawingAreaProxyImpl::setVisibleContentsRect):
1578         * UIProcess/DrawingAreaProxyImpl.h:
1579         (WebKit):
1580         * UIProcess/WebPageProxy.cpp:
1581         (WebKit::WebPageProxy::didReceiveMessage):
1582         * UIProcess/efl/PageClientBase.cpp:
1583         * UIProcess/efl/PageClientLegacyImpl.cpp:
1584         (WebKit::PageClientLegacyImpl::didChangeContentsSize):
1585         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1586         (WebKit::PageViewportControllerClientEfl::setRendererActive):
1587         (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
1588         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1589         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp.
1590         (WebKit):
1591         (WebKit::CoordinatedLayerTreeHost::create):
1592         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
1593         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
1594         (WebKit::CoordinatedLayerTreeHost::setLayerFlushSchedulingEnabled):
1595         (WebKit::CoordinatedLayerTreeHost::scheduleLayerFlush):
1596         (WebKit::CoordinatedLayerTreeHost::cancelPendingLayerFlush):
1597         (WebKit::CoordinatedLayerTreeHost::setShouldNotifyAfterNextScheduledLayerFlush):
1598         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
1599         (WebKit::CoordinatedLayerTreeHost::invalidate):
1600         (WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplay):
1601         (WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
1602         (WebKit::CoordinatedLayerTreeHost::forceRepaint):
1603         (WebKit::CoordinatedLayerTreeHost::forceRepaintAsync):
1604         (WebKit::CoordinatedLayerTreeHost::sizeDidChange):
1605         (WebKit::CoordinatedLayerTreeHost::didInstallPageOverlay):
1606         (WebKit::CoordinatedLayerTreeHost::didUninstallPageOverlay):
1607         (WebKit::CoordinatedLayerTreeHost::setPageOverlayNeedsDisplay):
1608         (WebKit::CoordinatedLayerTreeHost::setPageOverlayOpacity):
1609         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
1610         (WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
1611         (WebKit::CoordinatedLayerTreeHost::syncLayerState):
1612         (WebKit::CoordinatedLayerTreeHost::syncLayerChildren):
1613         (WebKit::CoordinatedLayerTreeHost::createCanvas):
1614         (WebKit::CoordinatedLayerTreeHost::syncCanvas):
1615         (WebKit::CoordinatedLayerTreeHost::destroyCanvas):
1616         (WebKit::CoordinatedLayerTreeHost::syncLayerFilters):
1617         (WebKit::CoordinatedLayerTreeHost::checkCustomFilterProgramProxies):
1618         (WebKit::CoordinatedLayerTreeHost::removeCustomFilterProgramProxy):
1619         (WebKit::CoordinatedLayerTreeHost::disconnectCustomFilterPrograms):
1620         (WebKit::CoordinatedLayerTreeHost::detachLayer):
1621         (WebKit::updateOffsetFromViewportForSelf):
1622         (WebKit::updateOffsetFromViewportForLayer):
1623         (WebKit::CoordinatedLayerTreeHost::syncFixedLayers):
1624         (WebKit::CoordinatedLayerTreeHost::lockAnimations):
1625         (WebKit::CoordinatedLayerTreeHost::unlockAnimations):
1626         (WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):
1627         (WebKit::CoordinatedLayerTreeHost::syncDisplayState):
1628         (WebKit::CoordinatedLayerTreeHost::didPerformScheduledLayerFlush):
1629         (WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):
1630         (WebKit::CoordinatedLayerTreeHost::createPageOverlayLayer):
1631         (WebKit::CoordinatedLayerTreeHost::destroyPageOverlayLayer):
1632         (WebKit::CoordinatedLayerTreeHost::createImageBackingIfNeeded):
1633         (WebKit::CoordinatedLayerTreeHost::createImageBacking):
1634         (WebKit::CoordinatedLayerTreeHost::updateImageBacking):
1635         (WebKit::CoordinatedLayerTreeHost::clearImageBackingContents):
1636         (WebKit::CoordinatedLayerTreeHost::removeImageBacking):
1637         (WebKit::CoordinatedLayerTreeHost::flushPendingImageBackingChanges):
1638         (WebKit::CoordinatedLayerTreeHost::notifyAnimationStarted):
1639         (WebKit::CoordinatedLayerTreeHost::notifyFlushRequired):
1640         (WebKit::CoordinatedLayerTreeHost::paintContents):
1641         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
1642         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
1643         (WebKit::CoordinatedLayerTreeHost::createTile):
1644         (WebKit::CoordinatedLayerTreeHost::updateTile):
1645         (WebKit::CoordinatedLayerTreeHost::removeTile):
1646         (WebKit::CoordinatedLayerTreeHost::createUpdateAtlas):
1647         (WebKit::CoordinatedLayerTreeHost::removeUpdateAtlas):
1648         (WebKit::CoordinatedLayerTreeHost::visibleContentsRect):
1649         (WebKit::CoordinatedLayerTreeHost::setLayerAnimations):
1650         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
1651         (WebKit::CoordinatedLayerTreeHost::graphicsLayerFactory):
1652         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
1653         (WebKit::CoordinatedLayerTreeHost::animationFrameReady):
1654         (WebKit::CoordinatedLayerTreeHost::renderNextFrame):
1655         (WebKit::CoordinatedLayerTreeHost::layerTreeTileUpdatesAllowed):
1656         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
1657         (WebKit::CoordinatedLayerTreeHost::beginContentUpdate):
1658         (WebKit::CoordinatedLayerTreeHost::scheduleReleaseInactiveAtlases):
1659         (WebKit::CoordinatedLayerTreeHost::releaseInactiveAtlasesTimerFired):
1660         (WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
1661         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h.
1662         (WebKit):
1663         (CoordinatedLayerTreeHost):
1664         (WebKit::CoordinatedLayerTreeHost::layerTreeContext):
1665         (WebKit::CoordinatedLayerTreeHost::pageOverlayShouldApplyFadeWhenPainting):
1666         (WebKit::CoordinatedLayerTreeHost::pauseRendering):
1667         (WebKit::CoordinatedLayerTreeHost::resumeRendering):
1668         (WebKit::CoordinatedLayerTreeHost::deviceScaleFactorDidChange):
1669         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in: Renamed from Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in.
1670         * WebProcess/WebPage/DrawingArea.h:
1671         (DrawingArea):
1672         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1673         (WebKit::DrawingAreaImpl::didReceiveCoordinatedLayerTreeHostMessage):
1674         * WebProcess/WebPage/DrawingAreaImpl.h:
1675         (DrawingAreaImpl):
1676         * WebProcess/WebPage/LayerTreeHost.cpp:
1677         (WebKit::LayerTreeHost::create):
1678         * WebProcess/WebPage/LayerTreeHost.h:
1679         (LayerTreeHost):
1680         * WebProcess/WebPage/WebPage.cpp:
1681         (WebKit::WebPage::WebPage):
1682         (WebKit::WebPage::~WebPage):
1683         (WebKit::WebPage::didReceiveMessage):
1684
1685 2012-12-11  Alexey Proskuryakov  <ap@apple.com>
1686
1687         <rdar://problem/12857080> Per-Tab WebProcess: Blue lines between menu tabs at apple.com
1688         https://bugs.webkit.org/show_bug.cgi?id=104709
1689
1690         Reviewed by Sam Weinig.
1691
1692         Data URLs were broken. Removing a no longer valid optimization for now.
1693
1694         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1695         (WebKit::WebResourceLoadScheduler::scheduleLoad):
1696
1697 2012-12-11  Michael Pruett  <michael@68k.org>
1698
1699         [JSC] Add tests for explicit serialization values
1700         https://bugs.webkit.org/show_bug.cgi?id=104423
1701
1702         Reviewed by Oliver Hunt.
1703
1704         Add tests for serialization and deserialization mechanisms of
1705         the JSC implementation of SerializedScriptValue. Similar tests
1706         already exist for the V8 implementation.
1707
1708         * win/WebKit2.def.in:
1709
1710 2012-12-11  Jon Lee  <jonlee@apple.com>
1711
1712         Initialize new web processes with list of auto-start origins for plug-ins
1713         https://bugs.webkit.org/show_bug.cgi?id=103219
1714         <rdar://problem/12747219>
1715
1716         Reviewed by Anders Carlsson.
1717
1718         Serialize the set of hashes into a vector as a parameter in web process creation.
1719
1720         * Shared/WebProcessCreationParameters.h: Add a parameter for the origin hashes.
1721
1722         * Shared/WebProcessCreationParameters.cpp: Encode/decode that parameter.
1723         (WebKit::WebProcessCreationParameters::encode):
1724         (WebKit::WebProcessCreationParameters::decode):
1725
1726         * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
1727         (WebKit::PlugInAutoStartProvider::autoStartOriginsCopy): Return a vector copy with contents from the
1728         hash set.
1729         * UIProcess/Plugins/PlugInAutoStartProvider.h:
1730         (PlugInAutoStartProvider):
1731
1732         * UIProcess/WebContext.cpp:
1733         (WebKit::WebContext::createNewWebProcess): Populate the parameter with the contents of the set.
1734         * WebProcess/WebProcess.cpp:
1735         (WebKit::WebProcess::initializeWebProcess): Add the items in the vector to the web process' copy of the set.
1736
1737 2012-12-11  Andreas Kling  <akling@apple.com>
1738
1739         CoreIPC: ArgumentEncoder should have an inline buffer.
1740         <http://webkit.org/b/104622>
1741
1742         Reviewed by Anders Carlsson.
1743
1744         Add a 4K inline buffer to CoreIPC::ArgumentEncoder to avoid malloc/free churn.
1745         It was dominating the transient allocations graph in Instruments.
1746
1747         * Platform/CoreIPC/ArgumentEncoder.cpp:
1748         (CoreIPC::ArgumentEncoder::ArgumentEncoder):
1749         (CoreIPC::ArgumentEncoder::grow):
1750         * Platform/CoreIPC/ArgumentEncoder.h:
1751         (CoreIPC::ArgumentEncoder::buffer):
1752         (ArgumentEncoder):
1753         (CoreIPC::ArgumentEncoder::usesInlineBuffer):
1754
1755 2012-12-11  Mike West  <mkwst@chromium.org>
1756
1757         Web Inspector: ConsoleTypes should not expose MessageType - it should be private to inspector.
1758         https://bugs.webkit.org/show_bug.cgi?id=66371
1759
1760         Reviewed by Pavel Feldman.
1761
1762         Drops WebCore::MessageLevel from the addMessageToConsole method.
1763
1764         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1765         (WebKit::WebChromeClient::addMessageToConsole):
1766         * WebProcess/WebCoreSupport/WebChromeClient.h:
1767         (WebChromeClient):
1768
1769 2012-12-11  Thiago Marcos P. Santos  <thiago.santos@intel.com>
1770
1771         [EFL] Increase the timeout of the API unit tests
1772         https://bugs.webkit.org/show_bug.cgi?id=104666
1773
1774         Reviewed by Kenneth Rohde Christiansen.
1775
1776         Palliative fix until we find out why the tests are taking so long.
1777
1778         * PlatformEfl.cmake:
1779
1780 2012-12-11  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1781
1782         [Qt][EFL][WK2] Resizing the window doesn't always result in right content position
1783         https://bugs.webkit.org/show_bug.cgi?id=104416
1784
1785         Reviewed by Simon Hausmann.
1786
1787         Make sure the client is notified about position and scale changed done by us.
1788         Rename the m_*IsLocked to m_pending*Change as that makes the code more obvious.
1789
1790         Patch verified with both Qt and EFL.
1791
1792         * UIProcess/PageViewportController.cpp:
1793         (WebKit::PageViewportController::PageViewportController):
1794         (WebKit::PageViewportController::didRenderFrame): Notify client and pixel align.
1795         (WebKit::PageViewportController::didChangeContentsVisibility):
1796         (WebKit::PageViewportController::didChangeViewportAttributes):
1797         (WebKit::PageViewportController::applyScaleAfterRenderingContents):
1798         (WebKit::PageViewportController::applyPositionAfterRenderingContents):
1799         * UIProcess/PageViewportController.h:
1800         (PageViewportController):
1801
1802 2012-12-11  Christophe Dumez  <christophe.dumez@intel.com>
1803
1804         [CoordinatedGraphics] Use unsigned integers for UpdateAtlas IDs
1805         https://bugs.webkit.org/show_bug.cgi?id=104654
1806
1807         Reviewed by Kenneth Rohde Christiansen.
1808
1809         UpdateAtlas currently uses *signed* integer type for its identifier.
1810         Due to the way we generate those IDs, it is safer to use *unsigned*
1811         integers. This is because the generated ID will overflow at some
1812         point and the C and C++ language standards say that overflow of a
1813         signed value is undefined behaviour.
1814
1815         This patch switches to unsigned integer type for UpdateAtlas IDs
1816         since unsigned integers are guaranteed to wrap around on overflow.
1817
1818         * Shared/SurfaceUpdateInfo.h:
1819         (SurfaceUpdateInfo):
1820         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
1821         (WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
1822         (WebKit::LayerTreeCoordinatorProxy::removeUpdateAtlas):
1823         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
1824         (LayerTreeCoordinatorProxy):
1825         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
1826         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
1827         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
1828         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
1829         (CoordinatedGraphicsLayerClient):
1830         (CoordinatedGraphicsLayer):
1831         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
1832         (CoordinatedTileClient):
1833         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
1834         (WebKit::LayerTreeCoordinator::createUpdateAtlas):
1835         (WebKit::LayerTreeCoordinator::removeUpdateAtlas):
1836         (WebKit::LayerTreeCoordinator::beginContentUpdate):
1837         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
1838         (LayerTreeCoordinator):
1839         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
1840         (WebKit::UpdateAtlas::UpdateAtlas):
1841         (WebKit::UpdateAtlas::~UpdateAtlas):
1842         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
1843         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
1844         (UpdateAtlasClient):
1845         (UpdateAtlas):
1846
1847 2012-12-11  Jinwoo Song  <jinwoo7.song@samsung.com>
1848
1849         [EFL][WK2] Create a ewk view object with new context for API tests
1850         https://bugs.webkit.org/show_bug.cgi?id=103692
1851
1852         Reviewed by Gyuyoung Kim. 
1853
1854         Bug 103229 fixes the issue which PageGroupID increased even though
1855         the EwkView was created with default context. If the Bug 103229 is
1856         resolved, the EwkViews with same context will have same setting preferences.
1857
1858         Currently, WebKit2/EFL API test is creating the ewk view object
1859         with the default context so the setting values set previously may
1860         influence the following tests. So this patch created a ewk view object
1861         with a new context instead of default one.
1862
1863         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
1864         (EWK2UnitTest::EWK2UnitTestBase::SetUp):
1865
1866 2012-12-10  Dan Winship  <danw@gnome.org>
1867
1868         [Soup] Fix spelling of "initiating" in API.
1869
1870         Reviewed by Martin Robinson.
1871
1872         * WebProcess/soup/WebSoupRequestManager.cpp:
1873         (WebKit::WebSoupRequestManager::send):
1874
1875 2012-12-10  Alexey Proskuryakov  <ap@apple.com>
1876
1877         [WK2] Add a user default to limit the number of web processes
1878         https://bugs.webkit.org/show_bug.cgi?id=104606
1879
1880         Reviewed by Sam Weinig.
1881
1882         When the limit is reached, we'll reuse an existing process with fewest pages.
1883
1884         * UIProcess/WebContext.cpp:
1885         (WebKit::WebContext::WebContext): Initialize m_webProcessCountLimit.
1886         (WebKit::WebContext::platformInitialize): Added a hook for reading the preference,
1887         empty implementation on most platforms.
1888         (WebKit::WebContext::createNewWebProcess): Changed to return a raw pointer. The new
1889         process is put into a vector anyway, so there is no ownership transfer.
1890         (WebKit::WebContext::warmInitialProcess): Don't create a new process if that would
1891         exceed the limit.
1892         (WebKit::WebContext::createNewWebProcessRespectingProcessCountLimit): Added a new
1893         function that wither creates a new process, or picks an existing one.
1894         (WebKit::WebContext::createWebPage): Call the above new function instead of
1895         unconditionally creating a process.
1896
1897         * UIProcess/WebContext.h: createNewWebProcess is no private. All clients should
1898         respect the process count limit.
1899
1900         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::reattachToWebProcess):
1901         Respect the process count limit.
1902
1903         * UIProcess/mac/WebContextMac.mm:
1904         (WebKit::registerUserDefaultsIfNeeded): Register the new default.
1905         (WebKit::WebContext::platformInitialize): Read the default into a WebContext
1906         member variable.
1907         (WebKit::WebContext::platformInitializeWebProcess): Moved registerUserDefaultsIfNeeded()
1908         from here to platformInitialize(), as that's a better place for it. Also added a
1909         FIXME for an unrelated issue.
1910
1911 2012-12-10  Jon Lee  <jonlee@apple.com>
1912
1913         Build fix.
1914
1915         * WebProcess/WebCoreSupport/WebPlugInClient.cpp:
1916         (WebKit::WebPlugInClient::WebPlugInClient): Remove unneeded m_page variable.
1917         * WebProcess/WebCoreSupport/WebPlugInClient.h:
1918         (WebPlugInClient):
1919
1920 2012-12-10  Jon Lee  <jonlee@apple.com>
1921
1922         Keep track of plug-in snapshots clicked by user
1923         https://bugs.webkit.org/show_bug.cgi?id=103206
1924         <rdar://problem/12746483>
1925
1926         Reviewed by Anders Carlsson.
1927
1928         Create a new provider class for the web context that maintains a mapping of the plug-in origins
1929         allowed to auto-start for a specific page origin.
1930
1931         * WebProcess/WebPage/WebPage.cpp:
1932         (WebKit::WebPage::WebPage): Create and set WebPlugInClient.
1933
1934         Implement WebCore::PlugInClient.
1935         * WebProcess/WebCoreSupport/WebPlugInClient.cpp: Added.
1936         (WebKit::WebPlugInClient::WebPlugInClient):
1937         (WebKit::WebPlugInClient::~WebPlugInClient):
1938         (WebKit::WebPlugInClient::pageDestroyed):
1939         (WebKit::WebPlugInClient::isAutoStartOrigin): Forward to WebProcess.
1940         (WebKit::WebPlugInClient::addAutoStartOrigin): Forward to WebProcess.
1941         * WebProcess/WebCoreSupport/WebPlugInClient.h: Added.
1942
1943         * WebProcess/WebProcess.cpp: Maintains a copy of the hash set.
1944         (WebKit::WebProcess::isPlugInAutoStartOrigin): Look for the hash in the set.
1945         (WebKit::WebProcess::addPlugInAutoStartOrigin): Tell the UI process to add the hash for the page.
1946         (WebKit::WebProcess::didAddPlugInAutoStartOrigin): Add the hash to the cached set.
1947         * WebProcess/WebProcess.h:
1948         * WebProcess/WebProcess.messages.in: Add DidAddPlugInAutoStartOrigin.
1949
1950         Add the auto-start provider.
1951         * UIProcess/WebContext.cpp:
1952         (WebKit::WebContext::WebContext): Initialize the provider.
1953         (WebKit::WebContext::addPlugInAutoStartOriginHash): Forward to the provider.
1954         * UIProcess/WebContext.h:
1955         * UIProcess/WebContext.messages.in: Add AddPlugInAutoStartOriginHash.
1956
1957         The provider class maintains a map of page domains to hashes, and a set of all the hashes.
1958         The latter will be used to initialize new web processes without having to crawl through the
1959         whole map.
1960         * UIProcess/Plugins/PlugInAutoStartProvider.cpp: Added.
1961         (WebKit::PlugInAutoStartProvider::PlugInAutoStartProvider):
1962         (WebKit::PlugInAutoStartProvider::addAutoStartOrigin): Add the origin to the map and set. Tell
1963         all processes to add the origin to their local copies.
1964         * UIProcess/Plugins/PlugInAutoStartProvider.h: Added.
1965
1966         Add PlugInAutoStartProvider and WebPlugInClient.
1967         * CMakeLists.txt:
1968         * GNUmakefile.list.am:
1969         * Target.pri:
1970         * WebKit2.xcodeproj/project.pbxproj:
1971         * win/WebKit2.vcproj:
1972
1973 2012-12-10  Anders Carlsson  <andersca@apple.com>
1974
1975         Add WKPageSetInvalidMessageFunction stub
1976         https://bugs.webkit.org/show_bug.cgi?id=104614
1977         <rdar://problem/12841671>
1978
1979         Reviewed by Mark Rowe.
1980
1981         * UIProcess/API/C/WKPage.cpp:
1982         (WKPageSetInvalidMessageFunction):
1983         * UIProcess/API/C/WKPagePrivate.h:
1984
1985 2012-12-09  Antti Koivisto  <antti@apple.com>
1986
1987         Factor node traversal into standalone functions
1988         https://bugs.webkit.org/show_bug.cgi?id=104507
1989
1990         Reviewed by Eric Seidel.
1991
1992         * WebProcess/WebPage/WebFrame.cpp:
1993         (WebKit::WebFrame::containsAnyFormElements):
1994
1995 2012-12-10  Eduardo Lima Mitev  <elima@igalia.com>
1996
1997         [GTK] Expose HitTestResult::scrollbar() condition in API
1998         https://bugs.webkit.org/show_bug.cgi?id=104369
1999
2000         Reviewed by Carlos Garcia Campos.
2001
2002         This patch populates WebCore::HitTestResult::scrollbar() condition
2003         in WebKitHitTestResult public API, and includes a corresponding unit
2004         test.
2005
2006         * Shared/WebHitTestResult.cpp: Adds new isScrollbar member to
2007         encoding and decoding methods to carry the scrollbar condition
2008         from Web process to UI process.
2009         (WebKit::WebHitTestResult::Data::encode):
2010         (WebKit::WebHitTestResult::Data::decode):
2011         * Shared/WebHitTestResult.h:
2012         (Data): Adds new bool member isScrollbar.
2013         (WebKit::WebHitTestResult::Data::Data): Initializes isScrollbar from
2014         WebCore::HitTestResult::scrollbar().
2015         (WebKit::WebHitTestResult::isScrollbar): Method that returns value
2016         of isScrollbar member.
2017         (WebHitTestResult):
2018         * UIProcess/API/gtk/WebKitHitTestResult.cpp:
2019         (webkitHitTestResultCreate): Adds scrollbar condition to context upon
2020         initialization.
2021         (webkitHitTestResultCompare): Adds comparison of scrollbar condition.
2022         (webkit_hit_test_result_context_is_scrollbar): Public accessor for
2023         scrollbar presence in context.
2024         * UIProcess/API/gtk/WebKitHitTestResult.h: Adds new flag
2025         WEBKIT_HIT_TEST_RESULT_CONTEXT_SCROLLBAR to
2026         WebKitHitTestResultContext enum.
2027         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Adds new API symbol
2028         to the corresponding documentation sections.
2029         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
2030         (testWebViewMouseTarget): Updates mouse-target
2031         test to include assertions for hitting scrollbar condition, and
2032         an new HTML to privide a positive case.
2033
2034 2012-12-10  Alexis Menard  <alexis@webkit.org>
2035
2036         [CSS3 Backgrounds and Borders] Remove CSS3_BACKGROUND feature flag.
2037         https://bugs.webkit.org/show_bug.cgi?id=104539
2038
2039         Reviewed by Antonio Gomes.
2040
2041         As discussed on webkit-dev it is not needed to keep this feature flag 
2042         as support for <position> type is a small feature that is already 
2043         implemented by three other UAs. It was useful while landing this 
2044         feature as partial bits were landed one after one.
2045
2046         * Configurations/FeatureDefines.xcconfig:
2047
2048 2012-12-10  Alberto Garcia  <agarcia@igalia.com>
2049
2050         WebKitWebViewBase produces a warning if compiled with gcc
2051         https://bugs.webkit.org/show_bug.cgi?id=104561
2052
2053         Reviewed by Carlos Garcia Campos.
2054
2055         * UIProcess/API/gtk/WebKitWebViewBase.h:
2056         since this file can be included from C code, use void to
2057         explicitly specify that webkit_web_view_base_get_type() doesn't
2058         have parameters. Otherwise we get "warning: function declaration
2059         isn't a prototype" with -Wstrict-prototypes.
2060
2061 2012-12-10  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2062
2063         [WK2] TiledBackingStore: remove unneeded 'treatAsInitialValue' parameter from PageViewportControllerClient::setContentsScale
2064         https://bugs.webkit.org/show_bug.cgi?id=104544
2065
2066         Reviewed by Kenneth Rohde Christiansen.
2067
2068         Removed 'treatAsInitialValue' parameter from PageViewportControllerClient::setContentsScale()
2069         as it was not used by anyone.
2070
2071         * UIProcess/PageViewportController.cpp:
2072         (WebKit::PageViewportController::didRenderFrame):
2073         * UIProcess/PageViewportControllerClient.h:
2074         (PageViewportControllerClient):
2075         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2076         (WebKit::PageViewportControllerClientEfl::setContentsScale):
2077         * UIProcess/efl/PageViewportControllerClientEfl.h:
2078         (PageViewportControllerClientEfl):
2079         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2080         (WebKit::PageViewportControllerClientQt::setContentsScale):
2081         * UIProcess/qt/PageViewportControllerClientQt.h:
2082         (PageViewportControllerClientQt):
2083
2084 2012-12-10  Zoltan Nyul  <zoltan.nyul@intel.com>
2085
2086         Implement testRunner.setViewModeMediaFeature() in WebKitTestRunner
2087         https://bugs.webkit.org/show_bug.cgi?id=103886
2088
2089         Reviewed by Kenneth Rohde Christiansen.
2090
2091         Add support for TestRunner::setViewModeMediaFeature().
2092         This functionality is needed by the following LayoutTests:
2093         fast/media/media-query-list-02.html
2094         fast/media/media-query-list-03.html
2095         fast/media/media-query-list-04.html
2096         fast/media/media-query-list-05.html
2097         fast/media/media-query-list-06.html
2098         fast/media/media-query-list-07.html
2099         fast/media/view-mode-media-feature.html
2100
2101         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2102         (WKBundlePageSetViewMode):
2103         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
2104         * WebProcess/WebPage/WebPage.cpp:
2105         (WebKit::WebPage::setViewMode):
2106         (WebKit):
2107         * WebProcess/WebPage/WebPage.h:
2108         (WebPage):
2109
2110 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
2111
2112         [Qt] Fix QtWebProcess discovery on Windows
2113         https://bugs.webkit.org/show_bug.cgi?id=104552
2114
2115         Reviewed by Jocelyn Turcotte.
2116
2117         Make sure to look for QtWebProcess.exe on Windows instead of QtWebProcess.
2118
2119         * Shared/qt/ProcessExecutablePathQt.cpp:
2120         (WebKit::executablePath):
2121
2122 2012-12-10  Martin Robinson  <mrobinson@igalia.com>
2123
2124         [GTK] Bring Harfbuzz-ng support to Gtk
2125         https://bugs.webkit.org/show_bug.cgi?id=92098
2126
2127         Reviewed by Gustavo Noronha Silva.
2128
2129         Add a HarfBuzz dependency.
2130
2131         * GNUmakefile.am: Add FreeType/HarfBuzz CFLAGS/LIBS to the libraries.
2132
2133 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
2134
2135         [Qt] Use QLibraryInfo::LibraryExecutablesPath unconditionally
2136         https://bugs.webkit.org/show_bug.cgi?id=104541
2137
2138         Reviewed by Jocelyn Turcotte.
2139
2140         We now depend on a Qt 5 version that is guaranteed to have this API, so we
2141         can remove the configure checks for it.
2142
2143         * PluginProcess.pro:
2144         * Shared/qt/ProcessExecutablePathQt.cpp:
2145         (WebKit::executablePath):
2146         * WebProcess.pro:
2147
2148 2012-12-10  Simon Hausmann  <simon.hausmann@digia.com>
2149
2150         [Qt] Fix build without QtQuick 2
2151
2152         Unreviewed trivial build fix.
2153
2154         This function is defined in QtWebContext, which is only used when QtQuick2 is available.
2155
2156         * UIProcess/qt/WebContextQt.cpp:
2157         (WebKit::WebContext::platformInvalidateContext):
2158
2159 2012-12-10  Huang Dongsung  <luxtella@company100.net>
2160
2161         Coordinated Graphics: Remove the dependency of ShareableSurface from Coordinated Graphics.
2162         https://bugs.webkit.org/show_bug.cgi?id=100819
2163
2164         Reviewed by Kenneth Rohde Christiansen.
2165
2166         It is a follow-up patch of r137117.
2167
2168         There are two changes
2169         1. Add a const qualifier to supportsAlpha().
2170         2. Use << instead of encode() when using ArgumentEncoder.
2171
2172         * Shared/CoordinatedGraphics/CoordinatedSurface.h:
2173         (WebKit::CoordinatedSurface::supportsAlpha):
2174         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
2175         (WebKit::WebCoordinatedSurface::Handle::encode):
2176         (WebKit::WebCoordinatedSurface::copyToTexture):
2177
2178 2012-12-10  Huang Dongsung  <luxtella@company100.net>
2179
2180         Coordinated Graphics: Remove the dependency of ShareableSurface from Coordinated Graphics.
2181         https://bugs.webkit.org/show_bug.cgi?id=100819
2182
2183         Reviewed by Kenneth Rohde Christiansen.
2184
2185         WebCoordinatedSurface::copyToTexture should return early if the backend
2186         is GraphicsSurface.
2187
2188         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp:
2189         (WebKit::WebCoordinatedSurface::copyToTexture):
2190
2191 2012-12-10  Huang Dongsung  <luxtella@company100.net>
2192
2193         Coordinated Graphics: Add CoordinatedSurface to remove the dependency of ShareableSurface from Coordinated Graphics.
2194         https://bugs.webkit.org/show_bug.cgi?id=100819
2195
2196         Reviewed by Noam Rosenthal.
2197
2198         Internal Review by Gwang Yoon Hwang and Jae Hyun Park.
2199
2200         It is a preparation patch for Threaded Coordinated Graphics on WK1.
2201
2202         Create a CoordinatedSurface class that can be the base class both for
2203         the current IPC-based ShareableSurface, renamed here to
2204         WebCoordinatedSurface, and to a future thread-based surface
2205         implementation.
2206
2207         * CMakeLists.txt:
2208         * Shared/CoordinatedGraphics/CoordinatedSurface.h: Added.
2209         (WebCore):
2210         (WebKit):
2211         (CoordinatedSurface):
2212         (WebKit::CoordinatedSurface::~CoordinatedSurface):
2213         (WebKit::CoordinatedSurface::supportsAlpha):
2214         * Shared/CoordinatedGraphics/WebCoordinatedSurface.cpp: Renamed from Source/WebKit2/Shared/ShareableSurface.cpp.
2215           Extends CoordinatedSurface.
2216         (WebKit):
2217         (WebKit::WebCoordinatedSurface::Handle::Handle):
2218         (WebKit::WebCoordinatedSurface::Handle::encode):
2219         (WebKit::WebCoordinatedSurface::Handle::decode):
2220         (WebKit::CoordinatedSurface::create):
2221         (WebKit::WebCoordinatedSurface::create):
2222         (WebKit::WebCoordinatedSurface::createWithSurface):
2223         (WebKit::WebCoordinatedSurface::createGraphicsContext):
2224         (WebKit::WebCoordinatedSurface::WebCoordinatedSurface):
2225         (WebKit::WebCoordinatedSurface::~WebCoordinatedSurface):
2226         (WebKit::WebCoordinatedSurface::createHandle):
2227         (WebKit::WebCoordinatedSurface::copyToTexture):
2228         * Shared/CoordinatedGraphics/WebCoordinatedSurface.h: Renamed from Source/WebKit2/Shared/ShareableSurface.h.
2229         (WebCore):
2230         (WebKit):
2231         (WebCoordinatedSurface):
2232         (Handle):
2233         (WebKit::WebCoordinatedSurface::Handle::graphicsSurfaceToken):
2234         (WebKit::WebCoordinatedSurface::isBackedByGraphicsSurface):
2235         * Target.pri:
2236         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
2237         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
2238         (WebKit::CoordinatedBackingStoreTile::setBackBuffer):
2239         (WebKit::CoordinatedBackingStore::updateTile):
2240         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
2241         (WebKit):
2242         (CoordinatedBackingStoreTile):
2243         (CoordinatedBackingStore):
2244         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2245         (WebKit::LayerTreeCoordinatorProxy::createUpdateAtlas):
2246         (WebKit::LayerTreeCoordinatorProxy::updateImageBacking):
2247         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2248         (LayerTreeCoordinatorProxy):
2249         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2250         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2251         (WebKit::LayerTreeRenderer::updateImageBacking):
2252         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2253         (TileUpdate):
2254         (WebKit::LayerTreeRenderer::TileUpdate::TileUpdate):
2255         (LayerTreeRenderer):
2256         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2257         (WebCore::CoordinatedGraphicsLayer::beginContentUpdate):
2258         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2259         (CoordinatedGraphicsLayerClient):
2260         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.cpp:
2261         (WebKit::CoordinatedImageBacking::update):
2262         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
2263         (Coordinator):
2264         (CoordinatedImageBacking):
2265         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2266         (WebKit::LayerTreeCoordinator::updateImageBacking):
2267         (WebKit::LayerTreeCoordinator::createUpdateAtlas):
2268         (WebKit::LayerTreeCoordinator::beginContentUpdate):
2269         (WebKit::LayerTreeCoordinator::releaseInactiveAtlasesTimerFired):
2270         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2271         (LayerTreeCoordinator):
2272         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp:
2273         (WebKit::UpdateAtlas::UpdateAtlas):
2274         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
2275         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h:
2276         (UpdateAtlasClient):
2277         (UpdateAtlas):
2278         (WebKit::UpdateAtlas::supportsAlpha):
2279
2280 2012-12-09  Huang Dongsung  <luxtella@company100.net>
2281
2282         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
2283         https://bugs.webkit.org/show_bug.cgi?id=103843
2284
2285         Reviewed by Noam Rosenthal.
2286
2287         Send SetRootCompositingLayer message to the UI process before
2288         flushing compositing states of layer tree.
2289
2290         This is in preparation for refactoring TextureMapper to work in an actor
2291         model (http://webkit.org/b/103854).
2292
2293         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2294         (WebKit::LayerTreeRenderer::setLayerState):
2295         (WebKit::LayerTreeRenderer::setRootLayerID):
2296         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2297         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
2298         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2299         (WebKit::LayerTreeCoordinator::initializeRootCompositingLayerIfNeeded):
2300         (WebKit):
2301         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2302         (LayerTreeCoordinator):
2303
2304 2012-12-09  Jon Lee  <jonlee@apple.com>
2305
2306         [WK2] Move button image to injected bundle
2307         https://bugs.webkit.org/show_bug.cgi?id=104107
2308         <rdar://problem/12813842>
2309
2310         Reviewed by Simon Fraser.
2311
2312         Rely on the injected bundle to create the image used for the button in snapshotted plug-ins.
2313
2314         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2315         (WebKit::WebChromeClient::plugInStartLabelImage): Forward the call to the injected bundle UI client.
2316         * WebProcess/WebCoreSupport/WebChromeClient.h: Implement plugInStartLabelImage().
2317
2318         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
2319         (WebKit::InjectedBundlePageUIClient::plugInStartLabelImage): Convert the WebCore enums to WK API enums.
2320         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
2321
2322         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Expose a new callback to generate the button image.
2323
2324         * Shared/API/c/cg/WKImageCG.cpp:
2325         (WKImageCreateFromCGImage): Refactor to use GraphicsContext methods so that the image is flipped appropriately.
2326
2327 2012-12-09  Kangil Han  <kangil.han@samsung.com>
2328
2329         Fix unused parameter compile warnings
2330         https://bugs.webkit.org/show_bug.cgi?id=104463
2331
2332         Reviewed by Kentaro Hara.
2333
2334         Remove compile warning messages by omitting parameter name.
2335
2336         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2337         (WebKit::LayerTreeRenderer::createCanvas):
2338
2339 2012-12-08  Seokju Kwon  <seokju.kwon@gmail.com>
2340
2341         [EFL][WK2] Add Remote Web Inspector
2342         https://bugs.webkit.org/show_bug.cgi?id=98705
2343
2344         Reviewed by Gyuyoung Kim.
2345
2346         Add Remote Web Inspector to EFL port.
2347         The WebInspectorSever will be started during WebKit context initialization.
2348         The IP address and port number for the server can be set in WEBKIT_INSPECTOR_SERVER.
2349
2350         * CMakeLists.txt:
2351         * PlatformEfl.cmake:
2352         * UIProcess/InspectorServer/WebInspectorServer.h:
2353         (WebInspectorServer):
2354         * UIProcess/InspectorServer/WebSocketServer.h:
2355         (WebSocketServer):
2356         * UIProcess/InspectorServer/efl/WebInspectorServerEfl.cpp: Added.
2357         (WebKit):
2358         (WebKit::inspectorResourcePath):
2359         (WebKit::WebInspectorServer::platformResourceForPath):
2360         (WebKit::WebInspectorServer::buildPageList):
2361         * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
2362         (WebKit::connectionCallback):
2363         * UIProcess/efl/WebContextEfl.cpp:
2364         (WebKit::initializeInspectorServer):
2365         (WebKit):
2366         (WebKit::WebContext::platformInitializeWebProcess):
2367         * config.h:
2368
2369 2012-12-08  Gustavo Noronha Silva  <gns@gnome.org>
2370
2371         Unreviewed. Make building the WebKit2 GIR file conditional on building the WebKit2 library.
2372
2373         * GNUmakefile.am:
2374
2375 2012-12-08  Seokju Kwon  <seokju.kwon@gmail.com>
2376
2377         Remove unused headers
2378         https://bugs.webkit.org/show_bug.cgi?id=104428
2379
2380         Reviewed by Kentaro Hara.
2381
2382         Header inclusion cleanup.
2383         Remove <WebCore/NotImplement.h>.
2384
2385         * Platform/qt/WorkQueueQt.cpp:
2386         * Platform/win/WorkQueueWin.cpp:
2387         * Shared/qt/ShareableBitmapQt.cpp:
2388         * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
2389         * UIProcess/win/TextCheckerWin.cpp:
2390         * UIProcess/win/WebContextMenuProxyWin.cpp:
2391         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2392
2393 2012-12-07  Jinwoo Song  <jinwoo7.song@samsung.com>
2394
2395         [EFL][WK2] Remove unused source file from PlatformEfl.cmake
2396         https://bugs.webkit.org/show_bug.cgi?id=104430
2397
2398         Reviewed by Kentaro Hara.
2399
2400         Shared/API/c/gtk/WKGraphicsContextGtk.cpp is not used for building WebKit2/EFL.
2401
2402         * PlatformEfl.cmake:
2403
2404 2012-12-07  Jer Noble  <jer.noble@apple.com>
2405
2406         Allow the WebProcess access to the CoreMedia preferences file.
2407         https://bugs.webkit.org/show_bug.cgi?id=104320
2408         <rdar://problem/10904519>
2409
2410         Reviewed by Alexey Proskuryakov.
2411
2412         Allow read access to ~/Library/Preferences/com.apple.coremedia.plist and com.apple.avfoundation.plist
2413         by the WebProcess. The QuickTime.plugin uses CoreMedia for playback, so allow PluginProcess
2414         to access those preferences as well.
2415
2416         * PluginProcess/mac/com.apple.WebKit.PluginProcess.sb.in:
2417         * WebProcess/com.apple.WebProcess.sb.in:
2418
2419 2012-12-07  Tim Horton  <timothy_horton@apple.com>
2420
2421         [wk2] WebProcessServiceForWebKitDevelopment should forward stdout and stderr to the UIProcess
2422         https://bugs.webkit.org/show_bug.cgi?id=104418
2423
2424         Reviewed by Simon Fraser.
2425
2426         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2427         (WebKit::connectToWebProcessServiceForWebKitDevelopment): Send stdout and stderr file descriptors to the WebProcess.
2428         * WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
2429         (WebProcessServiceForWebKitDevelopmentEventHandler): Replace the WebProcess' stdout and stderr with those from the UIProcess.
2430
2431 2012-12-07  Sheriff Bot  <webkit.review.bot@gmail.com>
2432
2433         Unreviewed, rolling out r136993.
2434         http://trac.webkit.org/changeset/136993
2435         https://bugs.webkit.org/show_bug.cgi?id=104415
2436
2437         This patch breaks the mac build (Requested by cabanier on
2438         #webkit).
2439
2440         * win/WebKit2.def.in:
2441
2442 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
2443
2444         There is no need to change cached resource storage policy through ResourceHandleClient
2445         https://bugs.webkit.org/show_bug.cgi?id=104413
2446
2447         Reviewed by Brady Eidson.
2448
2449         * NetworkProcess/NetworkResourceLoader.cpp:
2450         * NetworkProcess/NetworkResourceLoader.h:
2451         Deleted overrides of the removed willCacheResponse.
2452
2453 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
2454
2455         Network process should use a correct storage session in private browsing mode
2456         <rdar://problem/12838490>
2457         https://bugs.webkit.org/show_bug.cgi?id=104401
2458
2459         Reviewed by Brady Eidson.
2460
2461         Notify NetworkProcess when it needs to create or destroy a private browsing session,
2462         and add a NetworkResourceLoadParameters member telling if the particular resource
2463         should be requested using it.
2464
2465         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2466         (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
2467         (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
2468         (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
2469         (WebKit::NetworkConnectionToWebProcess::getRawCookies):
2470         (WebKit::NetworkConnectionToWebProcess::deleteCookie):
2471         (WebKit::NetworkConnectionToWebProcess::getHostnamesWithCookies):
2472         (WebKit::NetworkConnectionToWebProcess::deleteCookiesForHostname):
2473         (WebKit::NetworkConnectionToWebProcess::deleteAllCookies):
2474         Added another dummy argument to dummy networking context.
2475
2476         * NetworkProcess/NetworkProcess.cpp: (WebKit::NetworkProcess::initializeNetworkProcess):
2477         Ensure private browsing session if it's needed due to a persistent preference, not
2478         an API call at runtime (which is handled below as ensure/destroy).
2479
2480         * NetworkProcess/NetworkResourceLoader.cpp:
2481         (WebKit::NetworkResourceLoader::start): Pass private browsing state to RemoteNetworkingContext
2482         used for loading.
2483         (WebKit::NetworkResourceLoader::willCacheResponse): Added an implemntation that
2484         matches WebCore, but may be not needed.
2485
2486         * NetworkProcess/mac/RemoteNetworkingContext.h: (WebKit::RemoteNetworkingContext::create):
2487         Store privateBrowsingEnabled flag.
2488
2489         * NetworkProcess/mac/RemoteNetworkingContext.mm: (WebKit::RemoteNetworkingContext::storageSession):
2490         Return a private session when it's in use.
2491
2492         * Shared/Network/NetworkProcessCreationParameters.cpp:
2493         (WebKit::NetworkProcessCreationParameters::encode):
2494         (WebKit::NetworkProcessCreationParameters::decode):
2495         * Shared/Network/NetworkProcessCreationParameters.h:
2496         Pass privateBrowsingEnabled flag to the new process.
2497
2498         * Shared/Network/NetworkResourceLoadParameters.cpp:
2499         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
2500         (WebKit::NetworkResourceLoadParameters::encode):
2501         (WebKit::NetworkResourceLoadParameters::decode):
2502         * Shared/Network/NetworkResourceLoadParameters.h:
2503         (WebKit::NetworkResourceLoadParameters::inPrivateBrowsingMode):
2504         Pass inPrivateBrowsingMode flag for the request.
2505
2506         * UIProcess/Network/NetworkProcessManager.h: (WebKit::NetworkProcessManager::process):
2507         Exposed, so that we can send messages without going through NetworkProcessManager.
2508
2509         * UIProcess/WebContext.cpp:
2510         (WebKit::WebContext::usesNetworkProcess):
2511         (WebKit::anyContextUsesNetworkProcess):
2512         (WebKit::WebContext::willStartUsingPrivateBrowsing):
2513         (WebKit::WebContext::willStopUsingPrivateBrowsing):
2514         Notify NetworkProcess when entering or exiting private browsing.
2515
2516         * UIProcess/WebContext.h: Exposed usesNetworkProcess() for the new static function
2517         anyContextUsesNetworkProcess to use.
2518
2519         * WebProcess/Network/WebResourceLoadScheduler.cpp: (WebKit::WebResourceLoadScheduler::scheduleLoad):
2520         Put current private browsing state over in NetworkResourceLoadParameters.
2521
2522 2012-12-07  Helder Correia  <helder.correia@nokia.com>
2523
2524         [CoordGfx] Variable name starts with upper case character
2525         https://bugs.webkit.org/show_bug.cgi?id=104327
2526
2527         Reviewed by Noam Rosenthal.
2528
2529         Just fixing a typo.
2530
2531         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2532         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
2533
2534 2012-12-07  Kenneth Rohde Christiansen  <kenneth@webkit.org>
2535
2536         [WK2][EFL][Qt] Pixel alignment is wrong in some cases involving a non-integral content scale
2537         https://webkit.org/b/103519
2538
2539         Reviewed by Noam Rosenthal.
2540
2541         This patch removes the blurriness by pixel aligning the layers. It
2542         does not fully remove the shaking, only minimizes it.
2543
2544         * UIProcess/API/efl/EwkViewImpl.cpp:
2545         (EwkViewImpl::transformFromScene):
2546         (EwkViewImpl::displayTimerFired):
2547         * UIProcess/API/efl/EwkViewImpl.h:
2548         (EwkViewImpl::pagePosition):
2549
2550             As the pixel alignment of the main layer is moved to the
2551             PageViewportController, rename discretePagePosition to just
2552             pagePosition. It now returns a FloatPoint but the positions
2553             should still be discrete.
2554
2555         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2556         (WebKit::LayerTreeCoordinatorProxy::setVisibleContentsRect):
2557         (WebKit::LayerTreeCoordinatorProxy::didChangeScrollPosition):
2558         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2559         (LayerTreeCoordinatorProxy):
2560         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2561         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2562         (WebKit::LayerTreeRenderer::didChangeScrollPosition):
2563         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2564         (LayerTreeRenderer):
2565         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2566         (WebKit::LayerTreeCoordinator::visibleContentsRect):
2567         (WebKit::LayerTreeCoordinator::setVisibleContentsRect):
2568         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2569         (LayerTreeCoordinator):
2570         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.messages.in:
2571         * WebProcess/WebPage/LayerTreeHost.h:
2572         (WebCore):
2573         (WebKit::LayerTreeHost::setVisibleContentsRect):
2574
2575             Change the internal scroll position/visible contents rect
2576             to be represented as float positions. The rounding to integer
2577             values not happens just before setFixesVisibleContentsRect.
2578             This makes it possible to know our exact positions and
2579             calculate proper scroll deltas.
2580
2581         (WebKit::LayerTreeRenderer::setLayerState):
2582
2583             Group anchor point, position and size together.
2584
2585         * UIProcess/PageViewportController.h:
2586         (PageViewportController):
2587         * UIProcess/PageViewportController.cpp:
2588         (WebKit::PageViewportController::PageViewportController):
2589         (WebKit::PageViewportController::boundContentsPosition):
2590         (WebKit::PageViewportController::boundContentsPositionAtScale):
2591         (WebKit::PageViewportController::didRenderFrame):
2592         (WebKit::PageViewportController::pageDidRequestScroll):
2593         (WebKit::PageViewportController::didChangeContentsVisibility):
2594         (WebKit::PageViewportController::syncVisibleContents):
2595         (WebKit::PageViewportController::visibleContentsSize):
2596         (WebKit::PageViewportController::applyPositionAfterRenderingContents):
2597         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2598         (WebKit::PageViewportControllerClientQt::focusEditableArea):
2599         (WebKit::PageViewportControllerClientQt::zoomToAreaGestureEnded):
2600         (WebKit::PageViewportControllerClientQt::nearestValidVisibleContentsRect):
2601
2602             Some renaming as what was called viewportPos was actually the
2603             contents position. Rename clampViewportToContents to
2604             boundContentsPosition and remove scale argument which is has
2605             direct access to.
2606
2607             Make the boundContentsPosition allow one extra pixel in each
2608             orientation to allow for pixel alignment of fixed position layers
2609
2610         (WebKit::isIntegral):
2611         (WebKit):
2612         (WebKit::PageViewportController::pixelAlignedFloatPoint):
2613
2614             Introduce way to pixel align the main contents layer. Only in
2615             use for EFL so far.
2616
2617         * UIProcess/efl/PageClientLegacyImpl.cpp:
2618         (WebKit::PageClientLegacyImpl::updateViewportSize):
2619         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2620         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
2621         * UIProcess/efl/PageViewportControllerClientEfl.h:
2622         (WebKit::PageViewportControllerClientEfl::contentPosition):
2623         (PageViewportControllerClientEfl):
2624
2625             Store the contents position as a FloatPoint.
2626
2627         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2628         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
2629         (WebCore::CoordinatedGraphicsLayer::setMaskLayer):
2630         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
2631         (WebCore::CoordinatedGraphicsLayer::tiledBackingStoreVisibleRect):
2632         (WebCore::isIntegral):
2633         (WebCore):
2634         (WebCore::CoordinatedGraphicsLayer::computePositionRelativeToBase):
2635         (WebCore::CoordinatedGraphicsLayer::computePixelAlignment):
2636         (WebCore::CoordinatedGraphicsLayer::computeTransformedVisibleRect):
2637         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2638         (CoordinatedGraphicsLayerClient):
2639         (CoordinatedGraphicsLayer):
2640
2641             Pixel align layers when the effective scale is not an integer
2642             value. This code is based on code from GraphicsLayerCA.
2643
2644 2012-12-07  Alexey Proskuryakov  <ap@apple.com>
2645
2646         REGRESSION (r136770): Assertion failure in sendMessage() whenever WebProcess crashes
2647         https://bugs.webkit.org/show_bug.cgi?id=104392
2648
2649         Reviewed by Anders Carlsson.
2650
2651         * Shared/ChildProcessProxy.cpp: (WebKit::ChildProcessProxy::sendMessage): Changed
2652         back to using m_conection where it can be null.
2653
2654 2012-12-07  Jaehun Lim  <ljaehun.lim@samsung.com>
2655
2656         [EFL][WK2] Add ewk_settings APIs for text autosizing
2657         https://bugs.webkit.org/show_bug.cgi?id=103342
2658
2659         Reviewed by Kenneth Rohde Christiansen.
2660
2661         Add ewk_settings_text_autosizing_enabled_get / set() functions.
2662         Text autosizing is disabled by default.
2663
2664         * UIProcess/API/efl/ewk_settings.cpp:
2665         (ewk_settings_text_autosizing_enabled_set):
2666         (ewk_settings_text_autosizing_enabled_get):
2667         * UIProcess/API/efl/ewk_settings.h:
2668         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
2669         (TEST_F):
2670
2671 2012-12-06  Rick Byers  <rbyers@chromium.org>
2672
2673         CSS cursor property should support webkit-image-set
2674         https://bugs.webkit.org/show_bug.cgi?id=99493
2675
2676         Reviewed by Beth Dakin.
2677
2678         Add ENABLE_MOUSE_CURSOR_SCALE - disabled by default.
2679
2680         * Configurations/FeatureDefines.xcconfig:
2681
2682 2012-12-06  Jae Hyun Park  <jae.park@company100.net>
2683
2684         Coordinated Graphics: Rename WebLayerTreeInfo to CoordinatedLayerInfo
2685         https://bugs.webkit.org/show_bug.cgi?id=103983
2686
2687         Reviewed by Noam Rosenthal.
2688
2689         This patch refactors WebLayerTreeInfo in 2 areas.
2690
2691         1. WebLayerTreeInfo is only used by Coordinated Graphics. So, the file
2692         should be located in WebKit2/Shared/CoordinatedGraphics instead of
2693         WebKit2/Shared.
2694
2695         2. The name of WebLayerTreeInfo is incorrect. Currently,
2696         WebLayerTreeInfo only has WebLayerInfo struct. Also, it is hard to know
2697         what WebLayer is since we don't use that name anymore. More appropriate
2698         name for WebLayerInfo would be CoordinatedLayerInfo.
2699
2700         No new test, because no behavioral change.
2701
2702         * CMakeLists.txt:
2703         * Scripts/webkit2/messages.py:
2704         (headers_for_type):
2705         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.cpp: Renamed from Source/WebKit2/Shared/WebLayerTreeInfo.cpp.
2706         (WebKit):
2707         (WebKit::CoordinatedLayerInfo::encode):
2708         (WebKit::CoordinatedLayerInfo::decode):
2709         * Shared/CoordinatedGraphics/CoordinatedLayerInfo.h: Renamed from Source/WebKit2/Shared/WebLayerTreeInfo.h.
2710         (WebKit):
2711         (WebKit::CoordinatedLayerInfo::CoordinatedLayerInfo):
2712         (CoordinatedLayerInfo):
2713         * Shared/LayerTreeContext.h:
2714         (LayerTreeContext):
2715         * Shared/efl/LayerTreeContextEfl.cpp:
2716         (WebKit::LayerTreeContext::LayerTreeContext):
2717         (WebKit::LayerTreeContext::encode):
2718         (WebKit::LayerTreeContext::decode):
2719         (WebKit::LayerTreeContext::isEmpty):
2720         (WebKit::operator==):
2721         * Shared/qt/LayerTreeContextQt.cpp:
2722         (WebKit::LayerTreeContext::LayerTreeContext):
2723         (WebKit::LayerTreeContext::encode):
2724         (WebKit::LayerTreeContext::decode):
2725         (WebKit::LayerTreeContext::isEmpty):
2726         (WebKit::operator==):
2727         * Target.pri:
2728         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
2729         (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
2730         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
2731         (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
2732         (WebKit::LayerTreeCoordinatorProxy::deleteCompositingLayer):
2733         (WebKit::LayerTreeCoordinatorProxy::setRootCompositingLayer):
2734         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerState):
2735         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerChildren):
2736         (WebKit::LayerTreeCoordinatorProxy::setCompositingLayerFilters):
2737         (WebKit::LayerTreeCoordinatorProxy::setLayerAnimations):
2738         (WebKit::LayerTreeCoordinatorProxy::createCanvas):
2739         (WebKit::LayerTreeCoordinatorProxy::syncCanvas):
2740         (WebKit::LayerTreeCoordinatorProxy::destroyCanvas):
2741         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
2742         (WebKit):
2743         (LayerTreeCoordinatorProxy):
2744         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
2745         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2746         (WebKit::LayerTreeRenderer::LayerTreeRenderer):
2747         (WebKit::LayerTreeRenderer::createLayer):
2748         (WebKit::LayerTreeRenderer::createCanvas):
2749         (WebKit::LayerTreeRenderer::syncCanvas):
2750         (WebKit::LayerTreeRenderer::destroyCanvas):
2751         (WebKit::LayerTreeRenderer::setLayerChildren):
2752         (WebKit::LayerTreeRenderer::setLayerFilters):
2753         (WebKit::LayerTreeRenderer::setLayerState):
2754         (WebKit::LayerTreeRenderer::deleteLayer):
2755         (WebKit::LayerTreeRenderer::ensureLayer):
2756         (WebKit::LayerTreeRenderer::setRootLayerID):
2757         (WebKit::LayerTreeRenderer::createTile):
2758         (WebKit::LayerTreeRenderer::removeTile):
2759         (WebKit::LayerTreeRenderer::updateTile):
2760         (WebKit::LayerTreeRenderer::ensureRootLayer):
2761         (WebKit::LayerTreeRenderer::purgeGLResources):
2762         (WebKit::LayerTreeRenderer::setLayerAnimations):
2763         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
2764         (WebKit):
2765         (LayerTreeRenderer):
2766         (WebKit::LayerTreeRenderer::layerByID):
2767         * UIProcess/DrawingAreaProxy.h:
2768         (WebKit):
2769         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
2770         (WebCore::layerByIDMap):
2771         (WebCore::toCoordinatedLayerID):
2772         (WebCore::CoordinatedGraphicsLayer::CoordinatedGraphicsLayer):
2773         (WebCore::CoordinatedGraphicsLayer::id):
2774         (WebCore::CoordinatedGraphicsLayer::syncChildren):
2775         (WebCore::CoordinatedGraphicsLayer::syncLayerState):
2776         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
2777         (CoordinatedGraphicsLayerClient):
2778         (CoordinatedGraphicsLayer):
2779         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedImageBacking.h:
2780         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2781         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
2782         (WebKit::LayerTreeCoordinator::syncLayerState):
2783         (WebKit::LayerTreeCoordinator::syncLayerChildren):
2784         (WebKit::LayerTreeCoordinator::createCanvas):
2785         (WebKit::LayerTreeCoordinator::syncCanvas):
2786         (WebKit::LayerTreeCoordinator::destroyCanvas):
2787         (WebKit::LayerTreeCoordinator::syncLayerFilters):
2788         (WebKit::LayerTreeCoordinator::createTile):
2789         (WebKit::LayerTreeCoordinator::updateTile):
2790         (WebKit::LayerTreeCoordinator::removeTile):
2791         (WebKit::LayerTreeCoordinator::setLayerAnimations):
2792         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2793         (LayerTreeCoordinator):
2794
2795 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
2796
2797         Unreviewed, rolling out r136900.
2798         http://trac.webkit.org/changeset/136900
2799         https://bugs.webkit.org/show_bug.cgi?id=104318
2800
2801         Unreviewed build for Windows port. (Requested by rfong on
2802         #webkit).
2803
2804         * win/WebKit2.def.in:
2805
2806 2012-12-06  Jon Lee  <jonlee@apple.com>
2807
2808         Retry snapshots if they are too empty
2809         https://bugs.webkit.org/show_bug.cgi?id=104174
2810         <rdar://problem/12820146>
2811
2812         Reviewed by Simon Fraser.
2813
2814         * WebProcess/Plugins/PluginView.h: Add a new variable that keeps track of the number of times we've
2815         retried to come up with a snapshot.
2816         * WebProcess/Plugins/PluginView.cpp:
2817         (WebKit::PluginView::PluginView): Initialize the count to 0.
2818         (WebKit::isAlmostSolidColor): Figure out if the image is almost a solid color by overlaying
2819         a grid of dots, and calculate the differences among them. If the average color difference is greater than
2820         a threshold, we consider it to have meaningful content. For now we expect a minimum size and a specific
2821         bitmap image format, otherwise we return early.
2822         (WebKit::PluginView::pluginSnapshotTimerFired): If we have a snapshot image to look at, and if it is
2823         evaluated to be too empty, then try again.
2824
2825 2012-12-06  Tony Chang  <tony@chromium.org>
2826
2827         Unreviewed, Apple Win Debug build fix.
2828
2829         * win/WebKit2.def.in: Add 2 symbols that are needed by the debug build.
2830
2831 2012-12-06  Alexey Proskuryakov  <ap@apple.com>
2832
2833         Track private browsing session in network process
2834         https://bugs.webkit.org/show_bug.cgi?id=104281
2835
2836         Reviewed by Jessie Berlin.
2837
2838         Added ensure/destroy messages that match what's done in WebProcess. Also similarly,
2839         ensuring a private session may happen on demand if network process has been restarted
2840         after a crash, or if private browsing is enabled via a persistent preference.
2841
2842         Eventually, we should find a way to share code between WebFrameNetworkingContext
2843         and RemoteNetworkingContext.
2844
2845         * NetworkProcess/NetworkProcess.cpp:
2846         (WebKit::NetworkProcess::initializeNetworkProcess):
2847         (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
2848         (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
2849         * NetworkProcess/NetworkProcess.h:
2850         * NetworkProcess/NetworkProcess.messages.in:
2851         * NetworkProcess/mac/RemoteNetworkingContext.h:
2852         (RemoteNetworkingContext):
2853         * NetworkProcess/mac/RemoteNetworkingContext.mm:
2854         (WebKit::privateBrowsingStorageSessionIdentifierBase):
2855         (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
2856         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
2857         (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
2858         * Shared/Network/NetworkProcessCreationParameters.cpp:
2859         (WebKit::NetworkProcessCreationParameters::encode):
2860         (WebKit::NetworkProcessCreationParameters::decode):
2861         * Shared/Network/NetworkProcessCreationParameters.h:
2862         (NetworkProcessCreationParameters):
2863         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
2864         (WebKit::NetworkProcessProxy::platformInitializeNetworkProcess):
2865         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
2866         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2867         * WebProcess/WebProcess.cpp:
2868         (WebKit::WebProcess::initializeWebProcess):
2869
2870 2012-12-06  Laszlo Gombos  <l.gombos@samsung.com>
2871
2872         [EFL] Remove ENABLE_GLIB_SUPPORT CMake variable
2873         https://bugs.webkit.org/show_bug.cgi?id=104278
2874
2875         Reviewed by Brent Fulgham.
2876
2877         The guards are not required as it is always set for EFL.
2878
2879         * PlatformEfl.cmake:
2880         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
2881         (WebKit::PluginProcessProxy::scanPlugin):
2882         * WebProcess/efl/WebProcessMainEfl.cpp:
2883         (WebKit::WebProcessMainEfl):
2884
2885 2012-12-06  Tony Chang  <tony@chromium.org>
2886
2887         REGRESSION(r135082): Restore the ability to insert author level style sheets from script
2888         https://bugs.webkit.org/show_bug.cgi?id=104042
2889
2890         Reviewed by Antti Koivisto.
2891
2892         Update exports for Internals.cpp.
2893
2894         * win/WebKit2.def.in:
2895
2896 2012-12-06  Andras Becsi  <andras.becsi@digia.com>
2897
2898         [Qt][WK2] Fix QWebKitTest's notification of device pixel ratio change
2899         https://bugs.webkit.org/show_bug.cgi?id=104269
2900
2901         Unreviewed, trivialy fixing last minute change.
2902
2903         Move signal emission to the correct place.
2904
2905         * UIProcess/API/qt/qquickwebview.cpp:
2906         (QQuickWebViewFlickablePrivate::onComponentComplete):
2907         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2908         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
2909
2910 2012-12-06  Andras Becsi  <andras.becsi@digia.com>
2911
2912         [Qt][WK2] Fix QWebKitTest's notification of device pixel ratio change
2913         https://bugs.webkit.org/show_bug.cgi?id=104269
2914
2915         Reviewed by Kenneth Rohde Christiansen.
2916
2917         Since the ViewportInfoItem of MiniBrowser is created before the
2918         WebView finishes construction, thus before the viewport controller
2919         has been instantiated, the shown device pixel ratio was incorrect.
2920         Additionally QWebKitTest's notification signal was also not emitted
2921         when the value changed.
2922
2923         * UIProcess/API/qt/qquickwebview.cpp:
2924         (QQuickWebViewPrivate::QQuickWebViewPrivate):
2925         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2926         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
2927
2928 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
2929
2930         Unreviewed, rolling out r136788.
2931         http://trac.webkit.org/changeset/136788
2932         https://bugs.webkit.org/show_bug.cgi?id=104260
2933
2934         Asserts on EFL WebKit2 Debug bot (Requested by yael on
2935         #webkit).
2936
2937         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2938         (WebKit::LayerTreeRenderer::setLayerState):
2939         (WebKit::LayerTreeRenderer::setRootLayerID):
2940         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
2941         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
2942         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
2943         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
2944         (LayerTreeCoordinator):
2945
2946 2012-12-06  Sheriff Bot  <webkit.review.bot@gmail.com>
2947
2948         Unreviewed, rolling out r136795.
2949         http://trac.webkit.org/changeset/136795
2950         https://bugs.webkit.org/show_bug.cgi?id=104257
2951
2952         Asserts on EFL WebKit2 Debug bot (Requested by yael on
2953         #webkit).
2954
2955         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
2956         (WebKit::LayerTreeRenderer::setRootLayerID):
2957
2958 2012-12-06  Shinya Kawanaka  <shinyak@chromium.org>
2959
2960         Internals.getElementByIdInShadowRoot is nonsense now.
2961         https://bugs.webkit.org/show_bug.cgi?id=104241
2962
2963         Reviewed by Kent Tamura.
2964
2965         * win/WebKit2.def.in:
2966
2967 2012-12-06  Christophe Dumez  <christophe.dumez@intel.com>
2968
2969         [EFL][WK2] Context clients should unregister themselves when destroyed
2970         https://bugs.webkit.org/show_bug.cgi?id=104113
2971
2972         Reviewed by Kenneth Rohde Christiansen.
2973
2974         Make sure the context clients (History and Download clients)
2975         unregister themselves when destroyed to make sure their
2976         callback functions are never called after the client objects
2977         have been destroyed (i.e. when the parent Ewk_Context has
2978         been destroyed).
2979
2980         This addresses crashing issues after a Ewk_Context object
2981         gets unref'd and destroyed.
2982
2983         * UIProcess/efl/ContextHistoryClientEfl.cpp:
2984         (WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
2985         (WebKit):
2986         (WebKit::ContextHistoryClientEfl::~ContextHistoryClientEfl):
2987         * UIProcess/efl/ContextHistoryClientEfl.h:
2988         (ContextHistoryClientEfl):
2989         * UIProcess/efl/DownloadManagerEfl.cpp:
2990         (WebKit::DownloadManagerEfl::~DownloadManagerEfl):
2991         (WebKit):
2992         * UIProcess/efl/DownloadManagerEfl.h:
2993         (DownloadManagerEfl):
2994
2995 2012-12-05  Huang Dongsung  <luxtella@company100.net>
2996
2997         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
2998         https://bugs.webkit.org/show_bug.cgi?id=103843
2999
3000         Reviewed by Noam Rosenthal.
3001
3002         Clarify LayerTreeRenderer::setRootLayerID() can be called only once during its
3003         lifecycle. LayerTreeRenderer, LayerTreeCoordinator and LayerTreeCoordinatorProxy
3004         have the same lifecycle to WebPage and the root layer is reused even if loading
3005         new page, so it is impossible to call LayerTreeRenderer::setRootLayerID() more
3006         than twice.
3007
3008         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3009         (WebKit::LayerTreeRenderer::setRootLayerID):
3010
3011 2012-12-05  Brent Fulgham  <bfulgham@webkit.org>
3012
3013         [Windows, WinCairo] Regenerate .def files on changes
3014         https://bugs.webkit.org/show_bug.cgi?id=104136
3015
3016         Reviewed by Tim Horton.
3017
3018         The new .def file generator is not regenerating the link
3019         export definitions once it creates the definition file
3020         the first time. You must clean the build directory for
3021         new symbols to be added (or removed).
3022
3023         * win/WebKit2.vcproj: Change the WebKit2.def file reference to
3024           point to the generated version of the file.
3025         * win/WebKit2ExportGenerator.vcproj: Add WebKit2.def.in as a source
3026           file that participates in the build so that Visual Studio knows
3027           to build the project when the file changes.
3028         * win/WebKit2ExportGeneratorBuildCmd.cmd: Added. Refactor build
3029           command into its own shell script.
3030         * win/WebKit2ExportGeneratorPostBuild.cmd: Call new BuildCmd script.
3031         * win/WebKit2ExportGeneratorPreBuild.cmd: Delete the old generator
3032           and definition files to ensure a clean build.
3033
3034 2012-12-05  Halton Huo  <halton.huo@intel.com>
3035
3036         [CMake] Unify coding style for CMake files
3037         https://bugs.webkit.org/show_bug.cgi?id=103605
3038
3039         Reviewed by Laszlo Gombos.
3040
3041         Update cmake files(.cmake, CMakeLists.txt) with following style rules:
3042         1. Indentation
3043         1.1 Use spaces, not tabs.
3044         1.2 Four spaces as indent.
3045         2. Spacing
3046         2.1 Place one space between control statements and their parentheses.
3047             For eg, if (), else (), elseif (), endif (), foreach (),
3048             endforeach (), while (), endwhile (), break ().
3049         2.2 Do not place spaces between function and macro statements and
3050             their parentheses. For eg, macro(), endmacro(), function(),
3051             endfunction().
3052         2.3 Do not place spaces between a command or function or macro and its
3053             parentheses, or between a parenthesis and its content. For eg,
3054             message("testing") not message( "testing") or message ("testing" )
3055         2.4 No space at line ending.
3056         3. Lowercase when call commands macros and functions. For eg,
3057            add_executable() not ADD_EXECUTABLE(), set() not SET().
3058
3059         * CMakeLists.txt:
3060         * PlatformEfl.cmake:
3061         * win/WebKit2ExportGenerator.vcproj:
3062         * win/WebKit2ExportGeneratorCommon.vsprops:
3063
3064 2012-12-05  Huang Dongsung  <luxtella@company100.net>
3065
3066         Coordinated Graphics: Reorder messages to LayerTreeCoordinatorProxy
3067         https://bugs.webkit.org/show_bug.cgi?id=103843
3068
3069         Reviewed by Noam Rosenthal.
3070
3071         Send SetRootCompositingLayer message to the UI process in the
3072         constructor instead of sending it on the first flush.
3073
3074         This is in preparation for refactoring TextureMapper to work in an actor
3075         model (http://webkit.org/b/103854).
3076
3077         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3078         (WebKit::LayerTreeRenderer::setLayerState):
3079         (WebKit::LayerTreeRenderer::setRootLayerID):
3080         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3081         (WebKit::LayerTreeCoordinator::LayerTreeCoordinator):
3082         (WebKit::LayerTreeCoordinator::initializeRootCompositingLayer):
3083         (WebKit):
3084         (WebKit::LayerTreeCoordinator::flushPendingLayerChanges):
3085         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
3086         (LayerTreeCoordinator):
3087
3088 2012-12-05  Jinwoo Song  <jinwoo7.song@samsung.com>
3089
3090         [EFL][WK2] Don't use the C API internally in ewk_cookie_manager
3091         https://bugs.webkit.org/show_bug.cgi?id=103243
3092
3093         Reviewed by Gyuyoung Kim.
3094
3095         Used the C++ classes directly instead of the C API wrappers
3096         to avoid a lot of toImpl/toAPI casts.
3097
3098         * UIProcess/API/efl/ewk_context.cpp:
3099         (EwkContext::cookieManager):
3100         * UIProcess/API/efl/ewk_cookie_manager.cpp:
3101         (EwkCookieManager::EwkCookieManager):
3102         (EwkCookieManager::~EwkCookieManager):
3103         (EwkCookieManager::setPersistentStorage):
3104         (EwkCookieManager::setHTTPAcceptPolicy):
3105         (EwkCookieManager::clearHostnameCookies):
3106         (EwkCookieManager::clearAllCookies):
3107         (EwkCookieManager::watchChanges):
3108         (EwkCookieManager::getHostNamesWithCookies):
3109         (EwkCookieManager::getHTTPAcceptPolicy):
3110         * UIProcess/API/efl/ewk_cookie_manager_private.h:
3111         (EwkCookieManager::create):
3112         (EwkCookieManager):
3113
3114 2012-12-05  No'am Rosenthal  <noam@webkit.org>
3115
3116         Coordinated Graphics: Enable support for setContentsToBackgroundColor
3117         https://bugs.webkit.org/show_bug.cgi?id=104128
3118
3119         Reviewed by Kenneth Rohde Christiansen.
3120
3121         Enable setContentsToBackgroundColor in CoordinatedGraphicsLayer, and pass it through to the UI process.
3122
3123         * Shared/WebLayerTreeInfo.h:
3124         (WebLayerInfo):
3125         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3126         (WebKit::LayerTreeRenderer::setLayerState):
3127         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3128         (WebCore::CoordinatedGraphicsLayer::setContentsToBackgroundColor):
3129         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
3130         (CoordinatedGraphicsLayer):
3131
3132 2012-12-05  Alexey Proskuryakov  <ap@apple.com>
3133
3134         <rdar://problem/12809890> Should allow sandbox lookup of com.apple.tccd
3135
3136         Reviewed by Beth Dakin and Dan Bernstein.
3137
3138         * WebProcess/com.apple.WebProcess.sb.in:
3139
3140 2012-12-05  Alexey Proskuryakov  <ap@apple.com>
3141
3142         [WK2] Would like to queue messages while NetworkProcess is launching
3143         https://bugs.webkit.org/show_bug.cgi?id=104143
3144
3145         Reviewed by Anders Carlsson.
3146
3147         Factored out process launching and message sending code to a ChildProcessProxy class.
3148         Process closing and crashing code should be moved once we better understand common
3149         requirements for the processes.
3150
3151         * CMakeLists.txt:
3152         * GNUmakefile.list.am:
3153         * Target.pri:
3154         * WebKit2.xcodeproj/project.pbxproj:
3155         * win/WebKit2.vcproj:
3156         Added ChildProcessProxy files.
3157
3158         * Shared/ChildProcessProxy.cpp: Added.
3159         (WebKit::ChildProcessProxy::ChildProcessProxy):
3160         (WebKit::ChildProcessProxy::~ChildProcessProxy):
3161         (WebKit::ChildProcessProxy::fromConnection):
3162         (WebKit::ChildProcessProxy::connect):
3163         (WebKit::ChildProcessProxy::terminate):
3164         (WebKit::ChildProcessProxy::sendMessage):
3165         (WebKit::ChildProcessProxy::isLaunching):
3166         (WebKit::ChildProcessProxy::didFinishLaunching):
3167         (WebKit::ChildProcessProxy::clearConnection):
3168         * Shared/ChildProcessProxy.h: Added.
3169         (WebKit::ChildProcessProxy::connection):
3170         (WebKit::ChildProcessProxy::isValid):
3171         (WebKit::ChildProcessProxy::canSendMessage):
3172         (WebKit::ChildProcessProxy::processIdentifier):
3173         (WebKit::ChildProcessProxy::send):
3174         (WebKit::ChildProcessProxy::sendSync):
3175         Moved code from WebProcessProxy. Every ChildProcessProxy is a connection client,
3176         but every one is a connection queue client, so that latter is passed as an argument.
3177
3178         * UIProcess/Network/NetworkProcessProxy.h:
3179         * UIProcess/Network/NetworkProcessProxy.cpp:
3180         Removed unused syncMessageSendTimedOut(), thank you OVERRIDE.
3181
3182         * UIProcess/Network/NetworkProcessProxy.cpp:
3183         (WebKit::NetworkProcessProxy::NetworkProcessProxy):
3184         (WebKit::NetworkProcessProxy::getLaunchOptions):
3185         (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
3186         (WebKit::NetworkProcessProxy::getNetworkProcessConnection):
3187         (WebKit::NetworkProcessProxy::didFinishLaunching):
3188         * UIProcess/Network/NetworkProcessProxy.h:
3189         * UIProcess/Network/mac/NetworkProcessProxyMac.mm:
3190         (WebKit::NetworkProcessProxy::setApplicationIsOccluded):
3191         * UIProcess/WebProcessProxy.cpp:
3192         (WebKit::WebProcessProxy::WebProcessProxy):
3193         (WebKit::WebProcessProxy::~WebProcessProxy):
3194         (WebKit::WebProcessProxy::getLaunchOptions):
3195         (WebKit::WebProcessProxy::disconnect):
3196         (WebKit::WebProcessProxy::didFinishLaunching):
3197         Use shared code.
3198
3199         * UIProcess/WebProcessProxy.h: (WebKit::WebProcessProxy::fromConnection):
3200         NetworkProcess inherits from conneciton client privately, so we need to do most
3201         of the work in ClientProcessProxy, and further upcast here.
3202
3203         * UIProcess/efl/WebProcessProxyEfl.cpp:
3204         (WebKit::WebProcessProxy::platformGetLaunchOptions):
3205         * UIProcess/gtk/WebProcessProxyGtk.cpp:
3206         (WebKit::WebProcessProxy::platformGetLaunchOptions):
3207         * UIProcess/mac/WebProcessProxyMac.mm:
3208         (WebKit::WebProcessProxy::platformGetLaunchOptions):
3209         * UIProcess/qt/WebProcessProxyQt.cpp:
3210         (WebKit::WebProcessProxy::platformGetLaunchOptions):
3211         * UIProcess/win/WebProcessProxyWin.cpp:
3212         (WebKit::WebProcessProxy::platformGetLaunchOptions):
3213         Updated for renaming, platformConnect -> platformGetLaunchOptions().
3214
3215 2012-12-05  Kiran Muppala  <cmuppala@apple.com>
3216
3217         WebKit2 child processes need to initialize timer coalescing policy on Mac.
3218         https://bugs.webkit.org/show_bug.cgi?id=103613
3219
3220         Reviewed by Mark Rowe.
3221
3222         Set timer coalescing policy of WebKit2 child processes to that of visible applications
3223         until they can manage the policy based on UI process visibility.
3224
3225         * Shared/mac/ChildProcessMac.mm:
3226         (WebKit::initializeTimerCoalescingPolicy): Set task_latency and task_throughput QOS tiers as appropriate
3227         for visible applications.
3228         (WebKit::ChildProcess::platformInitialize): Add call to initializeTimerCoalescingPolicy.
3229
3230 2012-12-05  Anders Carlsson  <andersca@apple.com>
3231
3232         Connection::waitForMessage shouldn't use the message ID
3233         https://bugs.webkit.org/show_bug.cgi?id=104157
3234
3235         Reviewed by Andreas Kling.
3236
3237         Pass the message receiver name and message name to waitForMessage and use them for lookups instead of
3238         the message ID.
3239
3240         * Platform/CoreIPC/Connection.cpp:
3241         (CoreIPC::Connection::createSyncMessageEncoder):
3242         (CoreIPC::Connection::waitForMessage):
3243         (CoreIPC::Connection::processIncomingMessage):
3244         * Platform/CoreIPC/Connection.h:
3245         (CoreIPC::Connection::waitForAndDispatchImmediately):
3246
3247 2012-12-05  Jae Hyun Park  <jae.park@company100.net>
3248
3249         Coordinated Graphics: Move AreaAllocator and UpdateAtlas to CoordinatedGraphics
3250         https://bugs.webkit.org/show_bug.cgi?id=103864
3251
3252         Reviewed by Noam Rosenthal.
3253
3254         AreaAllocator and UpdateAtlas are only used for Coordinated Graphics.
3255         So, these should be moved to CoordinatedGraphics to clarify the code.
3256
3257         No new test, because no change of behavior.
3258
3259         * CMakeLists.txt:
3260         * Target.pri:
3261         * WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/AreaAllocator.cpp.
3262         (WebKit):
3263         (WebKit::AreaAllocator::AreaAllocator):
3264         (WebKit::AreaAllocator::~AreaAllocator):
3265         (WebKit::AreaAllocator::expand):
3266         (WebKit::AreaAllocator::expandBy):
3267         (WebKit::AreaAllocator::release):
3268         (WebKit::AreaAllocator::overhead):
3269         (WebKit::AreaAllocator::roundAllocation):
3270         (WebKit::GeneralAreaAllocator::GeneralAreaAllocator):
3271         (WebKit::GeneralAreaAllocator::~GeneralAreaAllocator):
3272         (WebKit::GeneralAreaAllocator::freeNode):
3273         (WebKit::GeneralAreaAllocator::expand):
3274         (WebKit::fitsWithin):
3275         (WebKit::GeneralAreaAllocator::allocate):
3276         (WebKit::GeneralAreaAllocator::allocateFromNode):
3277         (WebKit::GeneralAreaAllocator::splitNode):
3278         (WebKit::GeneralAreaAllocator::updateLargestFree):
3279         (WebKit::GeneralAreaAllocator::release):
3280         (WebKit::GeneralAreaAllocator::overhead):
3281         * WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h: Renamed from Source/WebKit2/WebProcess/WebPage/AreaAllocator.h.
3282         (WebCore::nextPowerOfTwo):
3283         (WebCore):
3284         (WebKit):
3285         (AreaAllocator):
3286         (WebKit::AreaAllocator::size):
3287         (WebKit::AreaAllocator::minimumAllocation):
3288         (WebKit::AreaAllocator::setMinimumAllocation):
3289         (WebKit::AreaAllocator::margin):
3290         (WebKit::AreaAllocator::setMargin):
3291         (GeneralAreaAllocator):
3292         (Node):
3293         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/UpdateAtlas.cpp.
3294         (WebKit):
3295         (WebKit::UpdateAtlas::UpdateAtlas):
3296         (WebKit::UpdateAtlas::~UpdateAtlas):
3297         (WebKit::UpdateAtlas::buildLayoutIfNeeded):
3298         (WebKit::UpdateAtlas::didSwapBuffers):
3299         (WebKit::UpdateAtlas::beginPaintingOnAvailableBuffer):
3300         * WebProcess/WebPage/CoordinatedGraphics/UpdateAtlas.h: Renamed from Source/WebKit2/WebProcess/WebPage/UpdateAtlas.h.
3301         (WebCore):
3302         (WebKit):
3303         (UpdateAtlasClient):
3304         (UpdateAtlas):
3305         (WebKit::UpdateAtlas::size):
3306         (WebKit::UpdateAtlas::flags):
3307         (WebKit::UpdateAtlas::addTimeInactive):
3308         (WebKit::UpdateAtlas::isInactive):
3309         (WebKit::UpdateAtlas::isInUse):
3310
3311 2012-12-05  Michael BrĂ¼ning  <michael.bruning@digia.com>
3312
3313         Fix compilation for Qt5.0.0 stable branch.
3314         https://bugs.webkit.org/show_bug.cgi?id=103870
3315
3316         Reviewed by Simon Hausmann.
3317
3318         QWindow::pos() and QQuickItem::pos() have been renamed to position().
3319         Patch by Lars Knoll <lars.knoll@digia.com>
3320
3321         * UIProcess/qt/PageViewportControllerClientQt.cpp:
3322         (WebKit::PageViewportControllerClientQt::setContentRectVisiblePositionAtScale):
3323         (WebKit::PageViewportControllerClientQt::setViewportPosition):
3324
3325 2012-12-05  Christophe Dumez  <christophe.dumez@intel.com>
3326
3327         [EFL][WK2] EWK2UnitTestBase.ewk_favicon_database_async_icon_get is crashing with new Ewk_Context
3328         https://bugs.webkit.org/show_bug.cgi?id=104110
3329
3330         Reviewed by Laszlo Gombos.
3331
3332         Unregister the WKFaviconDatabase client in EwkFaviconDatabase
3333         destructor to avoid crashing if the callbacks get called
3334         after the EwkFaviconDatabase object has been destroyed (i.e.
3335         the parent EwkContext object was destroyed).
3336
3337         * UIProcess/API/efl/ewk_favicon_database.cpp:
3338         (EwkFaviconDatabase::~EwkFaviconDatabase):
3339
3340 2012-12-05  Andras Becsi  <andras.becsi@digia.com>
3341
3342         [Qt][WK2] REGRESSION(r135399): It made qmltests::DoubleTapToZoom::test_double_zoomInAndBack() API test fail
3343         https://bugs.webkit.org/show_bug.cgi?id=103889
3344
3345         Reviewed by Jocelyn Turcotte.
3346
3347         The client should always be notified in PageViewportController::didChangeViewportAttributes
3348         about the changed attributes not only if the minimum scale changed. This ensures that these
3349         changes are propagated to QWebKitTest and the zoom stack of double-tap-to-zoom is reset correctly.
3350         Also increase precision of scale comparisons since the current value resulted in flakyness in
3351         scale related API tests.
3352
3353         * UIProcess/PageViewportController.cpp:
3354         (WebKit::PageViewportController::didChangeViewportAttributes):
3355         (WebKit::PageViewportController::updateMinimumScaleToFit):
3356
3357 2012-12-05  Christophe Dumez  <christophe.dumez@intel.com>
3358
3359         [CoordinatedGraphics] Use unsigned integers for CoordinatedTile IDs
3360         https://bugs.webkit.org/show_bug.cgi?id=103816
3361
3362         Reviewed by Jocelyn Turcotte.
3363
3364         Use unsigned integer for CoordinatedTile identifier type.
3365         CoordinatedTile was previously using signed integers for
3366         its identifier which is unsafe because the generated ID
3367         will overflow at some point and the C and C++ language
3368         standards say that overflow of a signed value is undefined
3369         behaviour.
3370
3371         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
3372         (WebKit::CoordinatedBackingStore::createTile):
3373         (WebKit::CoordinatedBackingStore::removeTile):
3374         (WebKit::CoordinatedBackingStore::removeAllTiles):
3375         (WebKit::CoordinatedBackingStore::updateTile):
3376         (WebKit::CoordinatedBackingStore::texture):
3377         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
3378         (WebKit::CoordinatedBackingStore::commitTileOperations):
3379         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
3380         (CoordinatedBackingStore):
3381         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.cpp:
3382         (WebKit::LayerTreeCoordinatorProxy::createTileForLayer):
3383         (WebKit::LayerTreeCoordinatorProxy::updateTileForLayer):
3384         (WebKit::LayerTreeCoordinatorProxy::removeTileForLayer):
3385         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.h:
3386         (LayerTreeCoordinatorProxy):
3387         * UIProcess/CoordinatedGraphics/LayerTreeCoordinatorProxy.messages.in:
3388         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.cpp:
3389         (WebKit::LayerTreeRenderer::createTile):
3390         (WebKit::LayerTreeRenderer::removeTile):
3391         (WebKit::LayerTreeRenderer::updateTile):
3392         * UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:
3393         (LayerTreeRenderer):
3394         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
3395         (WebCore::CoordinatedGraphicsLayer::createTile):
3396         (WebCore::CoordinatedGraphicsLayer::updateTile):
3397         (WebCore::CoordinatedGraphicsLayer::removeTile):
3398         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
3399         (CoordinatedGraphicsLayerClient):
3400         (CoordinatedGraphicsLayer):
3401         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.cpp:
3402         (WebKit):
3403         (WebKit::CoordinatedTile::CoordinatedTile):
3404         (WebKit::CoordinatedTile::~CoordinatedTile):
3405         (WebKit::CoordinatedTile::updateBackBuffer):
3406         (WebKit::CoordinatedTile::isReadyToPaint):
3407         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedTile.h:
3408         (CoordinatedTile):
3409         (CoordinatedTileClient):
3410         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.cpp:
3411         (WebKit::LayerTreeCoordinator::createTile):
3412         (WebKit::LayerTreeCoordinator::updateTile):
3413         (WebKit::LayerTreeCoordinator::removeTile):
3414         * WebProcess/WebPage/CoordinatedGraphics/LayerTreeCoordinator.h:
3415         (LayerTreeCoordinator):
3416
3417 2012-12-05  Yuni Jeong  <yhnet.jung@samsung.com>
3418
3419         [EFL][WK2] Add APIs to get/set private browsing.
3420         https://bugs.webkit.org/show_bug.cgi?id=102052
3421
3422         Reviewed by Gyuyoung Kim.
3423
3424         Private Browsing allows a user to browse the Internet without saving any information about which sites and pages a user has visited.
3425
3426         * UIProcess/API/efl/ewk_settings.cpp:
3427         (ewk_settings_private_browsing_enabled_set):
3428         (ewk_settings_private_browsing_enabled_get):
3429         * UIProcess/API/efl/ewk_settings.h:
3430         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
3431         (TEST_F):
3432
3433 2012-12-05  Joaquim Rocha  <jrocha@igalia.com>
3434
3435         URL schemes registered as local, no access, display isolated and as CORS enabled are not registered again after a web process crash
3436         https://bugs.webkit.org/show_bug.cgi?id=104013
3437
3438         Reviewed by Darin Adler.
3439
3440         * WebProcess/WebProcess.cpp:
3441         (WebKit::WebProcess::initializeWebProcess): Iterate through the schemes stored in
3442         urlSchemesRegisteredAsLocal, urlSchemesRegisteredAsNoAccess,
3443         urlSchemesRegisteredAsDisplayIsolated and urlSchemesRegisteredAsCORSEnabled and
3444         call the respective (already existing) methods for registering them.
3445
3446 2012-12-04  Yuni Jeong  <yhnet.jung@samsung.com>
3447
3448         [EFL][WK2] Add APIs to get/set default font size.
3449         https://bugs.webkit.org/show_bug.cgi?id=101921
3450
3451         Reviewed by Gyuyoung Kim.
3452
3453         Add setting APIs for default font size and a unit test.
3454
3455         * UIProcess/API/efl/ewk_settings.cpp:
3456         (ewk_settings_default_font_size_set):
3457         (ewk_settings_default_font_size_get):
3458         * UIProcess/API/efl/ewk_settings.h:
3459         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
3460         (TEST_F):
3461
3462 2012-12-04  Anders Carlsson  <andersca@apple.com>
3463
3464         Remove #ifs that are always true
3465         https://bugs.webkit.org/show_bug.cgi?id=104080
3466
3467         Reviewed by Andreas Kling.
3468
3469         __MAC_OS_X_VERSION_MIN_REQUIRED >= 1070 is always true, so remove all the #ifs.
3470
3471         * PluginProcess/mac/PluginProcessMac.mm:
3472         (WebKit::initializeSandbox):
3473         (WebKit::PluginProcess::platformInitialize):
3474         * Shared/DictionaryPopupInfo.cpp:
3475         (WebKit::DictionaryPopupInfo::encode):
3476         (WebKit::DictionaryPopupInfo::decode):
3477         * Shared/DictionaryPopupInfo.h:
3478         * Shared/mac/WebEventFactory.mm:
3479         (WebKit::phaseForEvent):
3480         (WebKit::momentumPhaseForEvent):
3481         * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm:
3482         (WebKit::initializeSandbox):
3483         (WebKit::SharedWorkerProcess::platformInitialize):
3484         * UIProcess/API/mac/PDFViewController.mm:
3485         (WebKit::PDFViewScrollView_scrollWheel):
3486         (WebKit::PDFViewController::pdfKitBundle):
3487         * UIProcess/API/mac/PageClientImpl.mm:
3488         (WebKit::PageClientImpl::didPerformDictionaryLookup):
3489         (WebKit::PageClientImpl::dismissDictionaryLookupPanel):
3490         (WebKit::PageClientImpl::recordAutocorrectionResponse):