Have is<>(T*) function do a null check on the pointer argument
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2014-10-01  Christophe Dumez  <cdumez@apple.com>
2
3         Have is<>(T*) function do a null check on the pointer argument
4         https://bugs.webkit.org/show_bug.cgi?id=137333
5
6         Reviewed by Gavin Barraclough.
7
8         Have is<>(T*) function do a null check on the argument instead of a
9         simple assertion. This makes sense for 2 reasons:
10         1. It is more consistent with downcast<>(T*), which will succeed even
11            if the argument is a nullptr.
12         2. It simplifies the code a bit as it gets rid of a lot of explicit
13            null checks.
14
15         * Shared/WebRenderObject.cpp:
16         (WebKit::WebRenderObject::WebRenderObject):
17         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
18         (WebKit::InjectedBundleHitTestResult::mediaType):
19         * WebProcess/Plugins/PluginView.cpp:
20         (WebKit::PluginView::handleEvent):
21         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
22         (WebKit::WebChromeClient::focusedElementChanged):
23         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
24         (WebKit::WebEditorClient::textFieldDidBeginEditing):
25         (WebKit::WebEditorClient::textFieldDidEndEditing):
26         (WebKit::WebEditorClient::textDidChangeInTextField):
27         (WebKit::WebEditorClient::textDidChangeInTextArea):
28         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
29         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
30         * WebProcess/WebPage/WebFrame.cpp:
31         (WebKit::WebFrame::containsAnyFormElements):
32         (WebKit::WebFrame::containsAnyFormControls):
33         * WebProcess/WebPage/WebPage.cpp:
34         (WebKit::WebPage::pdfDocumentForPrintingFrame):
35         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
36         * WebProcess/WebPage/ios/WebPageIOS.mm:
37         (WebKit::WebPage::blurAssistedNode):
38         (WebKit::WebPage::setAssistedNodeValue):
39         (WebKit::WebPage::setAssistedNodeValueAsNumber):
40         (WebKit::WebPage::setAssistedNodeSelectedIndex):
41         (WebKit::WebPage::getPositionInformation):
42         (WebKit::WebPage::performActionOnElement):
43         (WebKit::isAssistableNode):
44         (WebKit::WebPage::getAssistedNodeInformation):
45
46 2014-10-02  Daniel Bates  <dabates@apple.com>
47
48         Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
49         https://bugs.webkit.org/show_bug.cgi?id=137277
50
51         Reviewed by Alexey Proskuryakov.
52
53         Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
54         forward declaring XPC functions.
55
56         * Platform/IPC/Connection.h:
57         * Platform/IPC/mac/ConnectionMac.mm:
58         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
59         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
60         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
61
62 2014-10-02  Ryuan Choi  <ryuan.choi@gmail.com>
63
64         [EFL][WK2] test_ewk2_view is failed
65         https://bugs.webkit.org/show_bug.cgi?id=132983
66
67         Reviewed by Gyuyoung Kim.
68
69         Enable test_ewk2_view because test cases of test_ewk2_view are passed except
70         for few tests related to device_pixel_ratio.
71         This patch adds macro guard for ailed test case to CAIRO_SURFACE_SET_DEVICE_SCALE macro.
72         In addition, fixed some warnings while building with test_ewk2_view.
73
74         * PlatformEfl.cmake: Enables test_ewk2_view.
75         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: Added const keyword for argument to fix the warnings.
76         (EWK2UnitTest::EWK2UnitTestBase::keyDown):
77         (EWK2UnitTest::EWK2UnitTestBase::keyUp):
78         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
79         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
80         (TEST_F):
81
82 2014-10-02  JinYoung Hur  <hurims@gmail.com>
83
84         Minor bug in UIClient::exceededDatabaseQuota()
85         https://bugs.webkit.org/show_bug.cgi?id=137213
86
87         Reviewed by Anders Carlsson.
88
89         Make sure not to call the completion handler twice if exceededDatabaseQuota is null.
90
91         * UIProcess/API/C/WKPage.cpp:
92         (WKPageSetPageUIClient):
93
94 2014-10-01  Mark Rowe  <mrowe@apple.com>
95
96         <https://webkit.org/b/137308> WebKit should build on OS X Yosemite for external users
97
98         Reviewed by Dan Bernstein.
99
100         * Configurations/DebugRelease.xcconfig: Use libWebKitSystemInterfaceYosemite.a on Yosemite.
101
102 2014-10-01  Commit Queue  <commit-queue@webkit.org>
103
104         Unreviewed, rolling out r174180, r174183, and r174186.
105         https://bugs.webkit.org/show_bug.cgi?id=137320
106
107         Broke the Mac MountainLion build. Will investigate offline.
108         (Requested by dydz on #webkit).
109
110         Reverted changesets:
111
112         "Clean up: Move XPC forward declarations in JavaScriptCore to
113         WTF SPI wrapper header"
114         https://bugs.webkit.org/show_bug.cgi?id=137277
115         http://trac.webkit.org/changeset/174180
116
117         "Attempt to fix the build after
118         <https://trac.webkit.org/changeset/174180>"
119         https://bugs.webkit.org/show_bug.cgi?id=137277
120         http://trac.webkit.org/changeset/174183
121
122         "Another attempt to fix the Mac build after
123         <https://trac.webkit.org/changeset/174180>"
124         https://bugs.webkit.org/show_bug.cgi?id=137277
125         http://trac.webkit.org/changeset/174186
126
127 2014-10-01  Daniel Bates  <dabates@apple.com>
128
129         Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
130         https://bugs.webkit.org/show_bug.cgi?id=137277
131
132         Reviewed by Alexey Proskuryakov.
133
134         Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
135         forward declaring XPC functions.
136
137         * Platform/IPC/Connection.h:
138         * Platform/IPC/mac/ConnectionMac.mm:
139         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
140         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
141         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
142
143 2014-10-01  Christophe Dumez  <cdumez@apple.com>
144
145         Use is<>() / downcast<>() for Event classes
146         https://bugs.webkit.org/show_bug.cgi?id=137284
147
148         Reviewed by Andreas Kling.
149
150         Use is<>() / downcast<>() for Event classes.
151
152         * WebProcess/Plugins/PluginView.cpp:
153         (WebKit::PluginView::handleEvent):
154
155 2014-10-01  Joseph Pecoraro  <pecoraro@apple.com>
156
157         [iOS] <select> with <optgroup> may change initial selected option when assisted
158         https://bugs.webkit.org/show_bug.cgi?id=137261
159
160         Reviewed by Enrica Casucci.
161
162         The initial assignemnt of _singleSelectionIndex was calculating the
163         item index (ignoring groups) instead of the row index (affected by
164         groups!). Thus if there was N groups we would select the row N
165         before the real selection.
166
167         Also avoid this entirely if this is a multiple selection picker.
168         This logic is only needed for single selection with groups.
169
170         * UIProcess/ios/forms/WKFormSelectPicker.mm:
171         (-[WKMultipleSelectPicker initWithView:]):
172
173 2014-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
174
175         [EFL] Rename TEST_THEME_DIR macro
176         https://bugs.webkit.org/show_bug.cgi?id=137244
177
178         Reviewed by Csaba Osztrogonác.
179
180         TEST_THEME_DIR is to get a path for default theme though, it has used TEST_ prefix.
181         DEFAULT_THEME_DIR is better than it.
182
183         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
184         (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
185         (EWK2UnitTest::EWK2UnitTestEnvironment::pathForTheme):
186         * UIProcess/efl/WebInspectorProxyEfl.cpp:
187         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
188
189 2014-09-30  Christophe Dumez  <cdumez@apple.com>
190
191         Generalize is<>() / downcast<>() support to all types
192         https://bugs.webkit.org/show_bug.cgi?id=137243
193
194         Reviewed by Benjamin Poulain.
195
196         Generalize is<>() / downcast<>() support to all types, not just Nodes.
197
198         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
199         (-[WKDOMDocument createElement:]):
200         (-[WKDOMDocument createTextNode:]):
201         (-[WKDOMDocument body]):
202         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
203         (-[WKDOMText data]):
204         (-[WKDOMText setData:]):
205
206 2014-09-30  Chris Dumez  <cdumez@apple.com>
207
208         Use is<>() / downcast<>() for Element
209         https://bugs.webkit.org/show_bug.cgi?id=137241
210
211         Reviewed by Andreas Kling.
212
213         Use is<>() / downcast<>() for Element instead of isElementNode() /
214         toElement().
215
216         * Shared/WebRenderObject.cpp:
217         (WebKit::WebRenderObject::WebRenderObject):
218         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
219         (-[WKDOMElement hasAttribute:]):
220         (-[WKDOMElement getAttribute:]):
221         (-[WKDOMElement setAttribute:value:]):
222         (-[WKDOMElement tagName]):
223         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
224         (WebKit::InjectedBundleNodeHandle::elementBounds):
225         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
226         (WebKit::InjectedBundleHitTestResult::mediaType):
227         * WebProcess/WebPage/ios/WebPageIOS.mm:
228         (WebKit::WebPage::sendTapHighlightForNodeIfNecessary):
229         (WebKit::WebPage::blurAssistedNode):
230         (WebKit::WebPage::getPositionInformation):
231         (WebKit::nextFocusableElement):
232         (WebKit::WebPage::elementDidFocus):
233
234 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
235
236         REGRESSION(r173929): [GTK] TestInspector fails after r173929
237         https://bugs.webkit.org/show_bug.cgi?id=137247
238
239         Reviewed by Philippe Normand.
240
241         Add WebKitWebInspector:can-attach property to notify when the
242         inspector attach availability changes.
243
244         * UIProcess/API/C/gtk/WKInspectorClientGtk.h:
245         * UIProcess/API/gtk/WebKitWebInspector.cpp:
246         (webkit_web_inspector_class_init): Add WebKitWebInspector:can-attach property.
247         (didChangeAttachAvailability): Emit notify::can-attach.
248         (webkitWebInspectorCreate): Add implementation for didChangeAttachAvailability.
249         (webkit_web_inspector_get_can_attach): Return whether the inspector can be attached.
250         * UIProcess/API/gtk/WebKitWebInspector.h:
251         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add index of new symbols in 2.8.
252         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
253         * UIProcess/gtk/WebInspectorClientGtk.cpp:
254         (WebKit::WebInspectorClientGtk::didChangeAttachAvailability):
255         * UIProcess/gtk/WebInspectorClientGtk.h:
256         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
257         (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Notify the client.
258
259 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
260
261         [GTK] The remote web inspector shows the HTML content as plain text
262         https://bugs.webkit.org/show_bug.cgi?id=137250
263
264         Reviewed by Gustavo Noronha Silva.
265
266         Use GResource API directly to get the resource data, instead of
267         using the GFile API, and use g_content_type_guess() to get the
268         MIME Type.
269
270         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
271         (WebKit::WebInspectorServer::platformResourceForPath):
272
273 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
274
275         [GTK] Move GtkPopupMenu implementation to WebPopupMenuProxyGtk
276         https://bugs.webkit.org/show_bug.cgi?id=137193
277
278         Reviewed by Gustavo Noronha Silva.
279
280         GtkPopupMenu was in platform only to have a common implementation to
281         be shared with WebKit1. Now that it's only used by
282         WebPopupMenuProxyGtk in WebKit2, we can simplify the code by
283         merging the implementation directly into WebPopupMenuProxyGtk.
284
285         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
286         (WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk):
287         (WebKit::WebPopupMenuProxyGtk::~WebPopupMenuProxyGtk):
288         (WebKit::WebPopupMenuProxyGtk::populatePopupMenu):
289         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
290         (WebKit::WebPopupMenuProxyGtk::hidePopupMenu):
291         (WebKit::WebPopupMenuProxyGtk::typeAheadFind):
292         (WebKit::WebPopupMenuProxyGtk::resetTypeAheadFindState):
293         (WebKit::WebPopupMenuProxyGtk::selectItemCallback):
294         (WebKit::WebPopupMenuProxyGtk::keyPressEventCallback):
295         * UIProcess/gtk/WebPopupMenuProxyGtk.h:
296         (WebKit::WebPopupMenuProxyGtk::setCurrentlySelectedMenuItem):
297
298 2014-09-29  Christophe Dumez  <cdumez@apple.com>
299
300         Use is<>() / downcast<>() for Document
301         https://bugs.webkit.org/show_bug.cgi?id=137221
302
303         Reviewed by Andreas Kling.
304
305         Use is<>() / downcast<>() for Document instead of isDocumentNode() /
306         toDocument().
307
308         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
309         (-[WKDOMDocument createElement:]):
310         (-[WKDOMDocument createTextNode:]):
311         (-[WKDOMDocument body]):
312
313 2014-09-29  Commit Queue  <commit-queue@webkit.org>
314
315         Unreviewed, rolling out r174045.
316         https://bugs.webkit.org/show_bug.cgi?id=137231
317
318         Introduced a crash during page loading tests on Mac (Requested
319         by rniwa on #webkit).
320
321         Reverted changeset:
322
323         "Replace OSObjectPtr with RetainPtr/adoptOS"
324         https://bugs.webkit.org/show_bug.cgi?id=137158
325         http://trac.webkit.org/changeset/174045
326
327 2014-09-29  Anders Carlsson  <andersca@apple.com>
328
329         Set the TBA versions based on the PLATFORM_NAME
330         https://bugs.webkit.org/show_bug.cgi?id=137226
331         Follow-up fix for <rdar://problem/17761459>.
332
333         Reviewed by Dan Bernstein.
334
335         * mac/rewrite-availability-macros.sh:
336         Turns out that MACOSX_DEPLOYMENT_TARGET is set even for iOS builds,
337         so set the versions based on the PLATFORM_NAME environment variable.
338
339 2014-09-29  Dan Bernstein  <mitz@apple.com>
340
341         Build fix.
342
343         * WebProcess/WebPage/ios/WebPageIOS.mm:
344         (WebKit::WebPage::performActionOnElement):
345
346 2014-09-27  Andy Estes  <aestes@apple.com>
347
348         [iOS] Add basic support for link navigation in WKPDFView
349         https://bugs.webkit.org/show_bug.cgi?id=137182
350
351         Reviewed by Tim Horton.
352
353         Teach WKPDFView to navigate to URLs when PDF link annotations are tapped.
354
355         * UIProcess/WebPageProxy.cpp:
356         (WebKit::WebPageProxy::navigateToURLWithSimulatedClick): Sent Messages::WebPage::NavigateToURLWithSimulatedClick.
357         * UIProcess/WebPageProxy.h:
358         * UIProcess/ios/WKPDFView.h:
359         * UIProcess/ios/WKPDFView.mm:
360         (-[WKPDFView _clearPages]): Removed self as the UIPDFAnnotationControllerDelegate.
361         (-[WKPDFView _revalidateViews]): Added self as the UIPDFAnnotationControllerDelegate.
362         (-[WKPDFView annotation:wasTouchedAtPoint:controller:]): Retrieved the URL from the touched annotation,
363         computed the touched point relative to the WKPDFView and to the screen, and called
364         navigateToURLWithSimulatedClick() after a 200 ms delay in order to show a soon-to-be-added tap highlight
365         (this value matches the delay in UIWebPDFView).
366         * WebProcess/WebPage/WebPage.cpp:
367         (WebKit::WebPage::navigateToURLWithSimulatedClick): Created a fake single-click MouseEvent and called
368         FrameLoader::urlSelected(). Creating a mouse event ensures that the navigation appears as a
369         NavigationTypeLinkClicked in navigation policy delegates.
370         * WebProcess/WebPage/WebPage.h:
371         * WebProcess/WebPage/WebPage.messages.in:
372
373 2014-09-29  Christophe Dumez  <cdumez@apple.com>
374
375         Use the new is<>() / downcast<>() for Text Nodes
376         https://bugs.webkit.org/show_bug.cgi?id=137188
377
378         Reviewed by Darin Adler.
379
380         Use the new is<>() / downcast<>() functions for Text Nodes instead of
381         isText() / toText().
382
383         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
384         (-[WKDOMText data]):
385         (-[WKDOMText setData:]):
386
387 2014-09-29  Christophe Dumez  <cdumez@apple.com>
388
389         Make is<>() / downcast<>() work for HTMLDocument and its subclasses
390         https://bugs.webkit.org/show_bug.cgi?id=137169
391
392         Reviewed by Darin Adler.
393
394         Use is<>() / downcast<>() for HTMLDocument and its subclasses.
395
396         * WebProcess/WebPage/WebPage.cpp:
397         (WebKit::WebPage::pdfDocumentForPrintingFrame):
398
399 2014-09-29  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
400
401         Fix !ENABLE(INSPECTOR) build after r173929
402         https://bugs.webkit.org/show_bug.cgi?id=137210
403
404         Reviewed by Timothy Hatcher.
405
406         * UIProcess/WebProcessProxy.cpp:
407         (WebKit::WebProcessProxy::getLaunchOptions):
408
409 2014-09-29  Carlos Garcia Campos  <cgarcia@igalia.com>
410
411         REGRESSION(r172919): WebKitPluginProcess fails to scan GTK+2 plugins after r172919.
412         https://bugs.webkit.org/show_bug.cgi?id=137191
413
414         Reviewed by Philippe Normand.
415
416         In r172919 I moved the GTK+ symbols mix check earlier, before the
417         plugin is loaded and initialized. That made impossible to use the
418         GTK3 plugin process to scan gtk2 plugins, because we need to load
419         the plugin to get its metadata. But we don't need to initialize
420         the plugin to check if it requires GTK2, so we can do that check
421         in the UI process to decide which plugin process to use.
422
423         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
424         (WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin):
425         Remove the requires GTK2 check.
426         (WebKit::NetscapePluginModule::scanPlugin): Don't write
427         requires-gtk2 to stdout.
428         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
429         (WebKit::pluginRequiresGtk2): Helper function to check if the
430         given plugin path requires GTK2.
431         (WebKit::PluginProcessProxy::scanPlugin): Check if the plugin path
432         requires GTK2 and use WebKitPluginProcess2 in such case, or return
433         early if GTK2 plugins are not enabled. Log error messages when
434         something fails scanning the plugin to make it easiert to debug
435         problems in the future.
436
437 2014-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
438
439         Replace wkGetGlyphsForCharacters() with CGFontGetGlyphsForUnichars()
440         https://bugs.webkit.org/show_bug.cgi?id=137197
441
442         Reviewed by Alexey Proskuryakov.
443
444         No new tests because there is no behavior change.
445
446         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
447         (InitWebCoreSystemInterface):
448         * mac/WebKit2.order:
449
450 2014-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
451
452         Use std::unique_ptr for ContextMenuController
453         https://bugs.webkit.org/show_bug.cgi?id=137178
454
455         Reviewed by Darin Adler.
456
457         Switch to using std::unique_ptr instead of OwnPtr and PassOwnPtr
458         for ContextMenuController class. Inherited class is changed by this use as well.
459
460         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
461         (WebKit::WebContextMenuClient::customizeMenu):
462         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
463
464 2014-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
465
466         Move ColorInputType class to std::unique_ptr
467         https://bugs.webkit.org/show_bug.cgi?id=137173
468
469         Reviewed by Darin Adler.
470
471         Replace uses of PassOwnPtr in code under ColorInputType class with std::unique_ptr.
472         Child classes follow this change as well.
473
474         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
475         (WebKit::WebChromeClient::createColorChooser):
476         * WebProcess/WebCoreSupport/WebChromeClient.h:
477
478 2014-09-26  Sam Weinig  <sam@webkit.org>
479
480         Replace OSObjectPtr with RetainPtr/adoptOS
481         https://bugs.webkit.org/show_bug.cgi?id=137158
482
483         Reviewed by Dan Bernstein.
484
485         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:
486         (DatabaseServiceInitializer):
487         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
488         (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
489         (NetworkServiceInitializer):
490         * Platform/IPC/Connection.h:
491         (IPC::Connection::Identifier::Identifier):
492         * Platform/IPC/mac/ConnectionMac.mm:
493         (IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
494         (IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
495         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
496         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
497         (PluginServiceInitializer):
498         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
499         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
500         (WebKit::XPCServiceInitializer):
501         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
502         (WebKit::XPCServiceInitializerDelegate::checkEntitlements):
503         (WebKit::XPCServiceInitializerDelegate::hasEntitlement):
504         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
505         (WebKit::XPCServiceEventHandler):
506         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
507         (WebKit::XPCServiceEventHandler):
508         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
509         (WebKit::connectToService):
510         (WebKit::connectToReExecService):
511         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
512         (WebContentServiceInitializer):
513
514 2014-09-26  Christophe Dumez  <cdumez@apple.com>
515
516         Stop using legacy NODE_TYPE_CASTS() macro for HTML Elements
517         https://bugs.webkit.org/show_bug.cgi?id=137137
518
519         Reviewed by Benjamin Poulain.
520
521         Use is<>() / downcast<>() where appropriate.
522
523         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
524         (WebKit::PDFPluginTextAnnotation::value):
525         * WebProcess/Plugins/PluginView.cpp:
526         (WebKit::PluginView::initializePlugin):
527         (WebKit::PluginView::pluginSnapshotTimerFired):
528         (WebKit::PluginView::pluginDidReceiveUserInteraction):
529         * WebProcess/WebPage/WebPage.cpp:
530         (WebKit::WebPage::createPlugin):
531         * WebProcess/WebPage/ios/WebPageIOS.mm:
532         (WebKit::WebPage::performActionOnElement):
533
534 2014-09-26  Anders Carlsson  <andersca@apple.com>
535
536         Add API for loading local files
537         https://bugs.webkit.org/show_bug.cgi?id=137153
538         rdar://problem/17761459
539
540         Reviewed by Oliver Hunt.
541
542         * UIProcess/API/Cocoa/WKWebView.h:
543         * UIProcess/API/Cocoa/WKWebView.mm:
544         (-[WKWebView loadFileURL:allowingReadAccessToURL:]):
545         Load the file, wrapping the navigation ID in a WKNavigation using createLoadRequestNavigation.
546
547         * UIProcess/WebPageProxy.cpp:
548         (WebKit::WebPageProxy::loadFile):
549         * UIProcess/WebPageProxy.h:
550         Return the navigation ID (or 0 if the navigation failed).
551
552 2014-09-26  Timothy Hatcher  <timothy@apple.com>
553
554         Add WKInspector back function stubs that went missing from r173929.
555         My changes to WKDeprecatedFunctions.cpp got lost in the shuffle.
556
557         * Shared/API/c/WKDeprecatedFunctions.cpp:
558         (WKInspectorIsDebuggingJavaScript):
559         (WKInspectorToggleJavaScriptDebugging):
560         (WKInspectorIsProfilingJavaScript):
561         (WKInspectorToggleJavaScriptProfiling):
562
563 2014-09-26  Carlos Garcia Campos  <cgarcia@igalia.com>
564
565         REGRESSION(r173929): Web inspector doesn't work after r173929 when INSPECTOR_SERVER is enabled
566         https://bugs.webkit.org/show_bug.cgi?id=137150
567
568         Reviewed by Timothy Hatcher.
569
570         The inspector doesn't show any information about the inspected
571         page because it's sending messages to a remote frontend that is
572         not running.
573
574         * WebProcess/WebPage/WebInspector.cpp:
575         (WebKit::WebInspector::WebInspector): Initialize m_remoteFrontendConnected.
576         (WebKit::WebInspector::sendMessageToFrontend): Send
577         SendMessageToRemoteFrontend message to the UI process when remote
578         frontend is connected, or SendMessageToFrontend message to
579         WebInspectorUI otherwise.
580         (WebKit::WebInspector::remoteFrontendConnected): Set m_remoteFrontendConnected to true.
581         (WebKit::WebInspector::remoteFrontendDisconnected): Set m_remoteFrontendConnected to false.
582         * WebProcess/WebPage/WebInspector.h:
583
584 2014-09-26  Alberto Garcia  <berto@igalia.com>
585
586         [GTK] Don't include full path names in WebKitEnumTypes.h
587         https://bugs.webkit.org/show_bug.cgi?id=137148
588
589         Reviewed by Carlos Garcia Campos.
590
591         Replace @filename@ with @basename@ in the template, since we don't
592         want to include the full path name in the generated header.
593
594         * UIProcess/API/gtk/WebKitEnumTypes.h.template:
595
596 2014-09-25  Yusuke Suzuki  <utatane.tea@gmail.com>
597
598         Clean up unused parameter warnings
599         https://bugs.webkit.org/show_bug.cgi?id=137107
600
601         Reviewed by Benjamin Poulain.
602
603         * Scripts/webkit/messages.py:
604         (generate_message_handler):
605         Sometimes generated code doesn't use `connection` parameter. So `UNUSED_PARAM(connection)` is necessary.
606         * UIProcess/API/C/WKPage.cpp:
607         (WKPageIsPlayingAudio):
608
609 2014-09-25  Christophe Dumez  <cdumez@apple.com>
610
611         Use is<HTML*Element>() instead of isHTML*Element() - Part 2
612         https://bugs.webkit.org/show_bug.cgi?id=137103
613
614         Reviewed by Benjamin Poulain.
615
616         Use is<HTML*Element>() instead of isHTML*Element().
617
618         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
619         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
620         * WebProcess/WebPage/WebFrame.cpp:
621         (WebKit::WebFrame::containsAnyFormElements):
622         * WebProcess/WebPage/WebPage.cpp:
623         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
624         * WebProcess/WebPage/ios/WebPageIOS.mm:
625         (WebKit::WebPage::getAssistedNodeInformation):
626
627 2014-09-25  Anders Carlsson  <andersca@apple.com>
628
629         Expand WK_MAC_TBA and WK_IOS_TBA to the current deployment target version (or NA).
630         https://bugs.webkit.org/show_bug.cgi?id=137127
631         Part of rdar://problem/17761459.
632
633         Reviewed by Dan Bernstein.
634
635         * mac/rewrite-availability-macros.sh:
636
637 2014-09-25  Tim Horton  <timothy_horton@apple.com>
638
639         CommitLayerTree decode fails in 32-bit apps on 64-bit devices (TransformationMatrix alignment differs)
640         https://bugs.webkit.org/show_bug.cgi?id=136444
641         <rdar://problem/17952526>
642
643         Reviewed by Anders Carlsson.
644
645         * Shared/WebCoreArgumentCoders.cpp:
646         (IPC::ArgumentCoder<TransformationMatrix>::encode):
647         (IPC::ArgumentCoder<TransformationMatrix>::decode):
648         Stop using SimpleArgumentCoder to encode/decode TransformationMatrix,
649         because the alignment of TransformationMatrix differs between architectures,
650         and there's no guarantee that both sides of a connection are the same architecture.
651
652 2014-09-25  Alberto Garcia  <berto@igalia.com>
653
654         Unreviewed typo fix.
655
656         * UIProcess/API/C/soup/WKContextSoup.cpp:
657
658 2014-09-25  Shivakumar JM  <shiva.jm@samsung.com>
659
660         [WebKit2] Fix build warning in WebKit2/WebProcess module.
661         https://bugs.webkit.org/show_bug.cgi?id=137105
662
663         Reviewed by Csaba Osztrogonác.
664
665         Fix build warning by removing unused parameter names
666
667         * WebProcess/WebPage/WebInspector.h:
668         (WebKit::WebInspector::didReceiveInvalidMessage):
669         * WebProcess/WebPage/WebInspectorUI.h:
670         (WebKit::WebInspectorUI::didReceiveInvalidMessage):
671
672 2014-09-24  Sam Weinig  <sam@webkit.org>
673
674         Remove incorrect use of the BKSProcessAssertionAllowSuspendOnSleep flag for process suspension in iOS WebKit2
675         <rdar://problem/18400566>
676         https://bugs.webkit.org/show_bug.cgi?id=137077
677
678         Reviewed by Anders Carlsson.
679
680         * UIProcess/ios/ProcessAssertionIOS.mm:
681         Remove use of the BKSProcessAssertionAllowSuspendOnSleep which does not do what we expect, and instead
682         causes processes to be suspended "forever" after sleep.
683
684 2014-09-24  Christophe Dumez  <cdumez@apple.com>
685
686         Use is<HTML*Element>() instead of isHTML*Element() - Part 1
687         https://bugs.webkit.org/show_bug.cgi?id=137068
688
689         Reviewed by Ryosuke Niwa.
690
691         Start using is<HTML*Element>() instead of isHTML*Element().
692         Remaining usages will be updated in a follow-up patch to
693         reduce the size of the change.
694
695         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
696         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
697         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
698         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
699         (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit):
700         (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit):
701         (WebKit::InjectedBundleNodeHandle::isTextField):
702         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
703         (WebKit::WebChromeClient::focusedElementChanged):
704         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
705         (WebKit::WebEditorClient::textFieldDidBeginEditing):
706         (WebKit::WebEditorClient::textFieldDidEndEditing):
707         (WebKit::WebEditorClient::textDidChangeInTextField):
708         (WebKit::WebEditorClient::textDidChangeInTextArea):
709         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
710         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
711         * WebProcess/WebPage/WebFrame.cpp:
712         (WebKit::WebFrame::containsAnyFormControls):
713         * WebProcess/WebPage/ios/WebPageIOS.mm:
714         (WebKit::WebPage::setAssistedNodeValue):
715         (WebKit::WebPage::setAssistedNodeValueAsNumber):
716         (WebKit::WebPage::setAssistedNodeSelectedIndex):
717
718 2014-09-23  Ada Chan  <adachan@apple.com>
719
720         Add stub implementation of WKPageIsPlayingAudio().
721         https://bugs.webkit.org/show_bug.cgi?id=137044
722
723         Reviewed by Anders Carlsson.
724
725         Also add an isPlayingAudioDidChange callback to WKPageUIClient.
726
727         * UIProcess/API/C/WKPage.cpp:
728         (WKPageIsPlayingAudio):
729         * UIProcess/API/C/WKPagePrivate.h:
730         * UIProcess/API/C/WKPageUIClient.h:
731
732 2014-09-21  Timothy Hatcher  <timothy@apple.com>
733
734         Make the Web Inspector use a separate web process.
735
736         https://bugs.webkit.org/show_bug.cgi?id=135120
737
738         Reviewed by Anders Carlsson.
739
740         * CMakeLists.txt:
741         * DerivedSources.make:
742         * PlatformEfl.cmake:
743         * PlatformGTK.cmake:
744         * WebKit2.xcodeproj/project.pbxproj:
745         Added new WebInspectorUI files and removed WebInspectorFrontendClient.cpp.
746
747         * Shared/APIObject.h: Added BundleInspectorUI.
748
749         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
750         (WebKit::ChildProcessMainDelegate::getExtraInitializationData):
751         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
752         (WebKit::XPCServiceInitializerDelegate::getExtraInitializationData):
753         Add support for "inspector-process" data, a boolean that is used by
754         WebProcess::initializeProcessName.
755
756         * UIProcess/API/C/WKInspector.cpp:
757         (WKInspectorIsDebuggingJavaScript):
758         (WKInspectorToggleJavaScriptDebugging):
759         (WKInspectorIsProfilingJavaScript):
760         (WKInspectorToggleJavaScriptProfiling):
761         * UIProcess/API/C/WKInspector.h:
762         Stub out functions we don't support but need to keep for nightly compatibility.
763
764         * UIProcess/WebInspectorProxy.cpp:
765         (WebKit::WebInspectorPageGroups::createInspectorPageGroup):
766         (WebKit::WebInspectorProxy::WebInspectorProxy):
767         (WebKit::WebInspectorProxy::invalidate):
768         (WebKit::WebInspectorProxy::connect):
769         (WebKit::WebInspectorProxy::showConsole):
770         (WebKit::WebInspectorProxy::showResources):
771         (WebKit::WebInspectorProxy::showMainResourceForFrame):
772         (WebKit::WebInspectorProxy::attach):
773         (WebKit::WebInspectorProxy::detach):
774         (WebKit::WebInspectorProxy::inspectorContext):
775         (WebKit::WebInspectorProxy::dispatchMessageFromRemoteFrontend):
776         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
777         (WebKit::WebInspectorProxy::createInspectorPage):
778         (WebKit::WebInspectorProxy::open):
779         (WebKit::WebInspectorProxy::didClose):
780         (WebKit::WebInspectorProxy::attachAvailabilityChanged):
781         * UIProcess/WebInspectorProxy.h:
782         (WebKit::WebInspectorProxy::isConnected):
783         (WebKit::WebInspectorProxy::canAttach):
784         * UIProcess/WebInspectorProxy.messages.in:
785         * UIProcess/efl/WebInspectorProxyEfl.cpp:
786         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
787         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
788         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
789         (WebKit::WebInspectorProxy::platformAttach):
790         * UIProcess/mac/WebInspectorProxyMac.mm:
791         (-[WKWebInspectorProxyObjCAdapter close]):
792         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
793         (WebKit::WebInspectorProxy::platformDidClose):
794         (WebKit::WebInspectorProxy::platformHide):
795         (WebKit::WebInspectorProxy::platformSave):
796         (WebKit::WebInspectorProxy::platformAppend):
797         (WebKit::WebInspectorProxy::platformAttach):
798         Changed how the Inspector page is created by making it in a new WebContext for
799         the Inspector. This removes us from the main process pool and guarantees no process
800         sharing for our user interface. Also send new WebInspectorUI messages to the Inspector
801         page and not the inspected page when appropriate.
802
803         * UIProcess/WebProcessProxy.cpp:
804         (WebKit::WebProcessProxy::getLaunchOptions): Add "inspector-process" to extraInitializationData
805         if the context is the Inspector context. This is used by WebProcess::initializeProcessName.
806
807         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
808         (WebKit::WebInspectorClient::openInspectorFrontend):
809         (WebKit::WebInspectorClient::closeInspectorFrontend):
810         (WebKit::WebInspectorClient::bringFrontendToFront):
811         * WebProcess/WebCoreSupport/WebInspectorClient.h:
812         Remove the InspectorFrontendChannel class from WebInspectorClient and clean up a little.
813         InspectorFrontendChannel implementation moved to WebInspector.
814
815         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: Removed. Superseded by WebInspectorUI.
816
817         * WebProcess/WebPage/WebInspector.cpp:
818         (WebKit::WebInspector::create):
819         (WebKit::WebInspector::WebInspector):
820         (WebKit::WebInspector::createInspectorPage):
821         (WebKit::WebInspector::closeFrontend):
822         (WebKit::WebInspector::openInNewTab):
823         (WebKit::WebInspector::showConsole):
824         (WebKit::WebInspector::showResources):
825         (WebKit::WebInspector::showMainResourceForFrame):
826         (WebKit::WebInspector::startPageProfiling):
827         (WebKit::WebInspector::stopPageProfiling):
828         (WebKit::WebInspector::canAttachWindow):
829         (WebKit::WebInspector::updateDockingAvailability):
830         (WebKit::WebInspector::sendMessageToBackend):
831         (WebKit::WebInspector::sendMessageToFrontend):
832         (WebKit::WebInspector::remoteFrontendConnected):
833         (WebKit::WebInspector::remoteFrontendDisconnected):
834         * WebProcess/WebPage/WebInspector.h:
835         (WebKit::WebInspector::didClose):
836         (WebKit::WebInspector::didReceiveInvalidMessage):
837         (WebKit::WebInspector::setAttached):
838         * WebProcess/WebPage/WebInspector.messages.in:
839         Stop taking an optional InspectorFrontendChannel and inherit it instead. Create a connection that
840         can be passed to the other web process for WebInspectorUI to use. Stop referencing Inspector's page
841         directly, since it is in another process now.
842
843         * WebProcess/WebPage/WebInspectorUI.cpp: Added.
844         (WebKit::WebInspectorUI::create):
845         (WebKit::WebInspectorUI::WebInspectorUI):
846         (WebKit::WebInspectorUI::establishConnection):
847         (WebKit::WebInspectorUI::windowObjectCleared):
848         (WebKit::WebInspectorUI::frontendLoaded):
849         (WebKit::WebInspectorUI::moveWindowBy):
850         (WebKit::WebInspectorUI::bringToFront):
851         (WebKit::WebInspectorUI::closeWindow):
852         (WebKit::WebInspectorUI::requestSetDockSide):
853         (WebKit::WebInspectorUI::setDockSide):
854         (WebKit::WebInspectorUI::changeAttachedWindowHeight):
855         (WebKit::WebInspectorUI::changeAttachedWindowWidth):
856         (WebKit::WebInspectorUI::setToolbarHeight):
857         (WebKit::WebInspectorUI::openInNewTab):
858         (WebKit::WebInspectorUI::save):
859         (WebKit::WebInspectorUI::append):
860         (WebKit::WebInspectorUI::inspectedURLChanged):
861         (WebKit::WebInspectorUI::showConsole):
862         (WebKit::WebInspectorUI::showResources):
863         (WebKit::WebInspectorUI::showMainResourceForFrame):
864         (WebKit::WebInspectorUI::startPageProfiling):
865         (WebKit::WebInspectorUI::stopPageProfiling):
866         (WebKit::WebInspectorUI::didSave):
867         (WebKit::WebInspectorUI::didAppend):
868         (WebKit::WebInspectorUI::sendMessageToFrontend):
869         (WebKit::WebInspectorUI::sendMessageToBackend):
870         (WebKit::WebInspectorUI::evaluateCommandOnLoad):
871         (WebKit::WebInspectorUI::evaluateExpressionOnLoad):
872         (WebKit::WebInspectorUI::evaluatePendingExpressions):
873         * WebProcess/WebPage/WebInspectorUI.h: Added.
874         (WebKit::WebInspectorUI::page):
875         (WebKit::WebInspectorUI::didClose):
876         (WebKit::WebInspectorUI::didReceiveInvalidMessage):
877         (WebKit::WebInspectorUI::attachedBottom):
878         (WebKit::WebInspectorUI::attachedRight):
879         (WebKit::WebInspectorUI::detached):
880         (WebKit::WebInspectorUI::evaluateCommandOnLoad):
881         * WebProcess/WebPage/WebInspectorUI.messages.in: Added.
882         * WebProcess/WebPage/efl/WebInspectorUIEfl.cpp: Added.
883         (WebKit::WebInspectorUI::canSave):
884         (WebKit::WebInspectorUI::localizedStringsURL):
885         * WebProcess/WebPage/gtk/WebInspectorUIGtk.cpp: Added.
886         (WebKit::WebInspectorUI::canSave):
887         (WebKit::WebInspectorUI::localizedStringsURL):
888         * WebProcess/WebPage/mac/WebInspectorUIMac.mm: Added.
889         (WebKit::WebInspectorUI::canSave):
890         (WebKit::WebInspectorUI::localizedStringsURL):
891         Implement the InspectorFrontendClient and handle a connection to the inspected page's WebInspector.
892
893         * WebProcess/WebPage/WebPage.cpp:
894         (WebKit::WebPage::WebPage):
895         (WebKit::WebPage::~WebPage):
896         (WebKit::WebPage::inspector):
897         (WebKit::WebPage::inspectorUI):
898         (WebKit::WebPage::didReceiveMessage):
899         Setup as a listener for WebInspectorUI messages.
900
901         * WebProcess/WebPage/WebPage.h:
902         (WebKit::WebPage::isInspectorPage): It is an Inspector page if we have a m_inspectorUI.
903
904         * WebProcess/cocoa/WebProcessCocoa.mm:
905         (WebKit::WebProcess::initializeProcessName):
906         Name the process "%@ Web Inspector" if it is an Inspector content process. Processes in that
907         context are not shared with multiple pages.
908
909 2014-09-24  Dean Jackson  <dino@apple.com>
910
911         Add a deprecated stub for WKPreferencesSetMultithreadedWebGLEnabled (and Get)
912         https://bugs.webkit.org/show_bug.cgi?id=137071
913
914         Reviewed by Brent Fulgham.
915
916         Put in stubs for WKPreferencesSetMultithreadedWebGLEnabled and
917         WKPreferencesGetMultithreadedWebGLEnabled. These were removed in
918         r173776 but are still needed for nightly builds to link
919         (or will be once Yosemite nightlies are available).
920
921         * Shared/API/c/WKDeprecatedFunctions.cpp:
922         (WKPreferencesSetMultithreadedWebGLEnabled):
923         (WKPreferencesGetMultithreadedWebGLEnabled):
924
925 2014-09-24  Daniel Bates  <dabates@apple.com>
926
927         [iOS] Fix the iOS build after <http://trac.webkit.org/changeset/173893>
928         (https://bugs.webkit.org/show_bug.cgi?id=137007)
929
930         Add closing parenthesis characters that were inadvertently removed in <http://trac.webkit.org/changeset/173893>.
931
932         * WebProcess/WebPage/ios/WebPageIOS.mm:
933         (WebKit::WebPage::setAssistedNodeSelectedIndex):
934         (WebKit::WebPage::getAssistedNodeInformation):
935
936 2014-09-23  Christophe Dumez  <cdumez@apple.com>
937
938         Unreviewed build fix after r173893.
939
940         Partial revert of r173893 to fix debug builds.
941
942         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
943         (WebKit::PDFPluginTextAnnotation::value):
944         * WebProcess/Plugins/PluginView.cpp:
945         (WebKit::PluginView::initializePlugin):
946         (WebKit::PluginView::pluginSnapshotTimerFired):
947         (WebKit::PluginView::pluginDidReceiveUserInteraction):
948         * WebProcess/WebPage/WebPage.cpp:
949         (WebKit::WebPage::createPlugin):
950
951 2014-09-23  Chris Dumez  <cdumez@apple.com>
952
953         Use downcast<HTML*Element>() instead of toHTML*Element()
954         https://bugs.webkit.org/show_bug.cgi?id=137007
955
956         Reviewed by Benjamin Poulain.
957
958         Use downcast<HTML*Element>() instead of toHTML*Element().
959
960         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
961         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
962         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
963         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
964         (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit):
965         (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit):
966         (WebKit::InjectedBundleNodeHandle::isTextField):
967         (WebKit::InjectedBundleNodeHandle::htmlTableCellElementCellAbove):
968         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
969         * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
970         (WebKit::PDFPluginChoiceAnnotation::commit):
971         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
972         (WebKit::PDFPluginTextAnnotation::createAnnotationElement):
973         (WebKit::PDFPluginTextAnnotation::value):
974         * WebProcess/Plugins/PluginView.cpp:
975         (WebKit::PluginView::initializePlugin):
976         (WebKit::PluginView::pluginSnapshotTimerFired):
977         (WebKit::PluginView::pluginDidReceiveUserInteraction):
978         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
979         (WebKit::WebChromeClient::focusedElementChanged):
980         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
981         (WebKit::WebEditorClient::textFieldDidBeginEditing):
982         (WebKit::WebEditorClient::textFieldDidEndEditing):
983         (WebKit::WebEditorClient::textDidChangeInTextField):
984         (WebKit::WebEditorClient::textDidChangeInTextArea):
985         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
986         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
987         * WebProcess/WebPage/WebPage.cpp:
988         (WebKit::WebPage::createPlugin):
989         * WebProcess/WebPage/ios/WebPageIOS.mm:
990         (WebKit::WebPage::setAssistedNodeValue):
991         (WebKit::WebPage::setAssistedNodeValueAsNumber):
992         (WebKit::WebPage::setAssistedNodeSelectedIndex):
993         (WebKit::isAssistableNode): Deleted.
994         (WebKit::WebPage::getAssistedNodeInformation): Deleted.
995
996 2014-09-23  Jer Noble  <jer.noble@apple.com>
997
998         REGRESSION (r171197): Clip's content is drawn behind Safari window when entering Full Screen youtube html5 first time
999         https://bugs.webkit.org/show_bug.cgi?id=137029
1000
1001         Reviewed by Brent Fulgham.
1002
1003         In r171197, we ordered the full screen window on- and off-screen so that the fullscreen animation went to the
1004         correct screen, which introduced a subtle glitch at the beginning and end of an animation. For entering, ensure
1005         that the window is scaled to its starting size before ordering on-screen. For exiting, order the window off-
1006         screen before resetting its clipping rect.
1007
1008         * UIProcess/mac/WKFullScreenWindowController.mm:
1009         (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
1010         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
1011
1012 2014-09-23  Joseph Pecoraro  <pecoraro@apple.com>
1013
1014         Web Inspector: Should be able to attach a debugger to a JSContext before anything is executed
1015         https://bugs.webkit.org/show_bug.cgi?id=136893
1016
1017         Reviewed by Timothy Hatcher.
1018
1019         * WebProcess/WebPage/WebInspector.cpp:
1020         (WebKit::WebInspector::remoteFrontendConnected):
1021
1022 2014-09-22  Daniel Bates  <dabates@apple.com>
1023
1024         [Cocoa] Add UI delegate callback when window.close() is called
1025         https://bugs.webkit.org/show_bug.cgi?id=137008
1026         <rdar://problem/17801001>
1027
1028         Reviewed by Anders Carlsson.
1029
1030         Implement support infrastructure to notify the UI client when window.close() is called.
1031
1032         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Added method declaration for -_webViewClose:.
1033         * UIProcess/Cocoa/UIDelegate.h: Added override declaration for API::UIClient::close().
1034         * UIProcess/Cocoa/UIDelegate.mm:
1035         (WebKit::UIDelegate::setDelegate): Wire up delegate method to Objective-C selector, -[WKUIDelegatePrivate _webViewClose:].
1036         (WebKit::UIDelegate::UIClient::close): Added; turns around and calls -[WKUIDelegatePrivate _webViewClose:] (if applicable).
1037
1038 2014-09-21  Chris Dumez  <cdumez@apple.com>
1039
1040         Generate Element casting helper functions
1041         https://bugs.webkit.org/show_bug.cgi?id=136839
1042
1043         Reviewed by Darin Adler.
1044
1045         Use JSXXX::toWrapped() instead of toXXX() function.
1046
1047         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1048         (WebKit::InjectedBundleNodeHandle::getOrCreate):
1049         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
1050         (WebKit::InjectedBundleRangeHandle::getOrCreate):
1051         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1052         (WebKit::InjectedBundle::webNotificationID):
1053
1054 2014-09-19  Ryosuke Niwa  <rniwa@webkit.org>
1055
1056         WebContent crash in WebKit::WebPage::expandedRangeFromHandle
1057         https://bugs.webkit.org/show_bug.cgi?id=136969
1058
1059         Reviewed by David Kilzer.
1060
1061         The crash was caused by m_currentBlockSelection and frame.selection().selection().toNormalizedRange()
1062         both being null and the subsequent lines of code assuming currentRange to be not null.
1063
1064         Replace the assertion by an early exit since the range could be null here.
1065
1066         In the future, we should figure out if there are other things we need to do in addition
1067         to checking the nullity when this race condition is hit.
1068
1069         * WebProcess/WebPage/ios/WebPageIOS.mm:
1070         (WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
1071
1072 2014-09-19  Dean Jackson  <dino@apple.com>
1073
1074         Multithreaded WebGL is a bad idea - remove it
1075         https://bugs.webkit.org/show_bug.cgi?id=136964
1076         <rdar://problem/18399858>
1077
1078         Reviewed by Brent Fulgham.
1079
1080         Remove the setting to allow multithreaded WebGL.
1081
1082         * Shared/WebPreferencesDefinitions.h:
1083         * UIProcess/API/C/WKPreferences.cpp:
1084         (WKPreferencesSetMultithreadedWebGLEnabled): Deleted.
1085         (WKPreferencesGetMultithreadedWebGLEnabled): Deleted.
1086         * UIProcess/API/C/WKPreferencesRefPrivate.h:
1087         * WebProcess/WebPage/WebPage.cpp:
1088         (WebKit::WebPage::updatePreferences):
1089
1090 2014-09-19  Simon Fraser  <simon.fraser@apple.com>
1091
1092         Provide a default argument for the most commonly used HitTestRequest variant
1093         https://bugs.webkit.org/show_bug.cgi?id=136653
1094
1095         Reviewed by Darin Adler.
1096
1097         Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
1098         and change call sites using the default flags to use a HitTestRequest temporary.
1099
1100         * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
1101         (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
1102         * WebProcess/WebPage/ios/WebPageIOS.mm:
1103         (WebKit::WebPage::dynamicViewportSizeUpdate):
1104
1105 2014-09-19  Daniel Bates  <dabates@apple.com>
1106
1107         Always assume internal SDK when building configuration Production
1108         https://bugs.webkit.org/show_bug.cgi?id=136925
1109         <rdar://problem/18362399>
1110
1111         Reviewed by Dan Bernstein.
1112
1113         As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
1114         and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
1115
1116         * Configurations/Base.xcconfig:
1117
1118 2014-09-19  Simon Fraser  <simon.fraser@apple.com>
1119
1120         Fix the Mac Mavericks build. Only iOS cares about fencing.
1121
1122         * Platform/mac/LayerHostingContext.h:
1123         * Platform/mac/LayerHostingContext.mm:
1124
1125 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1126
1127         [GTK] Missing inspector files in the tarball
1128         https://bugs.webkit.org/show_bug.cgi?id=136952
1129
1130         Reviewed by Gustavo Noronha Silva.
1131
1132         * PlatformGTK.cmake: Use APPEND instead of GLOB to add individual
1133         and generated files to the list of inspector files.
1134
1135 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1136
1137         Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
1138         https://bugs.webkit.org/show_bug.cgi?id=136632
1139
1140         Reviewed by Gustavo Noronha Silva.
1141
1142         * PlatformGTK.cmake: Use only the icons from the gtk directory since they are free.
1143
1144 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1145
1146         [GTK] generate-inspector-gresource-manifest.py should receive the list of files from the makefile
1147         https://bugs.webkit.org/show_bug.cgi?id=136943
1148
1149         Reviewed by Philippe Normand.
1150
1151         * PlatformGTK.cmake: Fix the inspector file list and pass it to
1152         the generate-inspector-gresource-manifest.py script.
1153
1154 2014-09-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1155
1156         [GTK] Dot not allow to create delete-on-destroy GMainLoopSources
1157         https://bugs.webkit.org/show_bug.cgi?id=136923
1158
1159         Reviewed by Gustavo Noronha Silva.
1160
1161         * Platform/gtk/WorkQueueGtk.cpp:
1162         (WorkQueue::dispatch): Use GMainLoopSource::scheduleAndDeleteOnDestroy().
1163         (WorkQueue::dispatchAfter): Use GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy().
1164
1165 2014-09-18  Ryuan Choi  <ryuan.choi@gmail.com>
1166
1167         [EFL][CoordinatedGraphics] Remove setBackgroundColor message
1168         https://bugs.webkit.org/show_bug.cgi?id=136824
1169
1170         Reviewed by Gyuyoung Kim.
1171
1172         CoordinatedGraphics used setBackgroundColor() to draw the background of contents
1173         although tiles are not ready.
1174
1175         This patch removes setBackgroundColor() and uses pageExtendedBackgroundColor()
1176         which provides similar functionality.
1177
1178         * UIProcess/API/efl/EwkView.cpp:
1179         Enables or disables WKPageSetBackgroundExtendsBeyondPage to use pageExtendedBackgroundColor()
1180         (EwkView::EwkView):
1181         (EwkView::setBackgroundColor):
1182         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
1183         (WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
1184         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext): Passed pageExtendedBackgroundColor.
1185         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext): Ditto.
1186         (WebCore::CoordinatedGraphicsScene::setBackgroundColor): Deleted.
1187         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h:
1188         (WebCore::CoordinatedGraphicsScene::setDrawsBackground): Deleted.
1189         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
1190         (WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor): Deleted.
1191         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1192         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
1193         * UIProcess/CoordinatedGraphics/WebView.cpp:
1194         (WebKit::WebView::paintToCurrentGLContext):
1195         * UIProcess/WebPageProxy.cpp:
1196         (WebKit::WebPageProxy::pageExtendedBackgroundColorDidChange):
1197         Refactored to use const reference for the Color parameter.
1198         * UIProcess/WebPageProxy.h:
1199         * UIProcess/efl/WebViewEfl.cpp:
1200         (WebKit::WebViewEfl::paintToCairoSurface):
1201         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1202         (WebKit::WebChromeClient::pageExtendedBackgroundColorDidChange):
1203         Added PLATFORM(EFL) to pass PageExtendedBackgroundColorDidChange message.
1204         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1205         (WebKit::CoordinatedLayerTreeHost::setBackgroundColor): Deleted.
1206         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1207         * WebProcess/WebPage/LayerTreeHost.h:
1208         (WebKit::LayerTreeHost::setBackgroundColor): Deleted.
1209         * WebProcess/WebPage/WebPage.cpp:
1210         (WebKit::WebPage::mainFrameDidLayout):
1211
1212 2014-09-18  Jeremy Jones  <jeremyj@apple.com>
1213
1214         Improve fullscreen video rotation animation.
1215         https://bugs.webkit.org/show_bug.cgi?id=136870
1216
1217         Reviewed by Simon Fraser.
1218
1219         Remove WKCAContext from LayerHostingContext and use a fencePort to synchronize animation between processes.
1220
1221         * Platform/mac/LayerHostingContext.h: add setFencePort. Remove WKCAContext.
1222         * Platform/mac/LayerHostingContext.mm:
1223         (WebKit::LayerHostingContext::createForPort): Remove WKCAContext.
1224         (WebKit::LayerHostingContext::createForExternalHostingProcess): ditto
1225         (WebKit::LayerHostingContext::setRootLayer): ditto
1226         (WebKit::LayerHostingContext::rootLayer): ditto
1227         (WebKit::LayerHostingContext::contextID): ditto
1228         (WebKit::LayerHostingContext::invalidate): ditto
1229         (WebKit::LayerHostingContext::setColorSpace): ditto
1230         (WebKit::LayerHostingContext::colorSpace): ditto
1231         (WebKit::LayerHostingContext::setFencePort): added
1232         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1233         (WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame): 
1234         * WebProcess/ios/WebVideoFullscreenManager.h:
1235         * WebProcess/ios/WebVideoFullscreenManager.messages.in: add fence port parameter
1236         * WebProcess/ios/WebVideoFullscreenManager.mm: ditto
1237         (WebKit::WebVideoFullscreenManager::didSetupFullscreen): ditto
1238         (WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): ditto
1239
1240 2014-09-18  Simon Fraser  <simon.fraser@apple.com>
1241
1242         Avoid divide by zero when we get an empty rect while snapshotting a node
1243         https://bugs.webkit.org/show_bug.cgi?id=136932
1244         rdar://problem/18383473
1245
1246         Reviewed by Dean Jackson.
1247         
1248         renderer()->paintingRootRect() can return an empty rect for some inline configurations,
1249         for example an <a> containing a floated <span>
1250         
1251         When this occurs, avoid a divide by zero and return a null snapshot image.
1252
1253         * WebProcess/WebPage/WebPage.cpp:
1254         (WebKit::WebPage::snapshotNode):
1255
1256 2014-09-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1257
1258         Incorrect pending API request URL when loading an HTML string
1259         https://bugs.webkit.org/show_bug.cgi?id=136913
1260
1261         Reviewed by Alexey Proskuryakov.
1262
1263         Use about:blank as pending API request URL when the given base URL
1264         is empty, otherwise use the given base URL.
1265
1266         * UIProcess/WebPageProxy.cpp:
1267         (WebKit::WebPageProxy::loadHTMLString):
1268
1269 2014-09-18  Tim Horton  <timothy_horton@apple.com>
1270
1271         Occasional unreproducible crashes in MessageReceiverMap::dispatchMessage
1272         https://bugs.webkit.org/show_bug.cgi?id=136909
1273         <rdar://problem/17758325>
1274
1275         Reviewed by Anders Carlsson.
1276
1277         * UIProcess/API/Cocoa/WKWebView.mm:
1278         (-[WKWebView dealloc]):
1279         We're seeing some messages dispatched on the WebContext that end up
1280         attempting to call dispatchMessage on a freed MessageReceiver.
1281         The WKRemoteObjectRegistry message receiver is added to the WebContext
1282         message receiver map, but never removed, despite the WebContext easily
1283         outliving the WKWebView that owns the remote object registry.
1284
1285 2014-09-17  Rohit Kumar  <kumar.rohit@samsung.com>
1286
1287         [EFL][WK2] Use the correct enum for control key in Ewk_Event_Modifiers in ewk_navigation_policy_decision.cpp
1288         https://bugs.webkit.org/show_bug.cgi?id=136740
1289
1290         Reviewed by Gyuyoung Kim.
1291
1292         * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
1293         (toEwkEventModifiers):
1294
1295 2014-09-17  Daniel Bates  <dabates@apple.com>
1296
1297         Unreviewed, rolling out r173695.
1298
1299         Broke building third-party Legacy WebKit apps; will
1300         investigate offline
1301
1302         Reverted changeset:
1303
1304         "[iOS] Make WebCore build with public iOS SDK"
1305         https://bugs.webkit.org/show_bug.cgi?id=136487
1306         http://trac.webkit.org/changeset/173695
1307
1308 2014-09-17  Simon Fraser  <simon.fraser@apple.com>
1309
1310         Fix an issue that caused video playback to not always use high resolution streams
1311         https://bugs.webkit.org/show_bug.cgi?id=136879
1312         rdar://problem/18316542
1313
1314         Reviewed by Eric Carlson.
1315         
1316         The underlying video framework expects to be able to use -[CALayer convertRect:toLayer:nil] on
1317         the video layer to obtain information about the display resolution of the video,
1318         including the device scale factor. This doesn't work for layers in the web process,
1319         which are remotely hosted into the UI process.
1320         
1321         For now, use a workaround which involves putting a scale transform equivalent to
1322         the device scale factor on the web process layer, and the inverse scale on the 
1323         hosting layer in the UI process.
1324         
1325         We have to do this in two places, for in-page video, and for fullscreen video.
1326
1327         * Shared/mac/RemoteLayerTreeTransaction.h: Add hostingDeviceScaleFactor to the LayerCreation
1328         properties.
1329         * Shared/mac/RemoteLayerTreeTransaction.mm:
1330         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::LayerCreationProperties):
1331         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
1332         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
1333         * UIProcess/ios/RemoteLayerTreeHostIOS.mm:
1334         (-[WKRemoteView initWithFrame:contextID:hostingDeviceScaleFactor:]): Set the inverse scale
1335         transform on the layer.
1336         (WebKit::RemoteLayerTreeHost::createLayer):
1337         (-[WKRemoteView initWithFrame:contextID:]): Deleted.
1338         * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
1339         * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
1340         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1341         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
1342         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
1343         (WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
1344         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
1345         (WebKit::RemoteLayerTreeContext::deviceScaleFactor):
1346         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
1347         (WebKit::RemoteLayerTreeContext::layerWasCreated):
1348         * WebProcess/ios/WebVideoFullscreenManager.mm:
1349         (WebKit::WebVideoFullscreenManager::enterFullscreenForNode):
1350         (WebKit::WebVideoFullscreenManager::didSetupFullscreen):
1351
1352 2014-09-17  Gavin Barraclough  <baraclough@apple.com>
1353
1354         Aways have a PageThrottler (sometimes have a UserActivity::Impl)
1355         https://bugs.webkit.org/show_bug.cgi?id=136892
1356
1357         Reviewed by Geoffrey Garen.
1358
1359         Some instances of Page have a PageThrottler to track activity on the Page, and some do not.
1360         (Specifically, those created from WebPage in WK2 do, those related to WK1, SVG & inspector do not).
1361
1362         We do this for three reasons:
1363             * We do not need to take AppNap assertions on WK1.
1364             * Some Pages do not track their visibility correctly, and would always claim to be visible.
1365             * Page VisibilityState is not set until after construction, so if we instantiate
1366
1367         Creating the entire PageThrottler lazily has the drawback that we have to check for its existence at
1368         numerous points throughout the code, and we'll miss activity that occurs between the Page being created
1369         & the PageThrottler added to it (really a theoretical problem right now, since they're currently always
1370         created pretty much back to back).
1371
1372         Instead, Page should always have a PageThrottler, & instead make the UserActivity::Impl on the
1373         PageThrottler be added later.
1374
1375         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1376         (WebKit::NPRuntimeObjectMap::evaluate):
1377             - createPageThrottler -> enablePageThrottler
1378         * WebProcess/WebPage/WebPage.cpp:
1379         (WebKit::WebPage::WebPage):
1380         (WebKit::WebPage::mouseEvent):
1381         (WebKit::WebPage::wheelEvent):
1382         (WebKit::WebPage::keyEvent):
1383             - Page::pageThrottler now returns a reference rather than a pointer
1384
1385 2014-09-17  Daniel Bates  <dabates@apple.com>
1386
1387         [iOS] Make WebCore build with public iOS SDK
1388         https://bugs.webkit.org/show_bug.cgi?id=136487
1389
1390         Reviewed by David Kilzer.
1391
1392         Update WebKit2 source files to include the wrapper SPI headers instead of the corresponding
1393         actual SPI header(s).
1394
1395         * Platform/mac/SharedMemoryMac.cpp:
1396         * Shared/ios/NativeWebTouchEventIOS.mm:
1397         * Shared/mac/RemoteLayerBackingStore.mm:
1398         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
1399         * UIProcess/API/Cocoa/WKWebView.mm:
1400         * UIProcess/ios/WKPDFPageNumberIndicator.mm:
1401         * UIProcess/ios/WKScrollView.mm:
1402         * UIProcess/ios/WebMemoryPressureHandlerIOS.mm:
1403         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
1404         * WebProcess/WebPage/WebPage.cpp:
1405
1406 2014-09-17  Gavin Barraclough  <barraclough@apple.com>
1407
1408         DOM timer throttling for hidden plugins
1409         https://bugs.webkit.org/show_bug.cgi?id=136197
1410
1411         Reviewed by Geoff Garen & Andreas Kling.
1412
1413         For non-visible web pages we slow timers (since they can't be driving animations, etc).
1414         We should do the same for plugins.
1415
1416         * PluginProcess/WebProcessConnection.cpp:
1417         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1418             - remove now redundant includes.
1419         * WebProcess/Plugins/PluginView.h:
1420             - audioHardwareActivity is now virtual, override.
1421
1422 2014-09-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1423
1424         [GTK] WebKitWebView::load-failed-with-tls-errors should receive the failing URI instead of a host
1425         https://bugs.webkit.org/show_bug.cgi?id=136889
1426
1427         Reviewed by Gustavo Noronha Silva.
1428
1429         We were passing a host for two different reasons, first because
1430         it's more convenient to add an exception with
1431         webkit_web_context_allow_tls_certificate_for_host(), but also
1432         because we were assuming the active URI is the failing URI in case
1433         of failure. This assumption is correct because our current code
1434         does that, but I'm not sure we are doing it on purpose. That
1435         behaviour is not documented anywhere and it's not what WebKit2 does
1436         internaly.
1437
1438         * UIProcess/API/gtk/WebKitWebView.cpp:
1439         (webkit_web_view_class_init):
1440         (webkitWebViewLoadFailedWithTLSErrors):
1441         * UIProcess/API/gtk/WebKitWebView.h:
1442
1443 2014-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1444
1445         [GTK] Fix layering violations in PasteboardGtk
1446         https://bugs.webkit.org/show_bug.cgi?id=136802
1447
1448         Reviewed by Darin Adler.
1449
1450         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1451         (WebKit::WebEditorClient::updateGlobalSelection): Use new API to
1452         update the global selection.
1453
1454 2014-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1455
1456         DragData should not depend on Clipboard, DocumentFragment, and Document
1457         https://bugs.webkit.org/show_bug.cgi?id=21358
1458
1459         Reviewed by Darin Adler.
1460
1461         * UIProcess/WebPageProxy.cpp:
1462         (WebKit::WebPageProxy::performDragControllerAction): Update to API
1463         change in DragData::asURL().
1464
1465 2014-09-16  Daniel Bates  <dabates@apple.com>
1466
1467         [iOS] Add iOS SDK name and version suffix to WebKitSystemInterface debug/release product name
1468         https://bugs.webkit.org/show_bug.cgi?id=136862
1469
1470         Reviewed by David Kilzer.
1471
1472         * Configurations/DebugRelease.xcconfig:
1473
1474 2014-09-16  Enrica Casucci  <enrica@apple.com>
1475
1476         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
1477         https://bugs.webkit.org/show_bug.cgi?id=136474
1478
1479         Reviewed by Benjamin Poulain.
1480
1481         This is the updated version of the patch that was landed in r173340.
1482         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
1483         and removes the assumption that EAffinity values match NSSelectionAffinity
1484         values. It also removes the includes in TextAffinity.h, creating the need to
1485         include explicitly the files when necessary.
1486
1487         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
1488         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
1489
1490 2014-09-16  Dan Bernstein  <mitz@apple.com>
1491
1492         Standardized the return type of a delegate method.
1493
1494         Rubber-stamped by Anders Carlsson.
1495
1496         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Changed a return type from bool to BOOL.
1497
1498 2014-09-16  Tomas Popela  <tpopela@redhat.com>
1499
1500         [GTK] Typo in  webkit_security_manager_register_uri_scheme_as_empty_document documentation
1501         https://bugs.webkit.org/show_bug.cgi?id=136852
1502
1503         Reviewed by Carlos Garcia Campos.
1504
1505         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
1506
1507 2014-09-13  Gavin Barraclough  <baraclough@apple.com>
1508
1509         Should call [BKSProcessAssertion invalidate]
1510         https://bugs.webkit.org/show_bug.cgi?id=136804
1511         <rdar://problem/17897780>
1512
1513         Reviewed by Darin Adler.
1514
1515         We should invalidate the process assertion before releasing it. Fortunately this is really easy,
1516         since there is a simple 1:1 relationship with ProcessAssertion, with their lifetimes matching exactly.
1517
1518         * UIProcess/ProcessAssertion.cpp:
1519         (WebKit::ProcessAssertion::~ProcessAssertion):
1520             - no-op implementation.
1521         * UIProcess/ProcessAssertion.h:
1522             - added destructor.
1523         * UIProcess/ios/ProcessAssertionIOS.mm:
1524         (WebKit::ProcessAssertion::~ProcessAssertion):
1525             - destructor invalidates the BKSProcessAssertion.
1526
1527 2014-09-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1528
1529         REGRESSION(r170243): [EFL][WK2] Dirty image is shown when new page is loading on fixed layout 
1530         https://bugs.webkit.org/show_bug.cgi?id=136568
1531
1532         Reviewed by Csaba Osztrogonác.
1533
1534         r170243 landed wrong didCommitNewPage() since it always returns false. It cause that
1535         PageViewportControllerClientEfl::didChangeVisibleContents() continues to draw dirty image on 0,0 coordinate.
1536         This patch fixes the problem.
1537
1538         * UIProcess/API/efl/EwkView.h:
1539         (EwkView::waitingForNewPage):
1540         (EwkView::didCommitNewPage):
1541         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1542         (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
1543
1544 2014-09-14  Chris Dumez  <cdumez@apple.com>
1545
1546         Rename Node::childNodeCount() to countChildNodes() and avoid inefficient uses
1547         https://bugs.webkit.org/show_bug.cgi?id=136789
1548
1549         Reviewed by Darin Adler.
1550
1551         Avoid calling slow Node::countChildNodes().
1552
1553         * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
1554         (WebKit::WebPage::findZoomableAreaForPoint):
1555         Replace call to "node->parentNode()->childNodeCount() != 1" by
1556         "!node->parentNode()->hasOneChild()" which is equivalent but more
1557         efficient.
1558
1559 2014-09-10  Jon Honeycutt  <jhoneycutt@apple.com>
1560
1561         Re-add the request autocomplete feature
1562
1563         <https://bugs.webkit.org/show_bug.cgi?id=136730>
1564
1565         This feature was rolled out in r148731 because it was only used by
1566         Chromium. As we consider supporting this feature, roll it back in, but
1567         leave it disabled.
1568
1569         This rolls out r148731 (which removed the feature) with small changes
1570         needed to make the code build in ToT, to match modern style, to make
1571         the tests run, and to remove unused code.
1572
1573         Reviewed by Andy Estes.
1574
1575         * Configurations/FeatureDefines.xcconfig:
1576         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1577         (WebKit::WebFrameLoaderClient::didRequestAutocomplete):
1578         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1579
1580 2014-09-12  Tim Horton  <timothy_horton@apple.com>
1581
1582         Swiping back from a Twitter image to Twitter flashes to the wrong position
1583         https://bugs.webkit.org/show_bug.cgi?id=136798
1584         <rdar://problem/18324338>
1585
1586         Reviewed by Darin Adler and Sam Weinig.
1587
1588         * UIProcess/mac/ViewGestureController.h:
1589         * UIProcess/mac/ViewGestureControllerMac.mm:
1590         (WebKit::ViewGestureController::ViewGestureController):
1591         (WebKit::ViewGestureController::didFinishLoadForMainFrame):
1592         (WebKit::ViewGestureController::didSameDocumentNavigationForMainFrame):
1593         Add a 250ms repeating timer that we start in didFinishLoadForMainFrame
1594         if we are for some reason still loading, and in didSameDocumentNavigationForMainFrame
1595         unconditionally, to match behavior of the old swipe implementation.
1596
1597         Also, do the active gesture check in both of those places so that we don't
1598         start the timer if we're in the middle of a live swipe or have already torn
1599         down the snapshot (removeSwipeSnapshotAfterRepaint does this as well, so
1600         this isn't really a behavior change).
1601
1602         (WebKit::ViewGestureController::activeLoadMonitoringTimerFired):
1603         Every time the timer fires, check if we're still loading; if not,
1604         tear down the swipe snapshot (after repainting).
1605
1606         (WebKit::ViewGestureController::removeSwipeSnapshotAfterRepaint):
1607         Stop the active load monitoring timer.
1608
1609 2014-09-12  Commit Queue  <commit-queue@webkit.org>
1610
1611         Unreviewed, rolling out r173575.
1612         https://bugs.webkit.org/show_bug.cgi?id=136790
1613
1614         Failing tests (Requested by enrica on #webkit).
1615
1616         Reverted changeset:
1617
1618         "Remove PLATFORM(IOS) from WebCore/editing (Part 3)."
1619         https://bugs.webkit.org/show_bug.cgi?id=136474
1620         http://trac.webkit.org/changeset/173575
1621
1622 2014-09-12  Enrica Casucci  <enrica@apple.com>
1623
1624         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
1625         https://bugs.webkit.org/show_bug.cgi?id=136474
1626
1627         Reviewed by Benjamin Poulain.
1628
1629         This is the updated version of the patch that was landed in r173340.
1630         I changed the use of IntPoint to FloatPoint since it was causing tests
1631         to fail.
1632         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
1633         and removes the assumption that EAffinity values match NSSelectionAffinity
1634         values. It also removes the includes in TextAffinity.h, creating the need to
1635         include explicitly the files when necessary. It also removes the unnecessary
1636         use of platform specific types, replacing them with WebCore types.
1637
1638         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
1639         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
1640         (-[WKAccessibilityWebPageObject accessibilityHitTest:]):
1641
1642 2014-09-12  Dan Bernstein  <mitz@apple.com>
1643
1644         [Cocoa] Message generation scripts should be installed in WebKit.framework
1645         https://bugs.webkit.org/show_bug.cgi?id=136771
1646
1647         Reviewed by Anders Carlsson.
1648
1649         * DerivedSources.make: Updated for rename of Scripts/webkit2 to Scripts/webkit.
1650         * Scripts/generate-message-receiver.py:
1651         (main): Updated for rename from webkit2 to webkit.
1652         * Scripts/generate-messages-header.py:
1653         (main): Ditto.
1654         * Scripts/webkit: Renamed from Source/WebKit2/Scripts/webkit2.
1655         * Scripts/webkit/messages.py: Updated for rename.
1656         * Scripts/webkit/parser.py: Ditto.
1657         * WebKit2.xcodeproj/project.pbxproj: Moved the Copy Message Generation Scripts build phase
1658         from the WebKit2 target to the WebKit target and changed its destination to
1659         WebKit.framework/PrivateHeaders/Scripts/webkit. Removed the Remove Compiled Python Files
1660         build phase, since compiled files no longer get copied.
1661
1662 2014-09-12  Tim Horton  <timothy_horton@apple.com>
1663
1664         Flash of page scrolled to wrong origin before restoring scroll position after swiping back to CNN front page from an article
1665         https://bugs.webkit.org/show_bug.cgi?id=136788
1666         <rdar://problem/18314597>
1667
1668         Reviewed by Sam Weinig.
1669
1670         * UIProcess/mac/ViewGestureControllerMac.mm:
1671         (WebKit::ViewGestureController::didHitRenderTreeSizeThreshold):
1672         (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
1673         Always wait until didFinishLoadForMainFrame or didSameDocumentNavigationForMainFrame
1674         before removing the snapshot, because otherwise we don't know if the scroll
1675         position has been restored yet.
1676
1677         We should revisit this at some point, because it should be possible to
1678         determine if the scroll position has been restored appropriately, but for
1679         now it is safest to restore the antique behavior.
1680
1681 2014-09-12  Dan Bernstein  <mitz@apple.com>
1682
1683         Build fix.
1684
1685         Reverted r173564.
1686
1687         * DerivedSources.make:
1688         * Scripts/generate-message-receiver.py:
1689         (main):
1690         * Scripts/generate-messages-header.py:
1691         (main):
1692         * Scripts/webkit: Removed.
1693         * Scripts/webkit/LegacyMessageReceiver-expected.cpp: Removed.
1694         * Scripts/webkit/LegacyMessages-expected.h: Removed.
1695         * Scripts/webkit/MessageReceiver-expected.cpp: Removed.
1696         * Scripts/webkit/MessageReceiverSuperclass-expected.cpp: Removed.
1697         * Scripts/webkit/Messages-expected.h: Removed.
1698         * Scripts/webkit/MessagesSuperclass-expected.h: Removed.
1699         * Scripts/webkit/__init__.py: Removed.
1700         * Scripts/webkit/messages.py: Removed.
1701         * Scripts/webkit/messages_unittest.py: Removed.
1702         * Scripts/webkit/model.py: Removed.
1703         * Scripts/webkit/parser.py: Removed.
1704         * Scripts/webkit/test-legacy-messages.in: Removed.
1705         * Scripts/webkit/test-messages.in: Removed.
1706         * Scripts/webkit/test-superclass-messages.in: Removed.
1707         * Scripts/webkit2: Copied from Scripts/webkit2.
1708         * WebKit2.xcodeproj/project.pbxproj:
1709
1710 2014-09-11  Andy Estes  <aestes@apple.com>
1711
1712         [WebKit2] WKImageCreateCGImage crashes when passed a null WKImage
1713         https://bugs.webkit.org/show_bug.cgi?id=136768
1714
1715         Reviewed by Tim Horton.
1716
1717         WKImageCreateFromCGImage can return null, so it only seems fair that WKImageCreateCGImage should tolerate null.
1718
1719         * Shared/API/c/cg/WKImageCG.cpp:
1720         (WKImageCreateCGImage):
1721
1722 2014-09-12  Dan Bernstein  <mitz@apple.com>
1723
1724         [Cocoa] Message generation scripts should be installed in WebKit.framework
1725         https://bugs.webkit.org/show_bug.cgi?id=136771
1726
1727         Reviewed by Anders Carlsson.
1728
1729         * DerivedSources.make: Updated for rename of Scripts/webkit2 to Scripts/webkit.
1730         * Scripts/generate-message-receiver.py:
1731         (main): Updated for rename from webkit2 to webkit.
1732         * Scripts/generate-messages-header.py:
1733         (main): Ditto.
1734         * Scripts/webkit: Renamed from Source/WebKit2/Scripts/webkit2.
1735         * Scripts/webkit/messages.py: Updated for rename.
1736         * Scripts/webkit/parser.py: Ditto.
1737         * WebKit2.xcodeproj/project.pbxproj: Moved the Copy Message Generation Scripts build phase
1738         from the WebKit2 target to the WebKit target and changed its destination to
1739         WebKit.framework/PrivateHeaders/Scripts/webkit. Removed the Remove Compiled Python Files
1740         build phase, since compiled files no longer get copied.
1741
1742 2014-09-12  Michael Catanzaro  <mcatanzaro@igalia.com>
1743
1744         [GTK] Use a nicer HTTP authentication dialog
1745         https://bugs.webkit.org/show_bug.cgi?id=136615
1746
1747         Reviewed by Carlos Garcia Campos.
1748
1749         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1750         (webkitAuthenticationDialogInitialize): Use a nicer layout.
1751         (packTwoColumnLayoutInBox): Deleted.
1752         (createLabel): Deleted.
1753         (createEntry): Deleted.
1754
1755 2014-09-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1756
1757         REGRESSION(r173423): CertificateInfo is never sent to the UI process when using shared secondary process model
1758         https://bugs.webkit.org/show_bug.cgi?id=136669
1759
1760         Reviewed by Antti Koivisto.
1761
1762         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1763         (WebKit::WebResourceLoadScheduler::scheduleLoad): Use
1764         ResourceLoader::shouldIncludeCertificateInfo() to initialize
1765         needsCertificateInfo parameter.
1766
1767 2014-09-11  Ryuan Choi  <ryuan.choi@gmail.com>
1768
1769         [EFL][CoordinatedGraphics] Move CoordinatedGraphicsScene and CoordinatedBackingStore to WebKit2
1770         https://bugs.webkit.org/show_bug.cgi?id=136770
1771
1772         Reviewed by Gyuyoung Kim.
1773
1774         CoordinatedGraphicsScene and CoordinatedBackingStore is only for UIProcess.
1775         This patch moved them from WebCore to WebKit2/UIProcess/CoordinatedGraphics/.
1776
1777         * PlatformEfl.cmake:
1778         * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp:
1779         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp.
1780         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStore.h.
1781         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp.
1782         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h.
1783         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1784         * UIProcess/CoordinatedGraphics/WebView.cpp:
1785         * UIProcess/efl/WebViewEfl.cpp:
1786
1787 2014-09-11  Bear Travis  <betravis@adobe.com>
1788
1789         [CSS Font Loading] Enable CSS Font Loading on Mac
1790         https://bugs.webkit.org/show_bug.cgi?id=135473
1791
1792         Reviewed by Antti Koivisto.
1793
1794         Enable CSS Font Loading in FeatureDefines.
1795
1796         * Configurations/FeatureDefines.xcconfig:
1797
1798 2014-09-11  Youenn Fablet  <youenn.fablet@crf.canon.fr>
1799
1800         [WK2] Authentication dialog is displayed for cross-origin XHR
1801         https://bugs.webkit.org/show_bug.cgi?id=131349
1802
1803         Reviewed by Alexey Proskuryakov.
1804
1805         Precomputing client credential policy in the Web Process before sending the resource load task to the Network Process.
1806
1807         * NetworkProcess/NetworkResourceLoader.cpp:
1808         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge): Added an ASSERT to ensure that credential policy is never set to DoNotAskClientForCrossOriginCredentials.
1809         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1810         (WebKit::WebResourceLoadScheduler::scheduleLoad): Precomputing client credential policy to handle the case of cross-origin requests.
1811         * WebProcess/Network/WebResourceLoader.cpp:
1812         (WebKit::WebResourceLoader::willSendRequest): Added a TODO to check whether redirections need a specific handling.
1813
1814 2014-09-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1815
1816         [GTK] Merge WebKitAuthenticationWidget into WebKitAuthenticationDialog
1817         https://bugs.webkit.org/show_bug.cgi?id=136700
1818
1819         Reviewed by Sergio Villar Senin.
1820
1821         Copy WebKitAuthenticationWidget implementation inside
1822         WebKitAuthenticationDialog using a normal GtkBox instead.
1823
1824         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1825         (okButtonClicked):
1826         (cancelButtonClicked):
1827         (packTwoColumnLayoutInBox):
1828         (createLabel):
1829         (createEntry):
1830         (webkitAuthenticationDialogInitialize): Remove the
1831         CredentialStorageMode parameter since it's now a member.
1832         (webkitAuthenticationDialogNew): Initialize the
1833         CredentialStorageMode member too.
1834         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1835
1836 2014-09-10  Antti Koivisto  <antti@apple.com>
1837
1838         NetworkResourceLoader cleanups
1839         https://bugs.webkit.org/show_bug.cgi?id=136701
1840
1841         Reviewed by Darin Adler.
1842
1843         After smashing NetworkResourceLoader together with the clients it can be made nicer.
1844
1845         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1846         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
1847         (WebKit::NetworkResourceLoadScheduler::removeLoader):
1848         * NetworkProcess/NetworkResourceLoader.cpp:
1849         (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
1850
1851             The original request is now part of the loader.
1852
1853         (WebKit::sendReplyToSynchronousRequest):
1854         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1855
1856             Instead of copying everything out from NetworkResourceLoadParameters just include the whole thing as a const field.
1857             SanboxExtension construction moves to NetworkResourceLoadParameters::decode()
1858             Stuff that is related to starting the load moves to start().
1859
1860         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1861         (WebKit::NetworkResourceLoader::start):
1862         (WebKit::NetworkResourceLoader::setDefersLoading):
1863
1864             Eliminate m_deferredRequest since we now always remember the original request.
1865
1866         (WebKit::NetworkResourceLoader::cleanup):
1867         (WebKit::NetworkResourceLoader::didConvertHandleToDownload):
1868         (WebKit::NetworkResourceLoader::abort):
1869         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1870         (WebKit::NetworkResourceLoader::didFail):
1871         (WebKit::NetworkResourceLoader::willSendRequestAsync):
1872         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1873
1874             Eliminate unnecessary m_suggestedRequestForWillSendRequest.
1875
1876         (WebKit::NetworkResourceLoader::wasBlocked):
1877         (WebKit::NetworkResourceLoader::cannotShowURL):
1878         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1879         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1880         (WebKit::NetworkResourceLoader::receivedCancellation):
1881         (WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
1882         (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
1883         (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
1884         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
1885         * NetworkProcess/NetworkResourceLoader.h:
1886         (WebKit::NetworkResourceLoader::originalRequest):
1887         (WebKit::NetworkResourceLoader::currentRequest):
1888         (WebKit::NetworkResourceLoader::sessionID):
1889         (WebKit::NetworkResourceLoader::defersLoading):
1890         (WebKit::NetworkResourceLoader::isLoadingMainResource):
1891         (WebKit::NetworkResourceLoader::request): Deleted.
1892         (WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
1893
1894             Made private and moved to cpp.
1895
1896         * NetworkProcess/mac/NetworkDiskCacheMonitor.mm:
1897         (WebKit::NetworkDiskCacheMonitor::NetworkDiskCacheMonitor):
1898
1899             Use original request instead of the current one. This might fix a bug where we didn't use file backing over redirects.
1900
1901         * Shared/Network/NetworkResourceLoadParameters.cpp:
1902         (WebKit::NetworkResourceLoadParameters::decode):
1903
1904             Decode to SanboxExtensions to the actual type rather than a handle.
1905
1906         * Shared/Network/NetworkResourceLoadParameters.h:
1907
1908 2014-09-10  Michael Catanzaro  <mcatanzaro@igalia.com>
1909
1910         [GTK] allow overwriting destination of download
1911         https://bugs.webkit.org/show_bug.cgi?id=136372
1912
1913         Reviewed by Carlos Garcia Campos.
1914
1915         * UIProcess/API/gtk/WebKitDownload.cpp:
1916         (webkitDownloadGetProperty): Added
1917         (webkit_download_class_init): Install webkitDownloadGetProperty
1918         (webkitDownloadDecideDestinationWithSuggestedFilename): Add
1919         allowOverwrite parameter and set it appropriately
1920         (webkit_download_get_allow_overwrite): Added
1921         (webkit_download_set_allow_overwrite): Added
1922         * UIProcess/API/gtk/WebKitDownload.h: New API
1923         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
1924         (decideDestinationWithSuggestedFilename): Pass allowOverwrite to
1925         webkitDownloadDecideDestinationWithSuggestedFilename
1926         * UIProcess/API/gtk/WebKitDownloadPrivate.h: Add allowOverwrite
1927         parameter to webkitDownloadDecideDestinationWithSuggestedFilename
1928         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: New API
1929
1930 2014-09-10  Rohit Kumar  <kumar.rohit@samsung.com>
1931
1932         [GTK] Clean up the WebKit build from unused parameter warning in Webkit2/UIProcess module
1933         https://bugs.webkit.org/show_bug.cgi?id=136670
1934
1935         Reviewed by Martin Robinson.
1936
1937         * UIProcess/API/gtk/PageClientImpl.cpp:
1938         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
1939
1940 2014-09-09  Enrica Casucci  <enrica@apple.com>
1941
1942         REGRESSION (WebKit2): -webkit-touch-callout: none has no effect.
1943         https://bugs.webkit.org/show_bug.cgi?id=136685
1944         rdar://problem/17629840
1945
1946         Reviewed by Benjamin Poulain.
1947
1948         We need to check if the touch callout is enabled for the element before starting
1949         the long press gesture.
1950         The information about the touch callout is returned together with the rest of data
1951         returned by the InteractionInformationAtPosition.
1952
1953         * Shared/InteractionInformationAtPosition.cpp:
1954         (WebKit::InteractionInformationAtPosition::encode):
1955         (WebKit::InteractionInformationAtPosition::decode):
1956         * Shared/InteractionInformationAtPosition.h:
1957         (WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):
1958         * UIProcess/ios/WKContentViewInteraction.mm:
1959         (-[WKContentView _actionForLongPress]):
1960         * WebProcess/WebPage/ios/WebPageIOS.mm:
1961         (WebKit::WebPage::getPositionInformation):
1962
1963 2014-09-09  Benjamin Poulain  <bpoulain@apple.com>
1964
1965         Disable the "unreachable-code" warning
1966         https://bugs.webkit.org/show_bug.cgi?id=136677
1967
1968         Reviewed by Darin Adler.
1969
1970         * Configurations/Base.xcconfig:
1971
1972 2014-09-09  Dan Bernstein  <mitz@apple.com>
1973
1974         [Cocoa] -[WKBackForwardList backList] contains an unnecessary nil check
1975         https://bugs.webkit.org/show_bug.cgi?id=136680
1976
1977         Reviewed by Anders Carlsson.
1978
1979         * UIProcess/API/Cocoa/WKBackForwardList.mm:
1980         (-[WKBackForwardList backList]): Removed nil check.
1981         (-[WKBackForwardList forwardList]): Ditto.
1982
1983 2014-09-09  Tim Horton  <timothy_horton@apple.com>
1984
1985         Make DrawingArea a real MessageReceiver
1986         https://bugs.webkit.org/show_bug.cgi?id=136438
1987
1988         Reviewed by Darin Adler.
1989
1990         * WebProcess/WebPage/DrawingArea.cpp:
1991         (WebKit::DrawingArea::DrawingArea):
1992         (WebKit::DrawingArea::~DrawingArea):
1993         * WebProcess/WebPage/DrawingArea.h:
1994         * WebProcess/WebPage/DrawingArea.messages.in:
1995         * WebProcess/WebPage/WebPage.cpp:
1996         (WebKit::WebPage::WebPage):
1997         (WebKit::WebPage::~WebPage):
1998         (WebKit::WebPage::didReceiveMessage):
1999         Make DrawingArea a real MessageReceiver instead of a LegacyReceiver that
2000         jumps through WebPage to receive its messages.
2001
2002 2014-09-08  Antti Koivisto  <antti@apple.com>
2003
2004         Pass certificate info as part of ResourceResponse
2005         https://bugs.webkit.org/show_bug.cgi?id=136611
2006
2007         Reviewed by Darin Adler.
2008
2009         * NetworkProcess/NetworkResourceLoader.cpp:
2010         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
2011
2012             Initialize the certificate info only if requested.
2013
2014         * WebProcess/Network/WebResourceLoader.cpp:
2015         (WebKit::WebResourceLoader::didReceiveResponse):
2016         (WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo): Deleted.
2017
2018             Rename didReceiveResponseWithCertificateInfo -> didReceiveResponse as it is now part of the response.
2019
2020         * WebProcess/Network/WebResourceLoader.h:
2021         * WebProcess/Network/WebResourceLoader.messages.in:
2022         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2023
2024             Request certificate info for the main resource only.
2025
2026         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
2027         * WebProcess/WebPage/WebFrame.cpp:
2028         (WebKit::WebFrame::certificateInfo):
2029
2030 2014-09-08  Shivakumar JM  <shiva.jm@samsung.com>
2031
2032         [WebKit2] Fix build error in WebKit2/WebProcess module
2033         https://bugs.webkit.org/show_bug.cgi?id=136667
2034
2035         Reviewed by Darin Adler.
2036
2037         Fix the build error by handling default case.
2038
2039         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2040         (WebKit::maximumBufferingTime):
2041
2042 2014-09-08  Simon Fraser  <simon.fraser@apple.com>
2043
2044         Fix the iOS build.
2045
2046         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2047         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2048
2049 2014-09-08  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2050
2051         Remove FILTERS flag
2052         https://bugs.webkit.org/show_bug.cgi?id=136571
2053
2054         Reviewed by Darin Adler.
2055
2056         * Configurations/FeatureDefines.xcconfig:
2057
2058 2014-09-08  Antti Koivisto  <antti@apple.com>
2059
2060         Buffer images on web process side
2061         https://bugs.webkit.org/show_bug.cgi?id=136631
2062
2063         Reviewed by Darin Adler.
2064
2065         We can substantially reduce IPC and decoding time for large images by allowing some buffering.
2066
2067         This patch makes us buffer image data up to 0.5s before sending it over to the web process.
2068
2069         * NetworkProcess/NetworkResourceLoader.cpp:
2070         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2071         (WebKit::NetworkResourceLoader::cleanup):
2072         (WebKit::NetworkResourceLoader::didReceiveBuffer):
2073
2074             Start the timer.
2075
2076         (WebKit::NetworkResourceLoader::didFinishLoading):
2077         (WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
2078         (WebKit::NetworkResourceLoader::bufferingTimerFired):
2079         (WebKit::NetworkResourceLoader::sendBuffer):
2080
2081             Send the data when the timer fires or the load finishes, whichever happens first.
2082
2083         * NetworkProcess/NetworkResourceLoader.h:
2084         * Platform/IPC/ArgumentCoders.h:
2085
2086             Support encoding std::chrono::duration
2087
2088         * Shared/Network/NetworkResourceLoadParameters.cpp:
2089         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
2090         (WebKit::NetworkResourceLoadParameters::encode):
2091         (WebKit::NetworkResourceLoadParameters::decode):
2092         * Shared/Network/NetworkResourceLoadParameters.h:
2093
2094             Pass maximimum buffering duration.
2095
2096         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2097         (WebKit::maximumBufferingTime):
2098
2099             Deterimine duration from the resource type.
2100             Enabled full buffering for font resources. They are not decoded incrementally.
2101
2102         (WebKit::WebResourceLoadScheduler::scheduleLoad):
2103
2104 2014-09-08  Dan Bernstein  <mitz@apple.com>
2105
2106         HAVE(VOUCHERS) is not available outside of WebKit2
2107         https://bugs.webkit.org/show_bug.cgi?id=136637
2108
2109         Reviewed by Tim Horton.
2110
2111         * config.h: Moved the definition of HAVE_VOUCHERS from here to wtf’s Platform.h.
2112
2113 2014-09-08  Tim Horton  <timothy_horton@apple.com>
2114
2115         Try to fix the build after r173383, part 4.
2116
2117         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2118         Machine finally caught up so I could actually test the fixes!
2119
2120 2014-09-08  Tim Horton  <timothy_horton@apple.com>
2121
2122         Try to fix the build after r173383, part 3.
2123
2124         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2125
2126 2014-09-08  Dan Bernstein  <mitz@apple.com>
2127
2128         Build fix.
2129
2130         * Platform/IPC/Connection.h:
2131
2132 2014-09-06  Sam Weinig  <sam@webkit.org>
2133
2134         XPCPtr should be converted into an all purpose smart pointer for os_objects
2135         https://bugs.webkit.org/show_bug.cgi?id=136602
2136
2137         Reviewed by Darin Adler.
2138
2139         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:
2140         (DatabaseServiceInitializer):
2141         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
2142         (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
2143         (NetworkServiceInitializer):
2144         * Platform/IPC/Connection.h:
2145         (IPC::Connection::Identifier::Identifier):
2146         * Platform/IPC/mac/ConnectionMac.mm:
2147         (IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
2148         (IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
2149         * Platform/IPC/mac/XPCPtr.h: Removed.
2150         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
2151         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
2152         (PluginServiceInitializer):
2153         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
2154         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
2155         (WebKit::XPCServiceInitializer):
2156         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
2157         (WebKit::XPCServiceInitializerDelegate::checkEntitlements):
2158         (WebKit::XPCServiceInitializerDelegate::hasEntitlement):
2159         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2160         (WebKit::XPCServiceEventHandler):
2161         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2162         (WebKit::XPCServiceEventHandler):
2163         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2164         (WebKit::connectToService):
2165         (WebKit::connectToReExecService):
2166         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
2167         (WebContentServiceInitializer):
2168         Update after the rename of XPCPtr to OSObjectPtr.
2169
2170 2014-09-06  Darin Adler  <darin@apple.com>
2171
2172         Make updates suggested by new version of Xcode
2173         https://bugs.webkit.org/show_bug.cgi?id=136603
2174
2175         Reviewed by Mark Rowe.
2176
2177         * Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE, COMBINE_HIDPI_IMAGES,
2178         and ENABLE_STRICT_OBJC_MSGSEND as suggested by the Xcode upgrade check.
2179
2180         * PluginProcess/mac/PluginProcessMac.mm:
2181         (WebKit::initializeCocoaOverrides): Changed NSConcreteTask_launch to use the same technique
2182         as the other functions in this file, doing the type casting right at the call to
2183         method_setImplementation so the global has a suitable type for making a function call,
2184         rather than relying on the abilty to call through a type without a specific argument list.
2185
2186         * UIProcess/Plugins/PluginInfoStore.cpp:
2187         (WebKit::pathExtension): Use size_t for the result of String::reverseFind rather than
2188         converting it to an int. Also don't rely on the fact that WTF's notFound becomes -1 when
2189         cast from size_t to int.
2190
2191         * WebKit2.xcodeproj/project.pbxproj: Let Xcode delete some orphaned items, and updated
2192         LastUpgradeCheck.
2193
2194 2014-09-06  Brian J. Burg  <burg@cs.washington.edu>
2195
2196         Web Inspector: convert DockSide to an enum class
2197         https://bugs.webkit.org/show_bug.cgi?id=136601
2198
2199         Reviewed by Timothy Hatcher.
2200
2201         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
2202         (WebKit::WebInspectorFrontendClient::attachWindow):
2203         * WebProcess/WebPage/WebInspector.cpp:
2204         (WebKit::WebInspector::attachedBottom):
2205         (WebKit::WebInspector::attachedRight):
2206         (WebKit::WebInspector::detached):
2207
2208 2014-09-06  Antti Koivisto  <antti@apple.com>
2209
2210         Serialize ResourceResponses using WebKit types
2211         https://bugs.webkit.org/show_bug.cgi?id=136545
2212
2213         Reviewed by Alexey Proskuryakov.
2214
2215         Remove the WK2 serialization code for responses. It moves to the types itself in WebCore where it is
2216         close to the data being serialized and less likely to get out of sync.
2217
2218         * Shared/WebCoreArgumentCoders.cpp:
2219         (IPC::ArgumentCoder<ResourceResponse>::encode): Deleted.
2220         (IPC::ArgumentCoder<ResourceResponse>::decode): Deleted.
2221         * Shared/WebCoreArgumentCoders.h:
2222         * Shared/mac/WebCoreArgumentCodersMac.mm:
2223         (IPC::ArgumentCoder<ResourceResponse>::encodePlatformData): Deleted.
2224         (IPC::ArgumentCoder<ResourceResponse>::decodePlatformData): Deleted.
2225
2226 2014-09-06  Ryuan Choi  <ryuan.choi@gmail.com>
2227
2228         [EFL] Drop evas object cursor support
2229         https://bugs.webkit.org/show_bug.cgi?id=136324
2230
2231         Reviewed by Gyuyoung Kim.
2232
2233         Removed evas object cursor because there are some bugs.
2234         ewebkit will only support ecore_x_cursor because ewebkit is available with X, now.
2235
2236         * UIProcess/API/efl/EwkView.cpp:
2237         (EwkViewEventHandler<EVAS_CALLBACK_MOUSE_IN>::handleEvent):
2238         (EwkView::EwkView):
2239         (EwkView::updateCursor): Simplifies not to use evas object cursor.
2240         (EwkView::setCursor): Ditto.
2241         * UIProcess/API/efl/EwkView.h:
2242
2243 2014-09-05  Commit Queue  <commit-queue@webkit.org>
2244
2245         Unreviewed, rolling out r173340 and r173342.
2246         https://bugs.webkit.org/show_bug.cgi?id=136596
2247
2248         Broke many tests (Requested by ap on #webkit).
2249
2250         Reverted changesets:
2251
2252         "Remove PLATFORM(IOS) from WebCore/editing (Part 3)."
2253         https://bugs.webkit.org/show_bug.cgi?id=136474
2254         http://trac.webkit.org/changeset/173340
2255
2256         "Build fix after r173340."
2257         http://trac.webkit.org/changeset/173342
2258
2259 2014-09-05  Joseph Pecoraro  <pecoraro@apple.com>
2260
2261         Use WTFString::split(char) in more places
2262         https://bugs.webkit.org/show_bug.cgi?id=136543
2263
2264         Reviewed by Sam Weinig.
2265
2266         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
2267         (WebKit::PluginVersion::parse):
2268         * UIProcess/gtk/WebContextGtk.cpp:
2269         (WebKit::initInspectorServer):
2270         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2271         (WebKit::isTransparentSilverlightBackgroundValue):
2272
2273 2014-09-05  Enrica Casucci  <enrica@apple.com>
2274
2275         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
2276         https://bugs.webkit.org/show_bug.cgi?id=136474
2277
2278         Reviewed by Benjamin Poulain.
2279
2280         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
2281         and removes the assumption that EAffinity values match NSSelectionAffinity
2282         values. It also removes the includes in TextAffinity.h, creating the need to
2283         include explicitly the files when necessary. It also removes the unnecessary
2284         use of platform specific types, replacing them with WebCore types.
2285
2286         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2287         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
2288         (-[WKAccessibilityWebPageObject accessibilityHitTest:]):
2289
2290 2014-09-05  David Kilzer  <ddkilzer@apple.com>
2291
2292         JavaScriptCore should build with newer clang
2293         <http://webkit.org/b/136002>
2294         <rdar://problem/18020616>
2295
2296         Reviewed by Geoffrey Garen.
2297
2298         * Shared/API/c/WKString.cpp:
2299         (WKStringCreateWithJSString): Add NULL check to prevent
2300         WebKitTestRunner crashes that relied on the previous |this|
2301         behavior where NULL values were allowed.
2302
2303 2014-09-05  Beth Dakin  <bdakin@apple.com>
2304
2305         ScrollablArea::handleWheelEvent() should return early if the ScrollableArea is not 
2306         actually scrollable
2307         https://bugs.webkit.org/show_bug.cgi?id=136558
2308
2309         Reviewed by Simon Fraser.
2310
2311         New ScrollableArea virtual function.
2312         * WebProcess/Plugins/PDF/PDFPlugin.h:
2313
2314 2014-09-04  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2315
2316         Unreviewed, speculative build fix on GTK port since r173305.
2317
2318         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2319         (webkitURISchemeRequestReadCallback):
2320
2321 2014-09-03  Andy Estes  <aestes@apple.com>
2322
2323         [Cocoa] Some WebKitLegacy headers migrated from WebCore incorrectly contain WEBCORE_EXPORT
2324         https://bugs.webkit.org/show_bug.cgi?id=136521
2325
2326         Reviewed by Anders Carlsson.
2327
2328         * config.h: Included <WebCore/PlatformExportMacros.h> instead of defining WEBCORE_EXPORT.
2329
2330 2014-09-04  Maciej Stachowiak  <mjs@apple.com>
2331
2332         Remove WebCoreSystemInterface glue for otherwise unused WKSI calls
2333         https://bugs.webkit.org/show_bug.cgi?id=136527
2334
2335         Reviewed by Alexey Proskuryakov.
2336
2337         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2338         (InitWebCoreSystemInterface):
2339
2340 2014-09-04  Antti Koivisto  <antti@apple.com>
2341
2342         Remove ResourceResponse::m_suggestedFilename
2343         https://bugs.webkit.org/show_bug.cgi?id=136534
2344
2345         Reviewed by Alexey Proskuryakov.
2346
2347         * Shared/WebCoreArgumentCoders.cpp:
2348         (IPC::ArgumentCoder<ResourceResponse>::encode):
2349         (IPC::ArgumentCoder<ResourceResponse>::decode):
2350
2351             No more m_suggestedFilename.
2352
2353         * WebProcess/Plugins/PDF/PDFPlugin.mm:
2354         (WebKit::PDFPlugin::addArchiveResource):
2355
2356             Fake the suggested filename by using the Content-Disposition header.
2357
2358 2014-09-04  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2359
2360         Remove CSS_FILTERS flag
2361         https://bugs.webkit.org/show_bug.cgi?id=136529
2362
2363         Reviewed by Dirk Schulze.
2364
2365         * Configurations/FeatureDefines.xcconfig:
2366         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
2367         (IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
2368         (IPC::ArgumentCoder<GraphicsLayerAnimation>::encode):
2369         (IPC::ArgumentCoder<GraphicsLayerAnimation>::decode):
2370         (IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::encode):
2371         (IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::decode):
2372         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
2373         * Shared/WebCoreArgumentCoders.cpp:
2374         * Shared/WebCoreArgumentCoders.h:
2375         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
2376         (WebKit::GraphicsLayerCARemote::filtersCanBeComposited):
2377         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
2378         * WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
2379         * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
2380         (WebKit::PlatformCAAnimationRemote::setFromValue):
2381         (WebKit::PlatformCAAnimationRemote::setToValue):
2382         (WebKit::PlatformCAAnimationRemote::setValues):
2383         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
2384         (WebKit::PlatformCALayerRemote::updateClonedLayerProperties):
2385         (WebKit::PlatformCALayerRemote::filtersCanBeComposited):
2386         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
2387
2388 2014-09-04  Commit Queue  <commit-queue@webkit.org>
2389
2390         Unreviewed, rolling out r173245.
2391         https://bugs.webkit.org/show_bug.cgi?id=136533
2392
2393         Broke JSC tests. (Requested by ddkilzer on #webkit).
2394
2395         Reverted changeset:
2396
2397         "JavaScriptCore should build with newer clang"
2398         https://bugs.webkit.org/show_bug.cgi?id=136002
2399         http://trac.webkit.org/changeset/173245
2400
2401 2014-09-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2402
2403         Initialize m_usesNetworkProcess earlier in WebProcess::initializeWebProcess()
2404         https://bugs.webkit.org/show_bug.cgi?id=136478
2405
2406         Reviewed by Alexey Proskuryakov.
2407
2408         The soup network backend uses WebProcess::usesNetworkProcess()
2409         from WebProcess::platformSetCacheModel() and
2410         WebProcess::platformInitializeWebProcess(), both called before the
2411         m_usesNetworkProcess member has been initialized.
2412
2413         * WebProcess/WebProcess.cpp:
2414         (WebKit::WebProcess::initializeWebProcess): Move the
2415         m_usesNetworkProcess initialization at the beginning right before
2416         calling platformInitializeWebProcess().
2417         * WebProcess/cocoa/WebProcessCocoa.mm:
2418         (WebKit::WebProcess::platformSetCacheModel): Remove the early
2419         return when using the network process, since this was dead code
2420         before this change, and not really needed now that
2421         usesNetworkProcess() will return true.
2422         (WebKit::WebProcess::platformInitializeWebProcess): Remove comment
2423         that is not accurate since r171156.
2424
2425 2014-09-03  Michael Catanzaro  <mcatanzaro@igalia.com>
2426
2427         [SOUP] Race condition when downloading a file due to the intermediate temporary file
2428         https://bugs.webkit.org/show_bug.cgi?id=136423
2429
2430         Reviewed by Carlos Garcia Campos.
2431
2432         * Shared/Downloads/soup/DownloadSoup.cpp:
2433         (WebKit::DownloadClient::DownloadClient): Replace m_destinationURI with
2434         m_destinationFile and add m_createdDestination.
2435         (WebKit::DownloadClient::deleteFilesIfNeeded): Added.
2436         (WebKit::DownloadClient::downloadFailed): Call deleteFilesIfNeeded.
2437         (WebKit::DownloadClient::didReceiveResponse): Attempt to create the
2438         destination file before the intermediate file. Fail here if the file
2439         exists and overwrite is not allowed, so we don't erroneously fire the
2440         didCreateDestination event or waste time downloading the file when we
2441         know the download will fail.
2442         (WebKit::DownloadClient::didFinishLoading): Unconditionally overwrite
2443         the empty destination file.
2444         (WebKit::DownloadClient::cancel): Call deleteFilesIfNeeded.
2445         (WebKit::DownloadClient::deleteIntermediateFileInNeeded): Deleted.
2446
2447 2014-09-03  David Kilzer  <ddkilzer@apple.com>
2448
2449         JavaScriptCore should build with newer clang
2450         <http://webkit.org/b/136002>
2451         <rdar://problem/18020616>
2452
2453         Reviewed by Geoffrey Garen.
2454
2455         * Shared/API/c/WKString.cpp:
2456         (WKStringCreateWithJSString): Add NULL check to prevent
2457         WebKitTestRunner crashes that relied on the previous |this|
2458         behavior where NULL values were allowed.
2459
2460 2014-09-03  Enrica Casucci  <enrica@apple.com>
2461
2462         Remove PLATFORM(IOS) from WebCore/editing (Part 1).
2463         https://bugs.webkit.org/show_bug.cgi?id=136474
2464
2465         Reviewed by Tim Horton.
2466
2467         * UIProcess/WebEditCommandProxy.cpp:
2468         (WebKit::WebEditCommandProxy::nameForEditAction):
2469
2470 2014-09-03  Yongjun Zhang  <yongjun_zhang@apple.com>
2471
2472         https://bugs.webkit.org/show_bug.cgi?id=136395
2473         Need a way to get userAgent from WKWebView.
2474
2475         Add _userAgent property to return user agent string from WKWebView.
2476
2477         Reviewed by Anders Carlsson.
2478
2479         * UIProcess/API/Cocoa/WKWebView.mm:
2480         (-[WKWebView _userAgent]):
2481         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
2482
2483 2014-09-02  Maciej Stachowiak  <mjs@apple.com>
2484
2485         Clean up naming for and slightly refactor legacy video fullscreen support
2486         https://bugs.webkit.org/show_bug.cgi?id=136446
2487
2488         Reviewed by Jer Noble.
2489
2490         Key changes:
2491         supportsFullscreenForNode(Node*) --> supportsVideoFullscreen()
2492         enterFullscreenForNode(Node*) --> enterVideoFullscreenForVideoElement(HTMLVideoElement*)
2493         exitFullscreenForNode(Node*) --> exitVideoFullscreen()
2494         
2495         The old versions had unnecessary parameters, did not clearly distinguish their purpose
2496         from enterFullscreenForElement and friends, and wrongly claimed generality to all Nodes.
2497         Also changed many other places to use HTMLVideoElement* instead of Node* or 
2498         HTMLMediaElement* when they were in fact only used for video elements and would only
2499         work for such.
2500
2501         Legacy video fullscreen in WebKit2 is only supported on iOS (for other ports that support
2502         it, it's WK1 only).
2503         
2504         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2505         (WebKit::WebChromeClient::supportsVideoFullscreen): Adjust for renames as
2506         mentioned.
2507         (WebKit::WebChromeClient::enterVideoFullscreenForVideoElement): ditto
2508         (WebKit::WebChromeClient::exitVideoFullscreen): ditto
2509         * WebProcess/WebCoreSupport/WebChromeClient.h:
2510         * WebProcess/ios/WebVideoFullscreenManager.h:
2511         * WebProcess/ios/WebVideoFullscreenManager.mm:
2512         (WebKit::clientRectForElement): No need to be generic to node.
2513         (WebKit::WebVideoFullscreenManager::supportsVideoFullscreen): Adjust for the
2514         main refactoring. Also change m_node to m_videoElement with appropriate type change.
2515         (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): ditto
2516         (WebKit::WebVideoFullscreenManager::exitVideoFullscreen): ditto
2517         (WebKit::WebVideoFullscreenManager::didEnterFullscreen): ditto 
2518         (WebKit::WebVideoFullscreenManager::didExitFullscreen): ditto
2519         (WebKit::WebVideoFullscreenManager::didCleanupFullscreen): ditto
2520
2521 2014-09-03  Dan Bernstein  <mitz@apple.com>
2522
2523         Get rid of HIGH_DPI_CANVAS leftovers
2524         https://bugs.webkit.org/show_bug.cgi?id=136491
2525
2526         Reviewed by Benjamin Poulain.
2527
2528         * Configurations/FeatureDefines.xcconfig: Removed definition of ENABLE_HIGH_DPI_CANVAS
2529         and removed it from FEATURE_DEFINES.
2530
2531 2014-09-02  Yongjun Zhang  <yongjun_zhang@apple.com>
2532
2533         Pass the resource identifier in willSendRequest callback.
2534         https://bugs.webkit.org/show_bug.cgi?id=136325
2535
2536         Reviewed by Dan Bernstein.
2537
2538         Add two new delegate methods webProcessPlugInBrowserContextController:frame:willSendRequestForResource:request:redirectResponse:
2539         and webProcessPlugInBrowserContextController:frame:didInitiateLoadForResource:request:pageIsProvisionallyLoading:. We will remove
2540         the old willSendRequest and didInitiateLoadForResource when clients adopt the new methods.
2541
2542         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
2543         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
2544         (willSendRequestForFrame):
2545         (didInitiateLoadForResource):
2546
2547 2014-09-02  Philippe Normand  <pnormand@igalia.com>
2548
2549         Unreviewed, GTK build fix after r173163.
2550
2551         * UIProcess/API/gtk/PageClientImpl.cpp:
2552         (WebKit::PageClientImpl::createDrawingAreaProxy):
2553         * UIProcess/DrawingAreaProxyImpl.cpp:
2554         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
2555         (WebKit::DrawingAreaProxyImpl::update):
2556         (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
2557         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
2558         (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
2559         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
2560         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
2561         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
2562         (WebKit::DrawingAreaProxyImpl::updateAcceleratedCompositingMode):
2563         * UIProcess/DrawingAreaProxyImpl.h:
2564
2565 2014-09-01  Timothy Horton  <timothy_horton@apple.com>
2566
2567         Fix the iOS build.
2568
2569         * UIProcess/ios/WKContentView.mm:
2570         (-[WKContentView _createDrawingAreaProxy]):
2571         Whoops.
2572
2573 2014-09-01  Ryuan Choi  <ryuan.choi@gmail.com>
2574
2575         Build break on the EFL port since r173163
2576         https://bugs.webkit.org/show_bug.cgi?id=136443
2577
2578         Unreviewed build fix.
2579
2580         * UIProcess/BackingStore.cpp:
2581         (WebKit::BackingStore::BackingStore):
2582         * UIProcess/BackingStore.h:
2583         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
2584         (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy):
2585         (WebKit::CoordinatedDrawingAreaProxy::updateViewport):
2586         (WebKit::CoordinatedDrawingAreaProxy::contentsRect):
2587         (WebKit::CoordinatedDrawingAreaProxy::update):
2588         (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState):
2589         (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate):
2590         (WebKit::CoordinatedDrawingAreaProxy::sendUpdateBackingStoreState):
2591         (WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
2592         (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode):
2593         (WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode):
2594         (WebKit::CoordinatedDrawingAreaProxy::updateAcceleratedCompositingMode):
2595         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
2596         (WebKit::CoordinatedDrawingAreaProxy::page):
2597         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2598         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
2599         (WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
2600         (WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
2601         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
2602         (WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
2603         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
2604         (WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):
2605         * UIProcess/CoordinatedGraphics/WebView.cpp:
2606         (WebKit::WebView::createDrawingAreaProxy):
2607         * UIProcess/cairo/BackingStoreCairo.cpp:
2608         (WebKit::BackingStore::incorporateUpdate):
2609
2610 2014-09-01  Tim Horton  <timothy_horton@apple.com>
2611
2612         Remove two unused WebKit2 PDF-related preferences
2613         https://bugs.webkit.org/show_bug.cgi?id=136441
2614
2615         Reviewed by Dan Bernstein.
2616
2617         * Shared/WebPreferencesDefinitions.h:
2618         Move the macro arguments comment down near where the macros are being used.
2619         No need to check both PLATFORM(IOS) and PLATFORM(IOS_SIMULATOR); the second can't be true without the first.
2620         These two PDF preferences are long-unused; if we bring back their functionality,
2621         we'll bring back the preferences.
2622
2623 2014-09-01  Tim Horton  <timothy_horton@apple.com>
2624
2625         DrawingAreaProxy and friends can hold on to WebPageProxy by reference
2626         https://bugs.webkit.org/show_bug.cgi?id=136440
2627
2628         Reviewed by Dan Bernstein.
2629
2630         * UIProcess/API/mac/WKView.mm:
2631         (-[WKView _createDrawingAreaProxy]):
2632         * UIProcess/DrawingAreaProxy.cpp:
2633         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
2634         (WebKit::DrawingAreaProxy::~DrawingAreaProxy):
2635         (WebKit::DrawingAreaProxy::setExposedRect):
2636         (WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):
2637         * UIProcess/DrawingAreaProxy.h:
2638         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
2639         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
2640         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
2641         (WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
2642         (WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
2643         (WebKit::RemoteLayerTreeDrawingAreaProxy::deviceScaleFactorDidChange):
2644         (WebKit::RemoteLayerTreeDrawingAreaProxy::scaledExposedRect):
2645         (WebKit::RemoteLayerTreeDrawingAreaProxy::sendUpdateGeometry):
2646         (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
2647         (WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidStart):
2648         (WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidEnd):
2649         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
2650         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorScale):
2651         (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
2652         (WebKit::RemoteLayerTreeDrawingAreaProxy::didRefreshDisplay):
2653         (WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
2654         (WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):
2655         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
2656         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
2657         (WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
2658         (WebKit::TiledCoreAnimationDrawingAreaProxy::deviceScaleFactorDidChange):
2659         (WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
2660         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
2661         (WebKit::TiledCoreAnimationDrawingAreaProxy::colorSpaceDidChange):
2662         (WebKit::TiledCoreAnimationDrawingAreaProxy::minimumLayoutSizeDidChange):
2663         (WebKit::TiledCoreAnimationDrawingAreaProxy::enterAcceleratedCompositingMode):
2664         (WebKit::TiledCoreAnimationDrawingAreaProxy::updateAcceleratedCompositingMode):
2665         (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
2666         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
2667         (WebKit::TiledCoreAnimationDrawingAreaProxy::intrinsicContentSizeDidChange):
2668         (WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
2669         (WebKit::TiledCoreAnimationDrawingAreaProxy::adjustTransientZoom):
2670         (WebKit::TiledCoreAnimationDrawingAreaProxy::commitTransientZoom):
2671
2672 2014-09-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2673
2674         [CMAKE] Build warning by INTERFACE_LINK_LIBRARIES
2675         https://bugs.webkit.org/show_bug.cgi?id=136194
2676
2677         Reviewed by Csaba Osztrogonác.
2678
2679         Set the LINK_INTERFACE_LIBRARIES target property on the top level CMakeLists.txt.
2680
2681         * CMakeLists.txt:
2682
2683 2014-09-01  Michael Catanzaro  <mcatanzaro@igalia.com>
2684
2685         [SOUP] WebKitDownload cannot overwrite existing file
2686         https://bugs.webkit.org/show_bug.cgi?id=136322
2687
2688         Reviewed by Carlos Garcia Campos.
2689
2690         * Shared/Downloads/soup/DownloadSoup.cpp:
2691         (WebKit::DownloadClient::didReceiveResponse): pass a member variable
2692         to Download::decideDestinationWithSuggestedFilename instead of a
2693         temporary bool, so we can use the result in didFinishLoading.
2694         (WebKit::DownloadClient::didFinishLoading): overwrite the destination
2695         if Download::decideDestinationWithSuggestedFilename determined we
2696         should do so.
2697
2698 2014-08-31  Tim Horton  <timothy_horton@apple.com>
2699
2700         Occasional crashes (null deref) under ViewGestureController::endMagnificationGesture
2701         https://bugs.webkit.org/show_bug.cgi?id=136409
2702         <rdar://problem/18104748>
2703
2704         Reviewed by Dan Bernstein.
2705
2706         * UIProcess/mac/ViewGestureControllerMac.mm:
2707         (WebKit::ViewGestureController::endMagnificationGesture):
2708         Null-check DrawingArea.
2709
2710 2014-08-26  Maciej Stachowiak  <mjs@apple.com>
2711
2712         Use RetainPtr::autorelease in some places where it seems appropriate
2713         https://bugs.webkit.org/show_bug.cgi?id=136280
2714
2715         Reviewed by Darin Adler.
2716
2717         * Shared/Cocoa/WKNSURLExtras.mm:
2718         (urlWithWTFString): Use autorelease() instead of CFBridgingRelease(leakRef())
2719
2720 2014-08-29  Tim Horton  <timothy_horton@apple.com>
2721
2722         More occasional crashes in ServicesController::resfreshExistingServices
2723         https://bugs.webkit.org/show_bug.cgi?id=136387
2724         <rdar://problem/18167200>
2725
2726         Reviewed by Dan Bernstein.
2727
2728         * UIProcess/mac/ServicesController.mm:
2729         (WebKit::ServicesController::ServicesController):
2730         Speculative fix; if this block is called synchronously, we'll end up
2731         calling back into ::shared() before the NeverDestroyed is initialized,
2732         ending up with two ServicesControllers.
2733
2734 2014-08-29  Alexey Proskuryakov  <ap@apple.com>
2735
2736         Crashes in IPC code under VisitedLinkProvider::pendingVisitedLinksTimerFired
2737         https://bugs.webkit.org/show_bug.cgi?id=136384
2738         rdar://problem/16991213
2739
2740         Reviewed by Sam Weinig.
2741
2742         VisitedLinkProvider process tracking relied on a combination of WebPageProxy process
2743         lifecycle notifications and checking process state. As evidenced by multiple FIXMEs,
2744         these are not yet as reliable as they should be.
2745         
2746         Changed to unregister a process when it closes, not when it no longer has any pages
2747         using the particular VisitedLinkProvider or WebUserContentControllerProxy. This
2748         is a deoptimization that should not matter in practice.
2749
2750         * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
2751         (WebKit::WebUserContentControllerProxy::~WebUserContentControllerProxy):
2752         (WebKit::WebUserContentControllerProxy::removeProcess):
2753         (WebKit::WebUserContentControllerProxy::addUserScript):
2754         (WebKit::WebUserContentControllerProxy::removeAllUserScripts):
2755         (WebKit::WebUserContentControllerProxy::addUserStyleSheet):
2756         (WebKit::WebUserContentControllerProxy::removeAllUserStyleSheets):
2757         (WebKit::WebUserContentControllerProxy::addUserScriptMessageHandler):
2758         (WebKit::WebUserContentControllerProxy::removeUserMessageHandlerForName):
2759         * UIProcess/UserContent/WebUserContentControllerProxy.h:
2760         * UIProcess/VisitedLinkProvider.cpp:
2761         (WebKit::VisitedLinkProvider::~VisitedLinkProvider):
2762         (WebKit::VisitedLinkProvider::removeProcess):
2763         (WebKit::VisitedLinkProvider::removeAll):
2764         (WebKit::VisitedLinkProvider::pendingVisitedLinksTimerFired):
2765         (WebKit::VisitedLinkProvider::resizeTable):
2766         * UIProcess/VisitedLinkProvider.h:
2767         * UIProcess/WebPageProxy.cpp:
2768         (WebKit::WebPageProxy::WebPageProxy):
2769         (WebKit::WebPageProxy::close):
2770         (WebKit::WebPageProxy::processDidFinishLaunching):
2771         (WebKit::WebPageProxy::resetStateAfterProcessExited):
2772         * UIProcess/WebProcessProxy.cpp:
2773         (WebKit::WebProcessProxy::disconnect):
2774         (WebKit::WebProcessProxy::addVisitedLinkProvider):
2775         (WebKit::WebProcessProxy::addWebUserContentControllerProxy):
2776         (WebKit::WebProcessProxy::didDestroyVisitedLinkProvider):
2777         (WebKit::WebProcessProxy::didDestroyWebUserContentControllerProxy):
2778         * UIProcess/WebProcessProxy.h:
2779
2780 2014-08-29  Alexey Proskuryakov  <ap@apple.com>
2781
2782         WebPageProxy::close() is a no-op for terminated processes
2783         https://bugs.webkit.org/show_bug.cgi?id=136378
2784         Related to <rdar://problem/16991213> and to <rdar://problem/17095600>
2785
2786         Reviewed by Brady Eidson.
2787
2788         Also fixes issues that got uncovered after making close() work.
2789
2790         * UIProcess/WebInspectorProxy.cpp: (WebKit::WebInspectorProxy::invalidate): Don't
2791         close the page, because it makes no sense, and causes an assertion now. Previosly,
2792         this was OK because the page was invalid already, and close() was a no-op.
2793
2794         * UIProcess/WebPageProxy.cpp:
2795         (WebKit::WebPageProxy::~WebPageProxy): Added some assertions to catch invalidation
2796         issues earlier.
2797         (WebKit::WebPageProxy::reattachToWebProcess): Make it an invariant that a page's
2798         process always has a message receiver for it, until close() removes it.
2799         (WebKit::WebPageProxy::close): Make this function work for all open pages, whether
2800         they have a page or not.
2801         (WebKit::WebPageProxy::processDidFinishLaunching): Added an asserion that process
2802         agrees about its state.
2803         (WebKit::WebPageProxy::resetStateAfterProcessExited): Don't remove a message receiver,
2804         we now only do this in reattach or close.
2805
2806 2014-08-29  Antti Koivisto  <antti@apple.com>
2807
2808         Remove NetworkResourceLoaderClient and subclasses.
2809         https://bugs.webkit.org/show_bug.cgi?id=136370
2810
2811         Reviewed by Darin Adler.
2812
2813         This code is needlessly abstract. Move what logic these classes have to NetworkResourceLoader.
2814
2815         * NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Removed.
2816         * NetworkProcess/AsynchronousNetworkLoaderClient.h: Removed.
2817         * NetworkProcess/NetworkLoaderClient.h: Removed.
2818         * NetworkProcess/NetworkResourceLoader.cpp:
2819         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2820         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
2821         (WebKit::NetworkResourceLoader::isSynchronous):
2822         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
2823         (WebKit::NetworkResourceLoader::didReceiveBuffer):
2824         (WebKit::NetworkResourceLoader::didFinishLoading):
2825         (WebKit::NetworkResourceLoader::didFail):
2826         (WebKit::NetworkResourceLoader::willSendRequestAsync):
2827         (WebKit::NetworkResourceLoader::didSendData):
2828         (WebKit::NetworkResourceLoader::sendBuffer):
2829         (WebKit::NetworkResourceLoader::sendReplyToSynchronousRequest):
2830         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
2831         * NetworkProcess/NetworkResourceLoader.h:
2832         (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
2833         * NetworkProcess/SynchronousNetworkLoaderClient.cpp: Removed.
2834         * NetworkProcess/SynchronousNetworkLoaderClient.h: Removed.
2835         * WebKit2.xcodeproj/project.pbxproj:
2836
2837 2014-08-29  Csaba Osztrogonác  <ossy@webkit.org>
2838
2839         Unreviwed, remove empty directories.
2840
2841         * PluginProcess/qt: Removed.
2842         * Shared/API/c/qt: Removed.
2843         * Shared/Downloads/qt: Removed.
2844         * Shared/FileAPI: Removed.
2845         * Shared/qt: Removed.
2846         * UIProcess/API/C/qt: Removed.
2847         * UIProcess/API/cpp/qt: Removed.
2848         * UIProcess/API/qt: Removed.
2849         * UIProcess/API/qt/raw: Removed.
2850         * UIProcess/API/qt/tests: Removed.
2851         * UIProcess/API/qt/tests/html: Removed.
2852         * UIProcess/API/qt/tests/html/resources: Removed.
2853         * UIProcess/API/qt/tests/inspectorserver: Removed.
2854         * UIProcess/API/qt/tests/publicapi: Removed.
2855         * UIProcess/API/qt/tests/qmltests: Removed.
2856         * UIProcess/API/qt/tests/qmltests/DesktopBehavior: Removed.
2857         * UIProcess/API/qt/tests/qmltests/WebView: Removed.
2858         * UIProcess/API/qt/tests/qmltests/common: Removed.
2859         * UIProcess/API/qt/tests/qquickwebview: Removed.
2860         * UIProcess/API/qt/tests/qrawwebview: Removed.
2861         * UIProcess/InspectorServer/qt: Removed.
2862         * UIProcess/Launcher/qt: Removed.
2863         * UIProcess/Plugins/qt: Removed.
2864         * UIProcess/SharedWorkers: Removed.
2865         * UIProcess/qt: Removed.
2866         * WebProcess/Cookies/qt: Removed.
2867         * WebProcess/Downloads: Removed.
2868         * WebProcess/IndexedDB: Removed.
2869         * WebProcess/InjectedBundle/qt: Removed.
2870         * WebProcess/NetworkInfo: Removed.
2871         * WebProcess/Plugins/Netscape/qt: Removed.
2872         * WebProcess/WebCoreSupport/qt: Removed.
2873         * WebProcess/WebPage/qt: Removed.
2874         * WebProcess/qt: Removed.
2875         * qt: Removed.
2876
2877 2014-08-28  Tim Horton  <timothy_horton@apple.com>
2878
2879         _setDidMoveSwipeSnapshotCallback's block should only be called if the snapshot is going to move
2880         https://bugs.webkit.org/show_bug.cgi?id=136354
2881         <rdar://problem/18167791>
2882
2883         Reviewed by Simon Fraser.
2884
2885         * UIProcess/API/Cocoa/WKViewPrivate.h:
2886         Update the comment to note the new behavior.
2887
2888         * UIProcess/mac/ViewGestureControllerMac.mm:
2889         (WebKit::ViewGestureController::beginSwipeGesture):
2890         Don't call the block until the snapshot is actually moving (if the snapshot
2891         never moves because it's behind the live view, don't call the block at all).
2892
2893 2014-08-28  Tim Horton  <timothy_horton@apple.com>
2894
2895         Occasional thread-safety-related crashes on the ServicesController queue
2896         https://bugs.webkit.org/show_bug.cgi?id=136356
2897         <rdar://problem/18045685>
2898
2899         Reviewed by Dan Bernstein.
2900
2901         * UIProcess/mac/ServicesController.mm:
2902         (WebKit::hasCompatibleServicesForItems):
2903         Added. Check directly with NSSharingService if we have any services for the given items.
2904         We should eventually check Viewer and Editor services separately so the Web process can
2905         be smarter about when it shows the overlay, but for now this maintains the existing behavior.
2906
2907         (WebKit::ServicesController::refreshExistingServices):
2908         Make use of hasCompatibleServicesForItems instead of having NSSharingServicePicker construct NSMenus.
2909
2910 2014-08-28  Tim Horton  <timothy_horton@apple.com>
2911
2912         WebKit2 doesn't support viewer services that accept image attachments
2913         https://bugs.webkit.org/show_bug.cgi?id=136349
2914         <rdar://problem/18164606>
2915
2916         Reviewed by Brady Eidson.
2917
2918         * Shared/WebProcessCreationParameters.cpp:
2919         (WebKit::WebProcessCreationParameters::encode):
2920         (WebKit::WebProcessCreationParameters::decode):
2921         Encode the already-existing parameter.
2922
2923 2014-08-28  Zalan Bujtas  <zalan@apple.com>
2924
2925         Subpixel layout: Remove unused pixel snapping functions.
2926         https://bugs.webkit.org/show_bug.cgi?id=136341
2927
2928         Reviewed by Simon Fraser.
2929
2930         Let's not encourage integral snapping by having these functions around.
2931         
2932         No change in functionality.
2933
2934         * Shared/WebRenderObject.cpp:
2935         (WebKit::WebRenderObject::WebRenderObject):
2936
2937 2014-08-27  Enrica Casucci  <enrica@apple.com>
2938
2939         textStylingAtPosition returns incorrect values after executing toggleBold, toggleItalic and toggleUnderline.
2940         https://bugs.webkit.org/show_bug.cgi?id=136323
2941         rdar://problem/18141964
2942
2943         Reviewed by Antti Koivisto.
2944
2945         For underline style we need to check typingStyle first and use that information to populate
2946         the dictionary. If there is no typing style we can use the render style.
2947         We also need to update the editor state for the toggle commands to reflect the state in the UIProcess
2948         even for commands that don't change the selection.
2949
2950         * WebProcess/WebPage/WebPage.cpp:
2951         (WebKit::WebPage::editorState):
2952         * WebProcess/WebPage/ios/WebPageIOS.mm:
2953         (WebKit::WebPage::executeEditCommandWithCallback):
2954
2955 2014-08-28  Carlos Garcia Campos  <cgarcia@igalia.com>
2956
2957         [GTK] Add webkit_uri_response_get_http_headers to WebKit2 GTK+ API
2958         https://bugs.webkit.org/show_bug.cgi?id=136248
2959
2960         Reviewed by Gustavo Noronha Silva.
2961
2962         Add webkit_uri_response_get_http_headers() that returns the HTTP
2963         headers as a SoupMessageHeaders* like webkit_uri_request_get_http_headers().
2964
2965         * UIProcess/API/gtk/WebKitURIResponse.cpp:
2966         (webkitURIResponseGetProperty): Add http-headers property getter.
2967         (webkit_uri_response_class_init): Add http-headers property.
2968         (webkit_uri_response_get_http_headers): Return the HTTP headers as
2969         a SoupMessageHeaders* or NULL for non HTTP responses.
2970         * UIProcess/API/gtk/WebKitURIResponse.h:
2971         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
2972
2973 2014-08-27  Zalan Bujtas  <zalan@apple.com>
2974
2975         Subpixel layout: Rename LayoutRect's device pixel snapping functions.
2976         https://bugs.webkit.org/show_bug.cgi?id=136319
2977
2978         Reviewed by Simon Fraser.
2979
2980         From pixelSnappedForPainting() to snapRectToDevicePixels() and 
2981         pixelSnappedIntRect*() to snappedIntRect*().
2982
2983         No change in functionality.
2984
2985         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2986         (WebKit::InjectedBundleNodeHandle::renderedImage):
2987         * WebProcess/WebPage/WebPage.cpp:
2988         (WebKit::WebPage::snapshotNode):
2989         * WebProcess/WebPage/mac/ServicesOverlayController.mm:
2990         (WebKit::ServicesOverlayController::buildSelectionHighlight):
2991
2992 2014-08-27  Zalan Bujtas  <zalan@apple.com>
2993
2994         Subpixel layout: Rename FloatPoint/FloatRect device pixel snapping functions.
2995         https://bugs.webkit.org/show_bug.cgi?id=136314
2996
2997         Reviewed by Simon Fraser.
2998
2999         From *edToDevicePixels() to *PointToDevicePixels() (* = floor/round/ceil)
3000
3001         EnclosedIntRect -> enclosingIntRect() changes functionality for InspectorOverlay painting,
3002         but currently untestable.
3003
3004         * UIProcess/ios/WKContentViewInteraction.mm:
3005         (-[WKContentView _updateTapHighlight]):
3006
3007 2014-08-27  Tim Horton  <timothy_horton@apple.com>
3008
3009         WebKit2 swipe gesture should report the position of the snapshot to the client
3010         https://bugs.webkit.org/show_bug.cgi?id=136308
3011         rdar://problem/18105827
3012
3013         Reviewed by Simon Fraser.
3014
3015         * UIProcess/API/Cocoa/WKViewPrivate.h:
3016         * UIProcess/API/mac/WKView.mm:
3017         (-[WKView _setDidMoveSwipeSnapshotCallback:]):
3018         Add _setDidMoveSwipeSnapshotCallback, and plumb it to ViewGestureController.
3019         Callers provide a block which is called whenever ViewGestureController moves the
3020         swipe *snapshot* layer around.
3021
3022         * UIProcess/PageClient.h:
3023         * UIProcess/WebPageProxy.h:
3024         * UIProcess/mac/PageClientImpl.h:
3025         * UIProcess/mac/PageClientImpl.mm:
3026         (WebKit::PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates):
3027         * UIProcess/mac/WebPageProxyMac.mm:
3028         (WebKit::WebPageProxy::boundsOfLayerInLayerBackedWindowCoordinates):
3029         Expose a Mac-only way to get the bounds of a given CALayer in window coordinates,
3030         respecting transforms. This only works for layer-backed windows because
3031         it uses CA in order to do the mapping respecting transforms.
3032
3033         * UIProcess/mac/ViewGestureController.h:
3034         * UIProcess/mac/ViewGestureControllerMac.mm:
3035         (WebKit::ViewGestureController::ViewGestureController):
3036         (WebKit::ViewGestureController::~ViewGestureController):
3037         (WebKit::ViewGestureController::setDidMoveSwipeSnapshotCallback):
3038         Do the Block_copy and Block_release dance to keep our copy of the callback block.
3039
3040         (WebKit::ViewGestureController::beginSwipeGesture):
3041         (WebKit::ViewGestureController::handleSwipeGesture):
3042         (WebKit::ViewGestureController::didMoveSwipeSnapshotLayer):
3043         When the swipe snapshot layer moves around, call the block.
3044
3045 2014-08-27  Tim Horton  <timothy_horton@apple.com>
3046
3047         Occasional crashes in commitTransientZoom's transaction completion block
3048         https://bugs.webkit.org/show_bug.cgi?id=136309
3049         <rdar://problem/17215064>
3050
3051         Reviewed by Dan Bernstein.
3052
3053         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3054         (WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
3055         Hold a reference to zoomLayer and the WebPage. It's possible that either
3056         of these things could have gone away by the time the transaction is committed.
3057
3058 2014-08-27  Benjamin Poulain  <bpoulain@apple.com>
3059
3060         [iOS WK2] Provide a delegate callback to skip Geolocation authorization per page for WebApp
3061         https://bugs.webkit.org/show_bug.cgi?id=136243
3062
3063         Reviewed by Sam Weinig.
3064
3065         Just ask the UI if the authorization dialog needs to be skipped.
3066
3067         * UIProcess/API/Cocoa/WKUIDelegate.h:
3068         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
3069         * UIProcess/ios/PageClientImplIOS.mm:
3070         (WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest):
3071
3072         * UIProcess/ios/WKContentView.h:
3073         * UIProcess/ios/WKContentView.mm:
3074         (-[WKContentView _decidePolicyForGeolocationRequestFromOrigin:frame:request:]): Deleted.
3075         The code in WKContentView only exists due to legacy. Instead, the PageClient dispatch the request
3076         to the GeolocationProvider directly.
3077
3078         * UIProcess/ios/WKGeolocationProviderIOS.h:
3079         * UIProcess/ios/WKGeolocationProviderIOS.mm:
3080         (-[WKGeolocationProviderIOS decidePolicyForGeolocationRequestFromOrigin:frame:request:view:]):
3081         (-[WKGeolocationProviderIOS geolocationAuthorizationGranted]):
3082         (-[WKGeolocationProviderIOS positionChanged:]):
3083         (-[WKGeolocationProviderIOS decidePolicyForGeolocationRequestFromOrigin:frame:request:window:]): Deleted.
3084
3085 2014-08-27  Beth Dakin  <bdakin@apple.com>
3086
3087         overflow:scroll elements should not latch to the body if the body is 
3088         overflow:hidden
3089         https://bugs.webkit.org/show_bug.cgi?id=136273
3090
3091         Reviewed by Darin Adler.
3092
3093         New ScrollabeArea virtual function.
3094         * WebProcess/Plugins/PDF/PDFPlugin.h:
3095
3096 2014-08-26  Matt Lilek  <mrl@apple.com>
3097
3098         Add WebKit SPI to control the navigator.standalone property
3099         https://bugs.webkit.org/show_bug.cgi?id=136189
3100
3101         Reviewed by Andy Estes.
3102
3103         Add a property to WKPreferences that allows toggling this setting.
3104
3105         * UIProcess/API/Cocoa/WKPreferences.mm:
3106         (-[WKPreferences _isStandalone]):
3107         (-[WKPreferences _setStandalone:]):
3108         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
3109
3110 2014-08-26  Joseph Pecoraro  <pecoraro@apple.com>
3111
3112         FileReader cannot read files selected with <input type="file"> in iOS 8
3113         https://bugs.webkit.org/show_bug.cgi?id=136117
3114
3115         Reviewed by Alexey Proskuryakov.
3116
3117         * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
3118         Correct an overzealous deny that was accidentally denying all
3119         com.apple.app-sandbox.read extensions instead of just the ones
3120         in Application bundles it was trying to deny.
3121
3122 2014-08-26  Tim Horton  <timothy_horton@apple.com>
3123
3124         Crashes in ViewGestureController::beginSwipeGesture when swiping in rapid succession
3125         https://bugs.webkit.org/show_bug.cgi?id=136271
3126         <rdar://problem/17923694>
3127
3128         Reviewed by Simon Fraser.
3129
3130         It was possible to get into trackSwipeGesture while another swipe was still
3131         occurring, because the guard against this happening depended on m_pendingSwipeReason
3132         never being set while a swipe was occurring. However, if the very first scroll event
3133         had sufficient magnitude, we would still set m_pendingSwipeReason to InsufficientMagnitude,
3134         and then *never clear it*, leading to a path around the guard against multiple live swipes.
3135         This in turn allowed stale layers in m_liveSwipeLayers, which lead to the crash.
3136
3137         * UIProcess/mac/ViewGestureControllerMac.mm:
3138         (WebKit::ViewGestureController::handleScrollWheelEvent):
3139         Don't unset m_pendingSwipeReason before calling trackSwipeGesture;
3140         trackSwipeGesture will do it itself.
3141
3142         Don't set m_pendingSwipeReason to InsufficientMagnitude
3143         if the event actually *has* sufficient magnitude to start a swipe.
3144
3145         (WebKit::ViewGestureController::trackSwipeGesture):
3146         Assert that we don't have an active gesture while starting a swipe.
3147
3148         Reset m_pendingSwipeReason, because the swipe is no longer pending!
3149
3150 2014-08-26  Andy Estes  <aestes@apple.com>
3151
3152         [Cocoa] Some projects are incorrectly installed to $BUILT_PRODUCTS_DIR
3153         https://bugs.webkit.org/show_bug.cgi?id=136267
3154
3155         Reviewed by Dan Bernstein.
3156
3157         INSTALL_PATH was set to $BUILT_PRODUCTS_DIR for engineering configurations in r20225 as part of a build fix.
3158         Not only is this no longer necessary to build, but it causes built products to be incorrectly installed in
3159         engineering configurations.
3160
3161         Remove the setting of INSTALL_PATH from the pbxproj file so that the value specified in the xcconfig files is
3162         used instead.
3163
3164         * WebKit2.xcodeproj/project.pbxproj:
3165
3166 2014-08-25  Maciej Stachowiak  <mjs@apple.com>
3167
3168         Replace use of WKCopyCFLocalizationPreferredName with NSLocale public API
3169         https://bugs.webkit.org/show_bug.cgi?id=136082
3170
3171         Reviewed by Alexey Proskuryakov.
3172
3173         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
3174         (WebKit::connectToService): Remove accidental leftover retrieval
3175         of the localization.
3176         (WebKit::createProcess): Get current localization name from
3177         CFBundle API instead of using SPI.
3178         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3179         (InitWebCoreSystemInterface): Remove mention of WKCopyCFLocalizationPreferredName
3180         * mac/WebKit2.order: ditto
3181
3182 2014-08-26  Dana Burkart  <dburkart@apple.com>
3183
3184         The UNUSED_PARAM macros in ServicesOverlayController.mm are causing ASan build failures.
3185         https://bugs.webkit.org/show_bug.cgi?id=136262
3186
3187         Reviewed by David Kilzer.
3188
3189         * WebProcess/WebPage/mac/ServicesOverlayController.mm:
3190         (WebKit::ServicesOverlayController::selectionRectsDidChange):
3191         (WebKit::ServicesOverlayController::selectedTelephoneNumberRangesChanged):
3192
3193 2014-08-26  Csaba Osztrogonác  <ossy@webkit.org>
3194
3195         [EFL] URTBF after r172966.
3196
3197         * UIProcess/efl/WebViewEfl.h:
3198
3199 2014-08-26  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3200
3201         REGRESSION(r172966) [GTK] Build broken.
3202
3203         Unreviewed build fix after r172966.
3204
3205         * UIProcess/API/gtk/PageClientImpl.cpp:
3206         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
3207         * UIProcess/API/gtk/PageClientImpl.h:
3208
3209 2014-08-26  Simon Fraser  <simon.fraser@apple.com>
3210
3211         Crashes in hit testing under WebPage::determinePrimarySnapshottedPlugIn()
3212         https://bugs.webkit.org/show_bug.cgi?id=136240
3213         rdar://problem/17231462
3214
3215         Reviewed by Darin Adler.
3216         
3217         determinePrimarySnapshottedPlugIn() does render tree hit testing, so needs
3218         to ensure that layout is up-to-date.
3219
3220         * WebProcess/WebPage/WebPage.cpp:
3221         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
3222
3223 2014-08-26  Tim Horton  <timothy_horton@apple.com>
3224
3225         REGRESSION (r172771): Amazon product page becomes unresponsive after swiping back to it
3226         https://bugs.webkit.org/show_bug.cgi?id=136260
3227         <rdar://problem/18107826>
3228
3229         Reviewed by Dan Bernstein.
3230
3231         Previously, when a swipe ended up performing a same-document navigation,
3232         we would never get didFinishLoadForMainFrame nor didFirstVisuallyNonEmptyLayoutForMainFrame
3233         nor would we even get didHitRenderTreeSizeThreshold in all cases, so we would never
3234         remove the swipe snapshot. Previous implementations removed the snapshot on
3235         didSameDocumentNavigation for the main frame if the navigation type was Replace or Pop,
3236         so we will match that behavior.
3237
3238         Also, reinstate the watchdog that starts at swipe-end which would have prevented
3239         this bug from forever breaking the view it was associated with.
3240
3241         Also, defend against removing the snapshot before the swipe has finished (before
3242         we have even caused the navigation that we're watching for the effects of).
3243
3244         * UIProcess/API/mac/WKView.mm:
3245         (-[WKView _didSameDocumentNavigationForMainFrame:]):
3246         * UIProcess/API/mac/WKViewInternal.h:
3247         * UIProcess/PageClient.h:
3248         * UIProcess/WebPageProxy.cpp:
3249         (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
3250         * UIProcess/ios/PageClientImplIOS.h:
3251         * UIProcess/ios/PageClientImplIOS.mm:
3252         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
3253         * UIProcess/mac/PageClientImpl.h:
3254         * UIProcess/mac/PageClientImpl.mm:
3255         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
3256         Plumb main-frame same-document navigation notification from WebPageProxy
3257         to ViewGestureControllerMac via PageClient and WKView.
3258
3259         * UIProcess/mac/ViewGestureController.h:
3260         * UIProcess/mac/ViewGestureControllerMac.mm:
3261         (WebKit::ViewGestureController::ViewGestureController):
3262         (WebKit::ViewGestureController::beginSwipeGesture):
3263         (WebKit::ViewGestureController::endSwipeGesture):
3264         Keep track of whether a swipe is currently occurring. We can't use
3265         activeGestureType for this because the swipe currently remains the "active"
3266         gesture until the snapshot is removed.
3267
3268         Reintroduce the old swipeWatchdogTimer (and rename the shorter timer that starts
3269         when we get a visually non-empty layout) so that we will always remove the
3270         snapshot after 5 seconds, even if we haven't committed the load.
3271         This could lead to flashing back to the old content if we fail to get a single
3272         byte for 5 seconds, but that is a rare case and should eventually get additional
3273         special treatment (dropping the tiles until we do get content, or some such).
3274
3275         (WebKit::ViewGestureController::didHitRenderTreeSizeThreshold):
3276         If a swipe is still in progress, we haven't done our navigation and thus
3277         don't care about render tree size changes.
3278
3279         (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
3280         If a swipe is still in progress, we haven't done our navigation and thus
3281         don't care about layouts.
3282
3283         Stop the 5 second overall watchdog if we start the 3 second after-visuallyNonEmptyLayout
3284         watchdog. This means that the snapshot could stay up for a maximum of 8 seconds
3285         for a very, very slow load.
3286
3287         (WebKit::ViewGestureController::didFinishLoadForMainFrame):
3288         If a swipe is still in progress, we haven't done our navigation and thus
3289         don't care about loads that complete.
3290
3291         (WebKit::ViewGestureController::didSameDocumentNavigationForMainFrame):
3292         Remove the swipe snapshot after painting if we do replaceState or popState.
3293
3294         (WebKit::ViewGestureController::removeSwipeSnapshotAfterRepaint):
3295         If a swipe is still in progress, we shouldn't remove the snapshot yet.
3296
3297 2014-08-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3298
3299         [GTK] Translations are not initialized in the UI process
3300         https://bugs.webkit.org/show_bug.cgi?id=136249
3301
3302         Reviewed by Philippe Normand.
3303
3304         This is breaking things like webkitContextMenuActionGetForContextMenuItem()
3305         for non English locales in the cases where we use the action title to guess the
3306         action, because the action title we get from the web process is translated while
3307         the one in the UI process is in English.
3308
3309         * UIProcess/API/gtk/WebKitWebContext.cpp:
3310         (createDefaultWebContext): Initialize gettext right before
3311         creating the default web context.
3312
3313 2014-08-26  Ryuan Choi  <ryuan.choi@samsung.com>
3314
3315         [EFL] Remove dead code in WebPageEfl.cpp
3316         https://bugs.webkit.org/show_bug.cgi?id=136246
3317
3318         Reviewed by Gyuyoung Kim.
3319
3320         * WebProcess/WebPage/efl/WebPageEfl.cpp:
3321         (WebKit::scroll): Deleted.
3322
3323 2014-08-26  Ryuan Choi  <ryuan.choi@samsung.com>
3324
3325         [EFL] Build break using clang
3326         https://bugs.webkit.org/show_bug.cgi?id=136245
3327
3328         Reviewed by Gyuyoung Kim.
3329
3330         * PlatformEfl.cmake: defines GTEST_HAS_RTTI=0
3331
3332 2014-08-25  Zalan Bujtas  <zalan@apple.com>
3333
3334         Subpixel layout: remove roundedLayoutPoint/roundedLayoutSize functions.
3335         https://bugs.webkit.org/show_bug.cgi?id=136236
3336
3337         Reviewed by Simon Fraser.
3338
3339         These functions simply call LayoutPoint/LayoutSize c'tors. They don't round the input value at all.
3340
3341         Non change in functionality.
3342
3343         * UIProcess/ios/WebPageProxyIOS.mm:
3344         (WebKit::WebPageProxy::computeCustomFixedPositionRect):
3345
3346 2014-08-25  Antti Koivisto  <antti@apple.com>
3347
3348         Don't pass priority as parameter to ResourceLoadScheduler
3349         https://bugs.webkit.org/show_bug.cgi?id=136232
3350
3351         Reviewed by Sam Weinig.
3352
3353         * NetworkProcess/NetworkResourceLoader.cpp:
3354         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
3355         * NetworkProcess/NetworkResourceLoader.h:
3356         (WebKit::NetworkResourceLoader::priority): Deleted.
3357         * Shared/Network/NetworkResourceLoadParameters.cpp:
3358         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
3359         (WebKit::NetworkResourceLoadParameters::encode):
3360         (WebKit::NetworkResourceLoadParameters::decode):
3361         * Shared/Network/NetworkResourceLoadParameters.h:
3362         * WebProcess/Network/WebResourceLoadScheduler.cpp:
3363         (WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad):
3364         (WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad):
3365         (WebKit::WebResourceLoadScheduler::scheduleLoad):
3366         * WebProcess/Network/WebResourceLoadScheduler.h:
3367         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
3368         (WebKit::WebPlatformStrategies::loadResourceSynchronously):
3369
3370 2014-08-25  Brady Eidson  <beidson@apple.com>
3371
3372         Don't crash when the DataDetectors framework is unavailable.
3373         <rdar://problem/18106066> and https://bugs.webkit.org/show_bug.cgi?id=136234
3374
3375         Reviewed by Tim Horton.
3376
3377         * WebProcess/WebPage/mac/ServicesOverlayController.mm:
3378         (WebKit::ServicesOverlayController::buildPhoneNumberHighlights): Bail if DD.framework didn’t soft link.
3379         (WebKit::ServicesOverlayController::buildSelectionHighlight): Ditto.
3380
3381 2014-08-25  Antti Koivisto  <antti@apple.com>
3382
3383         Remove load scheduling code from network process
3384         https://bugs.webkit.org/show_bug.cgi?id=136199
3385
3386         Reviewed by Darin Adler.
3387
3388         Most platforms just flush resource loads directly to the networking layer by
3389         making the parallel load count large. Also we always pass ResourceLoadPriorityHighest
3390         to the scheduler so no actual scheduling happens. This is effectively dead code.
3391
3392         Keep basic support for serializing loads. This is only used for testing.
3393
3394         * NetworkProcess/HostRecord.cpp: Removed.
3395         * NetworkProcess/HostRecord.h: Removed.
3396         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
3397         (WebKit::NetworkConnectionToWebProcess::servePendingRequests):
3398         * NetworkProcess/NetworkProcess.cpp:
3399         (WebKit::NetworkProcess::getNetworkProcessStatistics):
3400         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
3401         (WebKit::NetworkResourceLoadScheduler::NetworkResourceLoadScheduler):
3402         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
3403         (WebKit::NetworkResourceLoadScheduler::removeLoader):
3404         (WebKit::NetworkResourceLoadScheduler::loadsPendingCount):
3405         (WebKit::NetworkResourceLoadScheduler::loadsActiveCount):
3406         (WebKit::NetworkResourceLoadScheduler::scheduleServePendingRequests): Deleted.
3407         (WebKit::NetworkResourceLoadScheduler::requestTimerFired): Deleted.
3408         (WebKit::NetworkResourceLoadScheduler::hostForURL): Deleted.
3409         (WebKit::NetworkResourceLoadScheduler::receivedRedirect): Deleted.
3410         (WebKit::NetworkResourceLoadScheduler::servePendingRequests): Deleted.
3411         (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders): Deleted.
3412         (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader): Deleted.
3413         (WebKit::NetworkResourceLoadScheduler::hostsPendingCount): Deleted.
3414         (WebKit::NetworkResourceLoadScheduler::hostsActiveCount): Deleted.
3415         * NetworkProcess/NetworkResourceLoadScheduler.h:
3416         * NetworkProcess/NetworkResourceLoader.cpp:
3417         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
3418         (WebKit::NetworkResourceLoader::cleanup):
3419         (WebKit::NetworkResourceLoader::continueWillSendRequest):
3420         * NetworkProcess/NetworkResourceLoader.h:
3421         (WebKit::NetworkResourceLoader::isLoadingMainResource):
3422         (WebKit::NetworkResourceLoader::setHostRecord): Deleted.
3423         (WebKit::NetworkResourceLoader::hostRecord): Deleted.
3424         * NetworkProcess/mac/NetworkResourceLoadSchedulerMac.mm:
3425         (WebKit::NetworkResourceLoadScheduler::platformInitializeNetworkSettings):
3426         (WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost): Deleted.
3427         * NetworkProcess/soup/NetworkResourceLoadSchedulerSoup.cpp:
3428         (WebKit::NetworkResourceLoadScheduler::platformInitializeNetworkSettings):
3429         (WebKit::NetworkResourceLoadScheduler::platformInitializeMaximumHTTPConnectionCountPerHost): Deleted.
3430         * WebKit2.xcodeproj/project.pbxproj:
3431
3432 2014-08-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3433
3434         [GTK] Older versions of WebKit should use the plugins cache in read only mode
3435         https://bugs.webkit.org/show_bug.cgi?id=136215
3436
3437         Reviewed by Philippe Normand.
3438
3439         Now that WebKitGTK+ 2.4 and 2.5 are parallel installable, since
3440         they use different versions of the plugins cache, apps using 2.4
3441         might override the plugins cache file. We should prevent this from
3442         happening by making older versions use the plugin cache, but not
3443         downgrade it.
3444
3445         * UIProcess/Plugins/gtk/PluginInfoCache.cpp:
3446         (WebKit::PluginInfoCache::PluginInfoCache):
3447         (WebKit::PluginInfoCache::updatePluginInfo):
3448         * UIProcess/Plugins/gtk/PluginInfoCache.h:
3449
3450 2014-08-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3451
3452         [GTK] Should check if a plugin mixes GTK+ symbols earlier
3453         https://bugs.webkit.org/show_bug.cgi?id=136214
3454
3455         Reviewed by Philippe Normand.
3456
3457         We are currently checking if the plugin module and the plugin
3458         process mix GTK symbols after the plugin has been loaded and
3459         initialized. This is too late in many cases, since plugins can use
3460         GTK methods in the NP_Initialize implementation. This is causing
3461         the apps using WebKitGTK+ 2.4 to freeze when the plugin process
3462         scans the plugins and there's a plugin using GTK+3 installed. We
3463         should move the check earlier, once the module is loaded but
3464         before calling NP_Initialize.
3465
3466         * Shared/Plugins/Netscape/NetscapePluginModule.cpp:
3467         (WebKit::moduleMixesGtkSymbols):
3468         (WebKit::NetscapePluginModule::tryLoad):
3469         * WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
3470         (WebKit::NetscapePlugin::platformPostInitialize):
3471
3472 2014-08-25  Zan Dobersek  <zdobersek@igalia.com>
3473
3474         Improve virtual method declarations in LayerTreeHostGtk
3475         https://bugs.webkit.org/show_bug.cgi?id=136210
3476
3477         Reviewed by Carlos Garcia Campos.
3478
3479         Mark the LayerTreeHostGtk class as final in the virtual inheritance hierarchy.
3480
3481         Order the public and private virtual method overrides from the LayerTreeHost
3482         and GraphicsLayerClient interfaces. Explicitly mark them as overriding the
3483         base class methods.
3484
3485         Remove the overriding notifyAnimationStarted() and notifyFlushRequired()
3486         methods since they are identical to the methods in the base class.
3487