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