Unreviewed, rolling out r154989.
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2013-09-04  Commit Queue  <commit-queue@webkit.org>
2
3         Unreviewed, rolling out r154989.
4         http://trac.webkit.org/changeset/154989
5         https://bugs.webkit.org/show_bug.cgi?id=120678
6
7         This patch might broke apps using webkitgtk not from the main
8         thread (Requested by msanchez on #webkit).
9
10         * UIProcess/API/gtk/WebKitWebView.cpp:
11         (webkitWebViewRunAsModal):
12         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
13         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
14
15 2013-09-04  Zan Dobersek  <zdobersek@igalia.com>
16
17         [GTK] Add support for the Wayland build target
18         https://bugs.webkit.org/show_bug.cgi?id=120627
19
20         Reviewed by Gustavo Noronha Silva.
21
22         * GNUmakefile.list.am: Build X11-specific NetscapePluginModule and NetscapePlugin classes if building the X11 target,
23         fall back to the generic, empty classes otherwise.
24         * PluginProcess/unix/PluginProcessMainUnix.cpp:
25         (WebKit::PluginProcessMainUnix): Guard the NetscapePluginModule::scanPlugin() invocation with PLUGIN_ARCHITECTURE(X11),
26         it's at the moment specific to the X11 implementation of the Netscape plugins.
27         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: Guard PluginProcessProxy::scanPlugin() with PLUGIN_ARCHITECTURE(X11),
28         just like it's guarded in the PluginProcessProxy class declaration.
29         * UIProcess/cairo/BackingStoreCairo.cpp: Additionally guard <gdk/gdkx.h> and WidgetBackingStoreGtkX11 inclusion and use
30         with PLATFORM(X11), this code should only be built when building the X11 target.
31         (WebKit::createBackingStoreForGTK):
32         * UIProcess/gtk/WebPageProxyGtk.cpp: Guard the createPluginContainer() and windowedPluginGeometryDidChange() methods and their
33         helper functions and objects with PLUGIN_ARCHITECTURE(X11), just like they're guarded in the WebPageProxy class declaration.
34         * config.h: Only define PLUGIN_ARCHITECTURE_X11 to 1 if we're actually building the X11 target.
35
36 2013-09-03  Darin Adler  <darin@apple.com>
37
38         REGRESSION (r154967) window resize is very choppy
39         https://bugs.webkit.org/show_bug.cgi?id=120653
40
41         Reviewed by Andreas Kling.
42
43         Andreas Kling spotted the bad change.
44
45         * Platform/CoreIPC/Connection.cpp:
46         (CoreIPC::Connection::waitForMessage): Roll out this incorrect change.
47         The code here is not the same as a call to take.
48
49 2013-09-03  Anton Obzhirov  <a.obzhirov@samsung.com>
50
51         [GTK] gdk threads deprecated functions calls should be refactored
52         https://bugs.webkit.org/show_bug.cgi?id=120070
53
54         Reviewed by Mario Sanchez Prada.
55
56         Removed deprecated functions gdk_threads_leave()/gdk_threads_enter() functions since
57         there is no more checks for threads lock in GTK 3.6.
58
59         * UIProcess/API/gtk/WebKitWebView.cpp:
60         (webkitWebViewRunAsModal):
61         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
62         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
63
64 2013-09-03  Brian Holt  <brian.holt@samsung.com>
65
66         [GTK] [WK2] TestContextMenu default-menu fails
67         https://bugs.webkit.org/show_bug.cgi?id=120459
68
69         Reviewed by Gustavo Noronha Silva.
70
71         Add context menu items for downloading media elements.
72
73         * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
74         (webkitContextMenuActionGetActionTag):
75         (webkitContextMenuActionGetForContextMenuItem):
76         (webkitContextMenuActionGetLabel):
77         * UIProcess/API/gtk/WebKitContextMenuActions.h:
78         * UIProcess/API/gtk/tests/TestContextMenu.cpp:
79
80 2013-09-02  Darin Adler  <darin@apple.com>
81
82         Cut down on double hashing and code needlessly using hash table iterators
83         https://bugs.webkit.org/show_bug.cgi?id=120611
84
85         Reviewed by Andreas Kling.
86
87         * Platform/CoreIPC/Connection.cpp:
88         (CoreIPC::Connection::waitForMessage): Use take instead of find/remove.
89
90         * UIProcess/WebPreferences.cpp:
91         (WebKit::WebPreferences::removePageGroup): Use the return value from remove
92         instead of find/remove.
93
94         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
95         (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
96         (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
97         Use take instead of find/remove.
98
99         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
100         (WebKit::NetscapePlugin::frameDidFinishLoading): Use take instead of find/remove.
101         (WebKit::NetscapePlugin::frameDidFail): Use take instead of find/remove.
102
103         * WebProcess/WebPage/WebBackForwardListProxy.cpp:
104         (WebKit::WebBackForwardListProxy::removeItem): Use take instead of find/remove.
105
106         * WebProcess/WebPage/WebPage.cpp:
107         (WebKit::WebPage::didFinishCheckingText): Use take instead of get/remove so we
108         hash only once.
109         (WebKit::WebPage::didCancelCheckingText): Ditto.
110         (WebKit::WebPage::stopExtendingIncrementalRenderingSuppression): Use the return
111         value from remove instead of contains/remove so we hash only once.
112
113 2013-09-02  Darin Adler  <darin@apple.com>
114
115         [Mac] No need for HardAutorelease, which is same as CFBridgingRelease
116         https://bugs.webkit.org/show_bug.cgi?id=120569
117
118         Reviewed by Andy Estes.
119
120         * Platform/mac/StringUtilities.mm:
121         (WebKit::nsStringFromWebCoreString): Use CFBridgingRelease. Also
122         changed condition to be a little cleaner and use a constant string for empty
123         strings as well as null strings.
124
125         * UIProcess/API/mac/WKBrowsingContextController.mm:
126         (autoreleased): Switched from autorelease to CFBridgingRelease for strings,
127         which eliminates a type cast and makes this work under GC, although I don't
128         think we should compile WebKit2 for GC.
129
130         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
131         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
132         Use CFBridgingRelease.
133
134 2013-09-02  Csaba Osztrogonác  <ossy@webkit.org>
135
136         REGRESSION(r154909): caused many crashes on Qt WK2, EFL WK2
137         https://bugs.webkit.org/show_bug.cgi?id=120600
138
139         Reviewed by Andreas Kling.
140
141         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
142         (CoreIPC::::decode): keyTime should be double here too.
143
144 2013-09-01  Alexey Proskuryakov  <ap@apple.com>
145
146         [WK2][Mac] Drag and drop tests interfere with user's UI
147         https://bugs.webkit.org/show_bug.cgi?id=120538
148
149         Reviewed by Dan Bernstein.
150
151         * UIProcess/API/mac/WKView.mm: (-[WKView _setDragImage:at:linkDrag:]): Make it possible
152         to override drag initiation in subclasses. It is a bit unfortunate that this exposes
153         a deprecated API that we call, but probably not unfortunate enough to invent a new
154         scary looking name for the same function, and conditionally call that if implemented
155         by subclass.
156
157 2013-08-31  Santosh Mahto  <santosh.ma@samsung.com>
158
159         warning: unused parameter point and area in EwkView.cpp:1390
160         https://bugs.webkit.org/show_bug.cgi?id=120545
161
162         Reviewed by Darin Adler.
163
164         * UIProcess/API/efl/EwkView.cpp:
165         (EwkView::didFindZoomableArea): Added UNUSED_PARAM.
166
167 2013-08-31  Jae Hyun Park  <jae.park@company100.net>
168
169         Remove unused variable in LayerTreeHost
170         https://bugs.webkit.org/show_bug.cgi?id=118950
171
172         Reviewed by Anders Carlsson.
173
174         m_waitingForUIProcess has been renamed to m_isWaitingForRenderer as of
175         r152183, and it is a private variable in CoordinatedLayerTreeHost. Thus,
176         we don't need m_waitingForUIProcess in LayerTreeHost.
177
178         * WebProcess/WebPage/LayerTreeHost.h:
179
180 2013-08-30  Brian Holt  <brian.holt@samsung.com>
181
182         [GTK] [WK2] TestWebKitWebView snapshot fails
183         https://bugs.webkit.org/show_bug.cgi?id=120404
184
185         Reviewed by Darin Adler.
186
187         Fixed the snapshot test failure caused by GTK no longer allowing
188         widgets to resize.  Instead, resize the WebView by resizing the
189         window and waiting for the event to complete asynchronously.
190
191         * UIProcess/API/gtk/tests/WebViewTest.cpp:
192         (WebViewTest::resizeView):
193
194 2013-08-30  Csaba Osztrogonác  <ossy@webkit.org>
195
196         Add USE(PROTECTION_SPACE_AUTH_CALLBACK) guards to canAuthenticateAgainstProtectionSpace()
197         https://bugs.webkit.org/show_bug.cgi?id=120351
198
199         Reviewed by Darin Adler.
200
201         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
202         * NetworkProcess/AsynchronousNetworkLoaderClient.h:
203         * NetworkProcess/NetworkLoaderClient.h:
204         * NetworkProcess/SynchronousNetworkLoaderClient.cpp:
205         * NetworkProcess/SynchronousNetworkLoaderClient.h:
206
207 2013-08-30  Gabor Abraham  <abrhm@inf.u-szeged.hu>
208
209         Fix, remove unused parameter in UIProcess/WebColorPicker.cpp.
210         https://bugs.webkit.org/show_bug.cgi?id=120525
211
212         Reviewed by Darin Adler.
213
214         * UIProcess/WebColorPicker.cpp:
215         (WebKit::WebColorPicker::showColorPicker):
216
217 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
218
219         Resolve unused parameter warning in WebPlatformStrategies.cpp
220         https://bugs.webkit.org/show_bug.cgi?id=120515
221
222         Reviewed by Darin Adler.
223
224         * WebProcess/WebPage/TapHighlightController.cpp:
225         (WebKit::TapHighlightController::drawRect):
226
227 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
228
229         Resolve unused parameter warning in FindController.cpp
230         https://bugs.webkit.org/show_bug.cgi?id=120516
231
232         Reviewed by Darin Adler.
233
234         * WebProcess/WebPage/FindController.cpp:
235         (WebKit::FindController::drawRect):
236
237 2013-08-30  Tamas Czene  <tczene@inf.u-szeged.hu>
238
239         Resolve unused parameter warning in WKBundlePageOverlay.cpp
240         https://bugs.webkit.org/show_bug.cgi?id=120521
241
242         Reviewed by Andreas Kling.
243
244         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
245         (WKBundlePageOverlayFractionFadedIn):
246
247 2013-08-30  Antti Koivisto  <antti@apple.com>
248
249         Remove code behind ENABLE(DIALOG_ELEMENT)
250         https://bugs.webkit.org/show_bug.cgi?id=120467
251
252         Reviewed by Darin Adler.
253
254         * Configurations/FeatureDefines.xcconfig:
255
256 2013-08-29  Sam Weinig  <sam@webkit.org>
257
258         Add ENABLE gaurds for Promises
259         https://bugs.webkit.org/show_bug.cgi?id=120488
260
261         Reviewed by Andreas Kling.
262
263         * Configurations/FeatureDefines.xcconfig:
264
265 2013-08-29  Zan Dobersek  <zdobersek@igalia.com>
266
267         [Automake] libWebCoreDOM.la could use a better name
268         https://bugs.webkit.org/show_bug.cgi?id=120232
269
270         Reviewed by Martin Robinson.
271
272         * GNUmakefile.am: libWebCoreDOM has a new name - libGObjectDOMBindings.
273
274 2013-08-29  Joseph Pecoraro  <pecoraro@apple.com>
275
276         Web Inspector: Download Web Archive of Inspected Page
277         https://bugs.webkit.org/show_bug.cgi?id=119774
278
279         Reviewed by Timothy Hatcher.
280
281         Update to support InspectorFrontendHost.save's new base64Encoded
282         parameter. It means the incoming content is binary data, not a string.
283
284         * UIProcess/WebInspectorProxy.cpp:
285         (WebKit::WebInspectorProxy::save):
286         * UIProcess/WebInspectorProxy.h:
287         * UIProcess/WebInspectorProxy.messages.in:
288         * UIProcess/efl/WebInspectorProxyEfl.cpp:
289         (WebKit::WebInspectorProxy::platformSave):
290         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
291         (WebKit::WebInspectorProxy::platformSave):
292         * UIProcess/mac/WebInspectorProxyMac.mm:
293         (WebKit::WebInspectorProxy::platformSave):
294         * UIProcess/qt/WebInspectorProxyQt.cpp:
295         (WebKit::WebInspectorProxy::platformSave):
296         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
297         (WebKit::WebInspectorFrontendClient::save):
298         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
299         * WebProcess/WebPage/WebInspector.cpp:
300         (WebKit::WebInspector::save):
301         * WebProcess/WebPage/WebInspector.h:
302
303 2013-08-29  Brian Holt  <brian.holt@samsung.com>
304
305         [GTK] [WK2] TestWebKitWebView page-visibility fails
306         https://bugs.webkit.org/show_bug.cgi?id=120406
307
308         Reviewed by Gustavo Noronha Silva.
309
310         Removed the webkit prefix for document visibility properties.
311
312         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
313         (testWebViewPageVisibility):
314
315 2013-08-28  Chris Curtis  <chris_curtis@apple.com>
316
317         https://bugs.webkit.org/show_bug.cgi?id=119548
318         Refactoring Exception throws.
319
320         Reviewed by Geoffrey Garen.
321         
322         Moved setting an exception into the vm, These functions changed to use the new functionality.
323
324         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
325         (WebKit::JSNPObject::callMethod):
326         (WebKit::JSNPObject::callObject):
327         (WebKit::JSNPObject::callConstructor):
328         (WebKit::JSNPObject::throwInvalidAccessError):
329         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
330         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
331
332 2013-08-28  Anders Carlsson  <andersca@apple.com>
333
334         Allow the Flash plug-in to open its preference pane
335         https://bugs.webkit.org/show_bug.cgi?id=120431
336         <rdar://problem/14857039>
337
338         Reviewed by Andreas Kling.
339
340         Forward the -[NSWorkspace openFile:] call to the UI process and allow opening
341         the Flash preference pane (if Flash asks for it).
342
343         * PluginProcess/PluginProcess.h:
344         * PluginProcess/mac/PluginProcessMac.mm:
345         (WebKit::replacedNSWorkspace_openFile):
346         (WebKit::initializeCocoaOverrides):
347         (WebKit::PluginProcess::openFile):
348         * UIProcess/Plugins/PluginProcessProxy.h:
349         * UIProcess/Plugins/PluginProcessProxy.messages.in:
350         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
351         (WebKit::PluginProcessProxy::openURL):
352         (WebKit::shouldOpenFile):
353         (WebKit::PluginProcessProxy::openFile):
354
355 2013-08-28  Tamas Czene  <tczene@inf.u-szeged.hu>
356
357         [wk2] Resolve unused parameters in WebPlatformStrategies.cpp
358         https://bugs.webkit.org/show_bug.cgi?id=120410
359
360         Reviewed by Darin Adler.
361
362         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
363         (WebKit::WebPlatformStrategies::getPluginInfo):
364         (WebKit::WebPlatformStrategies::transientLocalStorageNamespace):
365
366 2013-08-28  Tamas Czene  <tczene@inf.u-szeged.hu>
367
368         [wk2] Resolve unused parameter warnings in the WebProcess.cpp
369         https://bugs.webkit.org/show_bug.cgi?id=120412
370
371         Reviewed by Darin Adler.
372
373         * WebProcess/WebProcess.cpp:
374         (WebKit::WebProcess::startMemorySampler):
375
376 2013-08-28  Darin Adler  <darin@apple.com>
377
378         Eliminate Pasteboard::generalPasteboard
379         https://bugs.webkit.org/show_bug.cgi?id=120392
380
381         Reviewed by Anders Carlsson.
382
383         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
384         (WebKit::WebEditorClient::updateGlobalSelection):
385         Use createForGlobalSelection instead of generalPasteboard and setSelectionMode.
386
387 2013-08-28  Ábrahám Gábor  <abrhm@inf.u-szeged.hu>
388
389         Fix unused variable warning.
390         https://bugs.webkit.org/show_bug.cgi?id=120396
391
392         Reviewed by Allan Sandfeld Jensen.
393
394         Fix unused variable compiler warning in PageOverlay.h
395
396         * WebProcess/WebPage/PageOverlay.h:
397         (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
398         (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
399
400
401 2013-08-28  Zan Dobersek  <zdobersek@igalia.com>
402
403         [GTK][WK2] Only set up a RedirectedXCompositeWindow if running under an X11 display
404         https://bugs.webkit.org/show_bug.cgi?id=120321
405
406         Reviewed by Gustavo Noronha Silva.
407
408         Only set up the RedirectedXCompositeWindow member of the WebKitWebViewBasePrivate struct
409         if we're running under an X11 display. This is now done in the webkitWebViewBaseConstructed
410         function rather than the constructor, which is removed.
411
412         This allows for the UIProcess to run in a Wayland environment even when built with accelerated
413         compositing enabled. Of course, at the moment there's no support yet for accelerated compositing
414         under Wayland, so we fall back to rendering the backing store. No changes are introduced to
415         the behavior under X11 - accelerated compositing will be used where possible, if supported.
416
417         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
418         (webkitWebViewBaseConstructed):
419
420 2013-08-28  Zan Dobersek  <zdobersek@igalia.com>
421
422         [GTK][WK2] Disable accelerated compositing under Wayland
423         https://bugs.webkit.org/show_bug.cgi?id=120347
424
425         Reviewed by Martin Robinson.
426
427         Accelerated compositing is not yet supported under the Wayland display protocol,
428         so it should be disabled. Since it is enabled by default and the GTK WK2 API does
429         not provide any way to change that, it's enough to disable it when attaching the
430         WebKitSettings object to the WebPageGroup if running under Wayland.
431
432         * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
433         (webkitWebViewGroupAttachSettingsToPageGroup):
434
435 2013-08-28  Alexandre Abreu  <alexandre.abreu@canonical.com>
436
437         Add a 'isMainFrame' parameter to QWebNavigationRequest.
438         https://bugs.webkit.org/show_bug.cgi?id=118860
439
440         Reviewed by Simon Hausmann.
441
442         * UIProcess/API/qt/qwebnavigationrequest.cpp:
443         (QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
444         (QWebNavigationRequest::QWebNavigationRequest):
445         (QWebNavigationRequest::navigationType):
446         (QWebNavigationRequest::isMainFrame):
447         * UIProcess/API/qt/qwebnavigationrequest_p.h:
448         * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
449         * UIProcess/qt/QtWebPagePolicyClient.cpp:
450         (WebKit::QtWebPagePolicyClient::decidePolicyForNavigationAction):
451         * UIProcess/qt/QtWebPagePolicyClient.h:
452
453 2013-08-27  Luciano Wolf  <luciano.wolf@openbossa.org>
454
455         100% cpu usage for "transition: opacity" animation
456         https://bugs.webkit.org/show_bug.cgi?id=120012
457
458         Reviewed by Noam Rosenthal.
459
460         Schedule animation timer after scheduling a layer flush. This way it
461         won't overwrite animation timer with "0", thus avoiding 100% cpu usage.
462
463         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
464         (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
465
466 2013-08-27  Csaba Osztrogonác  <ossy@webkit.org>
467
468         [WK2][Soup] Add WebFrameNetworkingContext::webFrameLoaderClient() after r154490
469         https://bugs.webkit.org/show_bug.cgi?id=120353
470
471         Reviewed by Alexey Proskuryakov.
472
473         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
474         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
475         (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
476         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
477
478 2013-08-26  Santosh Mahto  <santosh.ma@samsung.com>
479
480         Fixing compilation warning "unused parameter" in WebPageProxy.cpp
481         https://bugs.webkit.org/show_bug.cgi?id=120205
482
483         Reviewed by Anders Carlsson.
484
485         * UIProcess/WebPageProxy.cpp:
486         (WebKit::WebPageProxy::findPlugin):
487         (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
488         Added UNUSED_PARAM to avoid warning.
489
490 2013-08-23  Andy Estes  <aestes@apple.com>
491
492         Fix issues found by the Clang Static Analyzer
493         https://bugs.webkit.org/show_bug.cgi?id=120230
494
495         Reviewed by Darin Adler.
496
497         * UIProcess/API/mac/WKBrowsingContextController.mm:
498         (autoreleased): Don't leak CFURLs when in Objective-C GC.
499         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
500         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
501         Don't leak CFStrings when in Objective-C GC.
502
503 2013-08-26  Csaba Osztrogonác  <ossy@webkit.org>
504
505         [WK2] Buildfix for non Mac platforms
506         https://bugs.webkit.org/show_bug.cgi?id=120294
507
508         Reviewed by Darin Adler.
509
510         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
511         (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
512         * NetworkProcess/NetworkResourceLoader.h:
513
514 2013-08-26  Alexey Proskuryakov  <ap@apple.com>
515
516         [Mac] can-read-in-dragstart-event.html and can-read-in-copy-and-cut-events.html fail
517         https://bugs.webkit.org/show_bug.cgi?id=113094
518
519         Reviewed by Darin Adler.
520
521         Return new pasteboard change count from all functions that change it.
522
523         * UIProcess/WebContext.h:
524         * UIProcess/WebContext.messages.in:
525         * UIProcess/mac/WebContextMac.mm:
526         (WebKit::WebContext::pasteboardCopy):
527         (WebKit::WebContext::addPasteboardTypes):
528         (WebKit::WebContext::setPasteboardTypes):
529         (WebKit::WebContext::setPasteboardPathnamesForType):
530         (WebKit::WebContext::setPasteboardStringForType):
531         (WebKit::WebContext::setPasteboardBufferForType):
532         * WebProcess/Plugins/PDF/PDFPlugin.mm:
533         (WebKit::PDFPlugin::writeItemsToPasteboard):
534         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
535         (WebKit::WebPlatformStrategies::copy):
536         (WebKit::WebPlatformStrategies::changeCount):
537         (WebKit::WebPlatformStrategies::addTypes):
538         (WebKit::WebPlatformStrategies::setTypes):
539         (WebKit::WebPlatformStrategies::setBufferForType):
540         (WebKit::WebPlatformStrategies::setPathnamesForType):
541         (WebKit::WebPlatformStrategies::setStringForType):
542         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
543
544 2013-08-26  Andreas Kling  <akling@apple.com>
545
546         Unreviewed build fix.
547
548         * WebProcess/WebPage/WebFrame.cpp:
549         (WebKit::WebFrame::createWithCoreMainFrame):
550         (WebKit::WebFrame::createSubframe):
551
552 2013-08-26  Pratik Solanki  <psolanki@apple.com>
553
554         PageGroup::groupSettings() should return a reference
555         https://bugs.webkit.org/show_bug.cgi?id=120319
556
557         Reviewed by Andreas Kling.
558
559         PageGroup::m_groupSettings is never NULL so we can just return a reference from groupSettings().
560
561         * WebProcess/Storage/StorageNamespaceImpl.cpp:
562         (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
563
564 2013-08-26  Andreas Kling  <akling@apple.com>
565
566         WebCore: Let Page create the main Frame.
567         <https://webkit.org/b/119964>
568
569         Reviewed by Anders Carlsson.
570
571         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
572         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
573         (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
574
575             This starts out with a null WebFrame* pointer now.
576
577         (WebKit::WebFrameLoaderClient::setWebFrame):
578
579             WebFrame hooks itself up through this as soon as it's constructed.
580
581         (WebKit::WebFrameLoaderClient::frameLoaderDestroyed):
582
583             Tweak an out-of-date comment. The ref() we're balancing out comes from
584             WebFrame::create().
585
586         * WebProcess/WebPage/WebFrame.cpp:
587         (WebKit::WebFrame::createWithCoreMainFrame):
588
589             Rewrote createMainFrame() as createWithCoreMainFrame(). The new method wraps
590             an existing WebCore::Frame instead of creating a new one.
591
592         (WebKit::WebFrame::createSubframe):
593
594             Merged WebFrame::init() into here since the logic isn't shared with main
595             Frame creation anymore.
596
597         (WebKit::WebFrame::create):
598         (WebKit::WebFrame::WebFrame):
599
600             Call WebFrameLoaderClient::setWebFrame(this).
601
602         * WebProcess/WebPage/WebFrame.h:
603
604             WebFrame::m_frameLoaderClient is now an OwnPtr rather than an inline member.
605             This way it can be created before the WebFrame.
606
607         * WebProcess/WebPage/WebPage.cpp:
608         (WebKit::WebPage::WebPage):
609
610             Set up a WebFrameLoaderClient and pass it to the Page constructor along with
611             the other PageClients.
612
613 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
614
615         [GTK] Add WebKit2 API for isolated worlds
616         https://bugs.webkit.org/show_bug.cgi?id=103377
617
618         Reviewed by Anders Carlsson.
619
620         * GNUmakefile.list.am: Add new files to compilation.
621         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
622         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
623         (testWebExtensionWindowObjectCleared):
624         (scriptDialogCallback):
625         (runJavaScriptInIsolatedWorldFinishedCallback):
626         (testWebExtensionIsolatedWorld):
627         (beforeAll):
628         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
629         (echoCallback):
630         (windowObjectCleared):
631         (getWebPage):
632         (methodCallCallback):
633         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
634         (webkit_frame_get_javascript_context_for_script_world): New public
635         method to tget the JavaScript execution context for a given script
636         world.
637         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
638         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
639         (scriptWorlds): Global WebKitScriptWorld map.
640         (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
641         (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
642         given injected bundle script world.
643         (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
644         bundle script world wrapped by the given WebKitScriptWorld.
645         (webkitScriptWorldWindowObjectCleared): Emit
646         WebKitScriptWorld::window-object-cleared signal.
647         (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
648         the given injected bundle script world.
649         (createDefaultScriptWorld): Create the default WebKitScriptWorld
650         wrapping the normal world.
651         (webkit_script_world_get_default): Return the default WebKitScriptWorld.
652         (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
653         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
654         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
655         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
656         (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
657         (webkitWebPageCreate): Add implementation for callback
658         didClearWindowObjectForFrame in injected bundle loader client.
659         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
660         Include WebKitScriptWorld.h.
661
662 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
663
664         [WebKit2] Offsets for WKBundlePageLoaderClient in APIClientTraits are wrong
665         https://bugs.webkit.org/show_bug.cgi?id=120268
666
667         Reviewed by Anders Carlsson.
668
669         * Shared/APIClientTraits.cpp: Use always the first member of every
670         version as the offset of the version.
671
672 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
673
674         [GTK] Add missing initializer for pluginLoadPolicy in WKPageLoaderClient
675         https://bugs.webkit.org/show_bug.cgi?id=120289
676
677         Reviewed by Philippe Normand.
678
679         * UIProcess/API/gtk/WebKitLoaderClient.cpp:
680         (attachLoaderClientToView): Add initializer for pluginLoadPolicy
681         and rename the comment of the previous one as
682         pluginLoadPolicy_deprecatedForUseWithV2.
683
684 2013-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
685
686         [GTK] webkitCredentialGetCredential returns a temporary in g_return_val_if_fail
687         https://bugs.webkit.org/show_bug.cgi?id=120287
688
689         Reviewed by Philippe Normand.
690
691         * UIProcess/API/gtk/WebKitCredential.cpp:
692         (webkitCredentialGetCredential): Use ASSERT() instead of
693         g_return_val_if_fail() since this is a private function.
694
695 2013-08-25  Zan Dobersek  <zdobersek@igalia.com>
696
697         Unreviewed GTK build fix after r154565.
698
699         * UIProcess/API/gtk/tests/TestInspector.cpp: Include the Vector header.
700         * UIProcess/API/gtk/tests/TestResources.cpp: Ditto.
701
702 2013-08-24  Darin Adler  <darin@apple.com>
703
704         Frame::tree should return a reference instead of a pointer
705         https://bugs.webkit.org/show_bug.cgi?id=120259
706
707         Reviewed by Andreas Kling.
708
709         * WebProcess/Plugins/PluginView.cpp:
710         (WebKit::PluginView::performJavaScriptURLRequest):
711         * WebProcess/Storage/StorageAreaMap.cpp:
712         (WebKit::StorageAreaMap::dispatchSessionStorageEvent):
713         (WebKit::StorageAreaMap::dispatchLocalStorageEvent):
714         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
715         (WebKit::WebFrameLoaderClient::createFrame):
716         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
717         (WebKit::WebContextMenuClient::searchWithSpotlight):
718         * WebProcess/WebPage/FindController.cpp:
719         (WebKit::frameWithSelection):
720         (WebKit::FindController::rectsForTextMatches):
721         * WebProcess/WebPage/WebFrame.cpp:
722         (WebKit::WebFrame::init):
723         (WebKit::WebFrame::contentsAsString):
724         (WebKit::WebFrame::name):
725         (WebKit::WebFrame::childFrames):
726         * WebProcess/WebPage/WebPage.cpp:
727         (WebKit::WebPage::clearMainFrameName):
728         (WebKit::WebPage::setDrawsBackground):
729         (WebKit::WebPage::setDrawsTransparentBackground):
730         (WebKit::WebPage::setWindowResizerSize):
731         (WebKit::frameWithSelection):
732         (WebKit::WebPage::unmarkAllMisspellings):
733         (WebKit::WebPage::unmarkAllBadGrammar):
734         (WebKit::pageContainsAnyHorizontalScrollbars):
735         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
736         (WebKit::TiledCoreAnimationDrawingArea::forceRepaint):
737         Use tree(). instead of tree()->.
738
739 2013-08-24  Commit Queue  <commit-queue@webkit.org>
740
741         Unreviewed, rolling out r154545.
742         http://trac.webkit.org/changeset/154545
743         https://bugs.webkit.org/show_bug.cgi?id=120252
744
745         Broke WebKit2 API tests (Requested by andersca on #webkit).
746
747         * GNUmakefile.list.am:
748         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
749         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
750         (beforeAll):
751         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
752         (methodCallCallback):
753         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
754         (webkit_frame_get_javascript_global_context):
755         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
756         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Removed.
757         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Removed.
758         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Removed.
759         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
760         (webkitWebPageCreate):
761         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
762
763 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
764
765         [GTK] Add WebKit2 API for isolated worlds
766         https://bugs.webkit.org/show_bug.cgi?id=103377
767
768         Reviewed by Anders Carlsson.
769
770         * GNUmakefile.list.am: Add new files to compilation.
771         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
772         * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
773         (testWebExtensionWindowObjectCleared):
774         (scriptDialogCallback):
775         (runJavaScriptInIsolatedWorldFinishedCallback):
776         (testWebExtensionIsolatedWorld):
777         (beforeAll):
778         * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
779         (echoCallback):
780         (windowObjectCleared):
781         (getWebPage):
782         (methodCallCallback):
783         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
784         (webkit_frame_get_javascript_context_for_script_world): New public
785         method to tget the JavaScript execution context for a given script
786         world.
787         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
788         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
789         (scriptWorlds): Global WebKitScriptWorld map.
790         (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
791         (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
792         given injected bundle script world.
793         (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
794         bundle script world wrapped by the given WebKitScriptWorld.
795         (webkitScriptWorldWindowObjectCleared): Emit
796         WebKitScriptWorld::window-object-cleared signal.
797         (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
798         the given injected bundle script world.
799         (createDefaultScriptWorld): Create the default WebKitScriptWorld
800         wrapping the normal world.
801         (webkit_script_world_get_default): Return the default WebKitScriptWorld.
802         (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
803         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
804         * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
805         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
806         (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
807         (webkitWebPageCreate): Add implementation for callback
808         didClearWindowObjectForFrame in injected bundle loader client.
809         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
810         Include WebKitScriptWorld.h.
811
812 2013-08-24  Carlos Garcia Campos  <cgarcia@igalia.com>
813
814         [GTK] Expose WebKitFrame in WebKit2GTK+ web extensions API
815         https://bugs.webkit.org/show_bug.cgi?id=119743
816
817         Reviewed by Anders Carlsson.
818
819         * GNUmakefile.list.am: Add new files to compilation.
820         * Shared/APIClientTraits.cpp: Update for new interface version.
821         * Shared/APIClientTraits.h: Ditto.
822         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add WebKitFrame
823         section.
824         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new public
825         symbols.
826         * UIProcess/API/gtk/docs/webkit2gtk.types: Add
827         webkit_frame_get_type.
828         * UIProcess/API/gtk/tests/FrameTest.cpp: Added.
829         (WebKitFrameTest::create):
830         (WebKitFrameTest::webPageFromArgs):
831         (WebKitFrameTest::testMainFrame):
832         (WebKitFrameTest::testURI):
833         (WebKitFrameTest::testJavaScriptContext):
834         (WebKitFrameTest::runTest):
835         (registerTests):
836         * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test files.
837         * UIProcess/API/gtk/tests/TestFrame.cpp: Added.
838         (webkitFrameTestRun):
839         (testWebKitFrameMainFrame):
840         (testWebKitFrameURI):
841         (testWebKitFrameJavaScriptContext):
842         (beforeAll):
843         (afterAll):
844         * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add
845         willDestroyFrame callback to the injected bundle loader client, to
846         notify the client when a frame is about to be destroyed.
847         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp: Added.
848         (webkit_frame_class_init):
849         (webkitFrameCreate):
850         (webkit_frame_is_main_frame):
851         (webkit_frame_get_uri):
852         (webkit_frame_get_javascript_global_context):
853         * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Added.
854         * WebProcess/InjectedBundle/API/gtk/WebKitFramePrivate.h: Added.
855         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
856         (webkitFrameGetOrCreate): Helper function to create a WebKitFrame
857         wrapping the given WebFrame or returning the wrapper if it already
858         exists.
859         (willDestroyFrame): Remove the WebKitFrame wrapping the given
860         WebFrame if it exists.
861         (webkitWebPageCreate): Add willDestroyFrame implementation to
862         injected bundle loader client.
863         (webkit_web_page_get_main_frame): Return the main frame of the
864         page.
865         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
866         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
867         Include WebKitFrame.h.
868         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
869         (WebKit::InjectedBundlePageLoaderClient::willDestroyFrame): New
870         callback to be called when a frame is about to be destroyed.
871         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
872         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
873         (WebKit::WebFrameLoaderClient::frameLoaderDestroyed): Call
874         willDestroyFrame callback of injected bundle loader client.
875         * WebProcess/qt/QtBuiltinBundlePage.cpp:
876         (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage): Add
877         willDestroyFrame callback.
878
879 2013-08-24  Antti Koivisto  <antti@apple.com>
880
881         Revert accidental change.
882         
883         Not reviewed.
884
885         * WebProcess/com.apple.WebProcess.sb.in:
886
887 2013-08-23  Beth Dakin  <bdakin@apple.com>
888
889         REGRESSION (r132545): Some PDFs generated by WebKit are blank when viewed in 
890         Adobe Reader
891         https://bugs.webkit.org/show_bug.cgi?id=120240
892         -and corresponding-
893         <rdar://problem/14634453>
894
895         Reviewed by Anders Carlsson.
896
897         Hook up new WebSystemInterface API to find out if the current context is the PDF 
898         context. 
899
900         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
901         (InitWebCoreSystemInterface):
902
903 2013-08-23  Alexey Proskuryakov  <ap@apple.com>
904
905         [WK2] Assertion failures when loading XSL stylesheets with NetworkProcess
906         https://bugs.webkit.org/show_bug.cgi?id=120186
907         <rdar://problem/14080273>
908
909         Reviewed by Brady Eidson.
910
911         Covered by many existing tests.
912
913         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
914         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass frame ID and page ID.
915         They are mostly needed for authentication, which is not supported with sync requests,
916         but it will be supported some day.
917
918         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
919         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
920         (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
921         Added a way to get frame loader client from WebKit NetworkingContext subclass.
922
923 2013-08-22  Carlos Garcia Campos  <cgarcia@igalia.com>
924
925         [GTK] Wrong interface version used in WebKitWebPage for loader client
926         https://bugs.webkit.org/show_bug.cgi?id=120199
927
928         Reviewed by Gustavo Noronha Silva.
929
930         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
931         (webkitWebPageCreate): Use kWKBundlePageLoaderClientCurrentVersion
932         instead of kWKBundlePageResourceLoadClientCurrentVersion in loader
933         client initialization.
934
935 2013-08-22  Simon Cooper  <scooper@apple.com>
936
937         Need to disable FakeSYSVSHM when sandboxing is not enabled
938         https://bugs.webkit.org/show_bug.cgi?id=120182
939         <rdar://problem/14814461>
940
941         Reviewed by Alexey Proskuryakov.
942
943         When not in a sandbox do not enable the FakeSYSVSHIM. This
944         allows LocalConnection to work when Flash Player is run in
945         "Unsafe Mode".
946
947         * PluginProcess/mac/PluginProcessShim.mm:
948         (WebKit::shim_disabled):
949
950 2013-08-22  Andy Estes  <aestes@apple.com>
951
952         <https://webkit.org/b/120180> Fix issues with OTHER_LDFLAGS in various .xcconfig files
953
954         Reviewed by David Kilzer.
955
956         Adding ld flags for ASAN overwrote the unexported symbol flags we were
957         previously specifying. Since the unexported symbol ld flags are only
958         needed for the framework target, move them to WebKit2.xcconfig where we
959         can add them to OTHER_LDFLAGS along with the ASAN values inherited from
960         DebugRelease.xcconfig (and other values).
961
962         * Configurations/Base.xcconfig: Removed the unexported symbol ld flags.
963         * Configurations/WebKit2.xcconfig: ... and moved them here.
964
965 2013-08-21  Tim Horton  <timothy_horton@apple.com>
966
967         Another null-deref under WebDragClient::startDrag
968         https://bugs.webkit.org/show_bug.cgi?id=120145
969         <rdar://problem/14650652>
970
971         Reviewed by Simon Fraser.
972
973         convertImageToBitmap can legitimately return null, so don't dereference it.
974
975         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
976         (WebKit::WebDragClient::startDrag):
977
978 2013-08-21  Beth Dakin  <bdakin@apple.com>
979
980         <https://webkit.org/b/120140> Clients expect didFirstLayout-related calls to 
981         happen before didLayout
982
983         Reviewed by Anders Carlsson.
984
985         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
986         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
987
988 2013-08-21  Alexey Proskuryakov  <ap@apple.com>
989
990         REGRESSION (r145458?): WebProcess doesn't respect UI process localization
991         https://bugs.webkit.org/show_bug.cgi?id=120096
992
993         Reviewed by Darin Adler.
994
995         We used to get into a situation where CFBundle thought that we had no good localization,
996         and used one passed as default. This is never the case with mixed localizations,
997         so default is just ignored now.
998
999         I think that the previous behavior was a bit of a hack. As WebProcess is not localized,
1000         it's more honest to say that we want mixed localizations, and force the language
1001         to match UI process localization.
1002
1003         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
1004         (WebKit::ChildProcessMain): Don't set default localization, it's not taken into
1005         consideration unless all other attempts to compute bundle localization fail.
1006
1007         * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::createProcess): Pass
1008         UI process localization as -AppleLanguages argument, so that Core Foundation uses
1009         that instead of actual user languages. We want to match UI process localization.
1010
1011 2013-08-20  Gavin Barraclough  <barraclough@apple.com>
1012
1013         https://bugs.webkit.org/show_bug.cgi?id=120093
1014         Remove getOwnPropertyDescriptor trap
1015
1016         Reviewed by Geoff Garen.
1017
1018         All implementations of this method are now called via the method table, and equivalent in behaviour.
1019         Remove all duplicate implementations (and the method table trap), and add a single member function implementation on JSObject.
1020
1021         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1022         * WebProcess/Plugins/Netscape/JSNPObject.h:
1023             - remove getOwnPropertyDescriptor
1024
1025 2013-08-20  Pratik Solanki  <psolanki@apple.com>
1026
1027         <https://webkit.org/b/120029> Document::markers() should return a reference
1028
1029         Reviewed by Andreas Kling.
1030
1031         Document::m_markers is never NULL so return a reference from Document::markers(). Also mark
1032         m_markers as const and initialize it in member initialization.
1033
1034         * WebProcess/WebPage/FindController.cpp:
1035         (WebKit::FindController::rectsForTextMatches):
1036         * WebProcess/WebPage/WebPage.cpp:
1037         (WebKit::WebPage::unmarkAllMisspellings):
1038         (WebKit::WebPage::unmarkAllBadGrammar):
1039
1040 2013-08-20  Gavin Barraclough  <barraclough@apple.com>
1041
1042         https://bugs.webkit.org/show_bug.cgi?id=120053
1043         Remove custom getOwnPropertyDescriptor for JSNPObject
1044
1045         Reviewed by Oliver Hunt.
1046
1047         Think this is the last one!
1048
1049         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1050             - Remove custom getOwnPropertyDescriptor implementation.
1051
1052 2013-08-20  Anton Obzhirov  <a.obzhirov@samsung.com>
1053
1054         <https://webkit.org/b/119487> [Gtk] Cancel authentication on load failed
1055
1056         Reviewed by Martin Robinson.
1057
1058         Added callback to handle load-failed event in default authentication dialog.
1059         Authentication request gets cancelled and the dialog widget gets destroyed.
1060
1061         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1062         (pageLoadFailed):
1063         (webkitAuthenticationDialogInitialize):
1064         (webkitAuthenticationDialogDispose):
1065         (webkit_authentication_dialog_class_init):
1066         (webkitAuthenticationDialogNew):
1067         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1068         * UIProcess/API/gtk/WebKitWebView.cpp:
1069         (webkitWebViewAuthenticate):
1070
1071 2013-08-20  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1072
1073         [Qt][WK2] Doesn't build without Plugin-process
1074         https://bugs.webkit.org/show_bug.cgi?id=120060
1075
1076         Reviewed by Jocelyn Turcotte.
1077
1078         Disable netscape plugin api in WebKit2 when the plugin architecture is unsupported for WebKit2.
1079
1080         * Target.pri:
1081
1082 2013-08-19  Ryosuke Niwa  <rniwa@webkit.org>
1083
1084         <https://webkit.org/b/120049> Delete code for Snow Leopard
1085
1086         Reviewed by Benjamin Poulain.
1087
1088         * NetworkProcess/mac/NetworkProcessMac.mm:
1089         (WebKit::overrideSystemProxies):
1090         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
1091         * WebKit2Prefix.h:
1092
1093 2013-08-19  Beth Dakin  <bdakin@apple.com>
1094
1095         <https://webkit.org/b/120027> AXObjectCache's 
1096         accessibilityEnhancedUserInterfaceEnabled should be initialized on process 
1097         creation
1098
1099         Reviewed by Sam Weinig.
1100
1101         Right now we only call AXObjectCache::setEnhancedAccessibility() when AppKit sends 
1102         us a notification indicating that the value has changed. We should not have to 
1103         rely on that to properly initialize this value. It should be done with the 
1104         WebProcessCreationParamters. 
1105
1106         * Shared/WebProcessCreationParameters.cpp:
1107         (WebKit::WebProcessCreationParameters::encode):
1108         (WebKit::WebProcessCreationParameters::decode):
1109         * Shared/WebProcessCreationParameters.h:
1110         * UIProcess/mac/WebContextMac.mm:
1111         (WebKit::WebContext::platformInitializeWebProcess):
1112         * WebProcess/mac/WebProcessMac.mm:
1113         (WebKit::WebProcess::platformInitializeWebProcess):
1114
1115 2013-08-19  Pratik Solanki  <psolanki@apple.com>
1116
1117         <https://webkit.org/b/119918> Frame::selection() should return a reference
1118
1119         Reviewed by Darin Adler.
1120
1121         m_selection is never NULL so return a reference from Frame::selection(). Also removed some
1122         unnecessary null checks and assert diff ts exposed as a result.
1123
1124         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1125         (WebKit::WebEditorClient::updateGlobalSelection):
1126         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1127         (WebKit::collapseSelection):
1128         (WebKit::WebEditorClient::updateGlobalSelection):
1129         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1130         (WebKit::WebContextMenuClient::lookUpInDictionary):
1131         (WebKit::WebContextMenuClient::searchWithSpotlight):
1132         * WebProcess/WebPage/FindController.cpp:
1133         (WebKit::frameWithSelection):
1134         (WebKit::FindController::updateFindUIAfterPageScroll):
1135         (WebKit::FindController::getFindIndicatorBitmapAndRect):
1136         (WebKit::FindController::getImageForFindMatch):
1137         (WebKit::FindController::selectFindMatch):
1138         (WebKit::FindController::updateFindIndicator):
1139         (WebKit::FindController::drawRect):
1140         * WebProcess/WebPage/WebPage.cpp:
1141         (WebKit::WebPage::editorState):
1142         (WebKit::WebPage::scaledSnapshotWithOptions):
1143         (WebKit::WebPage::centerSelectionInVisibleArea):
1144         (WebKit::frameWithSelection):
1145         (WebKit::WebPage::clearSelection):
1146         (WebKit::WebPage::confirmComposition):
1147         (WebKit::WebPage::setComposition):
1148         (WebKit::WebPage::currentSelectionAsRange):
1149         * WebProcess/WebPage/mac/WebPageMac.mm:
1150         (WebKit::WebPage::setComposition):
1151         (WebKit::WebPage::insertText):
1152         (WebKit::WebPage::insertDictatedText):
1153         (WebKit::WebPage::getMarkedRange):
1154         (WebKit::WebPage::getSelectedRange):
1155         (WebKit::WebPage::getAttributedSubstringFromRange):
1156         (WebKit::WebPage::characterIndexForPoint):
1157         (WebKit::convertToRange):
1158         (WebKit::WebPage::performDictionaryLookupAtLocation):
1159         (WebKit::WebPage::readSelectionFromPasteboard):
1160         (WebKit::WebPage::getStringSelectionForPasteboard):
1161         (WebKit::WebPage::getDataSelectionForPasteboard):
1162
1163 2013-08-18  Darin Adler  <darin@apple.com>
1164
1165         <https://webkit.org/b/119989> Make use of Node::ownerDocument a compile time error
1166
1167         Reviewed by Sam Weinig.
1168
1169         * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
1170         (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): Use document instead of
1171         ownerDocument.
1172         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1173         (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Ditto.
1174
1175 2013-08-18  Dan Bernstein  <mitz@apple.com>
1176
1177         Fix clean engineering builds after r154251.
1178
1179         * WebKit2.xcodeproj/project.pbxproj: Removed references to the OfflineStorage XPC services
1180         from the “Copy XPC services for engineering builds” build phase.
1181
1182 2013-08-18  Gavin Barraclough  <barraclough@apple.com>
1183
1184         https://bugs.webkit.org/show_bug.cgi?id=119972
1185         Add attributes field to PropertySlot
1186
1187         Reviewed by Geoff Garen.
1188
1189         For all JSC types, this makes getOwnPropertyDescriptor redundant.
1190         There will be a bit more hacking required in WebCore to remove GOPD whilst maintaining current behaviour.
1191         (Current behaviour is in many ways broken, particularly in that GOPD & GOPS are inconsistent, but we should fix incrementally).
1192
1193         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1194         (WebKit::JSNPObject::getOwnPropertySlot):
1195         (WebKit::JSNPObject::getOwnPropertyDescriptor):
1196             - Pass attributes to PropertySlot::set* methods.
1197
1198 2013-08-16  Sam Weinig  <sam@webkit.org>
1199
1200         <https://webkit.org/b/119911> Remove the unused OfflineStorageProcess
1201
1202         Reviewed by Darin Adler.
1203
1204         * Configurations/OfflineStorageProcess.xcconfig: Removed.
1205         * Configurations/OfflineStorageService.Development.xcconfig: Removed.
1206         * Configurations/OfflineStorageService.xcconfig: Removed.
1207         * DerivedSources.make:
1208         * OfflineStorageProcess: Removed.
1209         * OfflineStorageProcess/EntryPoint: Removed.
1210         * OfflineStorageProcess/EntryPoint/mac: Removed.
1211         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess: Removed.
1212         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed.
1213         * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/OfflineStorageProcessMain.mm: Removed.
1214         * OfflineStorageProcess/EntryPoint/mac/XPCService: Removed.
1215         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService: Removed.
1216         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development: Removed.
1217         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development/Info.plist: Removed.
1218         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService/Info.plist: Removed.
1219         * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageServiceEntryPoint.mm: Removed.
1220         * OfflineStorageProcess/OfflineStorageProcess.cpp: Removed.
1221         * OfflineStorageProcess/OfflineStorageProcess.h: Removed.
1222         * OfflineStorageProcess/OfflineStorageProcess.messages.in: Removed.
1223         * OfflineStorageProcess/mac: Removed.
1224         * OfflineStorageProcess/mac/OfflineStorageProcessMac.mm: Removed.
1225         * OfflineStorageProcess/mac/com.apple.WebKit.OfflineStorage.sb: Removed.
1226         * Scripts/webkit2/messages.py:
1227         * Shared/OfflineStorage: Removed.
1228         * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.cpp: Removed.
1229         * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.h: Removed.
1230         * WebKit2.xcodeproj/project.pbxproj:
1231         Remove.
1232
1233 2013-08-17  Darin Adler  <darin@apple.com>
1234
1235         <https://webkit.org/b/119941> Make Page::dragController return a reference
1236
1237         Reviewed by Andreas Kling.
1238
1239         * WebProcess/WebPage/WebPage.cpp:
1240         (WebKit::WebPage::performDragControllerAction):
1241         (WebKit::WebPage::dragEnded):
1242         Updated call sites.
1243
1244 2013-08-17  David Kilzer  <ddkilzer@apple.com>
1245
1246         WebKit2 fails to build with trunk clang: error: 'WebPluginSiteDataManagerh' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard]
1247         <http://webkit.org/b/119935>
1248         <rdar://problem/14764131>
1249
1250         Reviewed by Darin Adler.
1251
1252         * UIProcess/Plugins/WebPluginSiteDataManager.h: Fix typo
1253         introduced in r78647.
1254
1255 2013-08-16  Pratik Solanki  <psolanki@apple.com>
1256
1257         <https://webkit.org/b/119852> Frame::scriptController() should return a reference
1258
1259         Reviewed by Andreas Kling.
1260
1261         m_script is never NULL so we can just return a reference. Also remove some pointless null
1262         checks as a result of doing this.
1263
1264         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1265         (WebKit::NPRuntimeObjectMap::globalObject):
1266         * WebProcess/Plugins/PluginView.cpp:
1267         (WebKit::PluginView::performJavaScriptURLRequest):
1268         (WebKit::PluginView::windowScriptNPObject):
1269         (WebKit::PluginView::pluginElementNPObject):
1270         * WebProcess/WebPage/WebFrame.cpp:
1271         (WebKit::WebFrame::jsContext):
1272         (WebKit::WebFrame::jsContextForWorld):
1273         (WebKit::WebFrame::jsWrapperForWorld):
1274         * WebProcess/WebPage/WebInspector.cpp:
1275         (WebKit::WebInspector::didSave):
1276         (WebKit::WebInspector::didAppend):
1277         * WebProcess/WebPage/WebPage.cpp:
1278         (WebKit::WebPage::runJavaScriptInMainFrame):
1279
1280 2013-08-16  Brady Eidson  <beidson@apple.com>
1281
1282         (NetworkProcess)  Sync XHRs should load using async ResourceHandles, not ResourceHandle::loadResourceSynchronously
1283         https://bugs.webkit.org/show_bug.cgi?id=119493
1284
1285         Reviewed by Alexey Proskuryakov.
1286
1287         This patch does the following:
1288           - Consolidates SchedulableLoader and NetworkResourceLoader into one class.
1289           - Removes SyncNetworkResourceLoader.
1290           - Adds a NetworkLoaderClient interface that customizes certain behaviors of the NetworkResourceLoader.
1291           - Implements a SynchronousNetworkLoaderClient and AsynchronousNetworkLoaderClient for the two different types of loads.
1292
1293         The AsynchronousNetworkLoaderClient results in messaging back progress to the WebProcess as the load progresses.
1294         The SynchronousNetworkLoaderClient accumulates the response, data, and error to be communicated back to the WebProcess
1295         only when the load is complete.
1296
1297         Update small swaths of code to reflect that NetworkResourceLoader is the One True Loader (tm):
1298         * NetworkProcess/HostRecord.cpp:
1299         (WebKit::HostRecord::scheduleResourceLoader):
1300         (WebKit::HostRecord::addLoaderInProgress):
1301         (WebKit::removeLoaderFromQueue):
1302         (WebKit::HostRecord::removeLoader):
1303         (WebKit::HostRecord::servePendingRequestsForQueue):
1304         (WebKit::HostRecord::limitsRequests):
1305         * NetworkProcess/HostRecord.h:
1306
1307         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1308         (WebKit::NetworkConnectionToWebProcess::didClose):
1309         (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
1310         (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
1311         * NetworkProcess/NetworkConnectionToWebProcess.h:
1312
1313         * NetworkProcess/NetworkProcess.cpp:
1314         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1315         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
1316         (WebKit::NetworkResourceLoadScheduler::removeLoader):
1317         (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
1318         (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders):
1319         (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader):
1320         * NetworkProcess/NetworkResourceLoadScheduler.h:
1321
1322         Combine ScheduleableLoader and NetworkResourceLoader into NetworkResourceLoader:
1323         * NetworkProcess/NetworkResourceLoader.cpp:
1324         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1325         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1326         (WebKit::NetworkResourceLoader::isSynchronous):
1327         (WebKit::NetworkResourceLoader::start):
1328         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1329         (WebKit::NetworkResourceLoader::didReceiveBuffer):
1330         (WebKit::NetworkResourceLoader::didFinishLoading):
1331         (WebKit::NetworkResourceLoader::didFail):
1332         (WebKit::NetworkResourceLoader::willSendRequestAsync):
1333         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1334         (WebKit::NetworkResourceLoader::didSendData):
1335         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1336         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1337         (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
1338         (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
1339         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
1340         * NetworkProcess/NetworkResourceLoader.h:
1341         (WebKit::NetworkResourceLoader::create):
1342         (WebKit::NetworkResourceLoader::connectionToWebProcess):
1343         (WebKit::NetworkResourceLoader::priority):
1344         (WebKit::NetworkResourceLoader::request):
1345         (WebKit::NetworkResourceLoader::isLoadingMainResource):
1346         (WebKit::NetworkResourceLoader::setHostRecord):
1347         (WebKit::NetworkResourceLoader::hostRecord):
1348         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
1349
1350         Add an abstract NetworkLoaderClient to adapt a load to be either synchronous or asynchronous:
1351         * NetworkProcess/NetworkLoaderClient.h:
1352         (WebKit::NetworkLoaderClient::~NetworkLoaderClient):
1353         (WebKit::NetworkLoaderClient::isSynchronous):
1354         (WebKit::NetworkLoaderClient::NetworkLoaderClient):
1355
1356         The asynchronous loader client, primarily to message progress back to the WebProcess as it happens:
1357         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Added.
1358         (WebKit::AsynchronousNetworkLoaderClient::AsynchronousNetworkLoaderClient):
1359         (WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
1360         (WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1361         (WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
1362         (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1363         (WebKit::AsynchronousNetworkLoaderClient::didSendData):
1364         (WebKit::AsynchronousNetworkLoaderClient::didFinishLoading):
1365         (WebKit::AsynchronousNetworkLoaderClient::didFail):
1366         * NetworkProcess/AsynchronousNetworkLoaderClient.h:
1367         (WebKit::AsynchronousNetworkLoaderClient::create):
1368
1369         The synchronous loader client, primarily to accumulate results of the load to send back to the WebProcess all at once:
1370         * NetworkProcess/SynchronousNetworkLoaderClient.cpp: Added.
1371         (WebKit::SynchronousNetworkLoaderClient::SynchronousNetworkLoaderClient):
1372         (WebKit::SynchronousNetworkLoaderClient::~SynchronousNetworkLoaderClient):
1373         (WebKit::SynchronousNetworkLoaderClient::willSendRequest):
1374         (WebKit::SynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1375         (WebKit::SynchronousNetworkLoaderClient::didReceiveResponse):
1376         (WebKit::SynchronousNetworkLoaderClient::didReceiveBuffer):
1377         (WebKit::SynchronousNetworkLoaderClient::didFinishLoading):
1378         (WebKit::SynchronousNetworkLoaderClient::didFail):
1379         (WebKit::SynchronousNetworkLoaderClient::sendDelayedReply):
1380         * NetworkProcess/SynchronousNetworkLoaderClient.h: Added.
1381         (WebKit::SynchronousNetworkLoaderClient::create):
1382
1383         * NetworkProcess/SchedulableLoader.cpp: Removed.
1384         * NetworkProcess/SchedulableLoader.h: Removed.
1385         * NetworkProcess/SyncNetworkResourceLoader.cpp: Removed.
1386         * NetworkProcess/SyncNetworkResourceLoader.h: Removed.
1387
1388         * WebKit2.xcodeproj/project.pbxproj:
1389
1390 2013-08-16  Gabor Rapcsanyi  <rgabor@webkit.org>
1391
1392         [Qt][ARM] Unreviewed buildfix after 154127.
1393
1394         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Add missing header.
1395
1396 2013-08-15  Ryuan Choi  <ryuan.choi@samsung.com>
1397
1398         [EFL] Unreviewed build fix after r154142 and r154144.
1399
1400         * UIProcess/WebContext.cpp:
1401         (WebKit::WebContext::useTestingNetworkSession):
1402         Fixed build break when NETWORK_PROCESS is disabled after r154144.
1403
1404 2013-08-15  Chris Fleizach  <cfleizach@apple.com>
1405
1406         <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8
1407
1408         Reviewed by Tim Horton.
1409
1410         Ensure that the page is available before accessing it.
1411
1412         * WebProcess/WebPage/mac/WebPageMac.mm:
1413         (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
1414
1415 2013-08-15  Alexey Proskuryakov  <ap@apple.com>
1416
1417         [WK2] NetworkProcess should use a temporary storage session for test
1418         https://bugs.webkit.org/show_bug.cgi?id=119855
1419
1420         Reviewed by Darin Adler.
1421
1422         We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
1423         NetworkProcess has no injected bundle.
1424
1425         Added a WKContext API, sending the information to NetworkProcess with initialization
1426         parameters. Reworked WebProcess path to do the same for consistency - bundle API
1427         is better per se, but not when we also need to have another one.
1428
1429         * NetworkProcess/NetworkProcess.cpp:
1430         (WebKit::NetworkProcess::initializeNetworkProcess):
1431         * Shared/Network/NetworkProcessCreationParameters.cpp:
1432         (WebKit::NetworkProcessCreationParameters::encode):
1433         (WebKit::NetworkProcessCreationParameters::decode):
1434         * Shared/Network/NetworkProcessCreationParameters.h:
1435         * Shared/WebProcessCreationParameters.cpp:
1436         (WebKit::WebProcessCreationParameters::encode):
1437         (WebKit::WebProcessCreationParameters::decode):
1438         * Shared/WebProcessCreationParameters.h:
1439         * UIProcess/API/C/WKContext.cpp:
1440         (WKContextUseTestingNetworkSession):
1441         * UIProcess/API/C/WKContextPrivate.h:
1442         * UIProcess/WebContext.cpp:
1443         (WebKit::WebContext::WebContext):
1444         (WebKit::WebContext::ensureNetworkProcess):
1445         (WebKit::WebContext::createNewWebProcess):
1446         (WebKit::WebContext::useTestingNetworkSession):
1447         * UIProcess/WebContext.h:
1448         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1449         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1450         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1451         * WebProcess/InjectedBundle/InjectedBundle.h:
1452         * WebProcess/WebProcess.cpp:
1453         (WebKit::WebProcess::initializeWebProcess):
1454
1455 2013-08-15  Anders Carlsson  <andersca@apple.com>
1456
1457         <https://webkit.org/b/119859> Frame::loader() should return a reference
1458
1459         Reviewed by Andreas Kling.
1460
1461         * Shared/WebRenderLayer.cpp:
1462         (WebKit::WebRenderLayer::create):
1463         * Shared/WebRenderObject.cpp:
1464         (WebKit::WebRenderObject::create):
1465         * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1466         (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
1467         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1468         (WKBundleFrameGetFrameLoadState):
1469         (WKBundleFrameClearOpener):
1470         (WKBundleFrameCallShouldCloseOnWebView):
1471         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1472         (WebKit::InjectedBundleNodeHandle::documentFrame):
1473         (WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
1474         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
1475         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1476         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
1477         * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1478         (WebKit::InjectedBundleDOMWindowExtension::frame):
1479         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1480         (WebKit::InjectedBundleHitTestResult::frame):
1481         (WebKit::InjectedBundleHitTestResult::targetFrame):
1482         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1483         (WebKit::PDFPlugin::clickedLink):
1484         * WebProcess/Plugins/PluginView.cpp:
1485         (WebKit::webPage):
1486         (WebKit::PluginView::didFailToInitializePlugin):
1487         (WebKit::PluginView::performFrameLoadURLRequest):
1488         (WebKit::PluginView::userAgent):
1489         (WebKit::PluginView::loadURL):
1490         (WebKit::PluginView::cancelManualStreamLoad):
1491         (WebKit::PluginView::proxiesForURL):
1492         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1493         (WebKit::WebChromeClient::focusedElementChanged):
1494         (WebKit::WebChromeClient::focusedFrameChanged):
1495         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
1496         (WebKit::WebChromeClient::closeWindowSoon):
1497         (WebKit::WebChromeClient::runJavaScriptAlert):
1498         (WebKit::WebChromeClient::runJavaScriptConfirm):
1499         (WebKit::WebChromeClient::runJavaScriptPrompt):
1500         (WebKit::WebChromeClient::unavailablePluginButtonClicked):
1501         (WebKit::WebChromeClient::print):
1502         (WebKit::WebChromeClient::exceededDatabaseQuota):
1503         (WebKit::WebChromeClient::runOpenPanel):
1504         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1505         (WebKit::WebContextMenuClient::searchWithGoogle):
1506         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1507         (WebKit::WebEditorClient::textFieldDidBeginEditing):
1508         (WebKit::WebEditorClient::textFieldDidEndEditing):
1509         (WebKit::WebEditorClient::textDidChangeInTextField):
1510         (WebKit::WebEditorClient::textDidChangeInTextArea):
1511         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
1512         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
1513         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1514         (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1515         (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1516         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1517         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1518         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1519         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1520         (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
1521         (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
1522         (WebKit::WebFrameLoaderClient::updateGlobalHistory):
1523         (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
1524         (WebKit::WebFrameLoaderClient::restoreViewState):
1525         (WebKit::WebFrameLoaderClient::createFrame):
1526         (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
1527         (WebKit::WebFrameLoaderClient::objectContentType):
1528         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1529         (WebKit::WebPlatformStrategies::getPluginInfo):
1530         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1531         (WebKit::WebFrameNetworkingContext::blockedError):
1532         * WebProcess/WebPage/WebFrame.cpp:
1533         (WebKit::WebFrame::didReceivePolicyDecision):
1534         (WebKit::WebFrame::startDownload):
1535         (WebKit::WebFrame::source):
1536         (WebKit::WebFrame::contentsAsString):
1537         (WebKit::WebFrame::url):
1538         (WebKit::WebFrame::parentFrame):
1539         (WebKit::WebFrame::childFrames):
1540         (WebKit::WebFrame::stopLoading):
1541         (WebKit::WebFrame::frameForContext):
1542         (WebKit::WebFrame::provisionalURL):
1543         (WebKit::WebFrame::suggestedFilenameForResourceWithURL):
1544         (WebKit::WebFrame::mimeTypeForResourceWithURL):
1545         (WebKit::WebFrameFilter::shouldIncludeSubframe):
1546         * WebProcess/WebPage/WebPage.cpp:
1547         (WebKit::WebPage::createPlugin):
1548         (WebKit::WebPage::close):
1549         (WebKit::WebPage::tryClose):
1550         (WebKit::WebPage::loadURLRequest):
1551         (WebKit::WebPage::loadDataImpl):
1552         (WebKit::WebPage::linkClicked):
1553         (WebKit::WebPage::stopLoadingFrame):
1554         (WebKit::WebPage::stopLoading):
1555         (WebKit::WebPage::reload):
1556         (WebKit::WebPage::tryRestoreScrollPosition):
1557         (WebKit::WebPage::getMainResourceDataOfFrame):
1558         (WebKit::resourceDataForFrame):
1559         (WebKit::shouldReuseCommittedSandboxExtension):
1560         (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
1561         (WebKit::WebPage::hasLocalDataForURL):
1562         (WebKit::WebPage::setCustomTextEncodingName):
1563         (WebKit::WebPage::canPluginHandleResponse):
1564         (WebKit::WebPage::canShowMIMEType):
1565         (WebKit::WebPage::didCommitLoad):
1566         * WebProcess/WebPage/mac/WebPageMac.mm:
1567         (WebKit::WebPage::platformHasLocalDataForURL):
1568         (WebKit::cachedResponseForURL):
1569         * WebProcess/WebProcess.cpp:
1570         (WebKit::WebProcess::downloadRequest):
1571
1572 2013-08-14  Filip Pizlo  <fpizlo@apple.com>
1573
1574         Typed arrays should be rewritten
1575         https://bugs.webkit.org/show_bug.cgi?id=119064
1576
1577         Reviewed by Oliver Hunt.
1578         
1579         You don't need to include JSUint8Array anymore if you just want to
1580         unwrap one; JSDOMBinding gives you all of the things you need.
1581
1582         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1583
1584 2013-08-15  Eric Carlson  <eric.carlson@apple.com>
1585
1586         [Mac] Remove "legacy" media UI
1587         https://bugs.webkit.org/show_bug.cgi?id=119752
1588
1589         Reviewed by Jer Noble.
1590
1591         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1592         (InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.
1593
1594 2013-08-14  Dean Jackson  <dino@apple.com>
1595
1596         <https://webkit.org/b/119827> Allow primary plug-in detection to run more than once if necessary
1597
1598         Reviewed by Tim Horton.
1599
1600         We occasionally see cases where the primary plug-in detection runs before the plugins have been added
1601         to the page, especially if they do so in response to a load event. Tweak the algorithm so that it can
1602         run an arbitrary number of times if it fails.
1603
1604         While here, also have the detection run if there has ever been a plugin in the page as opposed to any
1605         current views. We may have snapshotted a plugin by now and deleted its view.
1606
1607         * WebProcess/WebPage/WebPage.cpp:
1608         (WebKit::WebPage::WebPage): initialise new members.
1609         (WebKit::WebPage::addPluginView): Mark that we've seen a plugin.
1610         (WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset new members.
1611         (WebKit::WebPage::determinePrimarySnapshottedPlugIn): Exit early if we've never
1612         seen a plugin, rather than if we don't have any active views. Also, if we didn't find anything set
1613         a timer to run again (maximum of two attempts at the moment).
1614         * WebProcess/WebPage/WebPage.h: New members - m_numberOfPrimarySnapshotDetectionAttempts
1615         and m_hasSeenPlugin.
1616
1617 2013-08-14  Dean Jackson  <dino@apple.com>
1618
1619         <https://webkit.org/b/119820> Add pluginView-related logging to WebPage
1620
1621         Reviewed by Tim Horton.
1622
1623         Add some more diagnostic output to help track down bugs.
1624
1625         * WebProcess/WebPage/WebPage.cpp:
1626         (WebKit::WebPage::addPluginView): More logging.
1627         (WebKit::WebPage::removePluginView): Ditto.
1628
1629 2013-08-14  Alexey Proskuryakov  <ap@apple.com>
1630
1631         [WK2] Sync messages with with non-default timeout sent from secondary threads always time out
1632         https://bugs.webkit.org/show_bug.cgi?id=119767
1633
1634         Fix by Justin Bur.
1635         Reviewed by Darin Adler.
1636
1637         * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
1638         The argument to wait() is absolute time, not a delta. This calculation matches one
1639         in Connection::waitForMessage().
1640
1641 2013-08-14  Tim Horton  <timothy_horton@apple.com>
1642
1643         REGRESSION (r153877): Plugin scanning slows creation of WebViews
1644         https://bugs.webkit.org/show_bug.cgi?id=119665
1645         <rdar://problem/14716549>
1646
1647         Reviewed by Darin Adler.
1648
1649         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1650         (WebKit::WebPlatformStrategies::refreshPlugins):
1651         Don't repopulate the plugin cache in refreshPlugins, just invalidate it.
1652         It will be repopulated the next time something tries to use it.
1653
1654 2013-08-12  Dan Bernstein  <mitz@apple.com>
1655
1656         Fixed an off-by-(sizeof(char*) - 1) bug.
1657
1658         Reviewed by Sam Weinig.
1659
1660         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
1661         (WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.
1662
1663 2013-08-12  Beth Dakin  <bdakin@apple.com>
1664
1665         Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
1666         https://bugs.webkit.org/show_bug.cgi?id=119658
1667
1668         Reviewed by Darin Adler.
1669
1670         Removing this function entirely will change some functionality in the Nightlies, 
1671         but we think that is an acceptable difference for the Nightlies. If is does cause 
1672         a problem though, we can roll out this patch and deprecate the function instead.
1673
1674         * UIProcess/API/C/WKPage.h:
1675         * UIProcess/WebLoaderClient.cpp:
1676         * UIProcess/WebLoaderClient.h:
1677         * UIProcess/WebPageProxy.cpp:
1678         (WebKit::WebPageProxy::initializeLoaderClient):
1679         * UIProcess/WebPageProxy.h:
1680         * UIProcess/WebPageProxy.messages.in:
1681         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1682         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1683         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1684         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1685         (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1686         * WebProcess/WebPage/WebPage.cpp:
1687         (WebKit::WebPage::initializeInjectedBundleLoaderClient):
1688
1689 2013-08-12  Arunprasad Rajkumar  <arurajku@cisco.com>
1690
1691         [Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
1692         https://bugs.webkit.org/show_bug.cgi?id=119663
1693
1694         Reviewed by Sam Weinig.
1695
1696         * WebProcess/qt/WebProcessQt.cpp:
1697         (WebKit::WebProcess::platformSetCacheModel):
1698
1699 2013-08-12  Anton Obzhirov  <a.obzhirov@samsung.com>
1700
1701         [GTK] Don't load GAIL when using GTK 3.2 or greater
1702         https://bugs.webkit.org/show_bug.cgi?id=72735
1703
1704         Reviewed by Carlos Garcia Campos.
1705
1706         * UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:
1707         (main):
1708
1709 2013-08-09  Beth Dakin  <bdakin@apple.com>
1710
1711         AX: Not able to use arrow keys to read text in a WK2 app
1712         https://bugs.webkit.org/show_bug.cgi?id=119605
1713         -and corresponding-
1714         <rdar://problem/14281275>
1715
1716         Reviewed by Darin Adler.
1717
1718         Make all of these scrolling functions actually return the WebCore bools that 
1719         indicate whether or not scrolling happened. 
1720         * WebProcess/WebPage/WebPage.cpp:
1721         (WebKit::WebPage::scroll):
1722         (WebKit::WebPage::logicalScroll):
1723         (WebKit::WebPage::scrollBy):
1724         * WebProcess/WebPage/WebPage.h:
1725         * WebProcess/WebPage/mac/WebPageMac.mm:
1726         (WebKit::WebPage::executeKeypressCommandsInternal):
1727
1728         This function now gives accessibility a chance to handle the event too. And it 
1729         also actually tracks whether or not the event was handled by scrolling instead of 
1730         assuming that it was and universally returning true.
1731         (WebKit::WebPage::performNonEditingBehaviorForSelector):
1732
1733 2013-08-09  Brian Holt  <brian.holt@samsung.com>
1734
1735         [GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
1736         https://bugs.webkit.org/show_bug.cgi?id=99352
1737
1738         Reviewed by Carlos Garcia Campos.
1739
1740         Add a new public class to the API, WebKitAuthenticationRequest, to be
1741         emitted along with a new WebKitWebView::authenticate signal to
1742         let client applications to provide their own authentication
1743         when the user is challenged with HTTP authentication. The
1744         credential is exposed through a new class WebKitCredential.
1745
1746         * GNUmakefile.list.am:
1747         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1748         (okButtonClicked): Use new API for authentication.
1749         (cancelButtonClicked): Ditto.
1750         (webkitAuthenticationDialogInitialize):Get
1751         authenticationChallenge from request object.
1752         (webkitAuthenticationDialogNew): Ditto.
1753         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1754         * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Added new
1755         class representing a HTTP authentication request.
1756         (webkitAuthenticationRequestDispose):
1757         (webkit_authentication_request_class_init):
1758         (webkitAuthenticationRequestCreate):
1759         (webkitAuthenticationRequestGetAuthenticationChallenge):
1760         (webkit_authentication_request_can_save_credentials):
1761         (webkit_authentication_request_get_proposed_credential):
1762         (webkit_authentication_request_get_host):
1763         (webkit_authentication_request_get_port):
1764         (webkit_authentication_request_get_realm):
1765         (webkit_authentication_request_get_scheme):
1766         (webkit_authentication_request_is_for_proxy):
1767         (webkit_authentication_request_is_retry):
1768         (webkit_authentication_request_authenticate):
1769         (webkit_authentication_request_cancel):
1770         * UIProcess/API/gtk/WebKitAuthenticationRequest.h: Added.
1771         * UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h: Added.
1772         * UIProcess/API/gtk/WebKitCredential.cpp: Added new class to
1773         support credentials for HTTP authentication.
1774         (_WebKitCredential::_WebKitCredential):
1775         (webkitCredentialCreate):
1776         (webkitCredentialGetCredential):
1777         (webkit_credential_new):
1778         (webkit_credential_copy):
1779         (webkit_credential_free):
1780         (webkit_credential_get_username):
1781         (webkit_credential_get_password):
1782         (webkit_credential_has_password):
1783         (webkit_credential_get_persistence):
1784         * UIProcess/API/gtk/WebKitCredential.h: Added.
1785         * UIProcess/API/gtk/WebKitCredentialPrivate.h: Added.
1786         * UIProcess/API/gtk/WebKitWebView.cpp: Added authenticate signal.
1787         (webkitWebViewAuthenticate): Default signal handler for authenticate.
1788         (webkit_web_view_class_init): Ditto.
1789         (webkitWebViewHandleAuthenticationChallenge): Create an
1790         authentication request and emit it with authenticate signal.
1791         * UIProcess/API/gtk/WebKitWebView.h: Replaced reserved function
1792         pointer slot with for WebViewClass with function pointer to
1793         authenticate signal handler.
1794         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section for
1795         the authentication request.
1796         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
1797         * UIProcess/API/gtk/docs/webkit2gtk.types: Added authentication
1798         request and credential types.
1799         * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Created a new
1800         unit test for HTTP authentication. A libsoup server callback
1801         handler is installed that creates soup messages with appropriate
1802         headers and body to test HTTP authentication.
1803         (testWebViewAuthenticationRequest): Test the authentication
1804         request and credential API.
1805         (testWebViewAuthenticationCancel): Test cancelled authentication.
1806         (testWebViewAuthenticationFailure): Test repeated authentication failures.
1807         (testWebViewAuthenticationNoCredential): Test continue without
1808         credentials.
1809         (testWebViewAuthenticationStorage): Test credential storage.
1810         (testWebViewAuthenticationSuccess): Test successful authentication.
1811         (beforeAll): Added tests.
1812         * UIProcess/API/gtk/webkit2.h: Added WebKitAuthenticationRequest and
1813         WebKitCredential headers.
1814
1815 2013-08-09  Tim Horton  <timothy_horton@apple.com>
1816
1817         PDFPlugin is disabled by default in nightlies on Mac accidentally
1818         https://bugs.webkit.org/show_bug.cgi?id=119615
1819
1820         Rubber-stamped by Andreas Kling.
1821
1822         Enable PDFPlugin by default on Mac at the WebKit2 level.
1823
1824         * Shared/WebPreferencesStore.h:
1825         * UIProcess/API/C/WKPreferencesPrivate.h:
1826
1827 2013-08-08  Tim Horton  <timothy_horton@apple.com>
1828
1829         navigator.plugins has plugins in it when plugins are disabled
1830         https://bugs.webkit.org/show_bug.cgi?id=119607
1831         <rdar://problem/14678030>
1832
1833         Reviewed by Anders Carlsson.
1834
1835         * UIProcess/WebProcessProxy.cpp:
1836         (WebKit::WebProcessProxy::getPlugins):
1837         Return a list of all plugins, and a list of only application plugins.
1838
1839         * UIProcess/WebProcessProxy.h:
1840         * UIProcess/WebProcessProxy.messages.in:
1841         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1842         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1843         (WebKit::WebPlatformStrategies::getPluginInfo):
1844         Add applicationPlugin parameter to getPlugins, and storage for the returned list.
1845
1846         (WebKit::WebPlatformStrategies::populatePluginCache):
1847         If plugins are disabled for the given page, give WebCore the list that
1848         only includes application plugins. Otherwise, give it the whole list
1849         as we are doing currently.
1850
1851 2013-08-08  Gavin Barraclough  <barraclough@apple.com>
1852
1853         Disable suppression of plugin process for Java
1854         https://bugs.webkit.org/show_bug.cgi?id=119604
1855
1856         Reviewed by Sam Weinig.
1857
1858         Workaround, the Java plugin doesn't like this.
1859
1860         * PluginProcess/mac/PluginProcessMac.mm:
1861         (WebKit::PluginProcess::platformInitializeProcess):
1862             - +1 active task count on the java plugin, to inhibit supression.
1863
1864 2013-08-08  Dean Jackson  <dino@apple.com>
1865
1866         Add logging to the primary plugin detection
1867         https://bugs.webkit.org/show_bug.cgi?id=119594
1868
1869         Reviewed by Tim Horton.
1870
1871         Add some simple logging to our primary plug-in detection.
1872
1873         * WebProcess/WebPage/WebPage.cpp:
1874         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
1875
1876 2013-08-08  Alexey Proskuryakov  <ap@apple.com>
1877
1878         WKBundleFrameCopyProvisionalURL crashes when there is no provisional loader
1879         https://bugs.webkit.org/show_bug.cgi?id=119587
1880
1881         Reviewed by Darin Adler.
1882
1883         * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::provisionalURL): Added a null
1884         check, like we already have in WebFrame::url().
1885
1886 2013-08-07  Antti Koivisto  <antti@apple.com>
1887
1888         Try to fix EFL build.
1889         
1890         Not reviewed.
1891
1892         * CMakeLists.txt:
1893
1894 2013-08-06  Jer Noble  <jer.noble@apple.com>
1895
1896         Crash when entering fullscreen video playback from a WebView using WebKit2
1897         https://bugs.webkit.org/show_bug.cgi?id=119531
1898
1899         Reviewed by Tim Horton.
1900
1901         Initialize wkWindowSetScaledFrame and wkWindowSetAlpha when initializing WebCoreSystemInterface.
1902
1903         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1904         (InitWebCoreSystemInterface):
1905
1906 2013-08-06  Stephanie Lewis  <slewis@apple.com>
1907
1908         Update Order Files for Safari
1909         <rdar://problem/14517392>
1910
1911         Unreviewed.
1912
1913         * mac/WebKit2.order:
1914
1915 2013-08-04  Sam Weinig  <sam@webkit.org>
1916
1917         Remove support for HTML5 MicroData
1918         https://bugs.webkit.org/show_bug.cgi?id=119480
1919
1920         Reviewed by Anders Carlsson.
1921
1922         * Configurations/FeatureDefines.xcconfig:
1923
1924 2013-08-06  Eunmi Lee  <eunmi15.lee@samsung.com>
1925
1926         [EFL][WK2] Implement gesture recognizer.
1927         https://bugs.webkit.org/show_bug.cgi?id=102643
1928
1929         Reviewed by Gyuyoung Kim.
1930
1931         Recognize tap, pan and pinch gestures using touch events.
1932         The tap gesture is separated into single tap, double tap and
1933         'tap and hold'.
1934
1935         This patch references the webkit NIX port.
1936         https://github.com/WebKitNix/webkitnix
1937
1938         * PlatformEfl.cmake:
1939         * UIProcess/API/efl/EwkView.cpp:
1940         (EwkView::EwkView):
1941         (EwkView::doneWithTouchEvent):
1942         * UIProcess/API/efl/EwkView.h:
1943         * UIProcess/API/efl/GestureRecognizer.cpp: Added.
1944         (WebKit::GestureHandler::create):
1945         (WebKit::GestureHandler::GestureHandler):
1946         (WebKit::GestureHandler::handleSingleTap):
1947         (WebKit::GestureHandler::handleDoubleTap):
1948         (WebKit::GestureHandler::handleTapAndHold):
1949         (WebKit::GestureHandler::handlePanStarted):
1950         (WebKit::GestureHandler::handlePan):
1951         (WebKit::GestureHandler::handlePanFinished):
1952         (WebKit::GestureHandler::handlePinchStarted):
1953         (WebKit::GestureHandler::handlePinch):
1954         (WebKit::GestureHandler::handlePinchFinished):
1955         (WebKit::GestureRecognizer::GestureRecognizer):
1956         (WebKit::GestureRecognizer::~GestureRecognizer):
1957         (WebKit::GestureRecognizer::processTouchEvent):
1958         (WebKit::GestureRecognizer::doubleTapTimerCallback):
1959         (WebKit::GestureRecognizer::tapAndHoldTimerCallback):
1960         (WebKit::GestureRecognizer::exceedsPanThreshold):
1961         (WebKit::GestureRecognizer::exceedsDoubleTapThreshold):
1962         (WebKit::getPointAtIndex):
1963         (WebKit::createVectorWithWKArray):
1964         (WebKit::GestureRecognizer::noGesture):
1965         (WebKit::GestureRecognizer::singleTapGesture):
1966         (WebKit::GestureRecognizer::doubleTapGesture):
1967         (WebKit::GestureRecognizer::panGesture):
1968         (WebKit::GestureRecognizer::pinchGesture):
1969         (WebKit::GestureRecognizer::reset):
1970         (WebKit::GestureRecognizer::stopTapTimers):
1971         * UIProcess/API/efl/GestureRecognizer.h: Added.
1972         (WebKit::GestureRecognizer::create):
1973
1974 2013-07-23  David Farler  <dfarler@apple.com>
1975
1976         Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
1977         https://bugs.webkit.org/show_bug.cgi?id=117762
1978
1979         Reviewed by Mark Rowe.
1980
1981         * Configurations/DebugRelease.xcconfig:
1982         Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
1983         * Configurations/WebContentProcess.xcconfig:
1984         Add ASAN_OTHER_LDFLAGS.
1985         * Configurations/WebKit2.xcconfig:
1986         Add ASAN_OTHER_LDFLAGS.
1987
1988 2013-08-06  Andreas Kling  <akling@apple.com>
1989
1990         REGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disallowed.
1991         <http://webkit.org/b/119516>
1992         <rdar://problem/14648086>
1993
1994         Reviewed by Simon Fraser.
1995
1996         The web process relies on the WindowAndViewFramesChanged mechanism for caching a copy
1997         of the window rect for fast access from DOMWindow APIs.
1998
1999         We retain part of the optimization introduced in r151403, namely not computing the
2000         viewFrameInWindowCoordinates and accessibilityPosition unless the web process needs them.
2001
2002         * UIProcess/API/mac/WKView.mm:
2003         (-[WKView _updateWindowAndViewFrames]):
2004
2005 2013-07-26  Mark Rowe  <mrowe@apple.com>
2006
2007         Logging should be configurable using human-readable channel names rather than crazy bitmasks
2008         <http://webkit.org/b/119031>
2009
2010         Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
2011         and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.
2012
2013         Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
2014         "all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
2015         being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
2016         for history and loading being enabled.
2017
2018         For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
2019         the old user defaults to remain set for those people that need to switch between version of WebKit before and
2020         after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
2021         the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.
2022
2023         For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
2024         consistency with the other platforms and to enable more code sharing.
2025
2026         While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
2027         adding a new logging channel. Now only the header in the relevant project needs to be updated.
2028
2029         Reviewed by Sam Weinig.
2030
2031         * NetworkProcess/NetworkProcess.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2032         * Platform/Logging.cpp: Use WEBKIT2_LOG_CHANNELS to define all of the channels.
2033         (WebKit::initializeLogChannelsIfNecessary): Pass the channels and the log level string to the new WTF function
2034         that handles the initialization.
2035         (WebKit::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
2036         to find a log channel rather than repeating the names of the log channels a further two times each.
2037         (WebKit::logLevelString): Provide a no-op implementation.
2038         * Platform/Logging.h: Declare a WEBKIT2_LOG_CHANNELS macro that can be used to apply a preprocessor macro
2039         across the set of all logging channels. Use this macro to declare the logging channels.
2040         * Platform/efl/LoggingEfl.cpp:
2041         (WebKit::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
2042         * Platform/gtk/LoggingGtk.cpp:
2043         (WebKit::logLevelString): Ditto.
2044         * Platform/mac/Logging.mac.mm:
2045         (WebKit::logLevelString): Pull the value out of the WebKit2Logging user default key.
2046         * Platform/qt/LoggingQt.cpp:
2047         (WebKit::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable.
2048         * Shared/WebKit2Initialize.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2049         * UIProcess/WebContext.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2050
2051 2013-08-05  Anders Carlsson  <andersca@apple.com>
2052
2053         Ignore the Apple Java placeholder plug-in
2054         https://bugs.webkit.org/show_bug.cgi?id=119494
2055         <rdar://problem/14610818>
2056
2057         Reviewed by Beth Dakin.
2058
2059         Never attempt to load the Java placeholder plug-in.
2060
2061         * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2062         (WebKit::PluginInfoStore::shouldUsePlugin):
2063
2064 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2065
2066         Unreviewed, build and style fix for r153693.
2067
2068         * UIProcess/WebProcessProxy.cpp:
2069         * WebProcess/Plugins/PDF/PDFPlugin.h:
2070         * WebProcess/WebPage/WebPage.cpp:
2071
2072 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2073
2074         Remove SimplePDFPlugin
2075         https://bugs.webkit.org/show_bug.cgi?id=119437
2076
2077         Reviewed by Alexey Proskuryakov.
2078
2079         * UIProcess/WebProcessProxy.cpp:
2080         (WebKit::WebProcessProxy::getPlugins):
2081         * WebProcess/WebPage/WebPage.cpp:
2082         (WebKit::WebPage::createPlugin):
2083         Don't add SimplePDFPlugin, nor try to instantiate it.
2084
2085         * WebProcess/Plugins/PDF/PDFPlugin.h:
2086         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2087         Merge previously inherited behavior in from SimplePDFPlugin.
2088
2089         * WebKit2.xcodeproj/project.pbxproj:
2090         * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
2091         * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.
2092         Remove SimplePDFPlugin.
2093
2094 2013-08-03  Tim Horton  <timothy_horton@apple.com>
2095
2096         Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port
2097         https://bugs.webkit.org/show_bug.cgi?id=119411
2098
2099         Reviewed by Simon Fraser.
2100
2101         Mac is the only holdout that performs non-composited fades of page
2102         overlays. We should adopt that mechanism (as a precursor to doing a
2103         CA-accelerated fade) and remove the now-unnecessary property.
2104
2105         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2106         (WKBundlePageOverlayFractionFadedIn):
2107         Always return 1 (fully-faded-in) so that clients who attempt to use this
2108         to bake the fade opacity into their painting will paint at full opacity,
2109         allowing us to do the composited fade separately.
2110
2111         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2112         * WebProcess/WebPage/DrawingArea.h:
2113         * WebProcess/WebPage/DrawingAreaImpl.cpp:
2114         * WebProcess/WebPage/DrawingAreaImpl.h:
2115         * WebProcess/WebPage/LayerTreeHost.h:
2116         * WebProcess/WebPage/PageOverlay.cpp:
2117         (WebKit::PageOverlay::PageOverlay):
2118         (WebKit::PageOverlay::setPage):
2119         (WebKit::PageOverlay::setNeedsDisplay):
2120         (WebKit::PageOverlay::fadeAnimationTimerFired):
2121         * WebProcess/WebPage/PageOverlay.h:
2122         Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().
2123
2124         * WebProcess/WebPage/FindController.cpp:
2125         (WebKit::FindController::drawRect):
2126         Draw the find overlay without taking the PageOverlay's fade into account.
2127
2128         * WebProcess/WebPage/TapHighlightController.cpp:
2129         (WebKit::TapHighlightController::drawRect):
2130         Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
2131         "false" for all ports now, take the second path here.
2132
2133         * WebProcess/WebPage/mac/LayerTreeHostMac.h:
2134         * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
2135         (WebKit::LayerTreeHostMac::setPageOverlayOpacity):
2136         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2137         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2138         (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayOpacity):
2139         Implement setPageOverlayOpacity for DrawingAreaImpl
2140         and TiledCoreAnimationDrawingArea.
2141
2142 2013-08-02  Gavin Barraclough  <barraclough@apple.com>
2143
2144         Remove no-arguments constructor to PropertySlot
2145         https://bugs.webkit.org/show_bug.cgi?id=119460
2146
2147         Reviewed by Geoff Garen.
2148
2149         This constructor was unsafe if getValue is subsequently called,
2150         and the property is a getter. Simplest to just remove it.
2151
2152         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2153         (WebKit::JSNPObject::getOwnPropertyDescriptor):
2154
2155 2013-08-02  Ruth Fong  <ruth_fong@apple.com>
2156
2157         [Forms: color] WebColorPickerMac deconstructor shouldn't assert a variable
2158         <rdar://problem/14627633> and https://bugs.webkit.org/show_bug.cgi?id=119419
2159
2160         Reviewed by Tim Horton.
2161
2162         * UIProcess/mac/WebColorPickerMac.mm:
2163         (WebKit::WebColorPickerMac::~WebColorPickerMac): If the m_colorPickerUI variable
2164           is not null, then properly destroy it first before destroying WebColorPickerMac object.
2165
2166 2013-08-02  Ruth Fong  <ruth_fong@apple.com>
2167
2168         [Forms: color] The positioning of the popover color well is inverted
2169         <rdar://problem/14635621> and https://bugs.webkit.org/show_bug.cgi?id=119455
2170
2171         Reviewed by Tim Horton.
2172
2173         This patch converts the coordinates of the <input type='color'> element to
2174         the window's base coordinate system.
2175
2176         * UIProcess/mac/WebColorPickerMac.mm:
2177         (-[WKColorPopoverMac initWithFrame:inView:]):
2178
2179 2013-08-01  Ruth Fong  <ruth_fong@apple.com>
2180
2181         [Forms: color] <input type='color'> popover color well implementation
2182         <rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356
2183
2184         Reviewed by Benjamin Poulain.
2185
2186         This patch adds an popover implementation of <input type='color'>.
2187
2188         * Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
2189
2190         * UIProcess/API/mac/PageClientImpl.mm:
2191         (WebKit::PageClientImpl::createColorPicker): Updated to pass the 
2192           coordinates of the <input type='color'> element and the WKView 
2193           object for the window.
2194
2195         * UIProcess/WebPageProxy.cpp:
2196         (WebKit::WebPageProxy::viewWillStartLiveResize): Close popover color 
2197           picker when the view is resized.
2198         (WebKit::WebPageProxy::viewInWindowStateDidChange): Close popover color
2199           picker when the view is no longer in the window.
2200         (WebKit::WebPageProxy::showColorPicker): Updated to show either a color panel
2201           or a popover color picker depending on whether INPUT_TYPE_COLOR_POPOVER is enabled.
2202
2203         * UIProcess/mac/WebColorPickerMac.h:
2204         * UIProcess/mac/WebColorPickerMac.mm:
2205         (WebKit::WebColorPickerMac::create):
2206         (WebKit::WebColorPickerMac::~WebColorPickerMac):
2207         (WebKit::WebColorPickerMac::WebColorPickerMac):
2208         (WebKit::WebColorPickerMac::endPicker):
2209         (WebKit::WebColorPickerMac::setSelectedColor):
2210         (WebKit::WebColorPickerMac::showColorPicker):
2211         Methods updated to handle both the color panel implementation and 
2212           the popover implementation; also renamed m_panel to m_colorPickerUI. 
2213
2214         (-[WKColorPopoverMac initWithFrame:WebCore::inView:]):
2215         (-[WKColorPopoverMac setAndShowPicker:WebKit::withColor:]):
2216         (-[WKColorPopoverMac dealloc]):
2217         (-[WKColorPopoverMac invalidate]):
2218         (-[WKColorPopoverMac windowWillClose:]):
2219         (-[WKColorPopoverMac didChooseColor:]):
2220         (-[WKColorPopoverMac setColor:]):
2221         WKColorPopoverMac provides the popover implementation of <input type='color'>.
2222
2223         (-[WKColorPanelMac didChooseColor:]): Updated to match the interface of 
2224           WKColorPickerMac::didChooseColor.
2225
2226 2013-08-01  Anders Carlsson  <andersca@apple.com>
2227
2228         Lots of leaks under WebContext::pluginInfoStoreDidLoadPlugins()
2229         https://bugs.webkit.org/show_bug.cgi?id=119412
2230
2231         Reviewed by Simon Fraser.
2232
2233         For some sick reason, the WKContextClient plugInInformationBecameAvailable callback function
2234         expects a +1 reference to the plug-in array. Isolate that hack to WebContextClient so that
2235         we don't leak the array if there is no WKContextClient.
2236         
2237         * UIProcess/WebContext.cpp:
2238         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
2239         * UIProcess/WebContextClient.cpp:
2240         (WebKit::WebContextClient::plugInInformationBecameAvailable):
2241
2242 2013-08-01  Kwang Yul Seo  <skyul@company100.net>
2243
2244         Remove return statement in void function
2245         https://bugs.webkit.org/show_bug.cgi?id=119379
2246
2247         Reviewed by Darin Adler.
2248
2249         It does not make sense to return a value in void function.
2250
2251         * WebProcess/WebProcess.cpp:
2252         (WebKit::addCaseFoldedCharacters):
2253
2254 2013-08-01  Kwang Yul Seo  <skyul@company100.net>
2255
2256         [WK2] Add USE(SOUP) guard in WebProcess::destroyPrivateBrowsingSession
2257         https://bugs.webkit.org/show_bug.cgi?id=119381
2258
2259         Reviewed by Darin Adler.
2260
2261         The is a followup to r153355. I missed to add USE(SOUP) guard in
2262         WebProcess::destroyPrivateBrowsingSession.
2263
2264         * WebProcess/WebProcess.cpp:
2265         (WebKit::WebProcess::destroyPrivateBrowsingSession):
2266
2267 2013-08-01  Milian Wolff  <milian.wolff@kdab.com>
2268
2269         [Qt] Enable QML handling of crashed/unresponsive QtWebProcess
2270         https://bugs.webkit.org/show_bug.cgi?id=108474
2271
2272         Forward the processDidCrash, didRelaunchProcess, processDidBecomeUnresponsive
2273         and processDidBecomeResponsive signals to QML's WebView.experimental.
2274
2275         Reviewed by Jocelyn Turcotte.
2276
2277         * UIProcess/API/qt/qquickwebview.cpp:
2278         (QQuickWebViewPrivate::processDidCrash):
2279         (QQuickWebViewPrivate::didRelaunchProcess):
2280         (QQuickWebViewPrivate::processDidBecomeUnresponsive):
2281         (QQuickWebViewPrivate::processDidBecomeResponsive):
2282         * UIProcess/API/qt/qquickwebview_p.h:
2283         * UIProcess/API/qt/qquickwebview_p_p.h:
2284         (QQuickWebViewPrivate):
2285
2286 2013-07-31  Kwang Yul Seo  <skyul@company100.net>
2287
2288         Use emptyString instead of String("")
2289         https://bugs.webkit.org/show_bug.cgi?id=119335
2290
2291         Reviewed by Darin Adler.
2292
2293         Use emptyString() instead of String("") because it is better style and
2294         faster. This is a followup to r116908, removing all occurrences of
2295         String("") from WebKit.
2296
2297         * Shared/mac/WebEventFactory.mm:
2298         (WebKit::textFromEvent):
2299         (WebKit::unmodifiedTextFromEvent):
2300
2301 2013-07-31  Ruth Fong  <ruth_fong@apple.com>
2302
2303         <input type=color> Mac UI behaviour
2304         <rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276
2305
2306         Implemented <input type='color'> on Mac using the native color picker. 
2307
2308         Reviewed by Brady Eidson.
2309
2310         Code for WebColorPickerMac is derived from Chromium's color_chooser_mac.mm:
2311         https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/color_chooser_mac.mm
2312
2313         * Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
2314
2315         * UIProcess/API/mac/PageClientImpl.mm:
2316         (WebKit::PageClientImpl::createColorPicker): Replaced stub implementation
2317           and return a WebColorPickerMac object.
2318
2319         * UIProcess/WebColorPicker.cpp:
2320         (WebKit::WebColorPicker::invalidate): Updated to call endChooser().
2321         (WebKit::WebColorPicker::showColorPicker): Added stub implementation.
2322         * UIProcess/WebColorPicker.h:
2323
2324         * UIProcess/WebPageProxy.cpp:
2325         (WebKit::WebPageProxy::close): Removed invalidation of removed color picker objects.
2326         (WebKit::WebPageProxy::showColorPicker): Updated so that it works for
2327           multiple <input type='color'> elements on a page.
2328         (WebKit::WebPageProxy::didEndColorPicker): Removed cleanup of removed color picker objects.
2329         (WebKit::WebPageProxy::resetStateAfterProcessExited): Removed cleanup of removed color picker objects.
2330
2331         * UIProcess/mac/WebColorPickerMac.h: Added.
2332         * UIProcess/mac/WebColorPickerMac.mm: Added.
2333         (WebKit::WebColorPickerMac::create):
2334         (WebKit::WebColorPickerMac::~WebColorPickerMac):
2335         (WebKit::WebColorPickerMac::WebColorPickerMac):
2336         (WebKit::WebColorPickerMac::endPicker):
2337         (WebKit::WebColorPickerMac::setSelectedColor):
2338         (WebKit::WebColorPickerMac::didChooseColor):
2339         (WebKit::WebColorPickerMac::showColorPicker):
2340         WebColorPickerMac contains a reference to a WKColorPanelMac object
2341           and is responsible for maintaining the color picker UI.
2342
2343         (-[WKColorPanelMac setAndShowPicker:withColor:]):
2344         (-[WKColorPanelMac invalidate]):
2345         (-[WKColorPanelMac windowWillClose:]):
2346         (-[WKColorPanelMac didChooseColor:]):
2347         (-[WKColorPanelMac setColor:]):
2348         WKColorPanelMac is a wrapper for a NSColorPanel object and 
2349           is responsible for the color picker UI.
2350
2351         * WebKit2.xcodeproj/project.pbxproj:
2352
2353         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2354         (WebKit::WebChromeClient::createColorChooser): Updated to always create a 
2355           WebColorChooser object.
2356
2357         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2358         (WebKit::WebColorChooser::reattachColorChooser): Sets the page's 
2359           active color chooser to the current object and pings the UIProcess
2360           to show the color picker.
2361         (WebKit::WebColorChooser::setSelectedColor): Only sets the color in the
2362           color picker if the WebColorChooser object is the active color element.
2363         * WebProcess/WebCoreSupport/WebColorChooser.h:
2364
2365 2013-07-30  Gavin Barraclough  <barraclough@apple.com>
2366
2367         Some cleanup in JSValue::get
2368         https://bugs.webkit.org/show_bug.cgi?id=119343
2369
2370         Reviewed by Geoff Garen.
2371
2372         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2373         (WebKit::JSNPObject::getOwnPropertySlot):
2374         * WebProcess/Plugins/Netscape/JSNPObject.h:
2375             - getOwnPropertySlot, JSCell -> JSObject
2376
2377 2013-07-31  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2378
2379         [Qt] Build WebKit with C++11
2380         https://bugs.webkit.org/show_bug.cgi?id=119337
2381
2382         Reviewed by Csaba Osztrogonác.
2383
2384         We no longer need to enable C++11 specifically for WebKit2.
2385
2386         * WebKit2.pri:
2387
2388 2013-07-30  Tim Horton  <timothy_horton@apple.com>
2389
2390         DHTML drag can result in a null-deref under WebDragClient::startDrag
2391         https://bugs.webkit.org/show_bug.cgi?id=119297
2392         <rdar://problem/14213012>
2393
2394         Reviewed by Simon Fraser.
2395
2396         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
2397         (WebKit::convertImageToBitmap):
2398         ShareableBitmap::createShareable can return null, but shouldn't dereference that.
2399
2400 2013-07-30  Ruth Fong  <ruth_fong@apple.com>
2401
2402         Rename <input type='color'> functions in WebPageProxy, WebColorPicker
2403         <rdar://problem/14549771> and https://bugs.webkit.org/show_bug.cgi?id=119097
2404
2405         Reviewed by Tim Horton.
2406
2407         In bug 119025, WebColorChooserProxy was renamed WebColorPicker. This patch makes the UIProcess consistent
2408         by renaming UIProcess INPUT_TYPE_COLOR functions from ...colorChooser to ...colorPicker.
2409
2410         * UIProcess/WebColorPicker.cpp:
2411         (WebKit::WebColorPicker::endPicker):
2412         * UIProcess/WebColorPicker.h:
2413         * UIProcess/WebColorPickerResultListenerProxy.cpp:
2414         (WebKit::WebColorPickerResultListenerProxy::setColor):
2415         * UIProcess/WebPageProxy.cpp:
2416         (WebKit::WebPageProxy::showColorPicker):
2417         (WebKit::WebPageProxy::setColorPickerColor):
2418         (WebKit::WebPageProxy::endColorPicker):
2419         (WebKit::WebPageProxy::didEndColorPicker):
2420         * UIProcess/WebPageProxy.h:
2421         * UIProcess/WebPageProxy.messages.in:
2422         * UIProcess/qt/WebColorPickerQt.cpp:
2423         (WebKit::WebColorPickerQt::createItem):
2424         (WebKit::WebColorPickerQt::notifyColorSelected):
2425         (WebKit::WebColorPickerQt::endPicker):
2426         * UIProcess/qt/WebColorPickerQt.h:
2427         * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2428         (WebKit::WebColorChooser::WebColorChooser):
2429         (WebKit::WebColorChooser::setSelectedColor):
2430         (WebKit::WebColorChooser::endChooser):
2431         * WebProcess/WebPage/WebPage.cpp:
2432         (WebKit::WebPage::didEndColorPicker):
2433         * WebProcess/WebPage/WebPage.h:
2434         * WebProcess/WebPage/WebPage.messages.in:
2435
2436 2013-07-30  Anders Carlsson  <andersca@apple.com>
2437
2438         Speculative fix for crash due to string access on multiple threads
2439         https://bugs.webkit.org/show_bug.cgi?id=119279
2440         <rdar://problem/14267833>
2441
2442         Reviewed by Darin Adler.
2443
2444         We can't use String::isolatedCopy for passing the local storage directory to the storage thread since
2445         that returns a String that's copied and then destroyed after the call to bind returns, leaving a small window
2446         where the refcount can be accessed simultaneously from two threads.
2447
2448         Work around this by passing a PassRefPtr<StringImpl> to bind instead; the act of copying the PassRefPtr will
2449         clear out the original and so when the original is destroyed the underlying StringImpl pointer will be null.
2450
2451         * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
2452         (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectory):
2453         (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal):
2454         * UIProcess/Storage/LocalStorageDatabaseTracker.h:
2455
2456 2013-07-30  Tim Horton  <timothy_horton@apple.com>
2457
2458         Fix typo in enum name ("SelectionInSnaphot" -> "SelectionInSnapshot")
2459         https://bugs.webkit.org/show_bug.cgi?id=119275
2460
2461         Reviewed by Simon Fraser.
2462
2463         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2464         (WebKit::imageForRect):
2465         * WebProcess/WebPage/WebPage.cpp:
2466         (WebKit::WebPage::scaledSnapshotWithOptions):
2467         Fix typo.
2468
2469 2013-07-30  Anders Carlsson  <andersca@apple.com>
2470
2471         Plug-in process crashes if plug-in is destroyed as a result of sending NPObjectMessageReceiver::Deallocate
2472         https://bugs.webkit.org/show_bug.cgi?id=119270
2473         <rdar://problem/13368226>
2474
2475         Reviewed by Darin Adler.
2476
2477         Normally we use the PluginDestructionProtector RAII object to prevent plug-ins from being destroyed while
2478         they're executing code. However, in the case of the NPObjectMessageReceiver::Deallocate message, we can't do this
2479         since we don't know the plug-in or connection. 
2480         
2481         Instead, add a counter to Connection that keeps track of whether sendSync is currently called and defer plug-in
2482         destruction if it is. (This approach is actually more robust and we should investigate getting rid of the destruction protector).
2483
2484         * Platform/CoreIPC/Connection.cpp:
2485         (CoreIPC::Connection::Connection):
2486         (CoreIPC::Connection::sendSyncMessage):
2487         * Platform/CoreIPC/Connection.h:
2488         (CoreIPC::Connection::inSendSync):
2489         * PluginProcess/PluginControllerProxy.cpp:
2490         (WebKit::PluginControllerProxy::destroy):
2491
2492 2013-07-30  Tim Horton  <timothy_horton@apple.com>
2493
2494         Null deref under WebPage::scaledSnapshotWithOptions
2495         https://bugs.webkit.org/show_bug.cgi?id=119243
2496         <rdar://problem/14502050>
2497
2498         Reviewed by Darin Adler.
2499
2500         * WebProcess/WebPage/WebPage.cpp:
2501         (WebKit::WebPage::scaledSnapshotWithOptions):
2502         WebFrame::coreFrame() can be null (if the Frame is already torn down),
2503         so we should check it.
2504
2505 2013-07-30  Tim Horton  <timothy_horton@apple.com>
2506
2507         Null deref under PluginView::handlesPageScaleFactor()
2508         https://bugs.webkit.org/show_bug.cgi?id=119231
2509         <rdar://problem/14440207>
2510
2511         Reviewed by Darin Adler.
2512
2513         Null-check the PluginView in the caller as well.
2514
2515         * WebProcess/WebPage/WebFrame.cpp:
2516         (WebKit::WebFrame::handlesPageScaleGesture):
2517
2518 2013-07-30  Patrick Gansterer  <paroga@webkit.org>
2519
2520         Remove unused Download*.cpp files
2521         https://bugs.webkit.org/show_bug.cgi?id=119248
2522
2523         Reviewed by Anders Carlsson.
2524
2525         * Shared/Downloads/cfnet/DownloadCFNet.cpp: Removed.
2526         * Shared/Downloads/curl/DownloadCurl.cpp: Removed.
2527
2528 2013-07-30  Jeff Miller  <jeffm@apple.com>
2529
2530         Page for WKPageLoaderClient processDidCrash callback always reports a process identifier of 0
2531         https://bugs.webkit.org/show_bug.cgi?id=119269
2532         <rdar://problem/14582393>
2533
2534         Reviewed by Anders Carlsson.
2535
2536         * UIProcess/WebPageProxy.cpp:
2537         (WebKit::WebPageProxy::processIdentifier):
2538         Return 0 if the page is closed instead of requiring isValid().
2539
2540 2013-07-30  Kwang Yul Seo  <skyul@company100.net>
2541
2542         [WK2] Move the implementation of WebEditorClient::checkTextOfParagraph to WebEditorClient.cpp
2543         https://bugs.webkit.org/show_bug.cgi?id=119034
2544
2545         Reviewed by Anders Carlsson.
2546
2547         The Mac and EFL ports use the same implementation of
2548         WebEditorClient::checkTextOfParagraph and GTK will use the same
2549         implementation too. So rather than duplicating the same code in
2550         platform specific files, move the implementation to platform agnostic
2551         WebProcess/WebCoreSupport/WebEditorClient.cpp.
2552
2553         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2554         (WebKit::WebEditorClient::checkTextOfParagraph):
2555         * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2556         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
2557
2558 2013-07-30  Brian Holt  <brian.holt@samsung.com>
2559
2560         [WebKit2] [Gtk] WebKitResponsePolicyDecision URI response property incorrect
2561         https://bugs.webkit.org/show_bug.cgi?id=119258
2562
2563         Reviewed by Martin Robinson.
2564
2565         Corrected the installed URI response property from PROP_REQUEST to
2566         PROP_RESPONSE and type from WEBKIT_TYPE_URI_REQUEST to
2567         WEBKIT_TYPE_URI_RESPONSE.
2568
2569         * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
2570         (webkit_response_policy_decision_class_init):
2571
2572 2013-07-29  Carlos Garcia Campos  <cgarcia@igalia.com>
2573
2574         Unreviewed. Fix make distcheck.
2575
2576         * GNUmakefile.list.am: Add missing header file to compilation.
2577
2578 2013-07-29  Tim Horton  <timothy_horton@apple.com>
2579
2580         [wk2] Flush the WebProcess’ implicit transaction when using endDeferringViewInWindowChangesSync
2581         https://bugs.webkit.org/show_bug.cgi?id=119225
2582         <rdar://problem/14568841>
2583
2584         Reviewed by Simon Fraser.
2585
2586         Tell CoreAnimation to flush the implicit transaction before replying
2587         when using endDeferringViewInWindowChangesSync, as that method's contract
2588         is that the WebProcess is totally ready to be in-window when it returns.
2589
2590         * UIProcess/API/mac/WKView.mm:
2591         (-[WKView endDeferringViewInWindowChanges]):
2592         Adopt viewInWindowStateDidChange.
2593
2594         (-[WKView endDeferringViewInWindowChangesSync]):
2595         Adopt viewInWindowStateDidChange, asking it to send a reply only if we're going to wait for one.
2596
2597         * UIProcess/WebPageProxy.cpp:
2598         (WebKit::WebPageProxy::viewInWindowStateDidChange):
2599         (WebKit::WebPageProxy::viewStateDidChange):
2600         Pull viewInWindowStateDidChange out of viewStateDidChange.
2601         Request a reply from SetIsInWindow if we're told to.
2602
2603         * UIProcess/WebPageProxy.h: Add WantsReplyOrNot and viewInWindowStateDidChange.
2604         * WebProcess/WebPage/WebPage.cpp:
2605         (WebKit::WebPage::didUpdateInWindowStateTimerFired):
2606         Don't build this version on Mac, we'll have a WebPageMac version.
2607
2608         (WebKit::WebPage::setIsInWindow):
2609         Only start the timer to send the didUpdateInWindowState reply if we're asked to.
2610
2611         * WebProcess/WebPage/WebPage.h:
2612         * WebProcess/WebPage/WebPage.messages.in:
2613         Add an argument to the SetIsInWindow message for whether the WebProcess
2614         should inform the UIProcess when SetIsInWindow completes or not.
2615
2616         * WebProcess/WebPage/mac/WebPageMac.mm:
2617         (WebKit::WebPage::didUpdateInWindowStateTimerFired):
2618         Tell CA to flush the implicit transaction before telling the UIProcess that
2619         we're finished moving in-window.
2620
2621 2013-07-29  Tim Horton  <timothy_horton@apple.com>
2622
2623         Null deref under PluginView::handlesPageScaleFactor()
2624         https://bugs.webkit.org/show_bug.cgi?id=119231
2625         <rdar://problem/14440207>
2626
2627         Reviewed by Simon Fraser.
2628
2629         * WebProcess/Plugins/PluginView.cpp:
2630         (WebKit::PluginView::handlesPageScaleFactor):
2631         * WebProcess/Plugins/PluginView.h:
2632         Null-check m_plugin and check m_isInitialized.
2633         Make pageScaleFactor() and handlesPageScaleFactor const.
2634
2635 2013-07-29  Anders Carlsson  <andersca@apple.com>
2636
2637         Remove setUnderlayPage() and associated code
2638         https://bugs.webkit.org/show_bug.cgi?id=119220
2639         <rdar://problem/14392426>
2640
2641         Reviewed by Jessie Berlin.
2642
2643         This is dead code, get rid of it.
2644
2645         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2646         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2647         * WebProcess/WebPage/WebPage.cpp:
2648         (WebKit::WebPage::close):
2649         (WebKit::WebPage::layoutIfNeeded):
2650         (WebKit::WebPage::drawRect):
2651         * WebProcess/WebPage/WebPage.h:
2652
2653 2013-07-29  Sergio Correia  <sergio.correia@openbossa.org>
2654
2655         CoordinatedGraphics: Add API to get and set the active state of a WebView
2656         https://bugs.webkit.org/show_bug.cgi?id=119067
2657
2658         Reviewed by Noam Rosenthal.
2659
2660         A view being in the "active" state generally means that it is not in the
2661         "background", although this definition can vary depending on the platform
2662         under consideration.
2663
2664         This patch adds the following APIs to WKView:
2665         - bool WKViewIsActive(WKViewRef)
2666         This API accepts a WKViewRef as parameter and returns a boolean indicating
2667         whether the given view is active.
2668
2669         - void WKViewSetIsActive(WKViewRef, bool)
2670         This API accepts a WKViewRef and a boolean as parameteres, and it sets the
2671         active state of the given view to the given boolean argument.
2672
2673         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
2674         (WKViewIsActive): API added.
2675         (WKViewSetIsActive): Ditto.
2676         * UIProcess/API/C/CoordinatedGraphics/WKView.h: Export aforementioned API.
2677         * UIProcess/CoordinatedGraphics/WebView.cpp:
2678         (WebKit::WebView::initialize): Use new setActive method.
2679         (WebKit::WebView::setActive): Added method to set the active state of the
2680         view.
2681         (WebKit::WebView::isActive): Added method to return the active state of
2682         view.
2683         (WebKit::WebView::enterAcceleratedCompositingMode): Use new setActive
2684         method.
2685         (WebKit::WebView::exitAcceleratedCompositingMode): Ditto.
2686         * UIProcess/CoordinatedGraphics/WebView.h: Added declarations of isActive
2687         and setActive.
2688
2689 2013-07-29  Jae Hyun Park  <jae.park@company100.net>
2690
2691         Remove duplicated LayerTreeHost::supportsAcceleratedCompositing
2692         https://bugs.webkit.org/show_bug.cgi?id=118949
2693
2694         Reviewed by Noam Rosenthal.
2695
2696         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2697         * WebProcess/WebPage/LayerTreeHost.h:
2698         (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
2699
2700 2013-07-29  Zan Dobersek  <zdobersek@igalia.com>
2701
2702         [Automake] Remove references to non-existent *_CFLAGS and *_LIBS variables
2703         https://bugs.webkit.org/show_bug.cgi?id=119212
2704
2705         Reviewed by Carlos Garcia Campos.
2706
2707         * GNUmakefile.am: Remove references to GLOBALDEPS_(CFLAGS|LIBS) and CLUTTER_(CFLAGS|LIBS)
2708         variables that are not defined during the configuration process.
2709
2710 2013-07-28  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2711
2712         [EFL][WK2] Simplify context_menu_spelling_items_availability unit test
2713         https://bugs.webkit.org/show_bug.cgi?id=119085
2714
2715         Reviewed by Gyuyoung Kim.
2716
2717         Use findContextMenuItem method to check whether the item
2718         appears in context menu.
2719
2720         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
2721         (EWK2TextCheckerTest::findContextMenuItem):
2722         Do not report failure inside the method.
2723         It doesn't allow to test the negative test cases.
2724
2725         (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
2726         Use findContextMenuItem method.
2727
2728         (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
2729         (EWK2TextCheckerTest::selectLearnSpelling):
2730         (EWK2TextCheckerTest::selectIgnoreSpelling):
2731         Verify the return value of findContextMenuItem.
2732
2733         (TEST_F):
2734         Reset wasContextMenuShown variable, it's needed after r152153.
2735         Use waitUntilTrue method.
2736
2737 2013-07-27  Jacky Jiang  <zhajiang@blackberry.com>
2738
2739         Replace all uses of GraphicsLayer::create function with the one that takes a GraphicsLayerFactory
2740         https://bugs.webkit.org/show_bug.cgi?id=119186
2741
2742         Reviewed by Anders Carlsson.
2743
2744         * UIProcess/mac/RemoteLayerTreeHost.mm:
2745         (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
2746
2747 2013-07-27  Chris Fleizach  <cfleizach@apple.com>
2748
2749         AX: VoiceOver not working with data detection page overlays
2750         https://bugs.webkit.org/show_bug.cgi?id=118680
2751
2752         Reviewed by Sam Weinig.
2753
2754         Expose API in BundlePageOverlay so that accessibility attributes can be retrieved through the overlay.
2755         This requires two methods in a new callback struct. One to copy the attribute names, and the other to 
2756         copy the attribute values. I've folded both parameterized and non-parameterized attribute names into one method
2757         with a boolean to determine which one should be used. The non-parameterized attributes are not used or passed to the
2758         overlay at this time as there are no clients with such a need.
2759
2760         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2761         (PageOverlayClientImpl::setAccessibilityClient):
2762         (PageOverlayClientImpl::PageOverlayClientImpl):
2763         (PageOverlayClientImpl::copyAccessibilityAttributeValue):
2764         (PageOverlayClientImpl::copyAccessibilityAttributeNames):
2765         (WKBundlePageOverlaySetAccessibilityClient):
2766         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
2767         * WebProcess/WebPage/PageOverlay.cpp:
2768         (WebKit::PageOverlay::copyAccessibilityAttributeValue):
2769         (WebKit::PageOverlay::copyAccessibilityAttributeNames):
2770         * WebProcess/WebPage/PageOverlay.h:
2771         (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
2772         (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
2773         (WebKit::PageOverlay::client):
2774         * WebProcess/WebPage/WebPage.cpp:
2775         (WebKit::WebPage::pageOverlayCopyAccessibilityAttributeValue):
2776         (WebKit::WebPage::pageOverlayCopyAccessibilityAttributesNames):
2777         * WebProcess/WebPage/WebPage.h:
2778         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
2779         (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
2780         (-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
2781         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
2782
2783 2013-07-27  Simon Fraser  <simon.fraser@apple.com>
2784
2785         If entering fullscreen for a window fails, don't leave things in a bad state
2786         https://bugs.webkit.org/show_bug.cgi?id=119179
2787
2788         Reviewed by Sam Weinig.
2789         
2790         On Lion, attempting to take a video fullscreen when the Safari window is already
2791         fullscreen can sometimes fail, and AppKit informs us via windowDidFailToEnterFullScreen:
2792         
2793         When this happens we have to undo the work done when entering fullscreen, to
2794         avoid leaving things in a bad state.
2795
2796         * UIProcess/mac/WKFullScreenWindowController.mm:
2797         (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
2798
2799 2013-07-26  Tim Horton  <timothy_horton@apple.com>
2800
2801         Add a mode where autosizing fixes the FrameView height to at least the WKView height
2802         https://bugs.webkit.org/show_bug.cgi?id=119104
2803         <rdar://problem/14549021>
2804
2805         Reviewed by Anders Carlsson.
2806
2807         * Shared/WebPageCreationParameters.cpp:
2808         (WebKit::WebPageCreationParameters::encode):
2809         (WebKit::WebPageCreationParameters::decode):
2810         * Shared/WebPageCreationParameters.h:
2811         Add autoSizingShouldExpandToViewHeight parameter.
2812
2813         * UIProcess/API/mac/WKView.mm:
2814         (-[WKView minimumWidthForAutoLayout]):
2815         (-[WKView setMinimumWidthForAutoLayout:]):
2816         Un-deprecate these as they're still useful if not sending a height.
2817
2818         (-[WKView shouldExpandToViewHeightForAutoLayout]):
2819         (-[WKView setShouldExpandToViewHeightForAutoLayout:]):
2820         * UIProcess/API/mac/WKViewPrivate.h:
2821         New property, forward to WebPageProxy.
2822
2823         * UIProcess/WebPageProxy.cpp:
2824         (WebKit::WebPageProxy::WebPageProxy):
2825         (WebKit::WebPageProxy::creationParameters):
2826         (WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight):
2827         * UIProcess/WebPageProxy.h:
2828         (WebKit::WebPageProxy::autoSizingShouldExpandToViewHeight):
2829         New property, forward to WebPage.
2830
2831         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2832         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2833         If enabled, update the FrameView's autoSizeFixedMinimumHeight.
2834
2835         * WebProcess/WebPage/WebPage.cpp:
2836         (WebKit::WebPage::WebPage):
2837         (WebKit::WebPage::setAutoSizingShouldExpandToViewHeight):
2838         * WebProcess/WebPage/WebPage.h:
2839         (WebKit::WebPage::autoSizingShouldExpandToViewHeight):
2840         New property; if enabled, set FrameView's autoSizeFixedMinimumHeight,
2841         otherwise reset it to 0.
2842
2843         * WebProcess/WebPage/WebPage.messages.in:
2844         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2845         (WebKit::TiledCoreAnimationDrawingArea::updateIntrinsicContentSizeTimerFired):
2846         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
2847         Retrieve intrinsic content size explicitly from the FrameView, as
2848         it may not have used it as its final contentsSize if
2849         autoSizeFixedMinimumHeight is set.
2850
2851         Set the WebPage's size in case the load is committed so that the
2852         WebFrameLoaderClient doesn't reset us to the wrong size.
2853
2854         Update autoSizeFixedMinimumHeight if enabled when the view size changes.
2855
2856 2013-07-25  Andreas Kling  <akling@apple.com>
2857
2858         ChromeClient::focusedNodeChanged() should be focusedElementChanged().
2859         <http://webkit.org/b/119110>
2860
2861         Reviewed by Anders Carlsson.
2862
2863         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2864         (WebKit::WebChromeClient::focusedElementChanged):
2865         * WebProcess/WebCoreSupport/WebChromeClient.h:
2866
2867 2013-07-25  Kwang Yul Seo  <skyul@company100.net>
2868
2869         [WK2][Soup] Add private browsing support
2870         https://bugs.webkit.org/show_bug.cgi?id=118657
2871
2872         Reviewed by Gustavo Noronha Silva.
2873
2874         Support private browsing in WK2 by implementing private browsing
2875         related methods in WebFrameNetworkingContext.
2876
2877         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2878         (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
2879         Add USE(SOUP) guard.
2880
2881         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
2882         Add private browsing support methods. Copied from the Mac port.
2883         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2884         (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
2885         (WebKit::WebFrameNetworkingContext::storageSession):
2886         Check if the frame enables private browsing and return the private
2887         browsing session.
2888         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
2889
2890         * WebProcess/WebProcess.cpp:
2891         (WebKit::WebProcess::ensurePrivateBrowsingSession):
2892         Add USE(SOUP) guard.
2893
2894 2013-07-25  Kwang Yul Seo  <skyul@company100.net>
2895
2896         Build fix: use of long long in CoreIPC::ArgumentEncoder and CoreIPC::ArgumentDecoder
2897         https://bugs.webkit.org/show_bug.cgi?id=118228
2898
2899         Reviewed by Anders Carlsson.
2900
2901         Build fails on some platforms where int64_t and long long are different types.
2902
2903         * Shared/FileAPI/BlobRegistrationData.cpp:
2904         (WebKit::BlobRegistrationData::encode):
2905         Add explicit casts to int64_t.
2906         (WebKit::BlobRegistrationData::decode):
2907         Use int64_t instead of long long.
2908
2909 2013-07-25  Anders Carlsson  <andersca@apple.com>
2910
2911         Remove lastModifiedDate from ResourceResponse
2912         https://bugs.webkit.org/show_bug.cgi?id=119092
2913
2914         Reviewed by Andreas Kling.
2915
2916         Update for WebCore changes.
2917
2918         * WebProcess/Plugins/PluginView.cpp:
2919         (WebKit::lastModifiedDate):
2920         Use ResourceResponse::lastModified() to get the last modified date.
2921
2922         (WebKit::PluginView::Stream::didReceiveResponse):
2923         Call the static lastModified function.
2924
2925         (WebKit::PluginView::manualLoadDidReceiveResponse):
2926         Ditto.
2927
2928 2013-07-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2929
2930         [GTK] Add support for running unit tests in the web process
2931         https://bugs.webkit.org/show_bug.cgi?id=118427
2932
2933         Reviewed by Gustavo Noronha Silva.
2934
2935         Some tests, like GObject DOM bindings API tests, run entirely in
2936         the WebProcess, so we just need to start the test from the UI
2937         process and wait until the test finishes running in the
2938         WebProcess. Tests are split in two files, one containing the
2939         actual test that runs in the WebProcess and another one to add the
2940         tests to the glib test system that works as a
2941         proxy. WebProcessTestRunner class starts a private DBus session
2942         bus and starts the tests sending a message to the WebExtension
2943         waiting until it finishes or fails. WebProcess tests are created
2944         by defining a class derived from WebProcessTest class and
2945         implementing the static create method and the virtual runTest
2946         method. The macro REGISTER_TEST is used by the web process tests
2947         to register their test cases. This patch includes the migration
2948         of the WebKitDOMNode test, all other GObject DOM bindings tests
2949         will be migrated in the same way in follow up patches.
2950
2951         * UIProcess/API/gtk/tests/DOMNodeTest.cpp: Added.
2952         (WebKitDOMNodeTest::create): Create a new WebKitDOMNodeTest.
2953         (WebKitDOMNodeTest::webPageFromArgs): Get the pageID parameter
2954         from the arguments dictionary.
2955         (WebKitDOMNodeTest::testHierarchyNavigation):
2956         (WebKitDOMNodeTest::testInsertion):
2957         (WebKitDOMNodeTest::runTest): Run the given test.
2958         (registerTests): Register test cases.
2959         * UIProcess/API/gtk/tests/GNUmakefile.am: Add new files to
2960         compilation.
2961         * UIProcess/API/gtk/tests/TestDOMNode.cpp: Added.
2962         (testWebKitDOMNodeHierarchyNavigation):
2963         (testWebKitDOMNodeInsertion):
2964         (beforeAll):
2965         (afterAll):
2966         * UIProcess/API/gtk/tests/TestMain.cpp:
2967         (main): Unset DBUS_SESSION_BUS_ADDRESS environment variable to
2968         make sure that the GLib bus singleton is initialized by the
2969         private DBus session bus created by the tests.
2970         * UIProcess/API/gtk/tests/WebProcessTest.cpp: Added.
2971         (testsMap): Initialize and get the global map of tests.
2972         (WebProcessTest::add): Add a new test to the map, keeping a
2973         function to create the test.
2974         (WebProcessTest::create): Create a test for the given name.
2975         (methodCallCallback): Handle RunTest DBus method. It creates and
2976         runs the given test.
2977         (webkit_web_extension_initialize):Register the DBus service for
2978         this WebExtension.
2979         * UIProcess/API/gtk/tests/WebProcessTest.h: Added.
2980         * UIProcess/API/gtk/tests/WebProcessTestRunner.cpp: Added.
2981         (WebProcessTestRunner::WebProcessTestRunner): Start a private DBus
2982         session bus and get a connection to it.
2983         (WebProcessTestRunner::~WebProcessTestRunner): Stop the private
2984         DBus session bus.
2985         (WebProcessTestRunner::proxyCreatedCallback):
2986         (WebProcessTestRunner::proxy): Create a new proxy to send messages
2987         to the WebExtension if it doesn't exists.
2988         (WebProcessTestRunner::onNameAppeared): Called when the DBus
2989         service has been registered in the WebExtension and it's safe to
2990         create a proxy.
2991         (WebProcessTestRunner::onNameVanished): Called when the DBus
2992         service is unregistered. This happens when the web process crash,
2993         so we just exit here, because the g_asserts in the web process
2994         have already registered the error message.
2995         (WebProcessTestRunner::testFinishedCallback): Called when the
2996         WebProcess tests has finished.
2997         (WebProcessTestRunner::runTest): Send a message to the
2998         WebExtension to start the given test and monitor the service.
2999         (WebProcessTestRunner::finishTest): Save the test result and
3000         finish the main loop.
3001         * UIProcess/API/gtk/tests/WebProcessTestRunner.h: Added.
3002
3003 2013-05-05  Geoffrey Garen  <ggaren@apple.com>
3004
3005         Rolled back in r149527 with crash fixed.
3006
3007         Reviewed by Oliver Hunt.
3008
3009             Rationalized 'this' value conversion
3010             https://bugs.webkit.org/show_bug.cgi?id=115542
3011
3012 2013-07-24  Ruth Fong  <ruth_fong@apple.com>
3013
3014         Rename WebColorChooserProxy
3015         <rdar://problem/14528039> and https://bugs.webkit.org/show_bug.cgi?id=119025
3016
3017         Reviewed by Brady Eidson.
3018
3019         Renamed WebColorChooserProxy to WebColorPicker since the name WebColorChoooserProxy
3020         implies that it represents the same object as WebColorChooser, which is not true.
3021         Also, renamed createColorChooserProxy to createColorPicker in WebPageProxy and 
3022         platform-equivalent versions of it.
3023
3024         * CMakeLists.txt:
3025         * GNUmakefile.list.am:
3026         * Target.pri:
3027         * UIProcess/API/gtk/PageClientImpl.cpp:
3028         (WebKit::PageClientImpl::createColorPicker):
3029         * UIProcess/API/gtk/PageClientImpl.h:
3030         * UIProcess/API/mac/PageClientImpl.h:
3031         * UIProcess/API/mac/PageClientImpl.mm:
3032         (WebKit::PageClientImpl::createColorPicker):
3033         * UIProcess/API/qt/raw/qrawwebview.cpp:
3034         (QRawWebViewPrivate::createColorPicker):
3035         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
3036         * UIProcess/CoordinatedGraphics/WebView.cpp:
3037         (WebKit::WebView::createColorPicker):
3038         * UIProcess/CoordinatedGraphics/WebView.h:
3039         * UIProcess/PageClient.h:
3040         * UIProcess/WebColorChooserProxy.cpp: Removed.
3041         * UIProcess/WebColorChooserProxy.h: Removed.
3042         * UIProcess/WebColorPicker.cpp: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.cpp.
3043         (WebKit::WebColorPicker::WebColorPicker):
3044         (WebKit::WebColorPicker::~WebColorPicker):
3045         (WebKit::WebColorPicker::endChooser):
3046         (WebKit::WebColorPicker::setSelectedColor):
3047         * UIProcess/WebColorPicker.h: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.h.
3048         (WebKit::WebColorPicker::create):
3049         * UIProcess/WebPageProxy.cpp:
3050         (WebKit::WebPageProxy::close):
3051         (WebKit::WebPageProxy::showColorChooser):
3052         (WebKit::WebPageProxy::setColorChooserColor):
3053         (WebKit::WebPageProxy::endColorChooser):
3054         (WebKit::WebPageProxy::didEndColorChooser):
3055         (WebKit::WebPageProxy::resetStateAfterProcessExited):
3056         * UIProcess/WebPageProxy.h: Renamed m_colorChooser to m_colorPicker.
3057         * UIProcess/qt/QtPageClient.cpp:
3058         (WebKit::QtPageClient::createColorPicker):
3059         * UIProcess/qt/QtPageClient.h:
3060         * UIProcess/qt/WebColorChooserProxyQt.cpp: Removed.
3061         * UIProcess/qt/WebColorChooserProxyQt.h: Removed.
3062         * UIProcess/qt/WebColorPickerQt.cpp: Added.
3063         (WebKit::ColorChooserContextObject::ColorChooserContextObject):
3064         (WebKit::ColorChooserContextObject::currentColor):
3065         (WebKit::ColorChooserContextObject::elementRect):
3066         (WebKit::ColorChooserContextObject::accept):
3067         (WebKit::ColorChooserContextObject::reject):
3068         (WebKit::WebColorPickerQt::WebColorPickerQt):
3069         (WebKit::WebColorPickerQt::~WebColorPickerQt):
3070         (WebKit::WebColorPickerQt::createItem):
3071         (WebKit::WebColorPickerQt::createContext):
3072         (WebKit::WebColorPickerQt::setSelectedColor):
3073         (WebKit::WebColorPickerQt::notifyColorSelected):
3074         (WebKit::WebColorPickerQt::endChooser):
3075         * UIProcess/qt/WebColorPickerQt.h: Added.
3076         (WebKit::WebColorPickerQt::create):
3077         * WebKit2.xcodeproj/project.pbxproj:
3078
3079 2013-07-24  Anders Carlsson  <andersca@apple.com>
3080
3081         Crash when calling WKPageGetProcessIdentifier after aborted process launch
3082         https://bugs.webkit.org/show_bug.cgi?id=119069
3083         <rdar://problem/14494064>
3084
3085         Reviewed by Andreas Kling.
3086
3087         * UIProcess/WebPageProxy.cpp:
3088         (WebKit::WebPageProxy::processIdentifier):
3089         Check if the page is closed instead of checking whether we have a process - We'll always have a process.
3090         
3091         (WebKit::WebPageProxy::isValid):
3092         Make this const.
3093
3094         * UIProcess/WebPageProxy.h:
3095
3096 2013-07-24  Kwang Yul Seo  <skyul@company100.net>
3097
3098         [WK2][Soup] Add entry point for network process
3099         https://bugs.webkit.org/show_bug.cgi?id=110136
3100
3101         Reviewed by Gustavo Noronha Silva.
3102
3103         Original patch by Balazs Kelemen <kbalazs@webkit.org>.
3104
3105         Added a common entry point for non-Mac Unix ports.
3106
3107         * NetworkProcess/unix/NetworkProcessMainUnix.cpp: Added.
3108         (WebKit::NetworkProcessMain):
3109         * NetworkProcess/unix/NetworkProcessMainUnix.h: Added.
3110         * unix/NetworkMainUnix.cpp: Added.
3111         (main):
3112
3113 2013-07-24  Jessie Berlin  <jberlin@apple.com>
3114
3115         Remove WKPageGetPlugInInformation - it is not used anymore
3116         https://bugs.webkit.org/show_bug.cgi?id=119047
3117
3118         Reviewed by Alexey Proskuryakov.
3119
3120         Revert r151172, which fixed a crash introduced in r151043, r151054, which fixed some naming
3121         and ref-churn issues introduced in r151043, and r151043, which added
3122         WKPageGetPlugInInformation.
3123
3124         * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
3125         (WKPageIsURLKnownHSTSHost):
3126         * UIProcess/API/C/mac/WKPagePrivateMac.h:
3127         * UIProcess/Plugins/PluginProcessManager.h:
3128         * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
3129         * UIProcess/WebPageProxy.cpp:
3130         (WebKit::WebPageProxy::close):
3131         * UIProcess/WebPageProxy.h:
3132         * UIProcess/WebPageProxy.messages.in:
3133         * UIProcess/mac/WebPageProxyMac.mm:
3134         * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3135         * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
3136         * WebProcess/Plugins/Plugin.h:
3137         * WebProcess/Plugins/PluginProxy.h:
3138         * WebProcess/Plugins/PluginView.h:
3139         * WebProcess/WebPage/WebPage.h:
3140         * WebProcess/WebPage/WebPage.messages.in:
3141         * WebProcess/WebPage/mac/WebPageMac.mm:
3142
3143 2013-07-24  Jessie Berlin  <jberlin@apple.com>
3144
3145         Remove WKPageGetPlugInInformation - it is not used anymore
3146         https://bugs.webkit.org/show_bug.cgi?id=119047
3147
3148         Rubber-stamped by Alexey Proskuryakov.
3149
3150         Revert r152328, which added a key used only in the callback info for
3151         WKPageGetPlugInInformation.
3152
3153         * Shared/API/c/WKPluginInformation.cpp:
3154         * Shared/API/c/WKPluginInformation.h:
3155         * Shared/Plugins/Netscape/PluginInformation.cpp:
3156         * Shared/Plugins/Netscape/PluginInformation.h:
3157         * UIProcess/WebPageProxy.h:
3158         * UIProcess/WebPageProxy.messages.in:
3159         * UIProcess/mac/WebPageProxyMac.mm:
3160         (WebKit::WebPageProxy::containsPlugInCallback):
3161         * WebProcess/WebPage/mac/WebPageMac.mm:
3162         (WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
3163
3164 2013-07-24  Anton Obzhirov  <a.obzhirov@samsung.com>
3165
3166         [GTK] TestInspectorServer unit test is timing out
3167         https://bugs.webkit.org/show_bug.cgi?id=105866
3168
3169         Reviewed by Gustavo Noronha Silva.
3170
3171         The test failed because it couldn't find inspector resources in default folder
3172         (make install step was missing). It uses now resources available in
3173         WebKitBuild folder. WebInspectorServerGtk was refactored as well to make
3174         easier to use WEBKIT_INSPECTOR_SERVER_PATH variable.
3175
3176         * UIProcess/API/gtk/tests/GNUmakefile.am:
3177         * UIProcess/API/gtk/tests/InspectorTestServer.cpp:
3178         (main):
3179         * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
3180         (testInspectorServerPageList):
3181         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
3182         (WebKit::WebInspectorServer::platformResourceForPath):
3183         (WebKit::WebInspectorServer::buildPageList):
3184         (WebKit::WebInspectorServer::inspectorServerFilesPath):
3185
3186 2013-07-23  Simon Cooper  <scooper@apple.com>
3187
3188         10.7: Java applets do not work due to sandbox violation/exception
3189         https://bugs.webkit.org/show_bug.cgi?id=118920
3190         <rdar://problem/14471541&12910934&14223830&14260729&14267679>
3191
3192         Reviewed by Alexey Proskuryakov.
3193
3194         Introduce versioning into the common profile and use it to fix
3195         a number of issues with Java on 10.7 and 10.8. Allow writing the
3196         com.apple.java.util.prefs preference file. This change also
3197         introduces a "/Library/Application Support/Java/PublicFiles"
3198         area which Java can read without any restrictions. Files written
3199         to this location will need to be created and written to by
3200         a privileged process.
3201
3202         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
3203         * Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
3204
3205 2013-07-23  Eunmi Lee  <eunmi15.lee@samsung.com>
3206
3207         [EFL][WK2] Add doneWithTouchEvent callback to the WKViewClient.
3208         https://bugs.webkit.org/show_bug.cgi?id=110085
3209
3210         Reviewed by Kenneth Rohde Christiansen.
3211
3212         Add doneWithTouchEvent callback to the WKViewClient in order to get the
3213         result of touch events in the EwkView. The result will be used to
3214         recognize gestures in the Bug 102643.
3215
3216         APIs to get values from WKTouchEventRef and WKTouchPointRef are added
3217         because WKTypeRef is opaque to the applications.
3218
3219         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3220         * UIProcess/API/C/efl/WKAPICastEfl.h:
3221         (WebKit::toAPI):
3222         * UIProcess/API/C/efl/WKEventEfl.cpp:
3223         (WKTouchEventGetType):
3224         (WKTouchEventGetTouchPoints):
3225         (WKTouchEventGetModifiers):
3226         (WKTouchEventGetTimestamp):
3227         (WKTouchPointGetID):
3228         (WKTouchPointGetState):
3229         (WKTouchPointGetScreenPosition):
3230         (WKTouchPointGetPosition):
3231         (WKTouchPointGetRadius):
3232         (WKTouchPointGetRotationAngle):
3233         (WKTouchPointGetForceFactor):
3234         * UIProcess/API/C/efl/WKEventEfl.h:
3235         * UIProcess/API/efl/EwkView.cpp:
3236         (EwkView::doneWithTouchEvent):
3237         * UIProcess/API/efl/EwkView.h:
3238         * UIProcess/CoordinatedGraphics/WebView.cpp:
3239         (WebKit::WebView::doneWithTouchEvent):
3240         * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
3241         (WebKit::WebViewClient::doneWithTouchEvent):
3242         * UIProcess/CoordinatedGraphics/WebViewClient.h:
3243         * UIProcess/efl/ViewClientEfl.cpp:
3244         (WebKit::ViewClientEfl::doneWithTouchEvent):
3245         (WebKit::ViewClientEfl::ViewClientEfl):
3246         * UIProcess/efl/ViewClientEfl.h:
3247
3248 2013-07-22  Alexey Proskuryakov  <ap@apple.com>
3249
3250         Frequent MESSAGE_CHECK failures in WebPageProxy::didReceiveEvent
3251         https://bugs.webkit.org/show_bug.cgi?id=118976
3252         <rdar://problem/14155030>
3253
3254         Reviewed by Sam Weinig.
3255
3256         * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessExited):
3257         Clear m_gestureEventQueue, just like we clear all other event queues here.
3258
3259 2013-07-21  Anders Carlsson  <andersca@apple.com>
3260
3261         Java Updater not launched on Lion and Mountain Lion
3262         https://bugs.webkit.org/show_bug.cgi?id=118953
3263         <rdar://problem/14496721>
3264
3265         Reviewed by Sam Weinig.
3266
3267         On Lion and Mountain Lion, -[NSURL isEqual:] will return NO for two file URLs if one of
3268         them has "localhost" specified, even if the paths are otherwise equal. Work around this by
3269         comparing the paths directly.
3270
3271         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
3272         (WebKit::isJavaUpdaterURL):
3273
3274 2013-07-19  Morten Stenshorne  <mstensho@opera.com>
3275
3276         [GTK] Need a way to enable region based columns from the command line
3277         https://bugs.webkit.org/show_bug.cgi?id=116611
3278
3279         Reviewed by Martin Robinson.
3280
3281         Add an environment variable to enable experimental features.
3282
3283         This provides a means to enable experimental features without polluting
3284         the public API.
3285
3286         Environment variable name: WEBKITGTK_EXPERIMENTAL_FEATURES
3287
3288         Format: WEBKITGTK_EXPERIMENTAL_FEATURES="<feature1>=1,<feature2>=1,..."
3289         Or, to enable all experimental features: WEBKITGTK_EXPERIMENTAL_FEATURES=all
3290
3291         So far the only feature is region based columns (implement multicol using
3292         the CSS regions implementation rather than ColumnInfo & co) - REGION_BASED_COLUMNS.
3293
3294         Example: WEBKITGTK_EXPERIMENTAL_FEATURES="REGION_BASED_COLUMNS=1"
3295
3296         * GNUmakefile.list.am:
3297         * PlatformGTK.cmake:
3298         * UIProcess/API/gtk/WebKitSettings.cpp:
3299         (webKitSettingsConstructed):
3300         (webkit_settings_class_init):
3301         * UIProcess/gtk/ExperimentalFeatures.cpp: Added.
3302         (WebKit):
3303         (Setting):
3304         (WebKit::ExperimentalFeatures::ExperimentalFeatures):
3305         (WebKit::ExperimentalFeatures::isEnabled):
3306         (WebKit::ExperimentalFeatures::setEnableByName):
3307         (WebKit::ExperimentalFeatures::parseEnvironment):
3308         * UIProcess/gtk/ExperimentalFeatures.h: Added.
3309         (WebKit):
3310         (ExperimentalFeatures):
3311
3312 2013-07-18  Eunmi Lee  <eunmi15.lee@samsung.com>
3313
3314         [WK2] Share Qt port's codes to find zoomable area with CoordinatedGraphics.
3315         https://bugs.webkit.org/show_bug.cgi?id=118585
3316
3317         Reviewed by Anders Carlsson.
3318
3319         The function to find zoomable area is needed in order to implement the
3320         feature to scale for double-tap gesture. The WK2 EFL and NIX port want
3321         to use that function, so extract the code from the Qt port, make it
3322         usable in the CoordinatedGraphics and add API and callback.
3323
3324         * CMakeLists.txt:
3325         * Target.pri:
3326         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3327         (WKViewFindZoomableAreaForRect):
3328         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3329         * UIProcess/API/efl/EwkView.cpp:
3330         (EwkView::didFindZoomableArea):
3331         * UIProcess/API/efl/EwkView.h:
3332         * UIProcess/CoordinatedGraphics/WebPageProxyCoordinatedGraphics.cpp: Added.
3333         (WebKit::WebPageProxy::findZoomableAreaForPoint):
3334         (WebKit::WebPageProxy::didFindZoomableArea):
3335         * UIProcess/CoordinatedGraphics/WebView.cpp:
3336         (WebKit::WebView::didFindZoomableArea):
3337         (WebKit::WebView::findZoomableAreaForPoint):
3338         * UIProcess/CoordinatedGraphics/WebView.h:
3339         * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
3340         (WebKit::WebViewClient::didFindZoomableArea):
3341         * UIProcess/CoordinatedGraphics/WebViewClient.h:
3342         * UIProcess/PageClient.h:
3343         * UIProcess/WebPageProxy.h:
3344         * UIProcess/WebPageProxy.messages.in:
3345         * UIProcess/efl/ViewClientEfl.cpp:
3346         (WebKit::ViewClientEfl::didFindZoomableArea):
3347         (WebKit::ViewClientEfl::ViewClientEfl):
3348         * UIProcess/efl/ViewClientEfl.h:
3349         * UIProcess/qt/WebPageProxyQt.cpp:
3350         * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Added.
3351         (WebKit::WebPage::findZoomableAreaForPoint):
3352         * WebProcess/WebPage/WebPage.cpp:
3353         * WebProcess/WebPage/WebPage.h:
3354         * WebProcess/WebPage/WebPage.messages.in:
3355
3356 2013-07-18  Simon Cooper  <scooper@apple.com>
3357
3358         Flash Player: deny file-read-data /Library/Application Support/Macromedia/FlashAuthor.cfg
3359         https://bugs.webkit.org/show_bug.cgi?id=118874
3360         <rdar://problem/14271327>
3361
3362         Reviewed by Alexey Proskuryakov.
3363
3364         Silently deny access to FlashAuthor.cfg. This location contains
3365         files containing lists of paths that Flash Player will
3366         "allow" access to (without asking the user). Since the plugin
3367         sandbox won't permit the access to the listed paths it is better
3368         to silently block attempts to read this "whitelist".
3369
3370         * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
3371
3372 2013-07-18  Tim Horton  <timothy_horton@apple.com>
3373
3374         [wk2] Ensure that the plugin layer is removed completely when the PluginProcess crashes
3375         https://bugs.webkit.org/show_bug.cgi?id=118862
3376
3377         Reviewed by Anders Carlsson.
3378
3379         * WebProcess/Plugins/PluginView.cpp:
3380         (WebKit::PluginView::PluginView):
3381         Add m_pluginProcessHasCrashed.
3382
3383         (WebKit::PluginView::platformLayer):
3384         Don't return the plugin's layer if it has crashed.
3385
3386         (WebKit::PluginView::pluginProcessCrashed):
3387         Set m_pluginProcessHasCrashed.
3388         Cause a style recalc so that we rebuild the layer tree; our layer won't be included.
3389
3390         * WebProcess/Plugins/PluginView.h:
3391         Add m_pluginProcessHasCrashed.
3392
3393 2013-07-18  Alexey Proskuryakov  <ap@apple.com>
3394
3395         <rdar://problem/13886443> Assertion failures in NetworkProcess in SandboxExtension::revoke when aborting SyncNetworkResourceLoader
3396         <rdar://problem/13826348> ASSERT(!m_useCount) fails in NetworkProcess at SandboxExtension::~SandboxExtension
3397         https://bugs.webkit.org/show_bug.cgi?id=118855
3398
3399         Reviewed by Brady Eidson.
3400
3401         * NetworkProcess/NetworkResourceLoader.cpp:
3402         (WebKit::NetworkResourceLoader::cleanup):
3403         (WebKit::NetworkResourceLoader::didFinishLoading):
3404         (WebKit::NetworkResourceLoader::didFail):
3405         Moved sandbox extension invalidation to cleanup() meaning that we won't fail to
3406         do this when aborting a loader that currently loading from network.
3407     
3408         * NetworkProcess/SchedulableLoader.cpp:
3409         (WebKit::SchedulableLoader::SchedulableLoader):
3410         (WebKit::SchedulableLoader::consumeSandboxExtensions):
3411         (WebKit::SchedulableLoader::invalidateSandboxExtensions):
3412         * NetworkProcess/SchedulableLoader.h:
3413         Keep track of whether sandbox extensions are consumed, we don't want to revoke
3414         extensions that were never consumed (as used to be the case with sync loaders,
3415         and would be with async ones after the above fix). Also, get rid of extensions
3416         immediately when invalidating, we won't need them again.
3417
3418 2013-07-18  Tim Horton  <timothy_horton@apple.com>
3419
3420         Remove PDFViewController and WKView "custom representations"
3421         https://bugs.webkit.org/show_bug.cgi?id=118720
3422
3423         Reviewed by Alexey Proskuryakov.
3424
3425         PDFViewController was the only implementation of
3426         a "custom representation" for a WKView. As it has
3427         been superceded by PDFPlugin, we can remove both
3428         PDFViewController and the notion of a WKView custom
3429         representation.
3430
3431         * UIProcess/API/gtk/PageClientImpl.cpp:
3432         * UIProcess/API/gtk/PageClientImpl.h:
3433         * UIProcess/API/mac/PDFViewController.h: Removed.
3434         * UIProcess/API/mac/PDFViewController.mm: Removed.
3435         * UIProcess/API/mac/PageClientImpl.h:
3436         * UIProcess/API/mac/PageClientImpl.mm:
3437         * UIProcess/API/mac/WKView.mm:
3438         (-[WKView accessibilityFocusedUIElement]):
3439         (-[WKView accessibilityHitTest:]):
3440         (-[WKView accessibilityAttributeValue:]):
3441         (-[WKView printOperationWithPrintInfo:forFrame:]):
3442         * UIProcess/API/mac/WKViewInternal.h:
3443         * UIProcess/API/qt/raw/qrawwebview_p_p.h:
3444         * UIProcess/CoordinatedGraphics/WebView.cpp:
3445         * UIProcess/CoordinatedGraphics/WebView.h:
3446         * UIProcess/DrawingAreaProxy.h:
3447         * UIProcess/DrawingAreaProxyImpl.cpp:
3448         * UIProcess/DrawingAreaProxyImpl.h:
3449         * UIProcess/PageClient.h:
3450         * UIProcess/WebPageProxy.cpp:
3451         (WebKit::WebPageProxy::WebPageProxy):
3452         (WebKit::WebPageProxy::supportsTextEncoding):
3453         (WebKit::WebPageProxy::supportsTextZoom):
3454         (WebKit::WebPageProxy::setTextZoomFactor):
3455         (WebKit::WebPageProxy::setPageZoomFactor):
3456         (WebKit::WebPageProxy::setPageAndTextZoomFactors):
3457         (WebKit::WebPageProxy::findString):
3458         (WebKit::WebPageProxy::countStringMatches):
3459         (WebKit::WebPageProxy::didCommitLoadForFrame):
3460         * UIProcess/WebPageProxy.h:
3461         (WebKit::WebPageProxy::textZoomFactor):
3462         (WebKit::WebPageProxy::pageZoomFactor):
3463         * UIProcess/WebPageProxy.messages.in:
3464         * UIProcess/qt/QtPageClient.h:
3465         * WebKit2.xcodeproj/project.pbxproj:
3466         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3467         (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
3468         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
3469         (WebKit::WebFrameLoaderClient::committedLoad):
3470         (WebKit::WebFrameLoaderClient::finishedLoading):
3471         (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
3472         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3473         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3474         * WebProcess/WebPage/DrawingArea.h:
3475         * WebProcess/WebPage/DrawingArea.messages.in:
3476         * WebProcess/WebPage/DrawingAreaImpl.cpp:
3477         (WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
3478         (WebKit::DrawingAreaImpl::scroll):
3479         (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
3480         (WebKit::DrawingAreaImpl::display):
3481         * WebProcess/WebPage/DrawingAreaImpl.h:
3482         * WebProcess/WebPage/WebPage.cpp:
3483         * WebProcess/WebPage/WebPage.h:
3484         * WebProcess/WebPage/mac/WebPageMac.mm:
3485         (WebKit::WebPage::platformPreferencesDidChange):
3486         * mac/WebKit2.order:
3487