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