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