Don't snapshot Java plugins
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-03-08  Dean Jackson  <dino@apple.com>
2
3         Don't snapshot Java plugins
4         https://bugs.webkit.org/show_bug.cgi?id=111899
5
6         Reviewed by Tim Horton.
7
8         If the plugin is Java, return true from shouldAlwaysAutoStart.
9
10         * WebProcess/Plugins/PluginView.cpp:
11         (WebKit::PluginView::shouldAlwaysAutoStart): Check the mimetype for Java.
12
13 2013-03-08  Alexey Proskuryakov  <ap@apple.com>
14
15         <rdar://problem/13338743> Fix sandbox profile preprocessor flags for compatibility with new clang.
16
17         Reviewed by Alexey Proskuryakov.
18         Patch by Bob Wilson.
19
20         * DerivedSources.make: Only use -traditional when we have to work around old
21         behavior of -std=c89.
22
23 2013-03-08  Joone Hur  <joone.hur@intel.com>
24
25         Unreviewed build fix for EFL, GTK and Qt after r145254.
26
27         * Shared/SandboxExtension.h:
28         (WebKit::SandboxExtension::revoke):
29
30 2013-03-08  Ryosuke Niwa  <rniwa@webkit.org>
31
32         non-Mac ports build fix after r145235.
33
34         * UIProcess/WebInspectorProxy.cpp:
35         (WebKit::createInspectorPageGroup):
36
37 2013-03-08  Benjamin Poulain  <benjamin@webkit.org>
38
39         [Mac] Add a feature flag for 'view-mode' Media Feature, disable it on Mac
40         https://bugs.webkit.org/show_bug.cgi?id=111297
41
42         Reviewed by Kenneth Rohde Christiansen.
43
44         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
45         * WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
46         * WebProcess/WebPage/WebPage.cpp:
47         * WebProcess/WebPage/WebPage.h:
48
49 2013-03-08  Alexey Proskuryakov  <ap@apple.com>
50
51         Make it possible to reuse sandbox extensions
52         https://bugs.webkit.org/show_bug.cgi?id=111883
53
54         Reviewed by Anders Carlsson.
55
56         Replaced invalidate() with revoke().
57
58         We now count how many times consume() was called, and keep the extension active
59         for as long as revoke() hasn't been called as many times. Also, we only permanently
60         destroy the extension in destructor.
61
62         This allows for properly keeping extensions in NetworkBlobRegistry for as long as
63         they are needed.
64
65         * NetworkProcess/SchedulableLoader.cpp:
66         (WebKit::SchedulableLoader::invalidateSandboxExtensions):
67         * Shared/Downloads/Download.cpp:
68         (WebKit::Download::didFinish):
69         (WebKit::Download::didFail):
70         (WebKit::Download::didCancel):
71         * Shared/SandboxExtension.h:
72         (SandboxExtension):
73         * Shared/WebMemorySampler.cpp:
74         (WebKit::WebMemorySampler::stop):
75         * Shared/mac/SandboxExtensionMac.mm:
76         (WebKit::SandboxExtension::SandboxExtension):
77         (WebKit::SandboxExtension::revoke):
78         (WebKit::SandboxExtension::consume):
79         * WebProcess/WebPage/WebPage.cpp:
80         (WebKit::WebPage::performDragControllerAction):
81         (WebKit::WebPage::SandboxExtensionTracker::invalidate):
82         (WebKit::WebPage::SandboxExtensionTracker::setPendingProvisionalSandboxExtension):
83         (WebKit::WebPage::SandboxExtensionTracker::didCommitProvisionalLoad):
84         (WebKit::WebPage::SandboxExtensionTracker::didFailProvisionalLoad):
85
86 2013-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
87
88         [WK2][GTK] Invalid request returned by webkit_download_get_request if called before download starts
89         https://bugs.webkit.org/show_bug.cgi?id=111574
90
91         Reviewed by Alexey Proskuryakov.
92
93         webkit_download_get_request() creates the WebKitURIRequest object
94         on demand using the ResourceRequest from the DownloadProxy. The
95         ResourceRequest of the DownloadProxy is set in
96         DownloadProxy::didStart(), so if we call
97         webkit_download_get_request() before didStart we return an invalid
98         WebKitURIRequest created from a NULL ResourceRequest. This is not
99         a problem for downloads started in the web process, because we
100         create the WebKitDownload after DownloadProxy::didStart(). For
101         downloads started manually with webkit_web_context_download_uri()
102         we need to create download object with the ResourceRequest passed
103         to the DownloadProxy.
104
105         * UIProcess/API/gtk/WebKitDownload.cpp:
106         (webkitDownloadCreateForRequest): New helper function for
107         downloads started manually to created them with a given
108         ResourceRequest.
109         * UIProcess/API/gtk/WebKitDownloadPrivate.h:
110         * UIProcess/API/gtk/WebKitWebContext.cpp:
111         (webkitWebContextStartDownload): Use
112         webkitDownloadCreateForRequest().
113         * UIProcess/API/gtk/tests/TestDownloads.cpp:
114         (testDownloadLocalFile):
115         (testDownloadLocalFileError):
116         (testDownloadRemoteFile):
117         (testDownloadRemoteFileError):
118         (testPolicyResponseDownload):
119
120 2013-03-07  Alexey Proskuryakov  <ap@apple.com>
121
122         <rdar://problem/13363499> Blobs are not cleaned up when WebProcess terminates
123         https://bugs.webkit.org/show_bug.cgi?id=111803
124
125         Reviewed by Brady Eidson.
126
127         Track which blobs were created for each connection, and unregister them when
128         the connection closes.
129
130         Normally, this happens when a document is destroyed through PublicURLManager
131         in WebProcess. But we don't get there when the web process crashes, or is terminated
132         without waiting for document destruction.
133
134         * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
135         (WebKit::NetworkBlobRegistry::registerBlobURL):
136         (WebKit::NetworkBlobRegistry::unregisterBlobURL):
137         (WebKit::NetworkBlobRegistry::connectionToWebProcessDidClose):
138         * NetworkProcess/FileAPI/NetworkBlobRegistry.h:
139         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
140         (WebKit::NetworkConnectionToWebProcess::didClose):
141         (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
142         (WebKit::NetworkConnectionToWebProcess::registerBlobURLFromURL):
143         (WebKit::NetworkConnectionToWebProcess::unregisterBlobURL):
144
145 2013-03-08  Timothy Hatcher  <timothy@apple.com>
146
147         Make the WebKit2 Web Inspector use tiled drawing and accelerated drawing.
148
149         <rdar://problem/12676223>
150
151         Reviewed by David Kilzer.
152
153         * UIProcess/WebInspectorProxy.cpp:
154         (WebKit::createInspectorPageGroup): Call setAcceleratedDrawingEnabled with true on 10.8+.
155         * UIProcess/mac/WebInspectorProxyMac.mm:
156         (-[WKWebInspectorWKView _shouldUseTiledDrawingArea]): Added. Return YES on 10.8+.
157
158 2013-03-08  Huang Dongsung  <luxtella@company100.net>
159
160         Coordinated Graphics: Handle scrolling correctly.
161         https://bugs.webkit.org/show_bug.cgi?id=111406
162
163         Reviewed by Simon Fraser.
164
165         Coordinated Graphics deals with fast scrolling and slow scrolling in the same
166         routine, so WebChromeClient::invalidateContentsForSlowScroll() should call
167         DrawingArea:scroll().
168
169         When CoordinatedLayerTreeHost::scrollNonCompositedContents() is called, we
170         should call scheduleLayerFlush() to notify to UI Process. In addition, when we
171         don't use fixed layout, we should call setNonCompositedContentsNeedDisplay() to
172         update non composited contents.
173
174         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
175         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
176         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
177         (WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
178
179 2013-03-08  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
180
181         [WK2][EFL] Remove EwkView::setImageData()
182         https://bugs.webkit.org/show_bug.cgi?id=111849
183
184         Reviewed by Andreas Kling.
185
186         EwkView::setImageData() removed as it is not used at the moment 
187         (it used to be part of eliminated non coord graphics code path). 
188
189         * UIProcess/API/efl/EwkView.cpp:
190         * UIProcess/API/efl/EwkView.h:
191         (EwkView):
192         * UIProcess/cairo/BackingStoreCairo.cpp:
193         (WebKit::BackingStore::incorporateUpdate):
194
195 2013-03-08  Carlos Garcia Campos  <cgarcia@igalia.com>
196
197         [GTK] Memory leak in webkit_web_view_load_request() in WebKit2 API
198         https://bugs.webkit.org/show_bug.cgi?id=111160
199
200         Reviewed by Benjamin Poulain.
201
202         leakRef() is used for the returned PassRefPtr without taking the
203         ownership of the leaked ref.
204
205         * UIProcess/API/gtk/WebKitWebView.cpp:
206         (webkit_web_view_load_request): Use RefPtr local variable.
207
208 2013-03-07  Huang Dongsung  <luxtella@company100.net>
209
210         [EFL] EwkView should keep css position instead of scroll position in device pixel.
211         https://bugs.webkit.org/show_bug.cgi?id=110847
212
213         Reviewed by Kenneth Rohde Christiansen.
214
215         Signed off for WebKit2 by Benjamin Poulain.
216
217         There are bugs that some code expect that EwkView::pagePosition() returns css
218         position while others expect that it returns scroll position in device pixel.
219         In addition, some code call EwkView::setPagePosition() with css position while
220         others call it with scroll position in device pixel.
221
222         This patch makes all code use setPagePosition() and pagePosition() with
223         UI pixels (a.k.a Density Independent Pixel).
224
225         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
226         (WebKit::PageViewportControllerClientEfl::setViewportPosition):
227         * UIProcess/efl/WebView.cpp:
228         (WebKit::WebView::paintToCairoSurface):
229         (WebKit::WebView::updateViewportSize):
230         (WebKit::WebView::transformToScene):
231         (WebKit::WebView::pageDidRequestScroll):
232
233 2013-03-07  Alexey Proskuryakov  <ap@apple.com>
234
235         https://bugs.webkit.org/show_bug.cgi?id=111801
236         https://bugs.webkit.org/show_bug.cgi?id=111801
237
238         Reviewed by Geoff Garen.
239
240         Move unnecessary includes out of headers.
241
242         * NetworkProcess/HostRecord.h:
243         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
244         * NetworkProcess/NetworkProcess.cpp:
245         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
246         * NetworkProcess/NetworkResourceLoadScheduler.h:
247         * NetworkProcess/NetworkResourceLoader.h:
248         * NetworkProcess/SchedulableLoader.cpp:
249         * NetworkProcess/SchedulableLoader.h:
250         * NetworkProcess/SyncNetworkResourceLoader.cpp:
251
252 2013-03-07  Andreas Kling  <akling@apple.com>
253
254         Resizing Cappuccino is very laggy on WebKit since Safari 5.1
255         <http://webkit.org/b/71354>
256         <rdar://problem/10565998>
257
258         Reviewed by Anders Carlsson.
259
260         On Mac, we already cache the window rect through the WindowAndViewFramesChanged
261         message, so simply return that in WebChromeClient::windowRect() instead of
262         sending a synchronous query to the UIProcess.
263
264         If a programmatic resize is requested, we bypass the cache until we've received
265         a new WindowAndViewFramesChanged message. This compromise allows us to return
266         cached rects in the common case, and handles creating a new window and immediately
267         resizing it gracefully.
268
269         Changed WindowAndViewFramesChanged to pass FloatRect/FloatPoint rather than
270         IntRect/IntPoint to match the ChromeClient::windowRect() return type.
271
272         * UIProcess/API/mac/WKView.mm:
273         (-[WKView _updateWindowAndViewFrames]):
274         * UIProcess/WebPageProxy.h:
275         (WebPageProxy):
276         * UIProcess/mac/WebPageProxyMac.mm:
277         (WebKit::WebPageProxy::windowAndViewFramesChanged):
278         * WebProcess/Plugins/PluginView.cpp:
279         (WebKit::PluginView::windowAndViewFramesChanged):
280         * WebProcess/Plugins/PluginView.h:
281         (PluginView):
282         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
283         (WebKit::WebChromeClient::setWindowRect):
284         (WebKit::WebChromeClient::windowRect):
285         * WebProcess/WebPage/WebPage.cpp:
286         (WebKit::WebPage::WebPage):
287         (WebKit::WebPage::sendSetWindowFrame):
288         (WebKit::WebPage::windowAndViewFramesChanged):
289         * WebProcess/WebPage/WebPage.h:
290         (WebPage):
291         (WebKit::WebPage::windowFrameInScreenCoordinates):
292         (WebKit::WebPage::viewFrameInWindowCoordinates):
293         (WebKit::WebPage::hasCachedWindowFrame):
294         (WebKit::WebPage::accessibilityPosition):
295         * WebProcess/WebPage/WebPage.messages.in:
296         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
297         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):
298
299 2013-03-07  Alexey Proskuryakov  <ap@apple.com>
300
301         Don't try to create a sandbox extension when path is empty
302         https://bugs.webkit.org/show_bug.cgi?id=111788
303
304         Reviewed by Anders Carlsson.
305
306         * Shared/FileAPI/BlobRegistrationData.cpp:
307         (WebKit::BlobRegistrationData::BlobRegistrationData): Skip File objects with empty
308         paths to avoid logging an error to console.
309
310 2013-03-07  Mark Lam  <mark.lam@apple.com>
311
312         WebPageProxy::exceededDatabaseQuota() needs to be serialized.
313         https://bugs.webkit.org/show_bug.cgi?id=111631.
314
315         Reviewed by Geoffrey Garen.
316
317         Previously, WebPageProxy::exceededDatabaseQuota() is called synchronously
318         with script execution in the WebProcess. Hence, it is never called in a
319         recursive manner.
320
321         In webkit2, we can have multiple WebProcesses concurrently triggering a
322         call to this function. While the function is waiting on feedback from a
323         UI dialog, the wait loop may re-enter the function to service a second
324         request to call this function from another WebProcess. This results in
325         problems where some of the WebProcesses will not get a proper reply, and
326         therefore hangs perpetually waiting for a non-forthcoming reply.
327
328         This changeset changes the function to queue the requests and ensure
329         that we do not recursively callback to the UI client.
330
331         * Platform/CoreIPC/HandleMessage.h:
332         (CoreIPC::callMemberFunction):
333         * UIProcess/WebPageProxy.cpp:
334         (ExceededDatabaseQuotaRecords):
335         (Record):
336         (WebKit::ExceededDatabaseQuotaRecords::areBeingProcessed):
337         (WebKit::ExceededDatabaseQuotaRecords::ExceededDatabaseQuotaRecords):
338         (WebKit::ExceededDatabaseQuotaRecords::~ExceededDatabaseQuotaRecords):
339         (WebKit::ExceededDatabaseQuotaRecords::shared):
340         (WebKit::ExceededDatabaseQuotaRecords::createRecord):
341         (WebKit::ExceededDatabaseQuotaRecords::add):
342         (WebKit::ExceededDatabaseQuotaRecords::next):
343         (WebKit::WebPageProxy::exceededDatabaseQuota):
344         * UIProcess/WebPageProxy.h:
345         * UIProcess/WebPageProxy.messages.in:
346
347 2013-03-07  Jeffrey Pfau  <jpfau@apple.com>
348
349         CFNetwork cache partitioning does not work properly on subdomains
350         https://bugs.webkit.org/show_bug.cgi?id=111772
351
352         Reviewed by David Kilzer.
353
354         Ensure that the CFString is UTF-8 so that WKCFURLCacheCopyAllHostNamesInPersistentStoreForPartition will always work.
355
356         * WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:
357         (WebKit::partitionName): Create a UTF-8 CFString explicitly
358
359 2013-03-07  Beth Dakin  <bdakin@apple.com>
360
361         Need API to draw custom overhang area
362         https://bugs.webkit.org/show_bug.cgi?id=111679
363         -and corresponding-
364         <rdar://problem/13291415>
365
366         Reviewed by Simon Fraser.
367
368         The new API is WKBundlePageSetTopOverhangImage() and 
369         WKBundlePageSetBottomOverhangImage(). When the API is called, WebPage will get 
370         GraphicsLayers for the appropriate area from FrameView, and then set the image as 
371         the contents of the layer.
372
373         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
374         (WKBundlePageSetTopOverhangImage):
375         (WKBundlePageSetBottomOverhangImage):
376         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
377         * WebProcess/WebPage/WebPage.h:
378         (WebPage):
379         * WebProcess/WebPage/mac/WebPageMac.mm:
380         (WebKit::WebPage::setTopOverhangImage):
381         (WebKit):
382         (WebKit::WebPage::setBottomOverhangImage):
383
384 2013-03-07  Gavin Barraclough  <barraclough@apple.com>
385
386         Reduce page cache size on Mac
387         https://bugs.webkit.org/show_bug.cgi?id=111795
388
389         Rubber stamped by Geoff Garen
390
391         5 entries is unnecessarily large; research show 3 should suffice.
392         On a low memory warning we should clear this completely.
393
394         * Shared/CacheModel.cpp:
395         (WebKit::calculateCacheSizes):
396             - reduce maximum to 3.
397
398 2013-03-07  Anders Carlsson  <andersca@apple.com>
399
400         Add a didFocusTextField callback to the injected bundle form client
401         https://bugs.webkit.org/show_bug.cgi?id=111771
402
403         Reviewed by Andreas Kling.
404
405         Add a new client callback that's invoked whenever a text input field is focused.
406
407         * Shared/APIClientTraits.cpp:
408         (WebKit):
409         * Shared/APIClientTraits.h:
410         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
411         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
412         (WebKit::InjectedBundlePageFormClient::didFocusTextField):
413         (WebKit):
414         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.h:
415         (InjectedBundlePageFormClient):
416         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
417         (WebKit::WebChromeClient::focusedNodeChanged):
418
419 2013-03-07  Tim Horton  <timothy_horton@apple.com>
420
421         Null-check the page overlay before trying to use it.
422
423         Reviewed by Simon Fraser.
424
425         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
426         (WebKit::TiledCoreAnimationDrawingArea::scroll):
427
428 2013-03-07  Zan Dobersek  <zdobersek@igalia.com>
429
430         [GTK] Limit the supported compilers to GCC >= 4.7 and Clang >= 3.0
431         https://bugs.webkit.org/show_bug.cgi?id=109932
432
433         Reviewed by Martin Robinson.
434
435         * GNUmakefile.am: Replace references to SYMBOL_VISIBILITY_INLINES and SYMBOL_VISIBILITY variables with the actual flags.
436         They are now available by default due to the limited set of supported compilers.
437
438 2013-03-05  Gustavo Noronha Silva  <gns@gnome.org>
439
440         [GTK] Enable translations for WebKit2
441         https://bugs.webkit.org/show_bug.cgi?id=111398
442
443         Reviewed by Martin Robinson.
444
445         * GNUmakefile.am: define PACKAGE_LOCALE_DIR when building WebProcess's main module.
446         * WebProcess/gtk/WebProcessMainGtk.cpp:
447         (WebKit::WebProcessMainGtk): register the i18n domain name, and prefer UTF-8, since
448         we're GTK+; at the moment we're just using the same name as WebKitGTK+, pro: the
449         translation module can be reused, con: you can't have different versions of
450         WebKitGTK+ and WebKit2GTK+ installed, because the module would not be fit for reuse
451         in that case.
452         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
453         (WebKit::childSetupFunction): do not set LC_ALL environment variable explicitly,
454         the child process will already inherit the environment of the parent, which should
455         have all the variables set properly.
456
457 2013-03-06  Alexey Proskuryakov  <ap@apple.com>
458
459         SandboxExtension::createHandle raises an uncaught Objective-C exception if path is empty
460         https://bugs.webkit.org/show_bug.cgi?id=111689
461
462         Reviewed by Filip Pizlo.
463
464         * Shared/mac/SandboxExtensionMac.mm: (WebKit::SandboxExtension::createHandle):
465         Use a function from WebCore platform layer instead of Foundation one equivalent.
466         We already do this elsewhere in this file.
467
468 2013-03-06  Tim Horton  <timothy_horton@apple.com>
469
470         [wk2] Page overlays shouldn't dirty the entire layer when flushing if the main frame can't scroll
471         https://bugs.webkit.org/show_bug.cgi?id=111662
472         <rdar://problem/13355808>
473
474         Reviewed by Simon Fraser.
475
476         Instead of setNeedsDisplay()ing the whole page overlay layer every time through
477         TCADA::flushLayers, do it at scroll time instead. Repainting on scroll is
478         necessary to keep things painted in the right place when we scroll (the overlay
479         is fixed to the size of the view), but is quite wasteful in apps that don’t scroll.
480
481         This works with threaded scrolling because overlay installation forces us
482         into main-thread scrolling mode.
483
484         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
485         (WebKit::TiledCoreAnimationDrawingArea::scroll):
486         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
487
488 2013-03-06  Tim Horton  <timothy_horton@apple.com>
489
490         [wk2] Page overlays should use the accelerated drawing setting instead of hardcoding it on
491         https://bugs.webkit.org/show_bug.cgi?id=111654
492         <rdar://problem/13364085>
493
494         Reviewed by Simon Fraser.
495
496         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
497         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
498         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
499
500 2013-03-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
501
502         [EFL][WK2] Enable interactive form validation for email and url input type validation
503         https://bugs.webkit.org/show_bug.cgi?id=111026
504
505         Reviewed by Laszlo Gombos.
506
507         WebKit EFL can check if input value is valid by enabling this feature.
508
509         * UIProcess/API/efl/EwkView.cpp:
510         (EwkView::EwkView):
511
512 2013-03-06  Alexey Proskuryakov  <ap@apple.com>
513
514         [Mac] Synthetic ResourceResponses cannot be sent over IPC without losing most information
515         https://bugs.webkit.org/show_bug.cgi?id=111623
516
517         Reviewed by Brady Eidson.
518
519         * Shared/WebCoreArgumentCoders.cpp:
520         * Shared/WebCoreArgumentCoders.h:
521         (CoreIPC::::encode): Made the decision on whether to serialize WebCore data in
522         ResourceResponse dynamic. If the platform data is out of date, we need both
523         (because some platforms use encodePlatformData() to pass additional information).
524         (CoreIPC::::decode): Decode platform data first, because this overwrites the ResourceResponse.
525
526         * Shared/mac/WebCoreArgumentCodersMac.mm: (CoreIPC::::encodePlatformData): Don't
527         encode NSURLResponse if it's out of date. We may have a bad NSURLResponse with 0
528         status code given to client, but it was almost certainly the same on sending side.
529         WebCore doesn't mutate real responses - it either keeps them as is, or builds
530         entirely synthetic ones.
531
532 2013-03-04  Jer Noble  <jer.noble@apple.com>
533
534         Default mouse cursor behavior should be auto-hide for full screen video with custom controls
535         https://bugs.webkit.org/show_bug.cgi?id=107601
536
537         Reviewed by Beth Dakin.
538
539         Enable the CURSOR_VISIBILITY feature.
540
541         * Configurations/FeatureDefines.xcconfig:
542
543 2013-03-06  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
544
545         [GTK][WK2] Implement WebInspector::localizedStringsURL() to return the file URL of localizedStrings.js
546         https://bugs.webkit.org/show_bug.cgi?id=111448
547
548         Reviewed by Alexey Proskuryakov.
549
550         Implement WebInspector::localizedStringsURL() method to return the
551         file URL of the localizedStrings.js.
552
553         This prevents printing warnings about "Localized string not found" in
554         the console.
555
556         * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
557         (WebKit::WebInspector::localizedStringsURL):
558
559 2013-03-06  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
560
561         [EFL][WK2] REGRESSION(r143582): API test EWK2UnitTestBase.ewk_view_contents_size_changed failing
562         https://bugs.webkit.org/show_bug.cgi?id=110608
563
564         Reviewed by Kenneth Rohde Christiansen.
565
566         Test was expecting ContentsSizeChanged signal from ViewClientEfl, but
567         WebView was not calling client callback if useFixedLayout() is true.
568
569         This patch prevent early return if useFixedLayout() is true and call
570         client callback didChangeContentsSize(), which will emit the signal.
571
572         * UIProcess/efl/ViewClientEfl.cpp:
573         (WebKit::ViewClientEfl::didChangeContentsSize):
574         * UIProcess/efl/WebView.cpp:
575         (WebKit::WebView::didChangeContentsSize):
576
577 2013-03-06  Manuel Rego Casasnovas  <rego@igalia.com>
578
579         [WK2][GTK] Fix unit test WebKit2APITests/WebKitWebView/mouse-target
580         https://bugs.webkit.org/show_bug.cgi?id=82866
581
582         Reviewed by Martin Robinson.
583
584         Test was failing because of new media controls needs more space to be
585         painted than just 10x10 pixels. This is similar to r144070.
586
587         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
588         (testWebViewMouseTarget): Modified HTML in order to give more space to the media controls.
589
590 2013-03-06  Tim Horton  <timothy_horton@apple.com>
591
592         [wk2] Page Overlays: Hook up the layer border/repaint counter setting to the overlay layer
593         https://bugs.webkit.org/show_bug.cgi?id=111547
594         <rdar://problem/13355801>
595
596         Reviewed by Simon Fraser.
597
598         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
599         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
600         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
601         Keep the page overlay layer's debug border and repaint counter settings updated.
602
603 2013-03-06  Geoffrey Garen  <ggaren@apple.com>
604
605         Joing the adoptNS/adoptCF/adoptRef club.
606         https://bugs.webkit.org/show_bug.cgi?id=111467
607
608         Reviewed by Darin Adler.
609
610         Responding to review comments by Darin Adler.
611
612         * NetworkProcess/mac/NetworkProcessMac.mm:
613         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
614         * WebProcess/mac/WebProcessMac.mm:
615         (WebKit::WebProcess::platformInitializeWebProcess): Tighten up this code
616         by reducing extraneous local variables.
617
618 2013-03-05  Alexey Proskuryakov  <ap@apple.com>
619
620         Track sandbox extensions for blobs in NetworkProcess
621         https://bugs.webkit.org/show_bug.cgi?id=111484
622
623         Reviewed by Sam Weinig.
624
625         * WebKit2.xcodeproj/project.pbxproj:
626         * NetworkProcess/FileAPI: Added.
627         * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp: Added.
628         * NetworkProcess/FileAPI/NetworkBlobRegistry.h: Added.
629         Added a registry that wraps normal in-process "BlobRegistryImpl", and also tracks
630         sandbox extensions for blobs. It will also track process connections, so that
631         blobs could be removed when a process crashes.
632
633         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
634         (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
635         (WebKit::NetworkConnectionToWebProcess::registerBlobURLFromURL):
636         (WebKit::NetworkConnectionToWebProcess::unregisterBlobURL):
637         Use NetworkBlobRegistry.
638
639         * NetworkProcess/SchedulableLoader.h:
640         * NetworkProcess/SchedulableLoader.cpp:
641         (WebKit::SchedulableLoader::SchedulableLoader): Add extensions for blobs, both in
642         request URL and in request data.
643         (WebKit::SchedulableLoader::consumeSandboxExtensions): Request may now have multiple
644         extensions.
645         (WebKit::SchedulableLoader::invalidateSandboxExtensions): Ditto.
646
647         * Shared/FileAPI/BlobRegistrationData.cpp: Fixed extension creation - actually
648         store the result.
649
650 2013-03-06  Andras Becsi  <andras.becsi@digia.com>
651
652         [Qt][WK2] Fix the Mac build after r144787
653         https://bugs.webkit.org/show_bug.cgi?id=111569
654
655         Reviewed by Csaba Osztrogonác.
656
657         Use uint_64 explicitly instead of size_t.
658
659         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
660         (CoreIPC::::encode):
661         (CoreIPC::::decode):
662
663 2013-03-05  Kent Tamura  <tkent@chromium.org>
664
665         Rename WebCore/editing/visible_units.* to VisibleUnits.*
666         https://bugs.webkit.org/show_bug.cgi?id=111426
667
668         Reviewed by Alexey Proskuryakov.
669
670         * WebProcess/WebPage/mac/WebPageMac.mm:
671
672 2013-03-06  Zeno Albisser  <zeno@webkit.org>
673
674         DataReference::vector() should be const.
675         https://bugs.webkit.org/show_bug.cgi?id=109928
676
677         Reviewed by Anders Carlsson.
678
679         * Platform/CoreIPC/DataReference.h:
680         (CoreIPC::DataReference::vector):
681
682 2013-03-06  Luiz Agostini  <luiz.agostini@nokia.com>
683
684         Accelerated overflow scrolling for Coordinated Graphics.
685         https://bugs.webkit.org/show_bug.cgi?id=110323
686
687         Reviewed by Noam Rosenthal.
688         Signed off for WebKit2 by Simon Fraser.
689
690         A scroll offset is applied to individual layers on UI process and the
691         web process is notified assynchronously.
692         The new API WKCoordinatedScene may be used to scroll layers in the UI process.
693
694         * CMakeLists.txt:
695
696         Encoding and decoding the new members of CoordinatedGraphicsLayerState.
697
698         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
699         (CoreIPC::::encode):
700         (CoreIPC::::decode):
701
702         Adding acceleratedCompositingForOverflowScrollEnabled to WebPreferencesStore.
703
704         * Shared/WebPreferencesStore.h:
705         * WebProcess/WebPage/WebPage.cpp:
706         (WebKit::WebPage::updatePreferences):
707
708         New API WKCoordinatedScene is used to scroll layers on UI side.
709
710         * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp:
711         * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.h:
712         * UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h:
713
714         A new message is used to send scroll commit messages to web process.
715
716         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
717         (WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):
718         (WebKit):
719         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
720         (CoordinatedLayerTreeHostProxy):
721         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
722         (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
723         (WebKit::CoordinatedLayerTreeHost::detachLayer):
724         (WebKit::CoordinatedLayerTreeHost::createGraphicsLayer):
725         (WebKit::CoordinatedLayerTreeHost::setVisibleContentsRect):
726         (WebKit::CoordinatedLayerTreeHost::purgeBackingStores):
727         (WebKit::CoordinatedLayerTreeHost::commitScrollOffset):
728         (WebKit):
729         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
730         (CoordinatedLayerTreeHost):
731         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.messages.in:
732
733 2013-03-06  Huang Dongsung  <luxtella@company100.net>
734
735         [EFL][WK2] Convert from device view size to UI view size only in EwkView.
736         https://bugs.webkit.org/show_bug.cgi?id=110197
737
738         Reviewed by Kenneth Rohde Christiansen.
739
740         Signed off for WebKit2 by Benjamin Poulain.
741
742         Device scale factor is a property of the physical display, so only EwkView
743         should deal with converting device view size to UI (a.k.a Density Independent Pixel)
744         view size. It increases readability because we can regard a view size in
745         other classes (e.g. WebView, PageViewportController, WebPage) except for
746         EwkView as UI size.
747
748         * UIProcess/API/efl/EwkView.cpp:
749         (EwkView::setDeviceScaleFactor):
750         (EwkView::setDeviceSize):
751         (EwkView::size):
752         (EwkView::deviceSize):
753         (EwkView::scheduleUpdateDisplay):
754         (EwkView::createGLSurface):
755         (EwkView::handleEvasObjectCalculate):
756         * UIProcess/API/efl/EwkView.h:
757         (EwkView):
758         * UIProcess/efl/WebView.cpp:
759         (WebKit::WebView::paintToCurrentGLContext):
760         (WebKit::WebView::updateViewportSize):
761
762 2013-03-06  Christophe Dumez  <ch.dumez@sisa.samsung.com>
763
764         [EFL][WK2] Use Vector::reserveInitialCapacity() in WebEventFactory::createWebTouchEvent()
765         https://bugs.webkit.org/show_bug.cgi?id=111530
766
767         Reviewed by Benjamin Poulain.
768
769         In WebEventFactory::createWebTouchEvent(), when constructing the vector of touch points,
770         we already know in advance the total number of touch points. Therefore, we should
771         leverage WTF::Vector::reserveInitialCapacity() and WTF::Vector::uncheckedAppend() to save
772         some capacity checks.
773
774         * Shared/efl/WebEventFactory.cpp:
775         (WebKit::WebEventFactory::createWebTouchEvent):
776
777 2013-03-05  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
778
779         [WK2][EFL] Enable asynchronous spell checking by default
780         https://bugs.webkit.org/show_bug.cgi?id=111295
781
782         Reviewed by Benjamin Poulain.
783
784         Asynchronous spell checking feature is disabled by default for wk2 platforms.
785         It means all requests of spell checking are sent synchronously.
786
787         WebKit-EFL implements requestCheckingOfString method which allows
788         to check spelling asynchronously.
789
790         * UIProcess/API/efl/EwkView.cpp:
791         (EwkView::EwkView):
792
793 2013-03-05  Kondapally Kalyan  <kalyan.kondapally@intel.com>
794
795         [EFL] Ensure right format is used in SnapshotImageGL.
796         https://bugs.webkit.org/show_bug.cgi?id=111333
797
798         Reviewed by Benjamin Poulain.
799
800         GL_BGRA format is not standard for glReadPixels with GLES.
801         This patch ensures that GL_RGBA is used in SnapshotImageGL
802         while using GLES.
803
804         * UIProcess/API/efl/SnapshotImageGL.cpp:
805         (getImageSurfaceFromFrameBuffer):
806
807 2013-03-05  Geoffrey Garen  <ggaren@apple.com>
808
809         Each web process truncates the disk cache to zero on launch
810         https://bugs.webkit.org/show_bug.cgi?id=111467
811
812         Reviewed by Darin Adler.
813
814         Let's not do that.
815
816         * WebProcess/mac/WebProcessMac.mm:
817         (WebKit::WebProcess::platformInitializeWebProcess):
818
819 2013-03-05  Anders Carlsson  <andersca@apple.com>
820
821         Reset the values if there is a quota error
822         https://bugs.webkit.org/show_bug.cgi?id=111500
823
824         Reviewed by Beth Dakin.
825
826         * WebProcess/Storage/StorageAreaProxy.cpp:
827         (WebKit::StorageAreaProxy::didSetItem):
828         (WebKit::StorageAreaProxy::resetValues):
829         (WebKit):
830         * WebProcess/Storage/StorageAreaProxy.h:
831         (StorageAreaProxy):
832
833 2013-03-05  Anders Carlsson  <andersca@apple.com>
834
835         Keep track of pending value changes in StorageAreaProxy
836         https://bugs.webkit.org/show_bug.cgi?id=111496
837
838         Reviewed by Beth Dakin.
839
840         Add a HashCountedSet to keep track of the number of pending value
841         changes for a given key. If we get incoming storage events from other
842         processes while we have pending value changes, ignore the events.
843
844         * WebProcess/Storage/StorageAreaProxy.cpp:
845         (WebKit::StorageAreaProxy::setItem):
846         (WebKit::StorageAreaProxy::didSetItem):
847         (WebKit::StorageAreaProxy::dispatchStorageEvent):
848         (WebKit::StorageAreaProxy::shouldApplyChangesForKey):
849         (WebKit):
850         * WebProcess/Storage/StorageAreaProxy.h:
851         (StorageAreaProxy):
852
853 2013-03-05  Ryuan Choi  <ryuan.choi@samsung.com>
854
855         [EFL] Build break with latest EFL libraries
856         https://bugs.webkit.org/show_bug.cgi?id=111028
857
858         Reviewed by Dirk Pranke.
859
860         * PlatformEfl.cmake: Added ECORE_XXX_INCLUDE_DIRS.
861
862 2013-03-05  Anders Carlsson  <andersca@apple.com>
863
864         Use a named parameter for whether a quota error ocurred or not
865         https://bugs.webkit.org/show_bug.cgi?id=111490
866
867         Reviewed by Beth Dakin.
868
869         This is clearer than setItem returning true on error.
870         Also, actually set the item in the storage map.
871
872         * UIProcess/Storage/StorageManager.cpp:
873         (StorageManager::StorageArea):
874         (WebKit::StorageManager::StorageArea::setItem):
875         (WebKit::StorageManager::setItem):
876
877 2013-03-05  Kiran Muppala  <cmuppala@apple.com>
878
879         Use new assertion API for process suppression on Mac
880         https://bugs.webkit.org/show_bug.cgi?id=111387
881
882         Reviewed by Alexey Proskuryakov.
883
884         * Shared/ChildProcess.h:
885         (WebKit::ChildProcess::processSuppressionEnabled): Rename
886         m_processVisibleAssertion to m_processSuppressionAssertion.
887         * Shared/mac/ChildProcessMac.mm:
888         (WebKit::ChildProcess::setProcessSuppressionEnabled): Ditto. And,
889         replace calls to WKNSProcessInfoProcessAssertionWithTypes() with call to
890         -[NSProcessInfo beginSuspensionOfSystemBehaviors:].
891
892 2013-03-05  Anders Carlsson  <andersca@apple.com>
893
894         Move storageType() to StorageAreaProxy
895         https://bugs.webkit.org/show_bug.cgi?id=111488
896
897         Reviewed by Andreas Kling.
898
899         * WebProcess/Storage/StorageAreaProxy.cpp:
900         (WebKit::StorageAreaProxy::StorageAreaProxy):
901         (WebKit::StorageAreaProxy::storageType):
902         (WebKit::StorageAreaProxy::disabledByPrivateBrowsingInFrame):
903         * WebProcess/Storage/StorageAreaProxy.h:
904         (StorageAreaProxy):
905         * WebProcess/Storage/StorageNamespaceProxy.cpp:
906         * WebProcess/Storage/StorageNamespaceProxy.h:
907
908 2013-03-05  Jeffrey Pfau  <jpfau@apple.com>
909
910         Clear associated cache partitions when deleting origins' cache
911         https://bugs.webkit.org/show_bug.cgi?id=111383
912
913         Reviewed by Maciej Stachowiak.
914
915         Clear the cache partitions associated with the origin being cleared.
916
917         * WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:
918         (WebKit):
919         (WebKit::partitionName):
920         (WebKit::WebResourceCacheManager::clearCFURLCacheForHostNames):
921
922 2013-03-05  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
923
924         [WK2][EFL] WebPageProxy::setThemePath() should check that the page is valid
925         https://bugs.webkit.org/show_bug.cgi?id=109917
926
927         Reviewed by Alexey Proskuryakov.
928
929         WebPageProxy::setThemePath() should check that the page is valid before
930         sending IPC message.
931
932         * UIProcess/efl/WebPageProxyEfl.cpp:
933         (WebKit::WebPageProxy::setThemePath):
934
935 2013-03-05  Alexey Proskuryakov  <ap@apple.com>
936
937         <rdar://problem/13269245> Crashes creating WebKit processes in WKSandboxExtensionConsume
938         https://bugs.webkit.org/show_bug.cgi?id=111456
939
940         Reviewed by Anders Carlsson.
941
942         It's too late to be draconian about this condition here, crashing doesn't help
943         diagnose what went wrong when creating a sandbox extension.
944
945         Other SandboxExtension functions already have null checks for WKSandboxExtensionRef,
946         and so should consumePermanently().
947
948         * Shared/mac/SandboxExtensionMac.mm:
949         (WebKit::SandboxExtension::createHandle): For now, added logging when extension
950         creation fails. If that proves insufficiently helpful in practice, we can change
951         to a CRASH() later.
952         (WebKit::SandboxExtension::createHandleForTemporaryFile): Ditto.
953         (WebKit::SandboxExtension::consumePermanently): Gracefully fail if there is no extension
954         to consume.
955
956 2013-03-05  Gwang Yoon Hwang  <ryumiel@company100.net>
957
958         Coordinated Graphics: CoordinatedGraphicsLayer makes CoordinatedGraphicsScene perform via CoordinatedGraphicsState.
959         https://bugs.webkit.org/show_bug.cgi?id=108294
960
961         Reviewed by Anders Carlsson.
962
963         There are two changes in WK2.
964         1. Change CoordinatedLayerTreeHostProxy to use CoordinatedGraphicsState.
965         2. Add encode/decode of CoordinatedGraphicsState in CoordinatedGraphicsArgumentCoders.
966
967         This patch is based on Dongsung Huang, and Noam's work in
968         https://bugs.webkit.org/show_bug.cgi?id=108294
969
970         No new tests, covered by existing tests.
971
972         * Scripts/webkit2/messages.py:
973         (headers_for_type):
974         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
975         (CoreIPC::::encode):
976             Encoding UpdateImageBacking and CreateUpdateAtlas can fail when
977             encoding WebCoordinatedSurface::Handle fails, but we don't
978             recover in the case.
979         (CoreIPC::::decode):
980         (CoreIPC):
981         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
982         (WebCore):
983         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
984         (WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
985         (WebKit):
986         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
987         (WebCore):
988         (CoordinatedLayerTreeHostProxy):
989         (WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene):
990         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
991         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
992         (WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
993         (WebKit::CoordinatedLayerTreeHost::initializeRootCompositingLayerIfNeeded):
994         (WebKit::CoordinatedLayerTreeHost::syncLayerState):
995         (WebKit::CoordinatedLayerTreeHost::prepareCustomFilterProxiesIfNeeded):
996         (WebKit):
997         (WebKit::CoordinatedLayerTreeHost::updateImageBacking):
998         (WebKit::CoordinatedLayerTreeHost::setBackgroundColor):
999         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1000         (CoordinatedLayerTreeHost):
1001
1002 2013-03-05  Sam Weinig  <sam@webkit.org>
1003
1004         Follow up to https://bugs.webkit.org/show_bug.cgi?id=111453, forgot to mark the files as Private.
1005
1006         * WebKit2.xcodeproj/project.pbxproj:
1007
1008 2013-03-05  Sam Weinig  <sam@webkit.org>
1009
1010         Elevate accessors of C-SPI API variants to Objective-C SPI
1011         https://bugs.webkit.org/show_bug.cgi?id=111453
1012         <rdar://problem/13340357>
1013
1014         Reviewed by Alexey Proskuryakov.
1015
1016         * Shared/mac/ObjCObjectGraphCoders.mm:
1017         * UIProcess/API/mac/WKBrowsingContextControllerInternal.h:
1018         * UIProcess/API/mac/WKBrowsingContextControllerPrivate.h:
1019         * UIProcess/API/mac/WKBrowsingContextGroup.mm:
1020         * UIProcess/API/mac/WKBrowsingContextGroupPrivate.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKBrowsingContextGroupInternal.h.
1021         * UIProcess/API/mac/WKProcessGroup.mm:
1022         * UIProcess/API/mac/WKProcessGroupPrivate.h: Copied from Source/WebKit2/UIProcess/API/mac/WKProcessGroupInternal.h.
1023         * UIProcess/API/mac/WKView.mm:
1024         * WebKit2.xcodeproj/project.pbxproj:
1025         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
1026         (-[WKWebProcessPlugInController _bundleRef]):
1027         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInPrivate.h: Renamed from Source/WebKit2/UIProcess/API/mac/WKProcessGroupInternal.h.
1028         Add access to C-SPI WebKit types as Objective-C SPI.
1029
1030 2013-03-04  Alexey Proskuryakov  <ap@apple.com>
1031
1032         Make AsyncFileReader work without ScriptExecutionContext
1033         https://bugs.webkit.org/show_bug.cgi?id=111376
1034
1035         Reviewed by Anders Carlsson.
1036
1037         * NetworkProcess/NetworkResourceLoader.cpp:
1038         * NetworkProcess/NetworkResourceLoader.h:
1039         Removed a dummy implementation of createAsyncFileStream, which is no longer needed.
1040
1041 2013-03-05  Alexey Proskuryakov  <ap@apple.com>
1042
1043         <rdar://problem/13345116> REGRESSION: Child processes get access to user cache
1044         and temporary directories instead of private ones
1045
1046         Reviewed by Sam Weinig.
1047
1048         * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::initializeSandbox):
1049         Restore the correct order of calls, so sandbox parameters respect WebKit pseudo
1050         containers.
1051
1052 2013-03-05  David Kilzer  <ddkilzer@apple.com>
1053
1054         BUILD FIX (r144698): Only enable SPEECH_SYNTHESIS for Mac
1055         <http://webkit.org/b/106742>
1056
1057         Fixes the following build failures:
1058
1059             Undefined symbols for architecture i386:
1060               "__ZTVN7WebCore25PlatformSpeechSynthesizerE", referenced from:
1061                   __ZN7WebCore25PlatformSpeechSynthesizerC2EPNS_31PlatformSpeechSynthesizerClientE in PlatformSpeechSynthesizer.o
1062               NOTE: a missing vtable usually means the first non-inline virtual member function has no definition.
1063               "__ZN7WebCore25PlatformSpeechSynthesizer19initializeVoiceListEv", referenced from:
1064                   __ZN7WebCore25PlatformSpeechSynthesizerC2EPNS_31PlatformSpeechSynthesizerClientE in PlatformSpeechSynthesizer.o
1065             ld: symbol(s) not found for architecture i386
1066
1067         * Configurations/FeatureDefines.xcconfig:
1068         - Only set ENABLE_SPEECH_SYNTHESIS for the macosx platform.
1069
1070 2013-03-05  Tim Horton  <timothy_horton@apple.com>, Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1071
1072         [WK2] WTR needs an implementation of setAsynchronousSpellCheckingEnabled
1073         https://bugs.webkit.org/show_bug.cgi?id=81042
1074
1075         Reviewed by Enrica Casucci.
1076
1077         Expose WK2 setting to enable/disabled asynchronous spell checking.
1078         It's used by WebKitTestRunner to reset the setting at the beginning
1079         of the test.
1080         WebKit2 ports might be interested in this setting if they are going
1081         to enable this feature.
1082
1083         * Shared/WebPreferencesStore.h:
1084         * UIProcess/API/C/WKPreferences.cpp:
1085         (WKPreferencesSetAsynchronousSpellCheckingEnabled):
1086         (WKPreferencesGetAsynchronousSpellCheckingEnabled):
1087         * UIProcess/API/C/WKPreferences.h:
1088         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1089         (WKBundleSetAsynchronousSpellCheckingEnabled):
1090         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1091         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1092         (WebKit::InjectedBundle::setAsynchronousSpellCheckingEnabled):
1093         * WebProcess/InjectedBundle/InjectedBundle.h:
1094         * WebProcess/WebPage/WebPage.cpp:
1095         (WebKit::WebPage::updatePreferences):
1096
1097 2013-03-03  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1098
1099         [WK2][EFL] Add requestCheckingOfString implementation.
1100         https://bugs.webkit.org/show_bug.cgi?id=108172
1101
1102         Reviewed by Hajime Morrita.
1103
1104         Provide implementation of 'requestCheckingOfString' for WK2-EFL.
1105         It uses the unified text checker feature.
1106
1107         * UIProcess/efl/TextCheckerEfl.cpp:
1108         (WebKit::TextChecker::requestCheckingOfString):
1109
1110 2013-03-04  Chris Fleizach  <cfleizach@apple.com>
1111
1112         Support WebSpeech - Speech Synthesis
1113         https://bugs.webkit.org/show_bug.cgi?id=106742
1114
1115         Reviewed by Simon Fraser.
1116
1117         Enable speech synthesis for the Mac.
1118
1119         * Configurations/FeatureDefines.xcconfig:
1120
1121 2013-03-04  Anders Carlsson  <andersca@apple.com>
1122
1123         UI process storage areas should hold on to storage maps
1124         https://bugs.webkit.org/show_bug.cgi?id=111374
1125
1126         Reviewed by Beth Dakin.
1127
1128         Pass the session storage quota size through to the storage area constructor and
1129         create a StorageMap with the given quota size.
1130
1131         * UIProcess/Storage/StorageManager.cpp:
1132         (StorageManager::StorageArea):
1133         (WebKit::StorageManager::StorageArea::create):
1134         (WebKit::StorageManager::StorageArea::StorageArea):
1135         (StorageManager::SessionStorageNamespace):
1136         (WebKit::StorageManager::SessionStorageNamespace::create):
1137         (WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
1138         (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
1139         (WebKit::StorageManager::createSessionStorageNamespace):
1140         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
1141         * UIProcess/Storage/StorageManager.h:
1142         (StorageManager):
1143         * UIProcess/WebPageProxy.cpp:
1144         (WebKit::WebPageProxy::WebPageProxy):
1145
1146 2013-03-04  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
1147
1148         Unreviewed build fix after r144675.
1149
1150         Work around picky/old C++ compilers by separating the '>>' in
1151         nested templates with a space.
1152
1153         * UIProcess/Storage/StorageManager.cpp:
1154         (StorageManager::StorageArea):
1155
1156 2013-03-04  Anders Carlsson  <andersca@apple.com>
1157
1158         More work on UI side storage
1159         https://bugs.webkit.org/show_bug.cgi?id=111370
1160
1161         Reviewed by Andreas Kling.
1162
1163         Add a DispatchStorageEvent message and begin hooking it up.
1164
1165         * UIProcess/Storage/StorageManager.cpp:
1166         (StorageManager::StorageArea):
1167         (WebKit::StorageManager::StorageArea::setItem):
1168         (WebKit):
1169         (WebKit::StorageManager::StorageArea::dispatchEvents):
1170         (WebKit::StorageManager::setItem):
1171         (WebKit::StorageManager::findStorageArea):
1172         * UIProcess/Storage/StorageManager.h:
1173         (StorageManager):
1174         * UIProcess/Storage/StorageManager.messages.in:
1175         * WebProcess/Storage/StorageAreaProxy.cpp:
1176         (WebKit::StorageAreaProxy::setItem):
1177         (WebKit::StorageAreaProxy::dispatchStorageEvent):
1178         (WebKit):
1179         * WebProcess/Storage/StorageAreaProxy.h:
1180         (StorageAreaProxy):
1181         * WebProcess/Storage/StorageAreaProxy.messages.in:
1182
1183 2013-03-04  Jer Noble  <jer.noble@apple.com>
1184
1185         Unreviewed build fix: wrap references to PluginInfoStore with 
1186         guards for platforms which do not enable NETSCAPE_PLUGIN_AP.
1187
1188         * UIProcess/WebContext.cpp:
1189         (WebKit::WebContext::WebContext):
1190         (WebKit::WebContext::~WebContext):
1191         * UIProcess/WebContext.h:
1192
1193 2013-03-04  Anders Carlsson  <andersca@apple.com>
1194
1195         Create and destroy storage areas in the UI process
1196         https://bugs.webkit.org/show_bug.cgi?id=111361
1197
1198         Reviewed by Sam Weinig.
1199
1200         * UIProcess/Storage/StorageManager.cpp:
1201         (StorageManager::StorageArea):
1202         Keep track of listener connection and storage area ID pairs.
1203         
1204         (WebKit::StorageManager::StorageArea::~StorageArea):
1205         Assert that we don't have any listeners left.
1206
1207         (WebKit::StorageManager::StorageArea::addListener):
1208         Add the pair to the set of listeners.
1209         
1210         (WebKit::StorageManager::StorageArea::removeListener):
1211         Remove the pair from the set of listeners.
1212         
1213         (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
1214         Given an origin, look up or create the storage area.
1215
1216         (WebKit::StorageManager::createStorageArea):
1217         Create the storage area if it doesn't already exist.
1218
1219         (WebKit::StorageManager::destroyStorageArea):
1220         Look up the storage area and destroy it.
1221
1222         * UIProcess/Storage/StorageManager.h:
1223         Add a map of open storage areas.
1224
1225 2013-03-04  Jer Noble  <jer.noble@apple.com>
1226
1227         Add API to allow WK2 clients to query the list of installed plug-ins.
1228         https://bugs.webkit.org/show_bug.cgi?id=111245
1229
1230         Reviewed by Alexey Proskuryakov.
1231
1232         Add API in WKContext, implemented by WebContext, that allows callers to register a callback 
1233         retrieve an array containing installed plugin information. This API is exposed through WebContext 
1234         because it owns the PluginInfoStore used to fulfill the request.
1235
1236         Bump the WKContextClient API by 1:
1237         * Shared/APIClientTraits.cpp:
1238         * Shared/APIClientTraits.h:
1239         * UIProcess/API/C/WKContext.h:
1240
1241         Add a client protocol to PluginInfoStore to notify the client when plugIn information has been
1242         successfully loaded:
1243         * UIProcess/Plugins/PluginInfoStore.cpp:
1244         (WebKit::PluginInfoStore::PluginInfoStore): Initialize m_client to 0.
1245         (WebKit::PluginInfoStore::loadPluginsIfNecessary): If the client is present, notify after loading the plugin store.
1246         * UIProcess/Plugins/PluginInfoStore.h:
1247         (WebKit::PluginInfoStoreClient::~PluginInfoStoreClient): Default destructor.
1248         (WebKit::PluginInfoStoreClient::PluginInfoStoreClient): Default constructor.
1249         (WebKit::PluginInfoStore::setClient): Simple setter.
1250         (WebKit::PluginInfoStore::client): Simple getter.
1251
1252         * UIProcess/WebContext.cpp:
1253         (WebKit::WebContext::WebContext): Set self as the client of PluginInfoStore.
1254         (WebKit::WebContext::~WebContext): Clear the client of PluginInfoStore.
1255         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins): Pass the callback to own client.
1256         * UIProcess/WebContext.h:
1257         * UIProcess/WebContextClient.cpp:
1258         (WebKit::WebContextClient::plugInInformationBecameAvailable): Pass the callback to the registered WK callback, if present.
1259         * UIProcess/WebContextClient.h:
1260
1261 2013-03-04  Tim Horton  <timothy_horton@apple.com>
1262
1263         PDFPlugin: Hook up Services
1264         https://bugs.webkit.org/show_bug.cgi?id=111246
1265         <rdar://problem/13062672>
1266
1267         Reviewed by Alexey Proskuryakov.
1268
1269         Make the Application->Services menu work when the focused selection is a PDFPlugin.
1270
1271         * Shared/EditorState.cpp:
1272         (WebKit::EditorState::encode):
1273         (WebKit::EditorState::decode):
1274         * Shared/EditorState.h:
1275         (WebKit::EditorState::EditorState):
1276         (EditorState):
1277         Add isInPlugin property to EditorState.
1278
1279         * UIProcess/API/mac/WKView.mm:
1280         (-[WKView validRequestorForSendType:returnType:]):
1281         If the selection is currently in a Plugin, we only currently have the ability
1282         to retrieve the selection as a plain-text string, so restrict sendType to NSStringPboardType.
1283
1284         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
1285         * WebProcess/Plugins/Plugin.h:
1286         * WebProcess/Plugins/PluginView.h:
1287         * WebProcess/Plugins/PluginProxy.h:
1288         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
1289         Add getStringSelection.
1290
1291         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
1292         Add pdfLayerController:didChangeSelection: delegate method.
1293
1294         * WebProcess/Plugins/PDF/PDFPlugin.h:
1295         (PDFPlugin):
1296         Add getStringSelection and notifySelectionChanged.
1297
1298         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1299         (-[WKPDFLayerControllerDelegate pdfLayerController:didChangeSelection:]):
1300         Forward selection change notifications to our PDFPlugin.
1301
1302         (WebKit::PDFPlugin::notifySelectionChanged):
1303         Forward selection change notifications to our WebPage.
1304
1305         (WebKit::PDFPlugin::getStringSelection):
1306         Retrieve PDFLayerController's selection as a plain text string.
1307         
1308         * WebProcess/Plugins/PluginView.cpp:
1309         (WebKit::PluginView::countFindMatches):
1310         (WebKit::PluginView::findString):
1311         Drive-bys, check for existance and initialization of the plugin before using it.
1312
1313         (WebKit::PluginView::getStringSelection): Added.
1314
1315         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1316         (WebKit::WebEditorClient::respondToChangedSelection):
1317         Use didChangeSelection instead of sending the EditorStateChanged message directly.
1318
1319         * WebProcess/WebPage/WebPage.cpp:
1320         (WebKit::WebPage::editorState):
1321         If a plugin is focused and has a selection, return a EditorState that reflects that.
1322         Since PDFs aren't editable (when editing annotations, the plugin doesn't have focus),
1323         I'm not adding support for the editing-related properties when a plugin has focus.
1324
1325         (WebKit::WebPage::focusedPluginViewForFrame):
1326         (WebKit::WebPage::pluginViewForFrame):
1327         Make these class methods instead of static functions so we can use them from
1328         WebPageMac too, instead of duplicating code there.
1329
1330         (WebKit::WebPage::didChangeSelection): Added.
1331
1332         * WebProcess/WebPage/WebPage.h:
1333         Add didChangeSelection and [focused]PluginViewForFrame.
1334
1335         * WebProcess/WebPage/mac/WebPageMac.mm:
1336         (WebKit::WebPage::getStringSelectionForPasteboard):
1337         Defer to the focused plugin (if it exists) when retrieving the plain-text selection.
1338
1339 2013-03-04  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1340
1341         [WK2][EFL] Add callbacks to the WKViewClient to handle Web Process crash and relaunch
1342         https://bugs.webkit.org/show_bug.cgi?id=109828
1343
1344         Reviewed by Kenneth Rohde Christiansen.
1345
1346         Providing WKViewClient with Web Process crash and Web Process relaunch
1347         callbacks brings better design as WebView should not be aware of
1348         EFL-specific code handling the corresponding events.
1349
1350         The implementation of the mentioned Web Process callbacks was also added.
1351
1352         * UIProcess/API/C/efl/WKView.cpp:
1353         (WKViewSetThemePath):
1354         * UIProcess/API/C/efl/WKView.h:
1355         * UIProcess/efl/ViewClientEfl.cpp:
1356         (WebKit::ViewClientEfl::webProcessCrashed):
1357         (WebKit):
1358         (WebKit::ViewClientEfl::webProcessDidRelaunch):
1359         (WebKit::ViewClientEfl::ViewClientEfl):
1360         * UIProcess/efl/ViewClientEfl.h:
1361         (ViewClientEfl):
1362         * UIProcess/efl/WebView.cpp:
1363         (WebKit::WebView::setThemePath):
1364
1365             Accepts WTF::String instead of WKStringRef as it is
1366             more appropriate for C++ API implementation class.
1367
1368         (WebKit::WebView::processDidCrash):
1369         (WebKit::WebView::didRelaunchProcess):
1370         * UIProcess/efl/WebView.h:
1371         (WebView):
1372         * UIProcess/efl/WebViewClient.cpp:
1373         (WebKit::WebViewClient::webProcessCrashed):
1374         (WebKit):
1375         (WebKit::WebViewClient::webProcessDidRelaunch):
1376         * UIProcess/efl/WebViewClient.h:
1377
1378 2013-03-04  Anders Carlsson  <andersca@apple.com>
1379
1380         Complete the plug-in URL string before sending it to the UI process
1381         https://bugs.webkit.org/show_bug.cgi?id=111355
1382         <rdar://problem/13326713>
1383
1384         Reviewed by Andreas Kling.
1385
1386         If the URL is not absolute, we won't be able to find it by path extension in the plug-in info store.
1387
1388         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1389         (WebKit::WebChromeClient::unavailablePluginButtonClicked):
1390
1391 2013-03-04  Carlos Garcia Campos  <cgarcia@igalia.com>
1392
1393         [GTK] Some WebKit2 GTK+ unit tests are failing in 32 bits bot
1394         https://bugs.webkit.org/show_bug.cgi?id=111346
1395
1396         Reviewed by Martin Robinson.
1397
1398         The problem is the use of a temporary CString object in the macro
1399         g_assert_cmpstr. It's a common mistake because we usually forget
1400         that g_assert_cmpstr is not a function but a macro, that expands
1401         to multiple lines. This patch adds a new macro ASSERT_CMP_CSTRING
1402         with the same implementation that g_assert_cmpstr, but using
1403         CStrings instead of const char*. It fixes all the cases where a
1404         temporary CString was used in g_assert_cmpstr, and uses the new
1405         macro also for the cases where we were caching the CString just
1406         for g_assert_cmpstr.
1407
1408         * UIProcess/API/gtk/tests/TestDownloads.cpp:
1409         (testDownloadRemoteFile):
1410         * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
1411         (testInspectorServerPageList):
1412         * UIProcess/API/gtk/tests/TestLoaderClient.cpp:
1413         * UIProcess/API/gtk/tests/TestMain.h:
1414         * UIProcess/API/gtk/tests/TestResources.cpp:
1415         * UIProcess/API/gtk/tests/TestWebKitFaviconDatabase.cpp:
1416         (testGetFaviconURI):
1417         * UIProcess/API/gtk/tests/TestWebKitSettings.cpp:
1418         (assertThatUserAgentIsSentInHeaders):
1419         (testWebKitSettingsUserAgent):
1420
1421 2013-03-04  Kunihiko Sakamoto  <ksakamoto@chromium.org>
1422
1423         Add build flag for FontLoader
1424         https://bugs.webkit.org/show_bug.cgi?id=111289
1425
1426         Reviewed by Benjamin Poulain.
1427
1428         Add ENABLE_FONT_LOAD_EVENTS build flag (disabled by default).
1429
1430         * Configurations/FeatureDefines.xcconfig:
1431
1432 2013-03-03  Tim Horton  <timothy_horton@apple.com>
1433
1434         PDFPlugin: Rename delegate method from openWithPreview to openWithNativeApplication
1435         https://bugs.webkit.org/show_bug.cgi?id=111258
1436
1437         Reviewed by Alexey Proskuryakov.
1438
1439         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h:
1440         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1441         (-[WKPDFLayerControllerDelegate openWithNativeApplication]):
1442         Rename from openWithPreview to openWithNativeApplication to match PDFKit.
1443
1444 2013-03-03  Huang Dongsung  <luxtella@company100.net>
1445
1446         [EFL][QT][WK2] Turn on ApplyDeviceScaleFactorInCompositor always.
1447         https://bugs.webkit.org/show_bug.cgi?id=110298
1448
1449         Reviewed by Kenneth Rohde Christiansen.
1450
1451         Currently, EFL and Qt turn on ApplyDeviceScaleFactorInCompositor when using
1452         fixed layout, but ApplyDeviceScaleFactorInCompositor is not related to fixed
1453         layout. It is confusing that a platform WebView deals with device view size or
1454         DIP view size case by case. So this patch always turns on
1455         ApplyDeviceScaleFactorInCompositor.
1456
1457         In addition, move the code that turns on ScrollingCoordinatorEnabled to
1458         CoordinatedLayerTreeHost.
1459
1460         * UIProcess/API/efl/EwkView.cpp:
1461         (EwkView::setDeviceScaleFactor):
1462             We should make WebPage know new DIP size.
1463         (EwkView::setSize):
1464             When we set ApplyDeviceScaleFactorInCompositor to true, make WebPage
1465             know the DIP size as a view size.
1466         * UIProcess/efl/WebView.cpp:
1467         (WebKit::WebView::updateViewportSize):
1468         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1469         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
1470         * WebProcess/WebPage/DrawingAreaImpl.cpp:
1471         (WebKit::DrawingAreaImpl::DrawingAreaImpl):
1472         * WebProcess/WebPage/WebPage.cpp:
1473         (WebKit::WebPage::setUseFixedLayout):
1474             WebPage sends the DIP size to Web Process even when we don't use fixed layout.
1475
1476 2013-03-03  Sam Weinig  <sam@webkit.org>
1477
1478         Shared Web Workers have an incorrect visible process name
1479         https://bugs.webkit.org/show_bug.cgi?id=111277
1480
1481         Reviewed by Dan Bernstein.
1482
1483         * SharedWorkerProcess/SharedWorkerProcess.cpp:
1484         (WebKit::SharedWorkerProcess::initializeSharedWorkerProcess):
1485         * SharedWorkerProcess/SharedWorkerProcess.h:
1486         (SharedWorkerProcess):
1487         * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm:
1488         (WebKit::SharedWorkerProcess::initializeProcessName):
1489         The SharedWorkerProcess is not an internet plug-in!
1490
1491 2013-03-03  Adam Barth  <abarth@webkit.org>
1492
1493         Unreviewed attempted build fix. Adds back some includes removed in
1494         http://trac.webkit.org/changeset/144565.
1495
1496         * Shared/WebRenderLayer.cpp:
1497         * Shared/WebRenderObject.cpp:
1498         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1499         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1500         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1501         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1502         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1503         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1504         * WebProcess/Plugins/PluginView.cpp:
1505         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1506         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1507         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1508         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1509         * WebProcess/WebPage/mac/WebPageMac.mm:
1510         * WebProcess/WebProcess.cpp:
1511         * WebProcess/soup/WebProcessSoup.cpp:
1512
1513 2013-03-03  Adam Barth  <abarth@webkit.org>
1514
1515         Unreviewed rollout of http://trac.webkit.org/r144530
1516         As described in https://bugs.webkit.org/show_bug.cgi?id=111167 and
1517         https://bugs.webkit.org/show_bug.cgi?id=111035, this patch caused a
1518         large number of ASSERTs in chromium-win.
1519
1520         * NetworkProcess/HostRecord.h:
1521         * NetworkProcess/NetworkResourceLoadScheduler.h:
1522         * NetworkProcess/NetworkResourceLoader.h:
1523         (WebCore):
1524         * Shared/WebRenderLayer.cpp:
1525         * Shared/WebRenderObject.cpp:
1526         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1527         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1528         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1529         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1530         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1531         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1532         * WebProcess/Plugins/PluginView.cpp:
1533         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1534         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1535         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1536         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1537         * WebProcess/WebPage/mac/WebPageMac.mm:
1538         * WebProcess/WebProcess.cpp:
1539         * WebProcess/soup/WebProcessSoup.cpp:
1540
1541 2013-03-02  Sam Weinig  <sam@webkit.org>
1542
1543         WebKit2 is missing the setShowsURLsInToolTips preference
1544         https://bugs.webkit.org/show_bug.cgi?id=111259
1545         <rdar://problem/12991891>
1546
1547         Reviewed by Maciej Stachowiak.
1548
1549         * Shared/WebPreferencesStore.h:
1550         * UIProcess/API/C/WKPreferences.cpp:
1551         (WKPreferencesSetShowsURLsInToolTipsEnabled):
1552         (WKPreferencesGetShowsURLsInToolTipsEnabled):
1553         * UIProcess/API/C/WKPreferencesPrivate.h:
1554         * WebProcess/WebPage/WebPage.cpp:
1555         (WebKit::WebPage::updatePreferences):
1556         Pipe it through.
1557
1558 2013-03-02  Benjamin Poulain  <bpoulain@apple.com>
1559
1560         Move computedStyleIncludingVisitedInfo from TestRunner to Internals
1561         https://bugs.webkit.org/show_bug.cgi?id=109772
1562
1563         Reviewed by Andreas Kling.
1564
1565         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1566         * WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
1567         * WebProcess/WebPage/WebFrame.cpp:
1568         * WebProcess/WebPage/WebFrame.h:
1569         (WebFrame):
1570
1571 2013-03-01  Kiran Muppala  <cmuppala@apple.com>
1572
1573         Remove call to set task priority of WebKit2 processes on Mac
1574         https://bugs.webkit.org/show_bug.cgi?id=111239
1575
1576         Reviewed by Darin Adler.
1577
1578         Remove call to set task prioirty of WebKit2 processes on Mac as it
1579         is no longer necessary.
1580
1581         * Shared/mac/ChildProcessMac.mm:
1582         (WebKit::ChildProcess::platformInitialize): Remove call to setpriority().
1583
1584 2013-02-28  Alexey Proskuryakov  <ap@apple.com>
1585
1586         Reduce amount of rebuilding when touching networking headers
1587         https://bugs.webkit.org/show_bug.cgi?id=111035
1588
1589         Reviewed by Eric Seidel.
1590
1591         Adding includes that are now necessary because WebCore headers don't have them
1592         any more.
1593
1594         * NetworkProcess/HostRecord.h:
1595         * NetworkProcess/NetworkResourceLoadScheduler.h:
1596         * NetworkProcess/NetworkResourceLoader.h:
1597         * Shared/WebRenderLayer.cpp:
1598         * Shared/WebRenderObject.cpp:
1599         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1600         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1601         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1602         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1603         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1604         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1605         * WebProcess/Plugins/PluginView.cpp:
1606         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1607         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1608         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1609         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1610         * WebProcess/WebPage/mac/WebPageMac.mm:
1611         * WebProcess/WebProcess.cpp:
1612         * WebProcess/soup/WebProcessSoup.cpp:
1613
1614 2013-02-28  Alexey Proskuryakov  <ap@apple.com>
1615
1616         Make in-memory blobs work in NetworkProcess
1617         https://bugs.webkit.org/show_bug.cgi?id=111132
1618
1619         Reviewed by Sam Weinig.
1620
1621         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1622         (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
1623         (WebKit::NetworkConnectionToWebProcess::registerBlobURLFromURL):
1624         (WebKit::NetworkConnectionToWebProcess::unregisterBlobURL):
1625         * NetworkProcess/NetworkConnectionToWebProcess.h:
1626         Implement BlobRegistry interface by using BlobRegistryImpl (same one as used in
1627         WebProcess in non-PPT mode).
1628
1629         * NetworkProcess/NetworkConnectionToWebProcess.messages.in: Added three messages
1630         needed for BlobRegistry.
1631
1632         * NetworkProcess/NetworkProcess.cpp:
1633         * NetworkProcess/NetworkProcessPlatformStrategies.cpp: Added.
1634         * NetworkProcess/NetworkProcessPlatformStrategies.h: Added.
1635         Added a mostly empty platform strategy, just for FormData to talk to BlobRegistry.
1636         Perhaps we'll find a way to avoid this WebCore code path in NetworkProcess, because
1637         we obviously know which registry implementation is in use in this process.
1638
1639         * Shared/FileAPI: Added.
1640         * Shared/FileAPI/BlobRegistrationData.cpp: Added.
1641         * Shared/FileAPI/BlobRegistrationData.h: Added.
1642         Added a class for passing BlobData and extension handles over IPC.
1643         This uses a trick with mutable a member to avoid copying decoded BlobStorageData.
1644
1645         * WebKit2.xcodeproj/project.pbxproj:
1646         * WebProcess/FileAPI: Added.
1647         * WebProcess/FileAPI/BlobRegistryProxy.cpp: Added.
1648         * WebProcess/FileAPI/BlobRegistryProxy.h: Added.
1649         A proxy implementation of BlobRegistry that just sends requests over IPC. We only
1650         need async ones.
1651
1652         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1653         (WebKit::WebPlatformStrategies::createBlobRegistry):
1654         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1655         Create an appropriate BlobRegistry.
1656
1657 2013-03-01  Zan Dobersek  <zdobersek@igalia.com>
1658
1659         Uncomment ENABLE_SVG guards to avoid having WebKitPluginProcess link
1660         against libWebCoreSVG.la when SVG is disabled.
1661
1662         Rubber-stamped by Gustavo Noronha.
1663
1664         * GNUmakefile.am:
1665
1666 2013-02-28  Sam Weinig  <sam@webkit.org>
1667
1668         Add SPI for marking a WebView as doing things on behalf of another process
1669         https://bugs.webkit.org/show_bug.cgi?id=111125
1670
1671         Reviewed by Alexey Proskuryakov.
1672
1673         * NetworkProcess/mac/RemoteNetworkingContext.h:
1674         * NetworkProcess/mac/RemoteNetworkingContext.mm:
1675         (WebKit::RemoteNetworkingContext::sourceApplicationAuditData):
1676         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1677         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1678         (WebKit::WebFrameNetworkingContext::sourceApplicationAuditData):
1679         Stub out sourceApplicationAuditData() client function.
1680
1681 2013-03-01  Sheriff Bot  <webkit.review.bot@gmail.com>
1682
1683         Unreviewed, rolling out r144422 and r144424.
1684         http://trac.webkit.org/changeset/144422
1685         http://trac.webkit.org/changeset/144424
1686         https://bugs.webkit.org/show_bug.cgi?id=111167
1687
1688         Caused over 20 tests to fail assertion on Chromium Win port as
1689         ASSERTION FAILED: m_platformRequestUpdated (Requested by
1690         toyoshim on #webkit).
1691
1692         * NetworkProcess/HostRecord.h:
1693         * NetworkProcess/NetworkResourceLoadScheduler.h:
1694         * NetworkProcess/NetworkResourceLoader.h:
1695         (WebCore):
1696         * Shared/WebRenderLayer.cpp:
1697         * Shared/WebRenderObject.cpp:
1698         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1699         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1700         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1701         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1702         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1703         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1704         * WebProcess/Plugins/PluginView.cpp:
1705         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1706         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1707         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1708         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1709         * WebProcess/WebPage/mac/WebPageMac.mm:
1710         * WebProcess/WebProcess.cpp:
1711         * WebProcess/soup/WebProcessSoup.cpp:
1712
1713 2013-03-01  Andras Becsi  <andras.becsi@digia.com>
1714
1715         [Qt][WK2] Fix failing API tests after r143935
1716         https://bugs.webkit.org/show_bug.cgi?id=111086
1717
1718         Reviewed by Jocelyn Turcotte.
1719
1720         Convert a leftorver resume call to the new resumeAndUpdateContent() call
1721         in PageViewportControllerClientQt so that the notifications about zoom
1722         animation state changes reach the API tests.
1723
1724         * UIProcess/qt/PageViewportControllerClientQt.cpp:
1725         (WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):
1726
1727 2013-03-01  Grzegorz Czajkowski  <g.czajkowski@samsung.com>, Mariusz Grzegorczyk <mariusz.g@samsung.com>
1728
1729         [WK2] Asynchronous spell checking implementation
1730         https://bugs.webkit.org/show_bug.cgi?id=109577
1731
1732         Reviewed by Enrica Casucci.
1733
1734         Associate the abstract 'WebCore::TextCheckingRequest' object with the unique identifier
1735         on WebProcess side. The request data from the 'TextCheckingRequest' are retrieved and
1736         passed to the UIProcess. The WK2 client (TextChecker{Gtk/Mac/Efl/Qt}.cpp) gets
1737         the 'TextCheckerCompletion' object with the request data and possibility to notify
1738         the WebProcess about the spelling results.
1739         Finally, the WebPage object calls on the proper 'TextCheckingRequest' object
1740         didSuccess/didCancel method to notify the WebCore about the spelling result.
1741
1742         * CMakeLists.txt:
1743         * GNUmakefile.list.am:
1744         Add 'TextCheckerCompletion.{h/cpp}' to the WebKit2 cmake based and
1745         WK2-Gtk+ builds.
1746
1747         * Scripts/webkit2/messages.py:
1748         (headers_for_type):
1749         Add exception for 'TextCheckingRequestData' class to properly find header
1750         file for it.
1751
1752         * Shared/WebCoreArgumentCoders.cpp:
1753         * Shared/WebCoreArgumentCoders.h:
1754         Teach 'ArgumentCoder' how to encode/decode 'TextCheckingRequestData' class.
1755
1756         * Target.pri:
1757         Add 'TextCheckerCompletion.{h/cpp}' to the WK2-Qt build.
1758
1759         * UIProcess/TextChecker.h:
1760         Add 'requestCheckingOfString' method to the TextChecker's interface.
1761
1762         * UIProcess/TextCheckerCompletion.cpp: Added.
1763         (WebKit::TextCheckerCompletion::create):
1764         (WebKit::TextCheckerCompletion::TextCheckerCompletion):
1765
1766         (WebKit::TextCheckerCompletion::spellDocumentTag):
1767         Return the WebPageProxy's spellDocumentTag as the client might be
1768         interested in from which page the request came.
1769
1770         (WebKit::TextCheckerCompletion::textCheckingRequestData):
1771         Allow to retrieve 'TextCheckingRequestData' object.
1772
1773         (WebKit::TextCheckerCompletion::didFinishCheckingText):
1774         (WebKit::TextCheckerCompletion::didCancelCheckingText):
1775         Notify the 'WebPageProxy' object that the given request has been
1776         handled or canceled.
1777
1778         * UIProcess/TextCheckerCompletion.h: Added.
1779         Introduce a new class for WK2 to retrieve the request data and
1780         call didFinishCheckingText/didCancelCheckingText.
1781
1782         * UIProcess/WebPageProxy.cpp:
1783         (WebKit::WebPageProxy::requestCheckingOfString):
1784         Create 'TextCheckerCompletion' object and pass it
1785         to the 'TextChecker::requestCheckingOfString' method.
1786
1787         (WebKit::WebPageProxy::didFinishCheckingText):
1788         (WebKit::WebPageProxy::didCancelCheckingText):
1789         Send the messages to WebProcess that the given request has been
1790         handled or canceled.
1791
1792         * UIProcess/WebPageProxy.h:
1793         (WebPageProxy):
1794         Add public declarations for 'didFinishCheckingText', 'didCancelCheckingText'.
1795         Add private declarations for 'requestCheckingOfString'.
1796         Move the 'spellDocumentTag()' method to to the public section to be
1797         accessible from 'TextCheckerCompletion' class.
1798
1799         * UIProcess/WebPageProxy.messages.in:
1800         A new entry for 'RequestCheckingOfString'.
1801
1802         * UIProcess/efl/TextCheckerEfl.cpp:
1803         (WebKit::TextChecker::requestCheckingOfString):
1804         (WebKit):
1805         * UIProcess/gtk/TextCheckerGtk.cpp:
1806         (WebKit::TextChecker::requestCheckingOfString):
1807         (WebKit):
1808         * UIProcess/mac/TextCheckerMac.mm:
1809         (WebKit::TextChecker::requestCheckingOfString):
1810         (WebKit):
1811         * UIProcess/qt/TextCheckerQt.cpp:
1812         (WebKit::TextChecker::requestCheckingOfString):
1813         (WebKit):
1814         Add dummy implementations for 'requestCheckingOfString'.
1815
1816         * WebKit2.xcodeproj/project.pbxproj:
1817         Add 'TextCheckerCompletion.{h/cpp} to Mac build.
1818
1819         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1820         (WebKit::generateTextCheckingRequestID):
1821         Helper function to generate the unique identifier for the abstract
1822         'TextCheckingRequest' object.
1823
1824         (WebKit::WebEditorClient::requestCheckingOfString):
1825         Associate 'TextCheckingRequest' with the unique identifier and add them
1826         to the map object.
1827         Get the request data and send it to the UIProcess.
1828
1829         * WebProcess/WebPage/WebPage.cpp:
1830         (WebKit::WebPage::addTextCheckingRequest):
1831         Add the identifier and the request to the map object.
1832
1833         (WebKit::WebPage::didFinishCheckingText):
1834         (WebKit::WebPage::didCancelCheckingText):
1835         Call didSucceed/didCancel on the 'TextCheckingRequest' to notify the WebCore
1836         about spellcheking results.
1837         Remove the request from the map object.
1838
1839         * WebProcess/WebPage/WebPage.h:
1840         Add declarations for 'addTextCheckingRequest', 'didFinishCheckingText' and
1841         'didCancelCheckingText.'
1842
1843         * WebProcess/WebPage/WebPage.messages.in:
1844         Add a new entry for DidFinishCheckingText, DidCancelCheckingText.
1845
1846 2013-02-28  Alexey Proskuryakov  <ap@apple.com>
1847
1848         Reduce amount of rebuilding when touching networking headers
1849         https://bugs.webkit.org/show_bug.cgi?id=111035
1850
1851         Reviewed by Eric Seidel.
1852
1853         Adding includes that are now necessary because WebCore headers don't have them
1854         any more.
1855
1856         * NetworkProcess/HostRecord.h:
1857         * NetworkProcess/NetworkResourceLoadScheduler.h:
1858         * NetworkProcess/NetworkResourceLoader.h:
1859         * Shared/WebRenderLayer.cpp:
1860         * Shared/WebRenderObject.cpp:
1861         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1862         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1863         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1864         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1865         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1866         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1867         * WebProcess/Plugins/PluginView.cpp:
1868         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1869         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1870         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1871         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1872         * WebProcess/WebPage/mac/WebPageMac.mm:
1873         * WebProcess/WebProcess.cpp:
1874         * WebProcess/soup/WebProcessSoup.cpp:
1875
1876 2013-02-28  Seokju Kwon  <seokju.kwon@gmail.com>
1877
1878         [WK2] Refactoring : Fix indentation and braces in WebInspectorClient.h|cpp
1879         https://bugs.webkit.org/show_bug.cgi?id=109925
1880
1881         Reviewed by Benjamin Poulain.
1882
1883         The contents of an outermost namespace block should not be indented.
1884         And One-line control clauses should not use braces.
1885
1886         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1887         (WebKit::WebInspectorClient::closeInspectorFrontend):
1888         * WebProcess/WebCoreSupport/WebInspectorClient.h:
1889         (WebCore):
1890
1891 2013-02-28  Kiran Muppala  <cmuppala@apple.com>
1892
1893         Add a pre-bootstrap message for NetworkProcess XPC service
1894         https://bugs.webkit.org/show_bug.cgi?id=111127
1895
1896         Reviewed by Sam Weinig.
1897
1898         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
1899         (WebKit::XPCServiceEventHandler): Hold on to the pre-bootstrap message.
1900         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
1901         (WebKit::XPCServiceEventHandler): Ditto.
1902         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1903         (WebKit::connectToService): Send a pre-bootstrap message for NetworkProcess
1904         XPC service.
1905
1906 2013-02-28  Conrad Shultz  <conrad_shultz@apple.com>
1907
1908         Need API to control page underlay color
1909         https://bugs.webkit.org/show_bug.cgi?id=110918
1910
1911         Reviewed by Simon Fraser.
1912
1913         * Shared/WebPageCreationParameters.cpp:
1914         (WebKit::WebPageCreationParameters::encode):
1915         Encode underlayColor.
1916         (WebKit::WebPageCreationParameters::decode):
1917         Decode underlayColor.
1918
1919         * Shared/WebPageCreationParameters.h:
1920         (WebPageCreationParameters):
1921         Add underlayColor member.
1922
1923         * UIProcess/API/mac/WKView.mm:
1924         (-[WKView underlayColor]):
1925         Accessor; retrieves the WebCore::Color from the WebPageProxy and converts it to an NSColor.
1926         (-[WKView setUnderlayColor:]):
1927         Mutator; converts the NSColor to a WebCore::Color and passes it to the WebPageProxy.
1928
1929         * UIProcess/API/mac/WKViewPrivate.h:
1930         Add underlayColor @property.
1931
1932         * UIProcess/WebPageProxy.cpp:
1933         (WebKit::WebPageProxy::setUnderlayColor):
1934         Mutator; dispatches SetUnderlayColor to WebPage.
1935         (WebKit::WebPageProxy::creationParameters):
1936         Set the parameters' underlayColor member appropriately.
1937
1938         * UIProcess/WebPageProxy.h:
1939         Declare new member functions and variable.
1940         (WebKit::WebPageProxy::underlayColor):
1941         Accessor.
1942
1943         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1944         (WebKit::WebChromeClient::underlayColor):
1945         Return the associated WebPage's underlayColor.
1946
1947         * WebProcess/WebCoreSupport/WebChromeClient.h:
1948         (WebChromeClient):
1949         Declare underlayColor().
1950
1951         * WebProcess/WebPage/WebPage.cpp:
1952         (WebKit::WebPage::WebPage):
1953         Apply any underlayColor that was supplied as part of the WebPageCreationParameters.
1954
1955         * WebProcess/WebPage/WebPage.h:
1956         Declare new member functions and variable.
1957         (WebKit::WebPage::underlayColor):
1958         Accessor.
1959
1960         * WebProcess/WebPage/WebPage.messages.in:
1961         Add SetUnderlayColor message.
1962
1963 2013-02-28  Anders Carlsson  <andersca@apple.com>
1964
1965         Add the notion of an allowed connection to SessionStorageNamespace
1966         https://bugs.webkit.org/show_bug.cgi?id=111122
1967
1968         Reviewed by Sam Weinig.
1969
1970         Group together each session storage namespace with an allowed connection.
1971         This will help ensure that rouge web processes will not be able to access session storage
1972         from pages in other processes.
1973         
1974         * UIProcess/Storage/StorageManager.cpp:
1975         (StorageManager::SessionStorageNamespace):
1976         (WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
1977         (WebKit::StorageManager::SessionStorageNamespace::create):
1978         (WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
1979         (WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
1980         Add an m_allowedConnection member variable, as well as setters and getters.
1981
1982         (WebKit::StorageManager::createSessionStorageNamespace):
1983         Take an optional allowed connection. (It can be null if the process has not finished launching).
1984
1985         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
1986         New function to set the allowed connection for a session storage namespace.
1987
1988         (WebKit::StorageManager::createStorageArea):
1989         Add another FIXME.
1990
1991         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
1992         Pass the connection to the SessionStorageNamespace constructor.
1993
1994         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
1995         Set the allowed connection.
1996
1997         * UIProcess/WebPageProxy.cpp:
1998         (WebKit::WebPageProxy::WebPageProxy):
1999         Pass the connection to createSessionStorageNamespace.
2000
2001         (WebKit::WebPageProxy::connectionWillOpen):
2002         Call setAllowedSessionStorageNamespaceConnection.
2003         
2004         (WebKit::WebPageProxy::connectionWillClose):
2005         Call setAllowedSessionStorageNamespaceConnection with a null connection.
2006
2007         * UIProcess/WebProcessProxy.cpp:
2008         (WebKit::WebProcessProxy::connectionWillOpen):
2009         Call connectionWillOpen on all pages.
2010
2011         (WebKit::WebProcessProxy::connectionWillClose):
2012         Call connectionWillClose on all pages.
2013
2014 2013-02-28  Kiran Muppala  <cmuppala@apple.com>
2015
2016         Add private API to disable WKView window occlusion detection
2017         https://bugs.webkit.org/show_bug.cgi?id=111107
2018
2019         Reviewed by Simon Fraser.
2020
2021         * UIProcess/API/mac/WKView.mm:
2022         (-[WKView _enableWindowOcclusionNotifications]): Check if occlusion
2023         detection is enabled before enabling notifications.
2024         (windowBecameOccluded): Ditto before changing window occlusion state.
2025         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
2026         Initialize occlusion detection enabled flag to "YES".
2027         (-[WKView windowOcclusionDetectionEnabled]):
2028         (-[WKView setWindowOcclusionDetectionEnabled:]):
2029         * UIProcess/API/mac/WKViewPrivate.h:
2030
2031 2013-02-28  Anders Carlsson  <andersca@apple.com>
2032
2033         Add the notion of an allowed connection to SessionStorageNamespace
2034         https://bugs.webkit.org/show_bug.cgi?id=111122
2035
2036         Reviewed by Sam Weinig.
2037
2038         Group together each session storage namespace with an allowed connection.
2039         This will help ensure that rouge web processes will not be able to access session storage
2040         from pages in other processes.
2041         
2042         * UIProcess/Storage/StorageManager.cpp:
2043         (StorageManager::SessionStorageNamespace):
2044         (WebKit::StorageManager::SessionStorageNamespace::allowedConnection):
2045         (WebKit::StorageManager::SessionStorageNamespace::create):
2046         (WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
2047         (WebKit::StorageManager::SessionStorageNamespace::setAllowedConnection):
2048         Add an m_allowedConnection member variable, as well as setters and getters.
2049
2050         (WebKit::StorageManager::createSessionStorageNamespace):
2051         Take an optional allowed connection. (It can be null if the process has not finished launching).
2052
2053         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnection):
2054         New function to set the allowed connection for a session storage namespace.
2055
2056         (WebKit::StorageManager::createStorageArea):
2057         Add another FIXME.
2058
2059         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
2060         Pass the connection to the SessionStorageNamespace constructor.
2061
2062         (WebKit::StorageManager::setAllowedSessionStorageNamespaceConnectionInternal):
2063         Set the allowed connection.
2064
2065         * UIProcess/WebPageProxy.cpp:
2066         (WebKit::WebPageProxy::WebPageProxy):
2067         Pass the connection to createSessionStorageNamespace.
2068
2069         (WebKit::WebPageProxy::connectionWillOpen):
2070         Call setAllowedSessionStorageNamespaceConnection.
2071         
2072         (WebKit::WebPageProxy::connectionWillClose):
2073         Call setAllowedSessionStorageNamespaceConnection with a null connection.
2074
2075         * UIProcess/WebProcessProxy.cpp:
2076         (WebKit::WebProcessProxy::connectionWillOpen):
2077         Call connectionWillOpen on all pages.
2078
2079         (WebKit::WebProcessProxy::connectionWillClose):
2080         Call connectionWillClose on all pages.
2081
2082 2013-02-28  Anders Carlsson  <andersca@apple.com>
2083
2084         Implement more StorageAreaProxy member functions
2085         https://bugs.webkit.org/show_bug.cgi?id=111103
2086
2087         Reviewed by Sam Weinig.
2088
2089         * Shared/SecurityOriginData.cpp:
2090         (WebKit::SecurityOriginData::securityOrigin):
2091         * Shared/SecurityOriginData.h:
2092         Add helper to create a WebCore::SecurityOrigin from a SecurityOriginData object.
2093
2094         * WebProcess/Storage/StorageAreaProxy.cpp:
2095         (WebKit::StorageAreaProxy::key):
2096         Fill the storage map and call through to StorageMap::key.
2097
2098         (WebKit::StorageAreaProxy::contains):
2099         Fill the storage map and call through to StorageMap::contains.
2100
2101         (WebKit::StorageAreaProxy::memoryBytesUsedByCache):
2102         Return 0; this matches StorageAreaImpl.
2103
2104 2013-02-28  Tim Horton  <timothy_horton@apple.com>
2105
2106         PDFPlugin: PDF orientation isn't respected when printing or print-previewing
2107         https://bugs.webkit.org/show_bug.cgi?id=110925
2108         <rdar://problem/13008621>
2109
2110         Reviewed by Alexey Proskuryakov.
2111
2112         * WebProcess/WebPage/mac/WebPageMac.mm:
2113         (WebKit::drawPDFPage): Teach drawPDFPage about PDFPage's rotation property, and use it
2114         to swap the PDF's cropbox. Painting now matches PDFViewController's historical behavior.
2115
2116 2013-02-28  Sam Weinig  <sam@webkit.org>
2117
2118         Don't install unused XPCServices on Lion
2119         <rdar://problem/13264712>
2120
2121         Rubber-stamped by Anders Carlsson
2122
2123         * Configurations/BaseXPCService.xcconfig:
2124
2125 2013-02-28  David Kilzer  <ddkilzer@apple.com>
2126
2127         BUILD FIX (r144221): SetSmartInsertDeleteEnabled should be wrapped in PLATFORM(MAC)
2128
2129         * WebProcess/WebPage/WebPage.messages.in: Move
2130         SetSmartInsertDeleteEnabled from USE(APPKIT) to PLATFORM(MAC).
2131
2132 2013-02-27  Csaba Osztrogonác  <ossy@webkit.org>
2133
2134         [WK2] One more unreviewed buildfix for EFL, GTK and Qt after r144218.
2135
2136         * CMakeLists.txt:
2137         * GNUmakefile.list.am:
2138         * Target.pri:
2139         * WebProcess/Storage/StorageNamespaceProxy.cpp:
2140         (WebKit::StorageNamespaceProxy::copy):
2141
2142 2013-02-27  Zan Dobersek  <zdobersek@igalia.com>
2143
2144         Unreviewed (speculative) build fixes for EFL, GTK and Qt after r144218.
2145
2146         * CMakeLists.txt:
2147         * DerivedSources.pri:
2148         * GNUmakefile.list.am:
2149         * Target.pri:
2150
2151 2013-02-27  John Bauman  <jbauman@chromium.org>
2152
2153         Plugin in iframe may not display
2154         https://bugs.webkit.org/show_bug.cgi?id=109879
2155
2156         Reviewed by Simon Fraser.
2157
2158         Update geometry when cliprect changes.
2159
2160         * WebProcess/Plugins/PluginView.cpp:
2161         (WebKit::PluginView::clipRectChanged):
2162         * WebProcess/Plugins/PluginView.h:
2163
2164 2013-02-27  Jer Noble  <jer.noble@apple.com>
2165
2166         REGRESSION (48533): Full-frame plugins stopped working (download instead of loading the plugin)
2167         https://bugs.webkit.org/show_bug.cgi?id=111003
2168
2169         Reviewed by Anders Carlsson.
2170
2171         Also query the Page's pluginData when determining whether a given MIME type can be shown.
2172
2173         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2174         (WKBundlePageCanShowMIMEType):
2175         * WebProcess/WebPage/WebPage.cpp:
2176         (WebKit::WebPage::canShowMIMEType):
2177         * WebProcess/WebPage/WebPage.h:
2178
2179 2013-02-27  Manuel Rego Casasnovas  <rego@igalia.com>
2180
2181         Add smartInsertDeleteEnabled setting to WebCore::Page
2182         https://bugs.webkit.org/show_bug.cgi?id=107840
2183
2184         Reviewed by Ryosuke Niwa.
2185
2186         * Shared/WebPageCreationParameters.cpp:
2187         (WebKit::WebPageCreationParameters::encode):
2188         (WebKit::WebPageCreationParameters::decode): Remove code related to
2189         isSmartInsertDeleteEnabled.
2190         * Shared/WebPageCreationParameters.h:
2191         (WebPageCreationParameters): Remove isSmartInsertDeleteEnabled.
2192         * Shared/WebPreferencesStore.h:
2193         (WebKit): Add macro for smartInsertDeleteEnabled setting.
2194         * UIProcess/API/C/WKPreferences.cpp:
2195         (WKPreferencesSetSmartInsertDeleteEnabled):
2196         (WKPreferencesGetSmartInsertDeleteEnabled): Implement methods using the
2197         new setting.
2198         * UIProcess/API/C/WKPreferencesPrivate.h: Add new methods headers.
2199         * UIProcess/WebPageProxy.cpp:
2200         (WebKit::WebPageProxy::initializeWebPage): Set smartInsertDeleteEnabled
2201         setting using m_isSmartInsertDeleteEnabled to keep initial value on Mac.
2202         (WebKit::WebPageProxy::creationParameters): Remove usage of
2203         parameters.isSmartInsertDeleteEnabled.
2204         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2205         (WebKit::WebEditorClient::smartInsertDeleteEnabled): Enable method for
2206         all platforms.
2207         * WebProcess/WebPage/WebPage.cpp:
2208         (WebKit::WebPage::WebPage): Remove m_isSmartInsertDeleteEnabled
2209         initialization.
2210         (WebKit::WebPage::updatePreferences): Set smartInsertDeleteEnabled
2211         setting.
2212         (WebKit::WebPage::isSmartInsertDeleteEnabled): Implement method using
2213         settings.
2214         (WebKit):
2215         (WebKit::WebPage::setSmartInsertDeleteEnabled): Implement method using
2216         settings.
2217         * WebProcess/WebPage/WebPage.h:
2218         (WebPage): Enable methods dealing with smartInsertDeleteEnabled for all
2219         platforms and remove m_isSmartInsertDeleteEnabled as it will be a
2220         setting.
2221
2222
2223 2013-02-27  Anders Carlsson  <andersca@apple.com>
2224
2225         More storage scaffolding
2226         https://bugs.webkit.org/show_bug.cgi?id=110997
2227
2228         Reviewed by Andreas Kling.
2229
2230         * DerivedSources.make:
2231         Add StorageAreaProxy.
2232         
2233         * UIProcess/Storage/StorageManager.cpp:
2234         (WebKit::StorageManager::setItem):
2235         Send back a DidSetItem message.
2236         
2237         * WebKit2.xcodeproj/project.pbxproj:
2238         Add generated files.
2239
2240         * WebProcess/Storage/StorageAreaProxy.cpp:
2241         (WebKit::StorageAreaProxy::StorageAreaProxy):
2242         Add the message receiver.
2243         
2244         (WebKit::StorageAreaProxy::~StorageAreaProxy):
2245         Remove the message receiver.
2246         
2247         (WebKit::StorageAreaProxy::didSetItem):
2248         add stub.
2249
2250         * WebProcess/Storage/StorageAreaProxy.h:
2251         (StorageAreaProxy):
2252         * WebProcess/Storage/StorageAreaProxy.messages.in: Added.
2253
2254 2013-02-27  Sam Weinig  <sam@webkit.org>
2255
2256         REGRESSION: Loading flash switches to discrete graphics, 100 MB on membuster
2257         <rdar://problem/13229828>
2258
2259         Reviewed by Dan Bernstein.
2260
2261         Due the change in CFBundleIdentifier, the WebProcess and PluginProcess were
2262         unnecessarily muxing (they used to be whitelisted by OpenGL) to the discrete
2263         GPU.
2264
2265         * PluginProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2266         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist:
2267         * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist:
2268         * WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
2269         * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
2270         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
2271         Add NSSupportsAutomaticGraphicsSwitching YES.
2272
2273         * WebKit2.xcodeproj/project.pbxproj:
2274         Re-add the PluginService.32-64.Info.plist plist to the project file.
2275
2276 2013-02-26  Alexey Proskuryakov  <ap@apple.com>
2277
2278         Don't add a body to platform request until necessary
2279         https://bugs.webkit.org/show_bug.cgi?id=110900
2280
2281         Reviewed by Brady Eidson.
2282
2283         * NetworkProcess/NetworkResourceLoader.cpp:
2284         (WebKit::NetworkResourceLoader::willSendRequest): Restore body after IPC. There
2285         is no way for the client to change it.
2286
2287         * Shared/Downloads/mac/DownloadMac.mm:
2288         (WebKit::Download::start):
2289         (WebKit::Download::startWithHandle):
2290         Pass UpdateHTTPBody when passing a request to NSURLConnection.
2291
2292         * Shared/mac/WebCoreArgumentCodersMac.mm: (CoreIPC::::encodePlatformData):
2293         Never serialize the request body. It's slow, and sometimes impossible, so just
2294         keeping things consistent.
2295
2296         * Shared/mac/WebURLRequestMac.mm: (WebKit::WebURLRequest::platformRequest):
2297         Pass DoNotUpdateHTTPBody, as we can't update it outside NetworkProcess.
2298
2299         * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
2300         (WebKit::CustomProtocolManagerProxy::startLoading): Ditto.
2301
2302         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
2303         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
2304         Restore existing body after a client call..
2305
2306         * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::WebPage::platformCanHandleRequest):
2307         Pass DoNotUpdateHTTPBody, as we can't update it outside NetworkProcess.
2308
2309 2013-02-27  Glenn Adams  <glenn@skynav.com>
2310
2311         Add ENABLE_CSS3_TEXT_LINE_BREAK flag.
2312         https://bugs.webkit.org/show_bug.cgi?id=110944
2313
2314         Reviewed by Dean Jackson.
2315
2316         * Configurations/FeatureDefines.xcconfig:
2317
2318 2013-02-27  Michael Brüning  <michael.bruning@digia.com>
2319
2320         [Qt][WK2] Replace use of WebPreferences with use of WKPrefences C API
2321         https://bugs.webkit.org/show_bug.cgi?id=108952
2322
2323         Reviewed by Simon Hausmann.
2324
2325         Signed off for WebKit2 by Benjamin Poulain.
2326
2327         This patch moves the view classes and preferences in the Qt API
2328         to use the C API for accessing and manipulating preferences as
2329         part of the cleanup and move towards using the C API as base for
2330         the Qt WebKit2 API.
2331
2332         Adds the function WebKit::adoptToQString for convenience when
2333         dealing with QString and copied String objects.
2334
2335         Removes the ScrollAnimatorEnabled options from QWebPreferences.
2336
2337         * UIProcess/API/cpp/qt/WKStringQt.cpp:
2338         (WebKit::adoptToQString):
2339         * UIProcess/API/cpp/qt/WKStringQt.h:
2340         (WebKit):
2341         * UIProcess/API/qt/qquickwebview.cpp:
2342         (QQuickWebViewPrivate::initialize):
2343         * UIProcess/API/qt/qwebpreferences.cpp:
2344         (QWebPreferencesPrivate::testAttribute):
2345         (QWebPreferencesPrivate::setAttribute):
2346         (QWebPreferencesPrivate::setFontFamily):
2347         (QWebPreferencesPrivate::fontFamily):
2348         (QWebPreferencesPrivate::setFontSize):
2349         (QWebPreferencesPrivate::fontSize):
2350         * UIProcess/API/qt/qwebpreferences_p.h:
2351         * UIProcess/API/qt/qwebpreferences_p_p.h:
2352
2353 2013-02-26  Anders Carlsson  <andersca@apple.com>
2354
2355         Implement StorageAreaProxy::getItem and StorageAreaProxy::setItem
2356         https://bugs.webkit.org/show_bug.cgi?id=110927
2357
2358         Reviewed by Sam Weinig.
2359
2360         * UIProcess/Storage/StorageManager.cpp:
2361         (WebKit::StorageManager::setItem):
2362         * UIProcess/Storage/StorageManager.h:
2363         Add empty stub.
2364         
2365         * UIProcess/Storage/StorageManager.messages.in:
2366         Add SetItem message.
2367
2368         * WebProcess/Storage/StorageAreaProxy.cpp:
2369         (WebKit::StorageAreaProxy::getItem):
2370         Fill the storage map and get the item from it.
2371
2372         (WebKit::StorageAreaProxy::setItem):
2373         Update the storage map and send a SetItem message to the UI process.
2374
2375 2013-02-26  Anders Carlsson  <andersca@apple.com>
2376
2377         StorageAreaProxy should hold on to a StorageMap and not a HashMap
2378         https://bugs.webkit.org/show_bug.cgi?id=110919
2379
2380         Reviewed by Jessie Berlin.
2381
2382         Create a storage map instead of a hash map.
2383
2384         * WebProcess/Storage/StorageAreaProxy.cpp:
2385         (WebKit::StorageAreaProxy::length):
2386         (WebKit::StorageAreaProxy::loadValuesIfNeeded):
2387         * WebProcess/Storage/StorageAreaProxy.h:
2388         (WebCore):
2389         (StorageAreaProxy):
2390
2391 2013-02-26  Anders Carlsson  <andersca@apple.com>
2392
2393         Fix a copy/paste error in WebLoaderClient::didBlockInsecurePluginVersion
2394         https://bugs.webkit.org/show_bug.cgi?id=110914
2395         <rdar://problem/13297581>
2396
2397         Reviewed by Beth Dakin.
2398
2399         Pass kWKErrorCodeInsecurePlugInVersion to the pluginDidFail callback.
2400
2401         * UIProcess/WebLoaderClient.cpp:
2402         (WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
2403
2404 2013-02-26  Jer Noble  <jer.noble@apple.com>
2405
2406         Unreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.
2407
2408         * Configurations/FeatureDefines.xcconfig:
2409
2410 2013-02-26  Manuel Rego Casasnovas  <rego@igalia.com>
2411
2412         [WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
2413         https://bugs.webkit.org/show_bug.cgi?id=110869
2414
2415         Reviewed by Martin Robinson.
2416
2417         Test was failing because of new media controls needs more space to be
2418         painted than just 10x10 pixels.
2419
2420         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
2421         (testContextMenuDefaultMenu): Modified test in order to give more space
2422         to the media controls.
2423
2424 2013-02-26  Dean Jackson  <dino@apple.com>
2425
2426         Draw intermediate snapshots if possible
2427         https://bugs.webkit.org/show_bug.cgi?id=110811
2428
2429         Reviewed by Simon Fraser.
2430
2431         After http://webkit.org/b/110495 we delayed snapshotting until we've
2432         received a nice image, but this made the page look like it is broken.
2433         We should draw any intermediate snapshots that we find, which might
2434         include content such as progress bars/spinners.
2435
2436         * WebProcess/Plugins/PluginView.cpp:
2437         (WebKit): Reinstate 60 attempts at snapshots before giving up.
2438         (WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
2439         want accelerated compositing enabled when we are trying to capture
2440         snapshots.
2441
2442 2013-02-26  Andras Becsi  <andras.becsi@digia.com>
2443
2444         Remove nonexistent StringPairVector.h from Target.pri after r142839
2445
2446         Unreviewed gardening.
2447
2448         * Target.pri:
2449
2450 2013-02-26  Simon Hausmann  <simon.hausmann@digia.com>
2451
2452         Unreviewed trivial !ENABLE(NETSCAPE_PLUGIN_API) build fix
2453
2454         Add an intermediate pluginName string variable instead of
2455         accessing plugin.info outside the feature #ifdef.
2456
2457         * UIProcess/WebPageProxy.cpp:
2458         (WebKit::WebPageProxy::unavailablePluginButtonClicked):
2459
2460 2013-02-25  Huang Dongsung  <luxtella@company100.net>
2461
2462         Coordinated Graphics: remove redundant update of non compositing layer.
2463         https://bugs.webkit.org/show_bug.cgi?id=110444
2464
2465         Reviewed by Noam Rosenthal.
2466
2467         Currently, we update non compositing layer when the page scrolled. However, it
2468         is not needed, because TiledBackingStore can scroll without tile update.
2469
2470         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2471         (WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
2472         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2473         (CoordinatedLayerTreeHost):
2474
2475 2013-02-25  Jer Noble  <jer.noble@apple.com>
2476
2477         REGRESSION(r143981): Crash in WebFrameLoaderClient::dispatchDidStartProvisionalLoad()
2478         https://bugs.webkit.org/show_bug.cgi?id=110848
2479
2480         Reviewed by Ryosuke Niwa.
2481
2482         NULL-check the result of document->documentElement().
2483
2484         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2485         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2486
2487 2013-02-25  Anders Carlsson  <andersca@apple.com>
2488
2489         Add a new unavailablePluginButtonClicked callback that takes a WKDictionary of plug-in information
2490         https://bugs.webkit.org/show_bug.cgi?id=110821
2491
2492         Reviewed by Beth Dakin.
2493
2494         * UIProcess/API/C/WKPage.cpp:
2495         (WKPageGetPluginInformationPluginspageAttributeURLKey):
2496         (WKPageGetPluginInformationPluginURLKey):
2497         Add two new API key getters.
2498         
2499         * UIProcess/API/C/WKPage.h:
2500         Add a new callback and deprecate the old callback.
2501         
2502         * UIProcess/WebLoaderClient.cpp:
2503         (WebKit::WebLoaderClient::didFailToInitializePlugin):
2504         (WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
2505         (WebKit::WebLoaderClient::pluginLoadPolicy):
2506         Make the pluginInformationDictionary a static member function of WebPageProxy so it
2507         can be called from WebUIClient as well.
2508         
2509         * UIProcess/WebPageProxy.cpp:
2510         (WebKit::WebPageProxy::getPluginPath):
2511         Pass the bundle version as well.
2512
2513         (WebKit::WebPageProxy::pluginInformationPluginspageAttributeURLKey):
2514         (WebKit::WebPageProxy::pluginInformationPluginURLKey):
2515         Add two new keys.
2516
2517         (WebKit::WebPageProxy::pluginInformationDictionary):
2518         Handle more keys.
2519
2520         (WebKit::WebPageProxy::unavailablePluginButtonClicked):
2521         Get the plug-in bundle identifier and version.
2522
2523         * UIProcess/WebPageProxy.messages.in:
2524         Pass along more information; the frame and page URLs.
2525
2526         * UIProcess/WebUIClient.cpp:
2527         (WebKit::WebUIClient::unavailablePluginButtonClicked):
2528         Call the new callback if it's supported.
2529
2530         * UIProcess/WebUIClient.h:
2531         (WebUIClient):
2532         * UIProcess/mac/WebInspectorProxyMac.mm:
2533         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2534         Update for API changes.
2535
2536         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2537         (WebKit::WebChromeClient::unavailablePluginButtonClicked):
2538         Ensure that the pluginspage attribute is a valid URL.
2539
2540 2013-02-21  Jeffrey Pfau  <jpfau@apple.com>
2541
2542         Optionally partition cache to prevent using cache for tracking
2543         https://bugs.webkit.org/show_bug.cgi?id=110269
2544
2545         Reviewed by Maciej Stachowiak.
2546
2547         Update WKSI bindings and add feature defines.
2548
2549         * Configurations/FeatureDefines.xcconfig: Add defines for cache partitioning and public suffix list usage
2550         * WebCoreSupport/WebSystemInterface.mm:
2551         (InitWebCoreSystemInterface):
2552
2553 2013-02-25  Jer Noble  <jer.noble@apple.com>
2554
2555         Normalize ENABLE_ENCRYPTED_MEDIA definitions across all FeatureDefines files.
2556         https://bugs.webkit.org/show_bug.cgi?id=110806
2557
2558         Ensure both ENCRYPTED_MEDIA and ENCRYPTED_MEDIA_V2 are enabled on macosx_1090.
2559
2560         Reviewed by Alexey Proskuryakov.
2561
2562         * Configurations/FeatureDefines.xcconfig:
2563
2564 2013-02-25  Jer Noble  <jer.noble@apple.com>
2565
2566         Full screen mode should not exit when application resigns active state.
2567         https://bugs.webkit.org/show_bug.cgi?id=106129
2568
2569         Reviewed by Darin Adler.
2570
2571         Now that full screen windows get their own full screen space, there is no reason to exit full
2572         screen mode when the application resigns active state. Instead, the windowserver will bring the
2573         space containing the newly active application to the foreground. The user can then swipe back
2574         to the full screen space (or use Mission Control) to get back to the full screen window.
2575
2576         * UIProcess/mac/WKFullScreenWindowController.mm:
2577         (-[WKFullScreenWindowController windowDidLoad]): Remove the applicationDidResignActive: notification from WKFullScreenWindowController.
2578
2579 2013-02-25  Jer Noble  <jer.noble@apple.com>
2580
2581         Safari shows empty window and paints webpage in full-screen background
2582         https://bugs.webkit.org/show_bug.cgi?id=103712
2583
2584         Reviewed by Darin Adler.
2585
2586         When canceling full screen mode due to a provisional load, exit normally instead of closing the
2587         full screen window controller. Additionally, to ensure full screen is cancelled when the enclosing
2588         frame around a full screen iframe is navigated, check to see if the navigating document contains
2589         a full screen element, rather than checking whether the document itself is full screen.
2590
2591         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2592         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
2593
2594 2013-02-25  Anders Carlsson  <andersca@apple.com>
2595
2596         Fix build.
2597
2598         * UIProcess/WebPageProxy.cpp:
2599         (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
2600
2601 2013-02-25  Anders Carlsson  <andersca@apple.com>
2602
2603         Add a new pluginDidFail callback that takes a WKDictionary of plug-in information
2604         https://bugs.webkit.org/show_bug.cgi?id=110793
2605         <rdar://problem/13265303>
2606
2607         Reviewed by Sam Weinig.
2608
2609         Add a new pluginDidFail callback that takes a WKDictionaryRef and also pass in the
2610         frame and page URLs.
2611
2612         * UIProcess/API/C/WKPage.h:
2613         * UIProcess/WebLoaderClient.cpp:
2614         (WebKit::pluginInformationDictionary):
2615         (WebKit::WebLoaderClient::didFailToInitializePlugin):
2616         (WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
2617         (WebKit::WebLoaderClient::pluginLoadPolicy):
2618         * UIProcess/WebLoaderClient.h:
2619         * UIProcess/WebPageProxy.cpp:
2620         (WebKit::WebPageProxy::didFailToInitializePlugin):
2621         (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
2622         * UIProcess/WebPageProxy.h:
2623         * UIProcess/WebPageProxy.messages.in:
2624         * WebProcess/Plugins/PluginView.cpp:
2625         (WebKit::PluginView::didFailToInitializePlugin):
2626         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2627         (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
2628         * WebProcess/WebPage/WebPage.cpp:
2629         (WebKit::WebPage::createPlugin):
2630
2631 2013-02-25  Tim Horton  <timothy_horton@apple.com>
2632
2633         PDFPlugin: Tab between text annotations
2634         https://bugs.webkit.org/show_bug.cgi?id=106539
2635         <rdar://problem/12751789>
2636
2637         Reviewed by Darin Adler.
2638
2639         Use [PDFLayerController activateNextAnnotation:] to advance focus when the tab key is hit while inside a PDF form.
2640
2641         Also, a drive-by fix to make the lifetime of PDFPluginAnnotationEventListener's m_annotation pointer more explicit.
2642
2643         * WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add activateNextAnnotation: SPI.
2644         * WebProcess/Plugins/PDF/PDFPlugin.h:
2645         (PDFPlugin): Add focus(Next|Previous)Annotation.
2646         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2647         (WebKit::PDFPlugin::focusNextAnnotation): Ask PDFLayerController to focus the next annotation.
2648         (WebKit::PDFPlugin::focusPreviousAnnotation): Ask PDFLayerController to focus the next annotation.
2649         * WebProcess/Plugins/PDF/PDFPluginAnnotation.h: Drive-by, initialize m_parent to 0.
2650         (WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::setAnnotation): Added.
2651         * WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:
2652         (WebKit::PDFPluginAnnotation::attach): Use eventNames() instead of string literals.
2653         (WebKit::PDFPluginAnnotation::~PDFPluginAnnotation): Clear the event listener's reference to its annotation.
2654         (WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::handleEvent): Null-check the event listener's annotation.
2655         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:
2656         (WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotation): Create our PDFPluginTextAnnotationEventListener.
2657         (PDFPluginTextAnnotationEventListener): Added an event listener (for keydown events in form fields).
2658         (WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::create):
2659         (WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::setTextAnnotation):
2660         (WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::PDFPluginTextAnnotationEventListener):
2661         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
2662         (WebKit::PDFPluginTextAnnotation::~PDFPluginTextAnnotation): Unregister our keydown event listener.
2663         (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Register our keydown event listener.
2664         (WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener::handleEvent): Ask PDFPlugin to focus
2665         the next/previous annotation when the tab key is pressed (Shift-Tab goes backwards).
2666
2667 2013-02-25  Alexey Proskuryakov  <ap@apple.com>
2668
2669         <rdar://problem/12976385> Remove rule to silence attempts to create the ~/Library/Caches/com.apple.WebKit2.WebProcessService directory
2670
2671         Reviewed by Anders Carlsson.
2672
2673         * WebProcess/com.apple.WebProcess.sb.in: Remove the obsolete rule. We no longer
2674         have a "WebProcessService".
2675
2676 2013-02-25  Andras Becsi  <andras.becsi@digia.com>
2677
2678         [Qt][WK2] Remove unneeded method didResumeContent from PageViewportController clients
2679         https://bugs.webkit.org/show_bug.cgi?id=110751
2680
2681         Reviewed by Jocelyn Turcotte.
2682
2683         This is a clean-up in the PageViewportController clients that removes leftover
2684         code from previous design that is partially unused and unnecessary, to simplify
2685         the interaction between PageViewportController and clients.
2686
2687         * UIProcess/PageViewportController.cpp:
2688         (WebKit::PageViewportController::resumeContent):
2689         * UIProcess/PageViewportControllerClient.h:
2690         (PageViewportControllerClient):
2691         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2692         * UIProcess/efl/PageViewportControllerClientEfl.h:
2693         (PageViewportControllerClientEfl):
2694         * UIProcess/qt/PageViewportControllerClientQt.cpp:
2695         (WebKit::PageViewportControllerClientQt::animateContentRectVisible):
2696         (WebKit::PageViewportControllerClientQt::flickMoveEnded):
2697         (WebKit::PageViewportControllerClientQt::resumeAndUpdateContent):
2698         (WebKit::PageViewportControllerClientQt::pinchGestureCancelled):
2699         * UIProcess/qt/PageViewportControllerClientQt.h:
2700         (PageViewportControllerClientQt):
2701
2702 2013-02-25  Andreas Kling  <akling@apple.com>
2703
2704         Reduce amount of code that includes StylePropertySet.h
2705         <http://webkit.org/b/101149>
2706
2707         Reviewed by Antti Koivisto.
2708
2709         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2710
2711 2013-02-24  Andreas Kling  <akling@apple.com>
2712
2713         Reduce include graph of JSDOMBinding.h
2714         <http://webkit.org/b/110709>
2715
2716         Reviewed by Antti Koivisto.
2717
2718         * Shared/WebRenderObject.cpp:
2719         (WebKit::WebRenderObject::WebRenderObject):
2720         * WebProcess/Storage/StorageAreaProxy.cpp:
2721
2722 2013-02-22  Sam Weinig  <sam@webkit.org>
2723
2724         Add temporary work around for 32-bit plugins not working in production builds as XPCServices
2725         https://bugs.webkit.org/show_bug.cgi?id=110680
2726         <rdar://problem/13236883>
2727
2728         Reviewed by Anders Carlsson.
2729
2730         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
2731         (WebKit::shouldUseXPC):
2732         Temporarily don't use XPC for plug-ins for Safari while we figure out why the
2733         32-bit XPCService is being built universal.
2734
2735 2013-02-22  Tim Horton  <timothy_horton@apple.com>
2736
2737         [WK2] The root and page overlay layers should be the size of the view, not the content
2738         https://bugs.webkit.org/show_bug.cgi?id=110660
2739         <rdar://problem/13096456>
2740
2741         Reviewed by Simon Fraser.
2742
2743         Use the view size for the size of the root and page overlay layers.
2744         For one, we never update these layers' sizes when the content size changes, causing size mismatches.
2745         In addition, there's no reason an overlay shouldn't be able to draw outside of the bounds of the content.
2746
2747         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2748         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
2749         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
2750
2751 2013-02-22  Anders Carlsson  <andersca@apple.com>
2752
2753         pluginLoadStrategy should take a WKDictionaryRef for extensibility
2754         https://bugs.webkit.org/show_bug.cgi?id=110656
2755         <rdar://problem/13265303>
2756
2757         Reviewed by Jessie Berlin.
2758
2759         Change pluginLoadStrategy to take a WKDictionaryRef instead of a number of parameters;
2760         this lets us add more plug-in information if needed. Also add the page URL and rename documentURL to frameURL.
2761
2762         * UIProcess/API/C/WKPage.cpp:
2763         (WKPageGetPluginInformationBundleIdentifierKey):
2764         (WKPageGetPluginInformationBundleVersionKey):
2765         (WKPageGetPluginInformationDisplayNameKey):
2766         (WKPageGetPluginInformationFrameURLKey):
2767         (WKPageGetPluginInformationMIMETypeKey):
2768         (WKPageGetPluginInformationPageURLKey):
2769         * UIProcess/API/C/WKPage.h:
2770         * UIProcess/WebLoaderClient.cpp:
2771         (WebKit):
2772         (WebKit::WebLoaderClient::pluginLoadPolicy):
2773         * UIProcess/WebLoaderClient.h:
2774         (WebLoaderClient):
2775         * UIProcess/WebPageProxy.cpp:
2776         (WebKit::WebPageProxy::getPluginPath):
2777         (WebKit::WebPageProxy::pluginInformationBundleIdentifierKey):
2778         (WebKit):
2779         (WebKit::WebPageProxy::pluginInformationBundleVersionKey):
2780         (WebKit::WebPageProxy::pluginInformationDisplayNameKey):
2781         (WebKit::WebPageProxy::pluginInformationFrameURLKey):
2782         (WebKit::WebPageProxy::pluginInformationMIMETypeKey):
2783         (WebKit::WebPageProxy::pluginInformationPageURLKey):
2784         * UIProcess/WebPageProxy.h:
2785         (WebPageProxy):
2786         * UIProcess/WebPageProxy.messages.in:
2787         * WebProcess/WebPage/WebPage.cpp:
2788         (WebKit::WebPage::createPlugin):
2789         (WebKit::WebPage::canPluginHandleResponse):
2790
2791 2013-02-22  Anders Carlsson  <andersca@apple.com>
2792
2793         Move pluginLoadPolicy to the page loader client
2794         https://bugs.webkit.org/show_bug.cgi?id=110635
2795         <rdar://problem/13265303>
2796         
2797         Reviewed by Sam Weinig.
2798
2799         Move the pluginLoadPolicy callback to the page loader client where it belongs.
2800
2801         * UIProcess/API/C/WKPage.h:
2802         * UIProcess/WebLoaderClient.cpp:
2803         (WebKit::toWKPluginLoadPolicy):
2804         (WebKit):
2805         (WebKit::toPluginModuleLoadPolicy):
2806         (WebKit::WebLoaderClient::pluginLoadPolicy):
2807         * UIProcess/WebLoaderClient.h:
2808         (WebLoaderClient):
2809         * UIProcess/WebPageProxy.cpp:
2810         (WebKit::WebPageProxy::getPluginPath):
2811         * UIProcess/WebUIClient.cpp:
2812         (WebKit):
2813         * UIProcess/WebUIClient.h:
2814         (WebUIClient):
2815         * UIProcess/mac/WebInspectorProxyMac.mm:
2816         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2817
2818 2013-02-21  Jer Noble  <jer.noble@apple.com>
2819
2820         Two video contollers appear after exiting the fullscreen video when using menubar to exit.
2821         https://bugs.webkit.org/show_bug.cgi?id=110506
2822
2823         Reviewed by Eric Carlson.
2824
2825         When we are notified that the fullscreen window is about to exit fullscreen mode unrequested,
2826         call requestExitFullScreen(), as that will result in Document::webkitExitFullScreen() correctly
2827         tearing down the fullscreen state.
2828
2829         * UIProcess/mac/WKFullScreenWindowController.mm:
2830         (-[WKFullScreenWindowController _startExitFullScreenAnimationWithDuration:]):
2831
2832 2013-02-22  Balazs Kelemen  <kbalazs@webkit.org>
2833
2834         Yet another unreviewed buildfix after r143714.
2835
2836         * UIProcess/efl/WebView.cpp:
2837         (WebKit::WebView::paintToCairoSurface):
2838
2839 2013-02-22  Balazs Kelemen  <kbalazs@webkit.org>
2840
2841         Unreviewed preventive buildfix after my last commit.
2842
2843         * UIProcess/API/efl/EwkView.cpp:
2844         * UIProcess/efl/WebView.cpp:
2845
2846 2013-02-22  Balazs Kelemen  <kbalazs@webkit.org>
2847
2848         [CoordGfx] Minor cleanup in CoordinatedGraphicsScene::paintToGraphicsContext
2849         https://bugs.webkit.org/show_bug.cgi?id=109824
2850
2851         Reviewed by Andreas Kling.
2852
2853         Avoid ugly ifdefs by using PlatformGraphicsContext.
2854
2855         * UIProcess/API/efl/EwkView.cpp:
2856         (EwkView::displayTimerFired):
2857
2858 2013-02-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2859
2860         [WK2][EFL] Remove declaration of non-existent functions from EwkView
2861         https://bugs.webkit.org/show_bug.cgi?id=110572
2862
2863         Reviewed by Kenneth Rohde Christiansen.
2864
2865         Removed declarations of non-existent EwkView::paintToCurrentGLContext() and
2866         EwkView::paintToCairoSurface(cairo_surface_t*) that were accidentally
2867         left at r143699.
2868
2869         * UIProcess/API/efl/EwkView.h:
2870         (EwkView):
2871
2872 2013-02-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2873
2874         [WK2][EFL] Clean up PageViewportControllerClientEfl class
2875         https://bugs.webkit.org/show_bug.cgi?id=110438
2876
2877         Reviewed by Andreas Kling.
2878
2879         Cleaned up PageViewportControllerClientEfl class from unused methods
2880         and class members, eliminated access to WK2 internals from this class.
2881
2882         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2883         (WebKit::PageViewportControllerClientEfl::didChangeContentsSize):
2884         * UIProcess/efl/PageViewportControllerClientEfl.h:
2885         (WebKit::PageViewportControllerClientEfl::~PageViewportControllerClientEfl):
2886         (PageViewportControllerClientEfl):
2887         * UIProcess/efl/WebView.cpp:
2888         (WebKit::WebView::WebView):
2889         (WebKit::WebView::updateViewportSize):
2890
2891 2013-02-22  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
2892
2893         [WK2][EFL][GTK][Qt] Add context menu item tags for C API
2894         https://bugs.webkit.org/show_bug.cgi?id=109815
2895
2896         Reviewed by Anders Carlsson.
2897
2898         This patch adds context menu item tags used by EFL, GTK and Qt ports, defined in
2899         WebCore to WK2 C API.
2900
2901         * Shared/API/c/WKContextMenuItemTypes.h:
2902         * Shared/API/c/WKSharedAPICast.h:
2903         (WebKit::toAPI):
2904         (WebKit::toImpl):
2905
2906 2013-02-22  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2907
2908         [WK2][EFL] Move AC code from EwkView to WebView
2909         https://bugs.webkit.org/show_bug.cgi?id=110216
2910
2911         Reviewed by Anders Carlsson.
2912
2913         Accelerated compositing code is moved from EwkView to WebView.
2914         Added new WKView API to be used from EwkView instead of direct accessing
2915         to coordinated graphics scene.
2916
2917         * UIProcess/API/C/efl/WKView.cpp:
2918         (WKViewSetUserViewportTranslation):
2919         (WKViewUserViewportToContents):
2920         (WKViewPaintToCurrentGLContext):
2921         (WKViewPaintToCairoSurface):
2922         * UIProcess/API/C/efl/WKView.h:
2923
2924             Added WKView API functions.
2925
2926         * UIProcess/API/efl/EwkView.cpp:
2927         (EwkView::EwkView):
2928         (EwkView::displayTimerFired):
2929         (EwkView::feedTouchEvent):
2930         (EwkView::createGLSurface):
2931         (EwkView::handleEvasObjectCalculate):
2932         (EwkView::handleEwkViewMouseWheel):
2933         (EwkView::handleEwkViewMouseDown):
2934         (EwkView::handleEwkViewMouseUp):
2935         (EwkView::handleEwkViewMouseMove):
2936         * UIProcess/API/efl/EwkView.h:
2937         (EwkView):
2938
2939             Using new WKView API.
2940
2941         * UIProcess/efl/WebView.cpp:
2942         (WebKit::WebView::initialize):
2943         (WebKit):
2944         (WebKit::WebView::paintToCurrentGLContext):
2945         (WebKit::WebView::paintToCairoSurface):
2946         (WebKit::WebView::userViewportToContents):
2947         (WebKit::WebView::transformFromScene):
2948         (WebKit::WebView::transformToScene):
2949         (WebKit::WebView::coordinatedGraphicsScene):
2950         (WebKit::WebView::enterAcceleratedCompositingMode):
2951         (WebKit::WebView::exitAcceleratedCompositingMode):
2952         * UIProcess/efl/WebView.h:
2953         (WebCore):
2954         (WebKit::WebView::setUserViewportTranslation):
2955         (WebView):
2956
2957             Added WebView methods to support new WKView API.
2958
2959 2013-02-21  Dima Gorbik  <dgorbik@apple.com>
2960
2961         QuickTime plugin doesn't load when accelerated compositing is disabled
2962         https://bugs.webkit.org/show_bug.cgi?id=110534
2963
2964         Reviewed by Anders Carlsson.
2965
2966         We shouldn't disable accelerated compositing for plugins, because
2967         plugins such as QuickTime rely on this and will try to set other drawing
2968         models that we don't support.
2969
2970         * WebProcess/Plugins/PluginView.cpp:
2971         (WebKit::PluginView::isAcceleratedCompositingEnabled):
2972
2973 2013-02-21  Dean Jackson  <dino@apple.com>
2974
2975         Plug-in snapshotting code always accepts first snapshot
2976         https://bugs.webkit.org/show_bug.cgi?id=110495
2977
2978         Reviewed by Tim Horton.
2979
2980         When we detect a plugin that can be snapshotted we start capturing
2981         images until we find one that we believe isn't blank, or we timeout.
2982         I introduced a regression recently where we swap renderers as
2983         soon as the snapshot arrives, whether or not is is blank.
2984
2985         The fix was to have the embedder (currently only WK2) be the one
2986         who tells the HTMLPlugInElement to start displaying snapshots.
2987
2988         * WebProcess/Plugins/PluginView.cpp:
2989         (WebKit::PluginView::pluginSnapshotTimerFired): When we find a
2990         snapshot that we like, tell the HTMLPlugInElement to move to
2991         the snapshot view.
2992
2993 2013-02-21  Carlos Garcia Campos  <cgarcia@igalia.com>
2994
2995         Unreviewed. Fix make distcheck.
2996
2997         * GNUmakefile.am: Add -DBUILDING_WEBKIT flags to introspection
2998         scanner.
2999         * GNUmakefile.list.am: Add missing header to compilation and
3000         remove one that no longer exists.
3001
3002 2013-02-21  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3003
3004         [WK2][EFL] Move PageViewportController and PageViewportControllerClientEfl out from WebView
3005         https://bugs.webkit.org/show_bug.cgi?id=110345
3006
3007         Reviewed by Andreas Kling.
3008
3009         WebView does not need to know about both PageViewportController and 
3010         PageViewportControllerClientEfl. Considering the fact that PageViewportController
3011         will stop being WK2 internal and will be based on WK2 C API, it 
3012         should be owned by EwkView rather than WebView.
3013
3014         This patch is also a preparation for WKViewClient API extension to cover all
3015         the places where PageViewportController and PageViewportControllerClientEfl
3016         are accessed directly from WebView at the moment.
3017
3018         * UIProcess/API/efl/EwkView.cpp:
3019         (EwkView::EwkView):
3020         * UIProcess/API/efl/EwkView.h:
3021         (WebKit):
3022         (EwkView::pageViewportControllerClient):
3023         (EwkView::pageViewportController):
3024         (EwkView):
3025         * UIProcess/efl/WebView.cpp:
3026         (WebKit::WebView::didCommitLoad):
3027         (WebKit::WebView::updateViewportSize):
3028         (WebKit::WebView::didChangeContentsSize):
3029         (WebKit::WebView::didChangeViewportProperties):
3030         (WebKit::WebView::pageDidRequestScroll):
3031         (WebKit::WebView::didRenderFrame):
3032         (WebKit::WebView::pageTransitionViewportReady):
3033         * UIProcess/efl/WebView.h:
3034         (WebView):
3035
3036 2013-02-20  Tim Horton  <timothy_horton@apple.com>
3037
3038         Provide WKView SPI to defer telling the WebPageProxy and WebProcess about changes in the hosting window
3039         https://bugs.webkit.org/show_bug.cgi?id=110415
3040         <rdar://problem/13095405>
3041
3042         Reviewed by Simon Fraser.
3043
3044         * UIProcess/API/mac/WKView.mm: Add _viewInWindowChangesDeferredCount and _viewInWindowChangeWasDeferred to WKViewData.
3045         (-[WKView viewDidMoveToWindow]): If we're deferring window changes, don't include the ViewIsInWindow flag
3046         when sending viewStateDidChange. Instead, save the fact that we want to do that later aside.
3047         (-[WKView beginDeferringViewInWindowChanges]):
3048         (-[WKView endDeferringViewInWindowChanges]): Straightforward begin/end pair. When we exit the last pair and
3049         have a pending window change, let the WebPageProxy know. WebPageProxy will do the check to ensure that
3050         the in-window state has actually changed.
3051         (-[WKView isDeferringViewInWindowChanges]):
3052         * UIProcess/API/mac/WKViewPrivate.h: 
3053
3054 2013-02-20  Kiran Muppala  <cmuppala@apple.com>
3055
3056         Disable window occlusion notifications for App Store on Mac.
3057         https://bugs.webkit.org/show_bug.cgi?id=110417
3058
3059         Reviewed by Simon Fraser.
3060
3061         Temporary fix to workaround issues with window occlusion notifications
3062         in App Store.
3063
3064         * UIProcess/API/mac/WKView.mm:
3065         (+[WKView _registerWindowOcclusionNotificationHandlers]): Return early
3066         if the main bundle identifier matches that of App Store.
3067
3068 2013-02-20  Mark Rowe  <mrowe@apple.com>
3069
3070         <https://webkit.org/b/110410> Specify the plug-in process / service entitlements via the Xcode configuration.
3071
3072         This is the modern mechanism for applying entitlements to production builds,
3073         and it simplifies the maintenance of entitlements going forward. It also allows
3074         us to fix the new XPC PluginServices to have the same entitlements as PluginProcess.
3075
3076         Reviewed by Alexey Proskuryakov.
3077
3078         * Configurations/Base.xcconfig: Ad-hoc sign all WebKit2 components.
3079         * Configurations/PluginProcess.xcconfig: Specify the entitlements to use.
3080         * Configurations/PluginService.32.xcconfig: Ditto.
3081         * Configurations/PluginService.64.xcconfig: Ditto.
3082         * Configurations/PluginService.Development.xcconfig: Ditto.
3083         * Configurations/PluginService.entitlements: Renamed from Source/WebKit2/PluginProcess/mac/PluginProcess.entitlements.
3084         Move the entitlements in to the Configurations directory to make them easier to find.
3085         * PluginProcess/mac/add-entitlements.sh: Removed. In my testing the dependency issue mentioned
3086         in the script is not an issue with current versions of Xcode. If we see it again we can come
3087         up with a workaround that doesn't involve performing the signing via a script phase.
3088         * WebKit2.xcodeproj/project.pbxproj:
3089
3090 2013-02-20  Mark Rowe  <mrowe@apple.com>
3091
3092         <https://webkit.org/b/110409> Remove duplication between 32- and 64-bit PluginService plists.
3093
3094         Reviewed by Dan Bernstein.
3095
3096         The only difference between the plists was the CFBundleIdentifier. Since the values are the
3097         same as the product name, we can just use the value of the PRODUCT_NAME configuration setting.
3098
3099         * Configurations/PluginService.32.xcconfig:
3100         * Configurations/PluginService.64.xcconfig:
3101         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64.Info.plist: Renamed from Source/WebKit2/PluginProcess/EntryPoint/mac/XPCService/PluginService.32/Info.plist.
3102         * PluginProcess/EntryPoint/mac/XPCService/PluginService.64/Info.plist: Removed.
3103
3104 2013-02-20  Simon Fraser  <simon.fraser@apple.com>
3105
3106         Zoomed, slow-scrolling pages keep recreating tiles when scrolled
3107         https://bugs.webkit.org/show_bug.cgi?id=110379
3108
3109         Reviewed by Tim Horton.
3110
3111         Make the visible rect and exposed rects passed through
3112         the drawing area to the tile cache FloatRects instead of IntRects.
3113
3114         * UIProcess/API/mac/WKView.mm:
3115         (-[WKView setFrameSize:]):
3116         (-[WKView _updateWindowAndViewFrames]):
3117         (-[WKView enableFrameSizeUpdates]):
3118         (-[WKView setMinimumWidthForAutoLayout:]):
3119         * UIProcess/WebPageProxy.h:
3120         * UIProcess/mac/WebPageProxyMac.mm:
3121         (WebKit::WebPageProxy::viewExposedRectChanged):
3122         * WebProcess/WebPage/DrawingArea.h:
3123         (WebKit::DrawingArea::setExposedRect):
3124         * WebProcess/WebPage/WebPage.cpp:
3125         (WebKit::WebPage::viewExposedRectChanged):
3126         * WebProcess/WebPage/WebPage.h:
3127         * WebProcess/WebPage/WebPage.messages.in:
3128         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3129         (TiledCoreAnimationDrawingArea):
3130         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3131         (WebKit::TiledCoreAnimationDrawingArea::setExposedRect):
3132
3133 2013-02-20  Dirk Schulze  <krit@webkit.org>
3134
3135         Enable CANVAS_PATH flag
3136         https://bugs.webkit.org/show_bug.cgi?id=108508
3137
3138         Reviewed by Simon Fraser.
3139
3140         Enable CANVAS_PATH flag on trunk.
3141
3142         * Configurations/FeatureDefines.xcconfig:
3143
3144 2013-02-20  Laszlo Gombos  <l.gombos@samsung.com>
3145
3146         Remove unnecessary includes for Platform.h from headers
3147         https://bugs.webkit.org/show_bug.cgi?id=110300
3148
3149         Reviewed by Alexey Proskuryakov.
3150
3151         wtf/Platform.h only need to be included in a few places directly    
3152         as it is included in config.h. Remove the unnecessay duplicate as    
3153         it can be confusing.
3154
3155         * Shared/PrintInfo.h:
3156
3157 2013-02-20  Huang Dongsung  <luxtella@company100.net>
3158
3159         [WK2] Remove m_viewportSize in WebPage.
3160         https://bugs.webkit.org/show_bug.cgi?id=110311
3161
3162         Reviewed by Anders Carlsson.
3163
3164         EFL and Qt use m_viewSize as a contents size while Apple use it as a viewport
3165         size, so EFL and Qt introduced m_viewportSize to make WebPage know a viewport
3166         size.
3167
3168         EFL and Qt use m_viewSize as a contents size because the size of non compositing
3169         layer is contents size, and EFL and Qt mark whole non compositing layer as dirty
3170         using m_viewSize. Bug 110299 (http://webkit.org/b/110299) changes that it is not
3171         necessary to know m_viewSize when marking whole non compositing layer as dirty.
3172         So we can make EFL and Qt use m_viewSize as a viewport size also.
3173
3174         This patch removes m_viewportSize and related methods to increase readability.
3175
3176         * UIProcess/API/qt/raw/qrawwebview.cpp:
3177         (QRawWebView::setSize):
3178         * UIProcess/PageViewportController.cpp:
3179         (WebKit::PageViewportController::didChangeViewportSize):
3180         * UIProcess/WebPageProxy.cpp:
3181         (WebKit):
3182         * UIProcess/WebPageProxy.h:
3183         (WebPageProxy):
3184         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3185         (WebKit::WebChromeClient::pageRect):
3186         (WebKit::WebChromeClient::contentsSizeChanged):
3187         * WebProcess/WebPage/DrawingAreaImpl.cpp:
3188         (WebKit::DrawingAreaImpl::updateBackingStoreState):
3189         * WebProcess/WebPage/WebPage.cpp:
3190         (WebKit::WebPage::setSize):
3191         (WebKit::WebPage::sendViewportAttributesChanged):
3192         * WebProcess/WebPage/WebPage.h:
3193         (WebPage):
3194         * WebProcess/WebPage/WebPage.messages.in:
3195
3196 2013-02-20  Huang Dongsung  <luxtella@company100.net>
3197
3198         [WK2] add setNeedsDisplay in DrawingArea to mark whole layer as dirty.
3199         https://bugs.webkit.org/show_bug.cgi?id=110299
3200
3201         Reviewed by Anders Carlsson.
3202
3203         Currently, we call setNeedsDisplay with the size of WebPage to mark whole
3204         backing store as dirty. However, the size of non compositing layer can be
3205         inconsistent with the size of WebPage. For example, in Coordinated Graphics, the
3206         size of non compositing layer is contents size.
3207
3208         So, WebPage should not assume the size of non compositing layer, and should just
3209         call setNeedsDisplay when marking whole layer as dirty.
3210
3211         In addition, this patch renames from setNeedsDisplay() with a rect argument to
3212         setNeedsDisplayInRect(), which matches to the terms of GraphicsLayer.
3213
3214         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3215         (WebKit::WebChromeClient::invalidateContentsAndRootView):
3216         (WebKit::WebChromeClient::invalidateContentsForSlowScroll):
3217         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3218         (WebKit::WebFrameLoaderClient::restoreViewState):
3219         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
3220         (WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplay):
3221         (WebKit):
3222         (WebKit::CoordinatedLayerTreeHost::setNonCompositedContentsNeedDisplayInRect):
3223         (WebKit::CoordinatedLayerTreeHost::scrollNonCompositedContents):
3224         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
3225         (CoordinatedLayerTreeHost):
3226         * WebProcess/WebPage/DrawingArea.h:
3227         (DrawingArea):
3228         * WebProcess/WebPage/DrawingAreaImpl.cpp:
3229         (WebKit::DrawingAreaImpl::setNeedsDisplay):
3230         (WebKit):
3231         (WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
3232         (WebKit::DrawingAreaImpl::scroll):
3233         (WebKit::DrawingAreaImpl::forceRepaint):
3234         (WebKit::DrawingAreaImpl::didUninstallPageOverlay):
3235         (WebKit::DrawingAreaImpl::setPageOverlayNeedsDisplay):
3236         (WebKit::DrawingAreaImpl::resumePainting):
3237         * WebProcess/WebPage/DrawingAreaImpl.h:
3238         (DrawingAreaImpl):
3239         * WebProcess/WebPage/LayerTreeHost.h:
3240         (LayerTreeHost):
3241         * WebProcess/WebPage/WebPage.cpp:
3242         (WebKit::WebPage::setSize):
3243         (WebKit::WebPage::setDrawsBackground):
3244         (WebKit::WebPage::setDrawsTransparentBackground):
3245         (WebKit::WebPage::resumeActiveDOMObjectsAndAnimations):
3246         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
3247         (WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplay):
3248         (WebKit):
3249         (WebKit::LayerTreeHostGtk::setNonCompositedContentsNeedDisplayInRect):
3250         (WebKit::LayerTreeHostGtk::scrollNonCompositedContents):
3251         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
3252         (LayerTreeHostGtk):
3253         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
3254         (LayerTreeHostMac):
3255         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
3256         (WebKit::LayerTreeHostMac::setNonCompositedContentsNeedDisplay):
3257         (WebKit):
3258         (WebKit::LayerTreeHostMac::setNonCompositedContentsNeedDisplayInRect):
3259         (WebKit::LayerTreeHostMac::scrollNonCompositedContents):
3260         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3261         (RemoteLayerTreeDrawingArea):
3262         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
3263         (WebKit::RemoteLayerTreeDrawingArea::setNeedsDisplay):
3264         (WebKit):
3265         (WebKit::RemoteLayerTreeDrawingArea::setNeedsDisplayInRect):
3266         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3267         (TiledCoreAnimationDrawingArea):
3268         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3269         (WebKit::TiledCoreAnimationDrawingArea::setNeedsDisplay):
3270         (WebKit):
3271         (WebKit::TiledCoreAnimationDrawingArea::setNeedsDisplayInRect):
3272
3273 2013-02-20  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3274
3275         [EFL][WK2] Port EwkPopupMenuItem to the C API
3276         https://bugs.webkit.org/show_bug.cgi?id=108798
3277
3278         Reviewed by Kenneth Rohde Christiansen.
3279
3280         Make use of the new WKPopupItem C API inside EwkPopupMenuItem to remove
3281         dependency on internal WebPopupItem type. Eina shared string members
3282         are now lazily initialized to make the object cheaper to construct.
3283
3284         * UIProcess/API/efl/ewk_popup_menu.cpp:
3285         (EwkPopupMenu::EwkPopupMenu):
3286         * UIProcess/API/efl/ewk_popup_menu_item.cpp:
3287         (EwkPopupMenuItem::EwkPopupMenuItem):
3288         (EwkPopupMenuItem::type):
3289         (EwkPopupMenuItem::textDirection):
3290         (EwkPopupMenuItem::text):
3291         (EwkPopupMenuItem::tooltipText):
3292         (EwkPopupMenuItem::accessibilityText):
3293         (EwkPopupMenuItem::hasTextDirectionOverride):
3294         (EwkPopupMenuItem::isEnabled):
3295         (EwkPopupMenuItem::isLabel):
3296         (EwkPopupMenuItem::isSelected):
3297         * UIProcess/API/efl/ewk_popup_menu_item_private.h:
3298         (EwkPopupMenuItem::create):
3299         (EwkPopupMenuItem):
3300
3301 2013-02-19  Tim Horton  <timothy_horton@apple.com>
3302
3303         Clarify isInWindow vs. isVisible path through to RenderLayerCompositor
3304         https://bugs.webkit.org/show_bug.cgi?id=110261
3305         <rdar://problem/13196122>
3306
3307         Reviewed by Simon Fraser.
3308
3309         * WebProcess/WebPage/WebPage.cpp:
3310         (WebKit::WebPage::setIsInWindow):
3311         Use Page::setIsInWindow in addition to willMoveOffscreen/didMoveOnscreen.
3312
3313 2013-02-19  Conrad Shultz  <conrad_shultz@apple.com>
3314
3315         Allow UI clients to handle vertical wheel events.
3316         https://bugs.webkit.org/show_bug.cgi?id=110006
3317
3318         Reviewed by Tim Horton.
3319
3320         Add API to allow clients to selectively control rubber-banding at vertical page extrema.
3321
3322         * UIProcess/API/C/WKPage.cpp:
3323         (WKPageRubberBandsAtBottom):
3324         Proxy for the corresponding function in WebCore::Page.
3325         (WKPageSetRubberBandsAtBottom):
3326         Ditto.
3327         (WKPageRubberBandsAtTop):
3328         Ditto.
3329         (WKPageSetRubberBandsAtTop):
3330         Ditto.
3331
3332         * UIProcess/API/C/WKPage.h:
3333         Declare new API.
3334
3335         * UIProcess/WebPageProxy.cpp:
3336         (WebKit::WebPageProxy::WebPageProxy):
3337         Initialize new member variables.
3338         (WebKit::WebPageProxy::setRubberBandsAtBottom):
3339         New function; dispatches a matching message to the WebKit::WebPage.
3340         (WebKit::WebPageProxy::setRubberBandsAtTop):
3341         Ditto.
3342
3343         * UIProcess/WebPageProxy.h:
3344         (WebPageProxy):
3345         Declare new API.
3346         (WebKit::WebPageProxy::rubberBandsAtBottom):
3347         New accessor function.
3348         (WebKit::WebPageProxy::rubberBandsAtTop):
3349         Ditto.
3350
3351         * WebProcess/WebPage/WebPage.cpp:
3352         (WebKit::WebPage::setRubberBandsAtBottom):
3353         New function; call the matching function on the associated WebCore::Page.
3354         (WebKit::WebPage::setRubberBandsAtTop):
3355         Ditto.
3356
3357         * WebProcess/WebPage/WebPage.h:
3358         (WebPage):
3359         Declare new rubber-banding API.
3360
3361         * WebProcess/WebPage/WebPage.messages.in:
3362         Declare new rubber-banding API.
3363
3364 2013-02-19  Anders Carlsson  <andersca@apple.com>
3365
3366         StorageAreaProxy should know its quota
3367         https://bugs.webkit.org/show_bug.cgi?id=110268
3368
3369         Reviewed by Sam Weinig.
3370
3371         Begin stubbing out StorageAreaProxy::setItem and add some quota member variables.
3372
3373         * WebProcess/Storage/StorageAreaProxy.cpp:
3374         (WebKit::StorageAreaProxy::StorageAreaProxy):
3375         (WebKit::StorageAreaProxy::setItem):
3376         * WebProcess/Storage/StorageAreaProxy.h:
3377         (StorageAreaProxy):
3378         * WebProcess/Storage/StorageNamespaceProxy.cpp:
3379         (WebKit::StorageNamespaceProxy::createSessionStorageNamespace):
3380         (WebKit::StorageNamespaceProxy::StorageNamespaceProxy):
3381         * WebProcess/Storage/StorageNamespaceProxy.h:
3382         (WebKit::StorageNamespaceProxy::quota):
3383         (StorageNamespaceProxy):
3384
3385 2013-02-19  Alexey Proskuryakov  <ap@apple.com>
3386
3387         <rdar://problem/13239119> NetworkProcess generates timeout spindump logs
3388
3389         Reviewed by Mark Rowe.
3390
3391         Don't keep a window server connection in processes that don't need it, and don't
3392         run an NSApplication run loop.
3393
3394         * Shared/ChildProcess.h:
3395         * Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::shutdownWindowServerConnection):
3396         Added a function to shut down connections, and to make sure we don't get one in the future.
3397
3398         * NetworkProcess/mac/NetworkProcessMac.mm:
3399         (WebKit::NetworkProcess::initializeProcessName):
3400         * OfflineStorageProcess/mac/OfflineStorageProcessMac.mm:
3401         (WebKit::OfflineStorageProcess::initializeProcessName):
3402         * SharedWorkerProcess/mac/SharedWorkerProcessMac.mm:
3403         (WebKit::SharedWorkerProcess::platformInitializeSharedWorkerProcess): Also removed
3404         some unused includes and forward declarations.
3405
3406 2013-02-18  Alexey Proskuryakov  <ap@apple.com>
3407
3408         [WK2] Cannot load documents with blob urls
3409         https://bugs.webkit.org/show_bug.cgi?id=110160
3410
3411         Reviewed by Sam Weinig.
3412
3413         * WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::canHandleRequest):
3414         Added knowledge about blobs.
3415
3416 2013-02-19  Carlos Garcia Campos  <cgarcia@igalia.com>
3417
3418         [GTK] Move the API to get TLS certificate from WebKitURIResponse to WebKitWebView
3419         https://bugs.webkit.org/show_bug.cgi?id=110190
3420
3421         Reviewed by Anders Carlsson.
3422
3423         Add webkit_web_view_get_tls_info() and remove
3424         webkit_uri_response_get_https_status(). This way I can be sure
3425         that when called after load has been committed the certificate
3426         will be available. It also makes the API easier to use.
3427
3428         * UIProcess/API/gtk/WebKitURIResponse.cpp:
3429         * UIProcess/API/gtk/WebKitURIResponse.h:
3430         * UIProcess/API/gtk/WebKitURIResponsePrivate.h:
3431         * UIProcess/API/gtk/WebKitWebView.cpp:
3432         (webkitWebViewLoadChanged):
3433         (mainResourceResponseChangedCallback):
3434         (webkit_web_view_get_tls_info):
3435         * UIProcess/API/gtk/WebKitWebView.h:
3436         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
3437         * UIProcess/API/gtk/tests/TestSSL.cpp:
3438
3439 2013-02-19  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
3440
3441         [WK2][EFL] Eliminate access to WK2 C++ internals from ewk_view functions
3442         https://bugs.webkit.org/show_bug.cgi?id=109794
3443
3444         Reviewed by Anders Carlsson.
3445
3446         * UIProcess/API/C/efl/WKView.cpp:
3447         (WKViewSetShowsAsSource):
3448         (WKViewGetShowsAsSource):
3449
3450             Added new WKView API to wrap WebPageProxy::setMainFrameInViewSourceMode()
3451             and WebPageProxy::mainFrameInViewSourceMode() calls.
3452
3453         (WKViewExitFullScreen):
3454
3455             Added new WKView API to wrap WebFullScreenManagerProxy::exitFullScreen()
3456             calls.
3457
3458         * UIProcess/API/C/efl/WKView.h:
3459         * UIProcess/API/efl/EwkView.cpp:
3460         (EwkView::feedTouchEvent):
3461
3462             Added feedTouchEvent() method so that: at first ewk_view_feed_touch_event()
3463             is not invoked from EwkView class, secondly ewk_view_feed_touch_event() does
3464             not access WebPage instance directly.
3465
3466         (EwkView::feedTouchEvents):
3467         * UIProcess/API/efl/EwkView.h:
3468         (EwkView):
3469         * UIProcess/API/efl/ewk_view.cpp:
3470         (ewk_view_feed_touch_event):
3471         (ewk_view_pagination_mode_set):
3472         (ewk_view_pagination_mode_get):
3473         (ewk_view_fullscreen_exit):
3474         (ewkViewPageContentsCallback):
3475         (ewk_view_page_contents_get):
3476         (ewk_view_source_mode_set):
3477         (ewk_view_source_mode_get):
3478
3479             Those are now using exported C API.
3480
3481         * UIProcess/efl/WebView.cpp:
3482         (WebKit::WebView::setShowsAsSource):
3483         (WebKit):
3484         (WebKit::WebView::showsAsSource):
3485         (WebKit::WebView::exitFullScreen):
3486         * UIProcess/efl/WebView.h:
3487         (WebView):
3488
3489             Added WebView methods to support added WKView API.
3490
3491 2013-02-19  Andras Becsi  <andras.becsi@digia.com>
3492
3493         [Qt][WK2] ASSERT(node) hit in WebPage::findZoomableAreaForPoint if no zoomable area found
3494         https://bugs.webkit.org/show_bug.cgi?id=110220
3495
3496         Reviewed by Allan Sandfeld Jensen.
3497
3498         If EventHandler::bestZoomableAreaForTouchPoint was unsuccessfull, eg.
3499         no node was found for a given point, we hit ASSERT(node).
3500         We should only assert for a valid node if a zoomable area was found.
3501
3502         * WebProcess/WebPage/WebPage.cpp:
3503         (WebKit::WebPage::findZoomableAreaForPoint):
3504
3505 2013-02-19  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3506
3507         Regression(r143273): Caused a lot of tests to time out
3508         https://bugs.webkit.org/show_bug.cgi?id=110212
3509
3510         Reviewed by Anders Carlsson.
3511
3512         StorageManager::destroySessionStorageNamespace() and StorageManager::cloneSessionStorageNamespace()
3513         should call their respective "*Internal" equivalent instead of calling themselves. This lead to
3514         a lot of time outs on our build bots.
3515
3516         * UIProcess/Storage/StorageManager.cpp:
3517         (WebKit::StorageManager::destroySessionStorageNamespace):
3518         (WebKit::StorageManager::cloneSessionStorageNamespace):
3519
3520 2013-02-18  Carlos Garcia Campos  <cgarcia@igalia.com>
3521
3522         [GTK] Remove webkit_web_view_get_subresources from WebKit2 GTK+ API
3523         https://bugs.webkit.org/show_bug.cgi?id=110125
3524
3525         Reviewed by Anders Carlsson.
3526
3527         This API is currently implemented caching all resources in the
3528         WebView which causes some problems in documents loading resources
3529         indefinitely. This API was used in WebKit1 mainly to implement
3530         webkit_web_view_save(), but we already have such API in
3531         WebKit2.
3532
3533         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
3534         (didReceiveWebViewMessageFromInjectedBundle):
3535         * UIProcess/API/gtk/WebKitWebView.cpp:
3536         (_WebKitWebViewPrivate):
3537         (webkitWebViewLoadChanged):
3538         * UIProcess/API/gtk/WebKitWebView.h:
3539         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
3540         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
3541         * UIProcess/API/gtk/tests/TestResources.cpp:
3542         (testWebViewResources):
3543         (testWebResourceGetData):
3544
3545 2013-02-18  Christophe Dumez  <dchris@gmail.com>
3546
3547         [WK2][EFL] Stop using internal C++ API in ewk_error
3548         https://bugs.webkit.org/show_bug.cgi?id=108796
3549
3550         Reviewed by Benjamin Poulain.
3551
3552         Stop using internal C++ API in ewk_error and use C API instead of avoid
3553         violating API layering.
3554
3555         * UIProcess/API/efl/ewk_error.cpp:
3556         (EwkError::domain):
3557         (EwkError::isCancellation):
3558         (ewk_error_type_get):
3559         * UIProcess/API/efl/ewk_error_private.h:
3560         (EwkError):
3561
3562 2013-02-18  Simon Fraser  <simon.fraser@apple.com>
3563
3564         Clean up the boolean argument to visibleContentRect
3565         https://bugs.webkit.org/show_bug.cgi?id=110167
3566
3567         Reviewed by Simon Fraser.
3568         
3569         Replace the boolean argument to visibleContentRect() with
3570         an enum.
3571
3572         * WebProcess/WebPage/WebFrame.cpp:
3573         (WebKit::WebFrame::visibleContentBounds):
3574         (WebKit::WebFrame::visibleContentBoundsExcludingScrollbars):
3575
3576 2013-02-18  Anders Carlsson  <andersca@apple.com>
3577
3578         Add a DefaultHash for RefPtr<SecurityOrigin>
3579         https://bugs.webkit.org/show_bug.cgi?id=110170
3580
3581         Reviewed by Andreas Kling.
3582
3583         Remove all explicit uses of SecurityOriginHash.
3584
3585         * UIProcess/Storage/StorageManager.cpp:
3586         (StorageManager::SessionStorageNamespace):
3587         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
3588         (WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
3589         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3590         (WebKit::InjectedBundle::originsWithApplicationCache):
3591         * WebProcess/Notifications/NotificationPermissionRequestManager.h:
3592         Include SecurityOriginHash.h. This fixes a bug where m_originToIDMap used pointer-equality
3593         for looking up security origins.
3594
3595         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
3596         (WebKit::WebResourceCacheManager::clearCacheForOrigin):
3597         This can just take a const reference.
3598
3599         * WebProcess/ResourceCache/WebResourceCacheManager.h:
3600
3601 2013-02-18  Anders Carlsson  <andersca@apple.com>
3602
3603         Begin stubbing out session storage classes
3604         https://bugs.webkit.org/show_bug.cgi?id=110168
3605
3606         Reviewed by Andreas Kling.
3607
3608         * UIProcess/Storage/StorageManager.cpp:
3609         (StorageManager::StorageArea):
3610         (WebKit):
3611         (WebKit::StorageManager::StorageArea::create):
3612         (WebKit::StorageManager::StorageArea::StorageArea):
3613         (WebKit::StorageManager::StorageArea::~StorageArea):
3614         (StorageManager::SessionStorageNamespace):
3615         (WebKit::StorageManager::SessionStorageNamespace::isEmpty):
3616         (WebKit::StorageManager::SessionStorageNamespace::create):
3617         (WebKit::StorageManager::SessionStorageNamespace::SessionStorageNamespace):
3618         (WebKit::StorageManager::SessionStorageNamespace::~SessionStorageNamespace):
3619         (WebKit::StorageManager::SessionStorageNamespace::cloneTo):
3620         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
3621         (WebKit::StorageManager::destroySessionStorageNamespaceInternal):
3622         (WebKit::StorageManager::cloneSessionStorageNamespaceInternal):
3623         * UIProcess/Storage/StorageManager.h:
3624         (StorageManager):
3625
3626 2013-02-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3627
3628         [EFL][WK2] Add C API for popup menu and popup item
3629         https://bugs.webkit.org/show_bug.cgi?id=109083
3630
3631         Reviewed by Anders Carlsson.
3632
3633         WK2 EFL delegates display of the popup menu to the browser which causes
3634         us to have a strong interdependency between internal C++ classes
3635         (WebPopupMenuProxyEfl, WebPopupItem) and our EFL API implementation
3636         (EwkView, EwkPopupMenu, EwkPopupMenuItem).
3637
3638         Since we want to remove this interdependency, this patch introduces a
3639         for WebPopupMenuProxyEfl (WKPopupMenuListener) and for WebPopupItem
3640         (WKPopupItem). It also introduces a WKPage client with callbacks for
3641         showPopupMenu and hidePopupMenu.
3642
3643         Note that the popup menu functionality is covered by ewk_popup_menu API
3644         tests and no functionality is lost.
3645
3646         * PlatformEfl.cmake: Add new files to EFL CMake config.
3647         * Shared/API/c/efl/WKBaseEfl.h: Add typedefs for WKPopupItemRef and
3648         WKPopupMenuListenerRef.
3649         * Shared/APIObject.h: Add new TypePopupMenuItem APIObject type for EFL
3650         platform.
3651         * UIProcess/API/C/efl/WKAPICastEfl.h: Add mapping for WKPopupItemRef
3652         and WKPopupMenuListenerRef API types.
3653         (WebKit):
3654         (WebKit::toAPI):
3655         * UIProcess/API/C/efl/WKPageEfl.cpp: Added.
3656         (WKPageSetUIPopupMenuClient): Add new C API to set the UI Popup Menu
3657         client on the page.
3658         * UIProcess/API/C/efl/WKPageEfl.h: Added.
3659         * UIProcess/API/C/efl/WKPopupItem.cpp: Added. Add C API for WebPopupItem.
3660         (WKPopupItemGetType):
3661         (WKPopupItemGetTextDirection):
3662         (WKPopupItemHasTextDirectionOverride):
3663         (WKPopupItemCopyText):
3664         (WKPopupItemCopyToolTipText):
3665         (WKPopupItemCopyAccessibilityText):
3666         (WKPopupItemIsEnabled):
3667         (WKPopupItemIsLabel):
3668         (WKPopupItemIsSelected):
3669         * UIProcess/API/C/efl/WKPopupItem.h: Added.
3670         * UIProcess/API/C/efl/WKPopupMenuListener.cpp: Added. Add C API for
3671         WebPopupMenuListenerEfl (formerly WebPopupMenuProxyEfl) so that the
3672         client can report which popup menu item was selected.
3673         (WKPopupMenuListenerSetSelection):
3674         * UIProcess/API/C/efl/WKPopupMenuListener.h: Added.
3675         * UIProcess/API/efl/EwkView.cpp: Remove dependency on internal C++ types
3676         (WebPopupMenuProxyEfl and WebPopupItem) and use C API types instead.
3677         (EwkView::requestPopupMenu):
3678         * UIProcess/API/efl/EwkView.h:
3679         (WebKit):
3680         (EwkView):
3681         * UIProcess/API/efl/ewk_popup_menu.cpp: Use C API for Popup menu.
3682         (EwkPopupMenu::EwkPopupMenu):
3683         (EwkPopupMenu::setSelectedIndex):
3684         * UIProcess/API/efl/ewk_popup_menu_private.h:
3685         (EwkPopupMenu::create):
3686         (EwkPopupMenu):
3687         * UIProcess/WebPageProxy.cpp: Use WKPageUIPopupMenuClient to show / hide
3688         the popup menu on EFL port instead of asking the WebPopupMenuProxy.
3689         (WebKit::WebPageProxy::close):
3690         (WebKit::WebPageProxy::showPopupMenu):
3691         (WebKit::WebPageProxy::hidePopupMenu):
3692         * UIProcess/WebPageProxy.h: Add new WKPageUIPopupMenuClient member and
3693         corresponding initialization method.
3694         (WebPageProxy):
3695         * UIProcess/WebPopupMenuProxy.h: Disable showPopupMenu / hidePopupMenu
3696         virtual methods on EFL port since we go via WKPageUIPopupMenuClient
3697         for this now.
3698         (WebPopupMenuProxy):
3699         * UIProcess/efl/PageUIClientEfl.cpp:
3700         (WebKit::PageUIClientEfl::PageUIClientEfl): Handle WKPageUIPopupMenuClient
3701         callbacks and call corresponding EwkView methods. Previously, the EwkView
3702         methods were called by the internal WebPageProxyEfl class which is no
3703         longer needed.
3704         (WebKit::PageUIClientEfl::showPopupMenu):
3705         (WebKit):
3706         (WebKit::PageUIClientEfl::hidePopupMenu):
3707         * UIProcess/efl/PageUIClientEfl.h:
3708         (PageUIClientEfl):
3709         * UIProcess/efl/WebPageProxyEfl.cpp:
3710         (WebKit::WebPageProxy::initializeUIPopupMenuClient):
3711         (WebKit):
3712         * UIProcess/efl/WebPopupItemEfl.cpp: Added. Add APIObject wrapper for
3713         WebPopupItem so that we can use it in WKPageUIPopupMenuClient.
3714         (WebKit):
3715         (WebKit::WebPopupItemEfl::WebPopupItemEfl):
3716         (WebKit::WebPopupItemEfl::~WebPopupItemEfl):
3717         * UIProcess/efl/WebPopupItemEfl.h: Added.
3718         (WebKit):
3719         (WebPopupItemEfl):
3720         (WebKit::WebPopupItemEfl::create):
3721         (WebKit::WebPopupItemEfl::data):
3722         (WebKit::WebPopupItemEfl::itemType):
3723         (WebKit::WebPopupItemEfl::text):
3724         (WebKit::WebPopupItemEfl::textDirection):
3725         (WebKit::WebPopupItemEfl::hasTextDirectionOverride):
3726         (WebKit::WebPopupItemEfl::toolTipText):
3727         (WebKit::WebPopupItemEfl::accessibilityText):
3728         (WebKit::WebPopupItemEfl::isEnabled):
3729         (WebKit::WebPopupItemEfl::isLabel):
3730         (WebKit::WebPopupItemEfl::isSelected):
3731         (WebKit::WebPopupItemEfl::type):
3732         * UIProcess/efl/WebPopupMenuListenerEfl.cpp: Renamed from Source/WebKit2/UIProcess/efl/WebPopupMenuProxyEfl.cpp.
3733         Use WebPopupMenuListenerEfl name instead of WebPopupMenuProxyEfl since
3734         it more accurately represents its functionality now.
3735         (WebKit):
3736         (WebKit::WebPopupMenuListenerEfl::WebPopupMenuListenerEfl):
3737         (WebKit::WebPopupMenuListenerEfl::valueChanged):
3738         * UIProcess/efl/WebPopupMenuListenerEfl.h: Renamed from Source/WebKit2/UIProcess/efl/WebPopupMenuProxyEfl.h.
3739         (WebKit):
3740         (WebPopupMenuListenerEfl):
3741         (WebKit::WebPopupMenuListenerEfl::create):
3742         * UIProcess/efl/WebUIPopupMenuClient.cpp: Added.
3743         (WebUIPopupMenuClient::showPopupMenu):
3744         (WebUIPopupMenuClient::hidePopupMenu):
3745         * UIProcess/efl/WebUIPopupMenuClient.h: Added.
3746         (WebKit):
3747         (WebUIPopupMenuClient):
3748         * UIProcess/efl/WebView.cpp:
3749         (WebKit::WebView::createPopupMenuProxy):
3750
3751 2013-02-18  Anders Carlsson  <andersca@apple.com>
3752
3753         Add StorageManager member functions for keeping track of session storage namespaces
3754         https://bugs.webkit.org/show_bug.cgi?id=110163
3755
3756         Reviewed by Andreas Kling.
3757
3758         * UIProcess/Storage/StorageManager.cpp:
3759         (WebKit::StorageManager::createSessionStorageNamespace):
3760         (WebKit):
3761         (WebKit::StorageManager::destroySessionStorageNamespace):
3762         (WebKit::StorageManager::cloneSessionStorageNamespace):
3763         (WebKit::StorageManager::createSessionStorageNamespaceInternal):
3764         (WebKit::StorageManager::destroySessionStorageNamespaceInternal):
3765         (WebKit::StorageManager::cloneSessionStorageNamespaceInternal):
3766         * UIProcess/Storage/StorageManager.h:
3767         (StorageManager):
3768         * UIProcess/WebContext.h:
3769         (WebKit::WebContext::storageManager):
3770         (WebContext):
3771         * UIProcess/WebPageProxy.cpp:
3772         (WebKit::WebPageProxy::WebPageProxy):
3773         (WebKit::WebPageProxy::close):
3774         (WebKit::WebPageProxy::createNewPage):
3775
3776 2013-02-18  Anders Carlsson  <andersca@apple.com>
3777
3778         StorageManager message handlers should take the connection
3779         https://bugs.webkit.org/show_bug.cgi?id=110151
3780
3781         Reviewed by Andreas Kling.
3782
3783         * Platform/CoreIPC/HandleMessage.h:
3784         (CoreIPC):
3785         (CoreIPC::callMemberFunction):
3786         (CoreIPC::handleMessage):
3787         * Scripts/webkit2/messages.py:
3788         (sync_message_statement):
3789         (generate_message_handler):
3790         * UIProcess/Storage/StorageManager.cpp:
3791         (WebKit::StorageManager::createStorageArea):
3792         (WebKit::StorageManager::destroyStorageArea):
3793         (WebKit::StorageManager::getValues):
3794         * UIProcess/Storage/StorageManager.h:
3795         (StorageManager):
3796         * UIProcess/Storage/StorageManager.messages.in:
3797
3798 2013-02-18  Christophe Dumez  <christophe.dumez@intel.com>
3799
3800         [EFL][WK2] Use C API inside ewk_security_origin
3801         https://bugs.webkit.org/show_bug.cgi?id=107923
3802
3803         Reviewed by Alexey Proskuryakov.
3804
3805         Use C API inside ewk_security_origin instead of accessing
3806         directly internal C++ classes, to avoid breaking API
3807         layering.
3808
3809         * UIProcess/API/efl/EwkView.cpp:
3810         (EwkView::enterFullScreen):
3811         * UIProcess/API/efl/ewk_security_origin.cpp:
3812         (EwkSecurityOrigin::EwkSecurityOrigin):
3813         * UIProcess/API/efl/ewk_security_origin_private.h:
3814         (EwkSecurityOrigin::create):
3815         (EwkSecurityOrigin):
3816
3817 2013-01-04  Jer Noble  <jer.noble@apple.com>
3818
3819         pinch-zooming webpage messes up full-screening of embedded video
3820         https://bugs.webkit.org/show_bug.cgi?id=106115
3821
3822         Reviewed by Maciej Stachowiak.
3823
3824         Reset the page scale when entering full screen, and reset to the original scale when exiting.
3825
3826         * UIProcess/mac/WKFullScreenWindowController.h:
3827         * UIProcess/mac/WKFullScreenWindowController.mm:
3828         (-[WKFullScreenWindowController enterFullScreen:]):
3829         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
3830
3831 2013-02-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3832
3833         [EFL][WK2] Disable failing API tests
3834         https://bugs.webkit.org/show_bug.cgi?id=110081
3835
3836         Reviewed by Kenneth Rohde Christiansen.
3837
3838         Disable EWK2UnitTestBase.ewk_view_scale API test as it is failing.
3839
3840         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3841         (TEST_F):
3842
3843 2013-02-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3844
3845         [Qt][WK2] Support WK2 API tests
3846         https://bugs.webkit.org/show_bug.cgi?id=109843
3847
3848         Reviewed by Jocelyn Turcotte.
3849
3850         * UIProcess/API/qt/qquickwebview_p.h:
3851         (TestWebKitAPI):
3852
3853 2013-02-18  Andras Becsi  <andras.becsi@digia.com>
3854
3855         [Qt][WK2] Changing WebView.contentY and WebView.contentX does not redraw content
3856         https://bugs.webkit.org/show_bug.cgi?id=108337
3857
3858         Reviewed by Jocelyn Turcotte.
3859
3860         We should not ignore content position changes unless pinch zoom or bounce-back
3861         animation is ongoing.
3862         This way we notify the web process about visible rect changes if the contentX
3863         and contentY properties are used to programmatically scroll the content from QML.
3864         One important usecase for this is when implementing scrollbars.
3865
3866         * UIProcess/qt/PageViewportControllerClientQt.cpp:
3867         (WebKit::PageViewportControllerClientQt::PageViewportControllerClientQt):
3868         (WebKit::PageViewportControllerClientQt::flickMoveStarted):
3869         (WebKit::PageViewportControllerClientQt::flickMoveEnded):
3870         (WebKit::PageViewportControllerClientQt::pageItemPositionChanged):
3871         (WebKit::PageViewportControllerClientQt::scaleAnimationStateChanged):
3872         (WebKit::PageViewportControllerClientQt::pinchGestureStarted):
3873
3874 2013-02-18  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3875
3876         [WK2][EFL] Unified text checker implementation
3877         https://bugs.webkit.org/show_bug.cgi?id=107682
3878
3879         Reviewed by Anders Carlsson.
3880
3881         * UIProcess/efl/TextCheckerEfl.cpp:
3882         (WebKit):
3883         (WebKit::nextWordOffset):
3884         Helper function to determine the word offset to do not call
3885         client's checkSpellingOfString for the word separators.
3886
3887         (WebKit::TextChecker::checkTextOfParagraph):
3888         Allow to check spelling for multiple words,
3889         their misspelling location and length are saved to the vector.
3890
3891         * WebProcess/WebCoreSupport/WebEditorClient.h:
3892         Add UNIFIED_TEXT_CHECKING guard to checkTextOfParagraph.
3893
3894         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
3895         (WebKit):
3896         (WebKit::WebEditorClient::checkTextOfParagraph):
3897         As spelling implementation is exposed to UIProcess,
3898         send a meesage to UIProcess to call TextChecker::checkTextOfParagraph.
3899
3900 2013-02-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3901
3902         [EFL][WK2] Refactor Ewk_Favicon code and stop relying on internal C++ API
3903         https://bugs.webkit.org/show_bug.cgi?id=108598
3904
3905         Reviewed by Kenneth Rohde Christiansen.
3906
3907         Refactor the Ewk_Favicon code so that it no longer relies on internal
3908         C++ API and so that it is based solely on the C API. The API is changed
3909         a little as well so that the Favicon URL is no longer exposed to the
3910         client. Also the client is now only notified of icon changes once the
3911         favicon data is actually available.
3912
3913         The API is covered by existing API tests and by MiniBrowser which are
3914         both updated accordingly in this patch.
3915
3916         * UIProcess/API/efl/EwkView.cpp:
3917         (EwkView::informURLChange):
3918         (EwkView::createFavicon):
3919         (EwkView::onFaviconChanged):
3920         * UIProcess/API/efl/EwkView.h:
3921         (EwkView):
3922         * UIProcess/API/efl/EwkViewCallbacks.h:
3923         * UIProcess/API/efl/ewk_favicon_database.cpp:
3924         Client are now notified of favicon changes only when the favicon data
3925         becomes available and make API to retrieve a favicon synchronous. NULL
3926         is returned if the favicon data is not available.
3927
3928         (EwkFaviconDatabase::EwkFaviconDatabase):
3929         (EwkFaviconDatabase::getIconSurfaceSynchronously):
3930         (EwkFaviconDatabase::iconDataReadyForPageURL):
3931         (ewk_favicon_database_icon_get):
3932         * UIProcess/API/efl/ewk_favicon_database.h:
3933         * UIProcess/API/efl/ewk_favicon_database_private.h:
3934         (EwkFaviconDatabase):
3935         * UIProcess/API/efl/ewk_view.cpp:
3936         (ewk_view_favicon_get):
3937         * UIProcess/API/efl/ewk_view.h:
3938         Rename 'icon,changed' signal to 'favicon,changed' for clarity and
3939         consistency with the rest of the favicon API. Remove API to retrieve
3940         the favicon URL and replace it by one to retrieve the favicon image as
3941         an Evas_Object instead.
3942
3943         * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
3944         Update API tests to use the new favicon API.
3945
3946 2013-02-17  Jae Hyun Park  <jae.park@company100.net>
3947
3948         Remove unnecessary public method DrawingAreaImpl::createGraphicsContext()
3949         https://bugs.webkit.org/show_bug.cgi?id=109893
3950
3951         Reviewed by Anders Carlsson.
3952
3953         DrawingAreaImpl::createGraphicsContext() is unnecessary since
3954         createGraphicsContext can be called directly using ShareableBitmap.
3955
3956         * WebProcess/WebPage/DrawingAreaImpl.cpp:
3957         (WebKit::DrawingAreaImpl::display):
3958         * WebProcess/WebPage/DrawingAreaImpl.h:
3959         (DrawingAreaImpl):
3960
3961 2013-02-17  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
3962
3963         [WK2][EFL] Remove fullscreen manager proxy as a message receiver on invalidate()
3964         https://bugs.webkit.org/show_bug.cgi?id=109451
3965
3966         Reviewed by Anders Carlsson.
3967
3968         Remove fullscreen manager proxy as a message receiver on invalidate(), like
3969         other ports do after r142160.
3970
3971         * UIProcess/efl/WebFullScreenManagerProxyEfl.cpp:
3972         (WebKit::WebFullScreenManagerProxy::invalidate):
3973
3974 2013-02-17  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3975
3976         Regression(r143124): Caused plugins/plugin-javascript-access.html to fail
3977         https://bugs.webkit.org/show_bug.cgi?id=110053
3978
3979         Reviewed by Alexey Proskuryakov.
3980
3981         Clear m_plugins in loadPluginsIfNecessary() before populating the
3982         vector again. We get duplicates otherwise.
3983
3984         * UIProcess/Plugins/PluginInfoStore.cpp:
3985         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
3986
3987 2013-02-16  Andreas Kling  <akling@apple.com>
3988
3989         Remove multi-threading gunk from PluginInfoStore.
3990         <http://webkit.org/b/110046>
3991
3992         Reviewed by Alexey Proskuryakov.
3993
3994         PluginInfoStore is never accessed from multiple threads anymore, so remove the Mutex locking
3995         and stop making isolated copies of everything.
3996
3997         * Shared/Plugins/PluginModuleInfo.h:
3998         (PluginModuleInfo):
3999         * UIProcess/Plugins/PluginInfoStore.cpp:
4000         (WebKit::PluginInfoStore::loadPluginsIfNecessary):
4001         (WebKit::PluginInfoStore::plugins):
4002         (WebKit::PluginInfoStore::findPluginForMIMEType):
4003         (WebKit::PluginInfoStore::findPluginForExtension):
4004         (WebKit::PluginInfoStore::findPlugin):
4005         (WebKit::PluginInfoStore::infoForPluginWithPath):
4006         * UIProcess/Plugins/PluginInfoStore.h:
4007         (PluginInfoStore):
4008
4009 2013-02-16  Sam Weinig  <sam@webkit.org>
4010
4011         Fix non-production builds.
4012
4013         * WebKit2.xcodeproj/project.pbxproj:
4014
4015 2013-02-16  Sam Weinig  <sam@webkit.org>
4016
4017         The Plugin.32 target does not build
4018         https://bugs.webkit.org/show_bug.cgi?id=110032
4019
4020         Reviewed by Anders Carlsson.
4021
4022         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32/PluginService.32.Main.mm: Removed.
4023         This was meant to be removed already.
4024
4025         * WebKit2.xcodeproj/project.pbxproj:
4026         Add Plugin.32 as dependency in All as it should be.
4027
4028 2013-02-16  Darin Adler  <darin@apple.com>
4029
4030         Fix WKDOMRangePrivate.h mistakes
4031         https://bugs.webkit.org/show_bug.cgi?id=110028
4032
4033         Reviewed by Ryosuke Niwa.
4034
4035         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
4036         Added include of WKDOMRangePrivate.h.
4037
4038         * WebProcess/InjectedBundle/API/mac/WKDOMRangePrivate.h:
4039         Fixed class name and include to be WKDOMRange.
4040         Fixed method name, _copyBundleRangeHandleRef, to match the
4041         name in the source file.
4042
4043 2013-02-15  Eric Carlson  <eric.carlson@apple.com>
4044
4045         [Mac] remove wkCaptionAppearance from WebKitSystemInterface
4046         https://bugs.webkit.org/show_bug.cgi?id=109996
4047
4048         Reviewed by Simon Fraser.
4049
4050         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
4051         (InitWebCoreSystemInterface):
4052
4053 2013-02-15  Sheriff Bot  <webkit.review.bot@gmail.com>
4054
4055         Unreviewed, rolling out r143088.
4056         http://trac.webkit.org/changeset/143088
4057         https://bugs.webkit.org/show_bug.cgi?id=110000
4058
4059         Breaks the build (Requested by dgorbik on #webkit).
4060
4061         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
4062         (InitWebCoreSystemInterface):
4063
4064 2013-02-15  Kiran Muppala  <cmuppala@apple.com>
4065
4066         Disable sudden termination on Mac
4067         https://bugs.webkit.org/show_bug.cgi?id=109990
4068
4069         Reviewed by Mark Rowe.
4070
4071         Sudden Termination is causing WebContent XPC services to be killed in
4072         response to memory pressure.  Hence, disable it until we can identify
4073         if it is being enabled in error or not.
4074
4075         * Shared/mac/ChildProcessMac.mm:
4076         (WebKit::ChildProcess::platformInitialize): Add call to
4077         [NSProcessInfo disableSuddenTermination].
4078
4079 2013-02-15  Eric Carlson  <eric.carlson@apple.com>
4080
4081         [Mac] remove wkCaptionAppearance from WebKitSystemInterface
4082         https://bugs.webkit.org/show_bug.cgi?id=109996
4083
4084         Reviewed by Simon Fraser.
4085
4086         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
4087         (InitWebCoreSystemInterface):
4088
4089 2013-02-15  Adenilson Cavalcanti  <cavalcantii@gmail.com>
4090
4091         [Qt][WK2] Crash on window resize if WebProcess is closed/crashed
4092         https://bugs.webkit.org/show_bug.cgi?id=109216
4093
4094         Reviewed by Benjamin Poulain.
4095
4096         Only make calls into DrawingAreaProxy pointer after checking its state.
4097
4098         When the WebProcess was closed or crashed, WebKit::WebPageProxy will set
4099         its DrawingAreaProxy pointer to null. Resize events on UIProcess/client will
4100         try to access the object to update the geometry and forward this information
4101         into the WebProcess. This would create a crash scenario that is fixed by this patch.
4102
4103         * UIProcess/API/qt/qquickwebview.cpp:
4104         (QQuickWebViewPrivate::didRelaunchProcess):
4105         (QQuickWebViewLegacyPrivate::updateViewportSize):
4106
4107 2013-02-15  Anders Carlsson  <andersca@apple.com>
4108
4109         Add HashMap::isValidKey and HashSet::isValidValue
4110         https://bugs.webkit.org/show_bug.cgi?id=109977
4111
4112         Reviewed by Sam Weinig and Darin Adler.
4113
4114         Just call HashMap::isValidKey directly.
4115
4116         * UIProcess/WebProcessProxy.cpp:
4117         (WebKit::generatePageID):
4118         Initialize the id to 0 and use prefix increment.
4119
4120         (WebKit::WebProcessProxy::webFrame):