14ad5d3952e5e1b3a5e22ef2ad12f1ea9968d9f3
[WebKit.git] / Source / WebKit2 / ChangeLog
1 2016-09-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2
3         [GTK] BadDamage X error in /webkit2/WebKitWebView/preferred-size
4         https://bugs.webkit.org/show_bug.cgi?id=162489
5
6         Reviewed by Michael Catanzaro.
7
8         Do a XSync right after creating/destroying the XDamage used by the redirected window in X11.
9
10         * UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
11         (WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11):
12         (WebKit::AcceleratedBackingStoreX11::update):
13
14 2016-09-23  Antoine Quint  <graouts@apple.com>
15
16         Add a new runtime flag for work on modern media controls (off by default)
17         https://bugs.webkit.org/show_bug.cgi?id=162420
18         <rdar://problem/27989489>
19
20         Reviewed by Eric Carlson.
21
22         * Shared/WebPreferencesDefinitions.h:
23         * WebProcess/InjectedBundle/InjectedBundle.cpp:
24         (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
25         * WebProcess/WebPage/WebPage.cpp:
26         (WebKit::WebPage::updatePreferences):
27
28 2016-09-23  Carlos Garcia Campos  <cgarcia@igalia.com>
29
30         REGRESSION(r194387): Crash on github.com in IntlDateTimeFormat::resolvedOptions in C locale
31         https://bugs.webkit.org/show_bug.cgi?id=162139
32
33         Reviewed by Michael Catanzaro.
34
35         Handle the case of "C" locale passed by the user using "en-US" as default to match what
36         WTF::platformUserPreferredLanguages() does.
37
38         * UIProcess/API/gtk/WebKitWebContext.cpp:
39         (webkit_web_context_set_preferred_languages): Remove the call to languageDidChange() because
40         overrideUserPreferredLanguages() already calls it, so we were actually notifying the observers twice.
41
42 2016-09-23  Carlos Garcia Campos  <cgarcia@igalia.com>
43
44         [GTK] Improve performance when resizing a window with multiple web views in X11
45         https://bugs.webkit.org/show_bug.cgi?id=162413
46
47         Reviewed by Michael Catanzaro.
48
49         Resizing a window with a single way view performs good enough, but when adding more tabs, the performance
50         decreases a lot. This is because resize is a sync operation, and the UI process waits for the web process to
51         have a new update for the new size, while still draws the previous frame. This is needed for the visible web
52         view, to avoid flickering and artifacts while resizing, but for all other hidden web views, we don't really need
53         to block the UI process. This doesn't happen in Wayland, because in Wayland we never block the UI process while
54         waiting for web process update after a resize.
55
56         * UIProcess/AcceleratedDrawingAreaProxy.cpp:
57         (WebKit::AcceleratedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState): Return early if the web
58         view is not visible.
59         * UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
60         (WebKit::AcceleratedBackingStoreX11::update): Only schedule a redraw on a damage event when the view is visible.
61         * WebProcess/WebPage/gtk/AcceleratedSurfaceX11.cpp:
62         (WebKit::AcceleratedSurfaceX11::AcceleratedSurfaceX11): Do a XSync right after creating the new pixmap.
63         (WebKit::AcceleratedSurfaceX11::resize): Ditto.
64
65 2016-09-22  Daniel Bates  <dabates@apple.com>
66
67         Remove more ENABLE(TEXT_AUTOSIZING) code
68         https://bugs.webkit.org/show_bug.cgi?id=162456
69
70         Reviewed by Simon Fraser.
71
72         * UIProcess/API/efl/ewk_settings.cpp:
73         (ewk_settings_text_autosizing_enabled_set):
74         (ewk_settings_text_autosizing_enabled_get):
75         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
76         (TEST_F):
77
78 2016-09-22  Jonathan Bedard  <jbedard@apple.com>
79
80         Automatic Text Replacement Testing in WebKit2
81         https://bugs.webkit.org/show_bug.cgi?id=161919
82
83         Reviewed by Ryosuke Niwa.
84
85         Implemented test hooks for text replacement for WebKit2.
86         Note that spell checking has not been implemented, so most tests which use text replacement still fail.
87
88         * UIProcess/API/C/WKTextChecker.cpp: Added #ifdefs to include file for iOS and Mac.
89         (WKTextCheckerSetTestingMode): Added.
90         * UIProcess/API/C/WKTextChecker.h: Added #ifdefs to include file for iOS and Mac.
91         * UIProcess/TextChecker.h: Added hooks to bypass writing to NSUserDefaults.
92         * UIProcess/WebPageProxy.cpp:
93         (WebKit::WebPageProxy::toggleSmartInsertDelete):  New message to toggle TextChecker flag.
94         (WebKit::WebPageProxy::toggleAutomaticQuoteSubstitution): Ditto.
95         (WebKit::WebPageProxy::toggleAutomaticLinkDetection): Ditto.
96         (WebKit::WebPageProxy::toggleAutomaticDashSubstitution): Ditto.
97         (WebKit::WebPageProxy::toggleAutomaticTextReplacement): Ditto.
98         * UIProcess/WebPageProxy.h: Added messages to toggle TextChecker flags.
99         * UIProcess/WebPageProxy.messages.in: Ditto.
100         * UIProcess/efl/TextCheckerEfl.cpp: Implemented new TextChecker hooks for non-Cocoa platforms.
101         * UIProcess/gtk/TextCheckerGtk.cpp: Ditto.
102         (WebKit::TextChecker::mutableState): Ditto.
103         * UIProcess/ios/TextCheckerIOS.mm: Implemented new TextChecker hooks.
104         (WebKit::TextChecker::mutableState): Allow modification of text checker without writing to NSUserDefaults.
105         (WebKit::TextChecker::state): Call mutableState.
106         (WebKit::TextChecker::accessSmartInsertDeleteEnabled): Dummy function.
107         * UIProcess/mac/TextCheckerMac.mm:
108         (WebKit::refresh): Reload TextChecker configuration from NSUserDefaults.
109         (WebKit::TextChecker::mutableState): Allow modification of text checker without writing to NSUserDefaults.
110         (WebKit::TextChecker::state): Call mutableState().
111         (WebKit::TextChecker::accessSmartInsertDeleteEnabled): Allow toggling of smartInsertDeleteEnabled without writing to NSUserDefaults.
112         (WebKit::initializeState): Deleted.
113         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
114         (WKBundleSetAutomaticLinkDetectionEnabled): Deleted.
115         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Removed WKBundleSetAutomaticLinkDetectionEnabled.
116         * WebProcess/InjectedBundle/InjectedBundle.cpp:
117         (WebKit::InjectedBundle::setAutomaticLinkDetectionEnabled): Deleted.
118         * WebKit2.xcodeproj/project.pbxproj: Added WKTextChecker to Mac and iOS.
119         * WebProcess/InjectedBundle/InjectedBundle.h: Remove setAutomaticLinkDetectionEnabled.
120         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
121         (WebKit::WebEditorClient::toggleSmartInsertDelete): Send message to UI process to toggle TextChecker.
122         (WebKit::WebEditorClient::toggleAutomaticQuoteSubstitution): Ditto.
123         (WebKit::WebEditorClient::toggleAutomaticLinkDetection): Ditto.
124         (WebKit::WebEditorClient::toggleAutomaticDashSubstitution): Ditto.
125         (WebKit::WebEditorClient::toggleAutomaticTextReplacement): Ditto.
126
127 2016-09-22  Carlos Garcia Campos  <cgarcia@igalia.com>
128
129         [GTK] Rename DataObjectGtk as SelectionData
130         https://bugs.webkit.org/show_bug.cgi?id=162380
131
132         Reviewed by Žan Doberšek.
133
134         * PlatformGTK.cmake:
135         * Shared/gtk/ArgumentCodersGtk.cpp:
136         (IPC::ArgumentCoder<SelectionData>::encode):
137         (IPC::ArgumentCoder<SelectionData>::decode):
138         * Shared/gtk/ArgumentCodersGtk.h:
139         * Shared/gtk/WebSelectionData.cpp: Renamed from Source/WebKit2/Shared/gtk/PasteboardContent.cpp.
140         (WebKit::WebSelectionData::WebSelectionData):
141         (WebKit::WebSelectionData::encode):
142         (WebKit::WebSelectionData::decode):
143         * Shared/gtk/WebSelectionData.h: Renamed from Source/WebKit2/Shared/gtk/PasteboardContent.h.
144         * UIProcess/API/gtk/PageClientImpl.cpp:
145         (WebKit::PageClientImpl::startDrag):
146         * UIProcess/API/gtk/PageClientImpl.h:
147         * UIProcess/PageClient.h:
148         * UIProcess/WebPageProxy.cpp:
149         (WebKit::WebPageProxy::performDragControllerAction):
150         (WebKit::WebPageProxy::startDrag):
151         * UIProcess/WebPageProxy.h:
152         * UIProcess/WebPageProxy.messages.in:
153         * UIProcess/WebPasteboardProxy.h:
154         * UIProcess/WebPasteboardProxy.messages.in:
155         * UIProcess/gtk/DragAndDropHandler.cpp:
156         (WebKit::DragAndDropHandler::DroppingContext::DroppingContext):
157         (WebKit::DragAndDropHandler::startDrag):
158         (WebKit::DragAndDropHandler::fillDragData):
159         (WebKit::DragAndDropHandler::finishDrag):
160         (WebKit::DragAndDropHandler::dropDataSelection):
161         (WebKit::DragAndDropHandler::dragEntered):
162         (WebKit::DragAndDropHandler::dragDataSelection):
163         (WebKit::DragAndDropHandler::dragMotion):
164         (WebKit::DragAndDropHandler::dragLeave):
165         (WebKit::DragAndDropHandler::drop):
166         * UIProcess/gtk/DragAndDropHandler.h:
167         * UIProcess/gtk/WebPasteboardProxyGtk.cpp:
168         (WebKit::WebPasteboardProxy::writeToClipboard):
169         (WebKit::WebPasteboardProxy::readFromClipboard):
170         (WebKit::WebPasteboardProxy::setPrimarySelectionOwner): Deleted.
171         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
172         (WebKit::WebPlatformStrategies::writeToClipboard):
173         (WebKit::WebPlatformStrategies::readFromClipboard):
174         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
175         * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
176         (WebKit::WebDragClient::startDrag):
177         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
178         * WebProcess/WebPage/WebPage.cpp:
179         (WebKit::WebPage::performDragControllerAction):
180         * WebProcess/WebPage/WebPage.h:
181         * WebProcess/WebPage/WebPage.messages.in:
182
183 2016-09-21  Dan Bernstein  <mitz@apple.com>
184
185         [macOS] Upon layout, _webView:renderingProgressDidChange: fires before the intrinsic content size is updated
186         https://bugs.webkit.org/show_bug.cgi?id=162359
187         <rdar://problem/27776454>
188
189         Reviewed by Tim Horton.
190
191         Test: added to TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm
192
193         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h: Fixed a bug where
194           m_pendingNewlyReachedLayoutMilestones was never initialized.
195
196         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h: Added
197           m_pendingNewlyReachedLayoutMilestones member variable to this derived class as well.
198         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
199         (WebKit::TiledCoreAnimationDrawingArea::flushLayers): If we have pending milestones, notify
200           the WebPageProxy now, after any content size changes have been sent.
201         (WebKit::TiledCoreAnimationDrawingArea::dispatchDidReachLayoutMilestone): New override that
202           accumulates the milestones into m_pendingNewlyReachedLayoutMilestones and returns true,
203           so that the caller won’t notify the WebPageProxy immediately.
204
205 2016-09-21  Anders Carlsson  <andersca@apple.com>
206
207         support openPaymentSetup API on ApplePaySession object
208         https://bugs.webkit.org/show_bug.cgi?id=162357
209         rdar://problem/26776939
210
211         Reviewed by Tim Horton.
212
213         * UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp:
214         (WebKit::WebPaymentCoordinatorProxy::openPaymentSetup):
215         Call through to platformOpenPaymentSetup, and in the completion handler, send back a OpenPaymentSetupReply message.
216
217         * UIProcess/ApplePay/WebPaymentCoordinatorProxy.h:
218         Add new members.
219
220         * UIProcess/ApplePay/WebPaymentCoordinatorProxy.messages.in:
221         Add OpenPaymentSetup message.
222
223         * UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm:
224         (WebKit::WebPaymentCoordinatorProxy::platformOpenPaymentSetup):
225         Allocate a PKPassLibrary and call openPaymentSetupForMerchantIdentifier:domain:completion: on it.
226
227         * WebProcess/ApplePay/WebPaymentCoordinator.cpp:
228         (WebKit::generateOpenPaymentSetupReplyID):
229         New helper function to generate a reply ID.
230
231         (WebKit::WebPaymentCoordinator::openPaymentSetup):
232         Add the completion handler to m_pendingOpenPaymentSetupCallbacks and send a OpenPaymentSetup message to the UI process.
233
234         (WebKit::WebPaymentCoordinator::openPaymentSetupReply):
235         Grab the callback given its ID and invoke it.
236
237         * WebProcess/ApplePay/WebPaymentCoordinator.h:
238         Add new members.
239
240         * WebProcess/ApplePay/WebPaymentCoordinator.messages.in:
241         Add OpenPaymentSetupReply message.
242
243 2016-09-21  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
244
245         Unreviewed, build fix.
246
247         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
248         (WebKit::AcceleratedBackingStoreWayland::paint): fix usage of deviceScaleFactor variable which was
249         removed.
250
251 2016-09-20  Carlos Garcia Campos  <cgarcia@igalia.com>
252
253         [GTK] Clean up DataObjectGtk handling
254         https://bugs.webkit.org/show_bug.cgi?id=162267
255
256         Reviewed by Michael Catanzaro.
257
258         In some cases the ownership of DataObjectGtk instances is not clear enough, and we have hacks to avoid memory
259         leaks because of that.
260
261         * Shared/gtk/ArgumentCodersGtk.cpp:
262         (IPC::encodeImage): Use Image instead of GdkPixbuf.
263         (IPC::decodeImage): Ditto.
264         (IPC::ArgumentCoder<DataObjectGtk>::encode):
265         (IPC::ArgumentCoder<DataObjectGtk>::decode):
266         (IPC::encode): Deleted.
267         (IPC::decode): Deleted.
268         (IPC::ArgumentCoder<DragData>::encode): Deleted.
269         (IPC::ArgumentCoder<DragData>::decode): Deleted.
270         * Shared/gtk/ArgumentCodersGtk.h:
271         * Shared/gtk/PasteboardContent.cpp:
272         (WebKit::PasteboardContent::PasteboardContent): Add empty constructor that creates a new DataObjectGtk, a
273         constructor that receives a const reference and another one that takes the ownership of the given DataObjectGtk.
274         (WebKit::PasteboardContent::encode):
275         (WebKit::PasteboardContent::decode):
276         * Shared/gtk/PasteboardContent.h: Use Ref instead of RefPtr for the DataObjectGtk member.
277         * UIProcess/API/gtk/PageClientImpl.cpp:
278         (WebKit::PageClientImpl::startDrag): Transfer the DataObjectGtk to the DragAndDropHandler, instead of using DragData.
279         * UIProcess/API/gtk/PageClientImpl.h:
280         * UIProcess/PageClient.h:
281         * UIProcess/WebPageProxy.cpp:
282         (WebKit::WebPageProxy::performDragControllerAction): Instead of sending a DragData object to the web process,
283         send the DataObjectGtk and DragData members needed as parameters.
284         (WebKit::WebPageProxy::startDrag): Transfer the received DataObjectGtk to page client, instead of using
285         DragData. Also notify the web process that drag started.
286         * UIProcess/WebPageProxy.h:
287         * UIProcess/WebPageProxy.messages.in: Update StartDrag message parameters.
288         * UIProcess/gtk/DragAndDropHandler.cpp:
289         (WebKit::DragAndDropHandler::DragAndDropHandler): Remove unneeded initialization.
290         (WebKit::DragAndDropHandler::startDrag): Take ownership of the given DataObjectGtk.
291         * UIProcess/gtk/DragAndDropHandler.h:
292         * UIProcess/gtk/WebPasteboardProxyGtk.cpp:
293         (WebKit::WebPasteboardProxy::writeToClipboard):
294         (WebKit::WebPasteboardProxy::readFromClipboard):
295         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
296         (WebKit::WebPlatformStrategies::writeToClipboard):
297         (WebKit::WebPlatformStrategies::readFromClipboard):
298         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
299         * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
300         (WebKit::convertCairoSurfaceToShareableBitmap):
301         (WebKit::WebDragClient::startDrag): Do not create a DragData and pass the DataObjectGtk directly to the
302         message. Also notify the WebPage that drag is about to start.
303         * WebProcess/WebPage/WebPage.cpp:
304         (WebKit::WebPage::performDragControllerAction): Remove explicit DataObjectGtk derefs and simply create a
305         DragData using the DataObjectGtk pointer as platform data.
306         * WebProcess/WebPage/WebPage.h:
307         * WebProcess/WebPage/WebPage.messages.in: Update PerformDragControllerAction message parameters.
308
309 2016-09-20  Hunseop Jeong  <hs85.jeong@samsung.com>
310
311         [EFL] ewk_context_menu_item_select test have been failed
312         https://bugs.webkit.org/show_bug.cgi?id=162143
313
314         Reviewed by Gyuyoung Kim.
315
316         ewk_context_menu_item_select has been waited until test page loading is finished, but it is
317         unnecessary to wait the loading is finished. It would be good to pass if *testFinished*
318         flag is true.
319
320         * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
321         (EWK2ContextMenuTest::checkBasicContextMenuItem):
322         (EWK2ContextMenuTest::testContextMenu):
323         (TEST_F):
324
325 2016-09-20  Keith Rollin  <krollin@apple.com>
326
327         Add new logging for network resource loading
328         https://bugs.webkit.org/show_bug.cgi?id=162237
329
330         Reviewed by Antti Koivisto.
331
332         Add new logging along the non-main path for resource loading. This
333         logging should allow us to differentiate between lack-of-logging due
334         execution along a path that doesn't have logging statements and
335         lack-of-logging due to a hung process.
336
337         * NetworkProcess/NetworkResourceLoader.cpp:
338         (WebKit::NetworkResourceLoader::start):
339         (WebKit::NetworkResourceLoader::startNetworkLoad):
340         (WebKit::NetworkResourceLoader::setDefersLoading):
341         (WebKit::NetworkResourceLoader::abort):
342         (WebKit::NetworkResourceLoader::didReceiveBuffer):
343         * NetworkProcess/NetworkResourceLoader.h:
344         * WebProcess/Network/WebLoaderStrategy.cpp:
345         (WebKit::WebLoaderStrategy::loadResource):
346         (WebKit::WebLoaderStrategy::scheduleLoad):
347
348 2016-09-20  Anders Carlsson  <andersca@apple.com>
349
350         Can't present a payment sheet if a sheet is already active in another window
351         https://bugs.webkit.org/show_bug.cgi?id=162314
352         rdar://problem/27643511
353
354         Reviewed by Tim Horton.
355
356         Instead of keeping track of whether a sheet is active or not, keep track of its underlying payment coordinator proxy,
357         so we can hide it and send a cancel event to WebCore if another sheet is being presented.
358
359         * UIProcess/ApplePay/WebPaymentCoordinatorProxy.cpp:
360         (WebKit::WebPaymentCoordinatorProxy::~WebPaymentCoordinatorProxy):
361         (WebKit::WebPaymentCoordinatorProxy::showPaymentUI):
362         (WebKit::WebPaymentCoordinatorProxy::didReachFinalState):
363
364 2016-09-20  Keith Rollin  <krollin@apple.com>
365
366         Adjust current networking logging
367         https://bugs.webkit.org/show_bug.cgi?id=162235
368
369         Reviewed by Antti Koivisto.
370
371         Update the "always on" network logging in order to better track the
372         loading of a particular resource and to better bind together the
373         resources downloaded for a particular page and frame. Do this by
374         consistently logging pageID, frameID, and resourceID.
375
376         * NetworkProcess/NetworkResourceLoader.cpp:
377         (WebKit::NetworkResourceLoader::didFinishLoading):
378         (WebKit::NetworkResourceLoader::didFailLoading):
379         (WebKit::NetworkResourceLoader::continueWillSendRequest):
380         * WebProcess/Network/WebLoaderStrategy.cpp:
381         (WebKit::WebLoaderStrategy::scheduleLoad):
382         (WebKit::WebLoaderStrategy::startLocalLoad):
383         * WebProcess/Network/WebResourceLoader.cpp:
384         (WebKit::WebResourceLoader::create):
385         (WebKit::WebResourceLoader::WebResourceLoader):
386         (WebKit::WebResourceLoader::willSendRequest):
387         (WebKit::WebResourceLoader::didReceiveResponse):
388         (WebKit::WebResourceLoader::didReceiveData):
389         (WebKit::WebResourceLoader::didFinishResourceLoad):
390         (WebKit::WebResourceLoader::didFailResourceLoad):
391         (WebKit::WebResourceLoader::didReceiveResource):
392         * WebProcess/Network/WebResourceLoader.h:
393
394 2016-09-19  Wenson Hsieh  <wenson_hsieh@apple.com>
395
396         Add a unit test covering <https://trac.webkit.org/changeset/205983>
397         https://bugs.webkit.org/show_bug.cgi?id=162112
398
399         Reviewed by Beth Dakin.
400
401         Adds some a test support method as SPI on WKWebView to determine whether to request candidates. See
402         Tools/ChangeLog for more details.
403
404         * UIProcess/API/Cocoa/WKWebView.mm:
405         (-[WKWebView _shouldRequestCandidates]):
406         (-[WKWebView _forceRequestCandidates]): Deleted.
407         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
408
409 2016-09-19  Anders Carlsson  <andersca@apple.com>
410
411         Suppress JavaScript prompts early on in certain cases
412         https://bugs.webkit.org/show_bug.cgi?id=162243
413         rdar://problem/27661602
414
415         Reviewed by Geoffrey Garen.
416
417         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
418         (WebKit::shouldSuppressJavaScriptDialogs):
419         Add helper function.
420
421         (WebKit::WebChromeClient::runJavaScriptAlert):
422         (WebKit::WebChromeClient::runJavaScriptConfirm):
423         (WebKit::WebChromeClient::runJavaScriptPrompt):
424         Call helper function and return early if we should supress dialogs.
425
426 2016-09-19  Keith Rollin  <krollin@apple.com>
427
428         Reduce logging from WebResourceLoader::didReceiveData
429         https://bugs.webkit.org/show_bug.cgi?id=162233
430
431         Reviewed by Antti Koivisto.
432
433         Only log once even if called multiple times for a single resource.
434
435         * WebProcess/Network/WebResourceLoader.cpp:
436         (WebKit::WebResourceLoader::didReceiveData):
437         * WebProcess/Network/WebResourceLoader.h:
438
439 2016-09-19  Daniel Bates  <dabates@apple.com>
440
441         Remove ENABLE(TEXT_AUTOSIZING) automatic text size adjustment code
442         https://bugs.webkit.org/show_bug.cgi?id=162167
443
444         Reviewed by Simon Fraser.
445
446         * Configurations/FeatureDefines.xcconfig:
447         * WebProcess/WebPage/WebPage.cpp:
448         (WebKit::WebPage::updatePreferences):
449
450 2016-09-19  Alex Christensen  <achristensen@webkit.org>
451
452         Only override URLParser::enabled if NSUserDefaults object exists
453         https://bugs.webkit.org/show_bug.cgi?id=162131
454
455         Reviewed by Sam Weinig.
456
457         * Shared/Cocoa/WebKit2InitializeCocoa.mm:
458         (WebKit::platformInitializeWebKit2):
459         * Shared/WebKit2Initialize.cpp:
460         When I enable URLParser by default, I will want the default to only be overwritten if there is a
461         NSUserDefaults key for URLParserEnabled.  Right now it is setting URLParser::enabled to false always,
462         which isn't a problem because the default is also false.  When the default is true, that will overwrite the default.
463
464 2016-09-19  Joseph Pecoraro  <pecoraro@apple.com>
465
466         Web Inspector: Bring the inspected page's window forward when activating element search
467         https://bugs.webkit.org/show_bug.cgi?id=162114
468         <rdar://problem/28349357>
469
470         Reviewed by Brian Burg.
471
472         * UIProcess/WebInspectorProxy.h:
473         * UIProcess/WebInspectorProxy.cpp:
474         (WebKit::WebInspectorProxy::elementSelectionChanged):
475         When element search is activated allow the platform to bring
476         the window containing the inspected page to the foreground.
477
478         (WebKit::WebInspectorProxy::platformBringInspectedPageToFront):
479         * UIProcess/efl/WebInspectorProxyEfl.cpp:
480         (WebKit::WebInspectorProxy::platformBringInspectedPageToFront):
481         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
482         (WebKit::WebInspectorProxy::platformBringInspectedPageToFront):
483         Default empty implementation for ports.
484
485         * UIProcess/mac/WebInspectorProxyMac.mm:
486         (WebKit::WebInspectorProxy::platformBringInspectedPageToFront):
487         Bring the window containing the inspected page to the foreground.
488
489 2016-09-18  Michael Catanzaro  <mcatanzaro@igalia.com>
490
491         [GTK] Empty referer header after WebKit session state restoration trips Bad Behavior Wordpress plugin
492         https://bugs.webkit.org/show_bug.cgi?id=159606
493
494         Reviewed by Carlos Garcia Campos.
495
496         Leave the referrer member of FrameState unset when restoring from session state, unless
497         there is actually a nonempty referrer saved in the state. If we set it to an empty string,
498         then an empty referrer gets sent to the server, which some servers do not accept. It
499         triggers the Bad Behavior plugin on my WordPress blog, for instance. It also breaks vox.com.
500
501         * UIProcess/API/gtk/WebKitWebViewSessionState.cpp:
502         (decodeFrameState):
503
504 2016-09-18  Chelsea Pugh  <cpugh@apple.com>
505
506         [iOS] Remove unused methods from _WKInputDelegate
507         https://bugs.webkit.org/show_bug.cgi?id=162098
508
509         Reviewed by Anders Carlsson.
510
511         * UIProcess/API/Cocoa/_WKInputDelegate.h:
512
513 2016-09-18  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
514
515         [GTK] Stop using glReadPixels() to blit AC surfaces in the UIProcess under Wayland
516         https://bugs.webkit.org/show_bug.cgi?id=161530
517
518         Reviewed by Carlos Garcia Campos.
519
520         Use gdk_cairo_draw_from_gl when all necessary conditions exist.
521
522         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
523         (WebKit::ThreadedCompositor::create): take TextureMapper::PaintFlags as optional argument.
524         (WebKit::ThreadedCompositor::ThreadedCompositor): ditto.
525         (WebKit::ThreadedCompositor::renderLayerTree): relay paint flags to TextureMapper::beginPaint.
526         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
527         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
528         (WebKit::AcceleratedBackingStoreWayland::paint): use the faster gdk_cairo_draw_from_gl when a new
529         enough GTK+ is in use.
530         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
531         (WebKit::ThreadedCoordinatedLayerTreeHost::ThreadedCoordinatedLayerTreeHost): create compositor
532         with PaintingMirrored flag if we have recent GTK+ and are running under Wayland.
533         * WebProcess/WebPage/gtk/AcceleratedSurfaceX11.h: implement shouldPaintMirrored by always
534         returning false.
535         * WebProcess/WebPage/gtk/AcceleratedSurfaceWayland.h: implement shouldPaintMirrored by always
536         returning true.
537         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
538         (WebKit::LayerTreeHostGtk::compositeLayersToContext): pass PaintingMirror flag to TextureMapper
539         when under a recent enough GTK+ and Wayland.
540
541 2016-09-17  Carlos Garcia Campos  <cgarcia@igalia.com>
542
543         [GTK] Move the rendering of auth dialog shadow to the auth dialog widget
544         https://bugs.webkit.org/show_bug.cgi?id=162061
545
546         Reviewed by Michael Catanzaro.
547
548         Instead of rendering the shadow in the web view, we can let the auth dialog do it. This fixes the rendering of
549         the shadow in Wayland when using gdk_cairo_draw_from_gl().
550
551         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
552         (webkitAuthenticationDialogDraw): Draw the shadow before rendering the child.
553         (webkitAuthenticationDialogSizeAllocate): Center the child on the allocated space.
554         (webkit_authentication_dialog_class_init): Add size_allocate implementation.
555         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
556         (webkitWebViewBaseDraw): Do not draw the shadow when auth dialog is present.
557         (webkitWebViewBaseSizeAllocate): Give the whole web view allocation to the auth dialog.
558
559 2016-09-17  Carlos Garcia Campos  <cgarcia@igalia.com>
560
561         [ThreadedCompositor] Scrolling artifacts on accelerated subframes
562         https://bugs.webkit.org/show_bug.cgi?id=149060
563
564         Reviewed by Michael Catanzaro.
565
566         The problem is that we are scrolling the main frame even when scrolling is not delegated.
567
568         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
569         (WebKit::ThreadedCoordinatedLayerTreeHost::scrollNonCompositedContents): Return early if main frame view doesn't
570         delegate scrolling.
571
572 2016-09-16  Simon Fraser  <simon.fraser@apple.com>
573
574         WKWebViewConfiguration's _incrementalRenderingSuppressionTimeout should be an NSTimeInterval
575         https://bugs.webkit.org/show_bug.cgi?id=162092
576
577         Reviewed by Anders Carlsson.
578         
579         The _incrementalRenderingSuppressionTimeout property should be a NSTimeInterval, not a CGFloat.
580
581         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
582         (-[WKWebViewConfiguration _incrementalRenderingSuppressionTimeout]):
583         (-[WKWebViewConfiguration _setIncrementalRenderingSuppressionTimeout:]):
584         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
585
586 2016-09-15  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
587
588         [GTK] Surface created for glReadPixels path on Wayland is bigger than needed
589         https://bugs.webkit.org/show_bug.cgi?id=162025
590
591         Reviewed by Carlos Garcia Campos.
592
593         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
594         (WebKit::AcceleratedBackingStoreWayland::paint): the texture created by the Wayland
595         compositor is already scaled, so scaling its size when creating the surface causes it
596         to end up bigger than necessary.
597
598 2016-09-16  David Kilzer  <ddkilzer@apple.com>
599
600         ASSERT accidentally commented out in r204916
601         <https://webkit.org/b/162077>
602
603         Reviewed by Anders Carlsson.
604
605         * UIProcess/WebPageProxy.cpp:
606         (WebKit::WebPageProxy::terminateProcess): Comment in the ASSERT
607         back in.
608
609 2016-09-16  Wenson Hsieh  <wenson_hsieh@apple.com>
610
611         Inserting a space after inserting an accepted candidate scrolls the document and causes a flicker
612         https://bugs.webkit.org/show_bug.cgi?id=162009
613         <rdar://problem/28086237>
614
615         Reviewed by Tim Horton.
616
617         After inserting a text candidate, if the candidate ended with a soft space, the next space we insert should just
618         replace the soft space. This currently works because we leave the text insertion out of the list of
619         KeypressCommands sent to the web process and instead replace the soft space via WebPage::InsertTextAsync.
620         However, this means when the web process handles this keydown event, the current editor will not handle it,
621         since the list of key commands is empty despite the text and unmodified text being non-empty.
622
623         To fix this, when sending keydown or keyup events where we replace a soft space, we set the key event's text to
624         an empty string instead of a space. This allows us to return early in EventHandler::keyEvent and avoid the
625         codepath that tries to insert text into the current editor and (in the case of inserting a ' ') scrolls the
626         document if necessary. Since we've already handled text insertion via WebPage::InsertTextAsync, there is no need
627         to also dispatch the keypress to the editor.
628
629         Additionally, this patch addresses flickering in the candidates UI due to the fact that we're asynchronously
630         replacing the last soft space. During this operation, we select the range of the soft space and then insert the
631         new text. This causes a momentary range selection which the web process notifies the UI process about, prompting
632         us to hide the candidates list. To address this, we suppress the EditorStateChanged message fired from the web
633         process to the UI process while we're selecting the original range to replace.
634
635         This patch adds 3 new WebKit API tests.
636
637         * Shared/NativeWebKeyboardEvent.h:
638         * Shared/mac/NativeWebKeyboardEventMac.mm:
639         (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
640         * Shared/mac/WebEventFactory.h:
641         * Shared/mac/WebEventFactory.mm:
642         (WebKit::textFromEvent):
643         (WebKit::unmodifiedTextFromEvent):
644         (WebKit::WebEventFactory::createWebKeyboardEvent):
645         * UIProcess/API/Cocoa/WKWebView.mm:
646         (-[WKWebView _handleAcceptedCandidate:]):
647         (-[WKWebView _didHandleAcceptedCandidate]):
648         (-[WKWebView _didUpdateCandidateListVisibility:]):
649         (-[WKWebView _forceRequestCandidates]):
650         (-[WKWebView _handleControlledElementIDResponse:]): Deleted.
651         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
652         * UIProcess/API/mac/WKView.mm:
653         (-[WKView _didHandleAcceptedCandidate]):
654         (-[WKView _didUpdateCandidateListVisibility:]):
655         * UIProcess/Cocoa/WebViewImpl.h:
656         * UIProcess/Cocoa/WebViewImpl.mm:
657         (WebKit::WebViewImpl::forceRequestCandidatesForTesting):
658         (WebKit::WebViewImpl::becomeFirstResponder):
659         (WebKit::WebViewImpl::didHandleAcceptedCandidate):
660         (WebKit::WebViewImpl::insertText):
661         (WebKit::WebViewImpl::performKeyEquivalent):
662         (WebKit::WebViewImpl::keyUp):
663         (WebKit::WebViewImpl::keyDown):
664         (WebKit::WebViewImpl::flagsChanged):
665         * UIProcess/WebPageProxy.cpp:
666         (WebKit::WebPageProxy::insertTextAsync):
667         * UIProcess/WebPageProxy.h:
668         * WebProcess/WebPage/WebPage.cpp:
669         (WebKit::WebPage::insertTextAsync):
670         (WebKit::WebPage::didChangeSelection):
671         * WebProcess/WebPage/WebPage.h:
672         * WebProcess/WebPage/WebPage.messages.in:
673
674 2016-09-16  Anders Carlsson  <andersca@apple.com>
675
676         Add support for enum class parameters in the message generator
677         https://bugs.webkit.org/show_bug.cgi?id=162036
678
679         Reviewed by Brady Eidson.
680
681         Also, convert the WebPage::SetLayerHostingMode to take an actual enum class.
682
683         * Scripts/webkit/messages.py:
684         (function_parameter_type):
685         Change this to take the parameter kind as well, and use the raw type for enums.
686
687         (arguments_type):
688         (message_to_struct_declaration):
689         Pass the kind to function_parameter_type.
690
691         (forward_declaration):
692         (forward_declarations_for_namespace):
693         Forward declare enums with "enum class".
694
695         (headers_for_type):
696         Add WebKit::LayerHostingMode as a special case.
697
698         (generate_message_handler):
699         Pass the kind to function_parameter_type.
700
701         * Scripts/webkit/parser.py:
702         (parse_parameters_string):
703         Parse 'enum' as well.
704
705         * Shared/LayerTreeContext.h:
706         Add enum traits.
707
708         * UIProcess/WebPageProxy.cpp:
709         (WebKit::WebPageProxy::viewDidEnterWindow):
710         (WebKit::WebPageProxy::layerHostingModeDidChange):
711         * WebProcess/WebPage/WebPage.cpp:
712         (WebKit::WebPage::reinitializeWebPage):
713         (WebKit::WebPage::setLayerHostingMode):
714         * WebProcess/WebPage/WebPage.h:
715         Change unsigned to LayerHostingMode.
716
717         * WebProcess/WebPage/WebPage.messages.in:
718         Change unsigned to LayerHostingMode.
719
720 2016-09-16  Commit Queue  <commit-queue@webkit.org>
721
722         Unreviewed, rolling out r206000.
723         https://bugs.webkit.org/show_bug.cgi?id=162062
724
725         inadvertent GCC requirement bump (Requested by mcatanzaro on
726         #webkit).
727
728         Reverted changeset:
729
730         "Add support for enum class parameters in the message
731         generator"
732         https://bugs.webkit.org/show_bug.cgi?id=162036
733         http://trac.webkit.org/changeset/206000
734
735 2016-09-15  Brady Eidson  <beidson@apple.com>
736
737         WKWebView.hasOnlySecureContent always returns "YES" after going back to a CachedPage (even if it has http resources).
738         <rdar://problem/27681261> and https://bugs.webkit.org/show_bug.cgi?id=162043
739
740         Reviewed by Brent Fulgham. 
741
742         * Scripts/webkit/messages.py:
743         (headers_for_type): Add a custom header, and alphabetize existing ones.
744
745         * Shared/WebCoreArgumentCoders.h: Add EnumTraits for HasInsecureContent.
746
747         * UIProcess/PageLoadState.h:
748         (WebKit::PageLoadState::committedHasInsecureContent):
749
750         * UIProcess/WebPageProxy.cpp:
751         (WebKit::WebPageProxy::hasInsecureContent):
752         (WebKit::WebPageProxy::didCommitLoadForFrame): If the WebProcess included an existing "HasInsecureContent" value, use it.
753         * UIProcess/WebPageProxy.h:
754         * UIProcess/WebPageProxy.messages.in:
755
756         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
757         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad): 
758         (WebKit::WebFrameLoaderClient::savePlatformDataToCachedFrame): Save the "HasInsecureContent" value to the CachedFrame in
759           case we restore it in the future.
760         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
761
762 2016-09-15  Anders Carlsson  <andersca@apple.com>
763
764         Actually assign the decoded enum value to the output value
765         https://bugs.webkit.org/show_bug.cgi?id=162042
766
767         Reviewed by Brady Eidson.
768
769         * Platform/IPC/Decoder.h:
770
771 2016-09-15  Anders Carlsson  <andersca@apple.com>
772
773         Add support for enum class parameters in the message generator
774         https://bugs.webkit.org/show_bug.cgi?id=162036
775
776         Reviewed by Brady Eidson.
777
778         Also, convert the WebPage::SetLayerHostingMode to take an actual enum class.
779
780         * Scripts/webkit/messages.py:
781         (function_parameter_type):
782         Change this to take the parameter kind as well, and use the raw type for enums.
783
784         (arguments_type):
785         (message_to_struct_declaration):
786         Pass the kind to function_parameter_type.
787
788         (forward_declaration):
789         (forward_declarations_for_namespace):
790         Forward declare enums with "enum class".
791
792         (headers_for_type):
793         Add WebKit::LayerHostingMode as a special case.
794
795         (generate_message_handler):
796         Pass the kind to function_parameter_type.
797
798         * Scripts/webkit/parser.py:
799         (parse_parameters_string):
800         Parse 'enum' as well.
801
802         * Shared/LayerTreeContext.h:
803         Add enum traits.
804
805         * UIProcess/WebPageProxy.cpp:
806         (WebKit::WebPageProxy::viewDidEnterWindow):
807         (WebKit::WebPageProxy::layerHostingModeDidChange):
808         * WebProcess/WebPage/WebPage.cpp:
809         (WebKit::WebPage::reinitializeWebPage):
810         (WebKit::WebPage::setLayerHostingMode):
811         * WebProcess/WebPage/WebPage.h:
812         Change unsigned to LayerHostingMode.
813
814         * WebProcess/WebPage/WebPage.messages.in:
815         Change unsigned to LayerHostingMode.
816
817 2016-09-14  Beth Dakin  <bdakin@apple.com>
818
819         dictionaryPopupInfoForRange() can change selection temporarily; updates should not 
820         be sent to the UIProcess.
821         https://bugs.webkit.org/show_bug.cgi?id=162008
822         -and corresponding-
823         rdar://problem/28312297
824
825         Reviewed by Tim Horton.
826
827         This patch prevents the selection changes that occur while gathering 
828         dictionaryPopupInfo from being propagated to the UIProcess.
829         * WebProcess/WebPage/WebPage.cpp:
830         (WebKit::WebPage::didChangeSelection):
831         * WebProcess/WebPage/WebPage.h:
832         * WebProcess/WebPage/mac/WebPageMac.mm:
833         (WebKit::WebPage::dictionaryPopupInfoForRange):
834
835 2016-09-14  Wenson Hsieh  <wenson_hsieh@apple.com>
836
837         Media controls behave strangely when changing media sources
838         https://bugs.webkit.org/show_bug.cgi?id=161914
839         <rdar://problem/28227805>
840
841         Reviewed by Tim Horton.
842
843         Allows a web page to have an active video for a media control manager even if no audio or video is currently
844         being produced. This is because the media element may be in a state where it is changing its source and does not
845         currently have a video or audio track.
846
847         * UIProcess/WebPageProxy.cpp:
848         (WebKit::WebPageProxy::hasActiveVideoForControlsManager):
849
850 2016-09-14  Beth Dakin  <bdakin@apple.com>
851
852         Add needsPlainTextQuirk and send it to the UIProcess
853         https://bugs.webkit.org/show_bug.cgi?id=161996
854         -and corresponding-
855         rdar://problem/26013388
856
857         Rubber-stamped by Simon Fraser.
858
859         Quick clean-up.
860         * WebProcess/WebPage/WebPage.cpp:
861         (WebKit::needsPlainTextQuirk):
862
863 2016-09-14  Beth Dakin  <bdakin@apple.com>
864
865         Add needsPlainTextQuirk and send it to the UIProcess
866         https://bugs.webkit.org/show_bug.cgi?id=161996
867         -and corresponding-
868         rdar://problem/26013388
869
870         Reviewed by Anders Carlsson.
871
872         WebPageProxy should keep track of m_needsPlainTextQuirk.
873         * UIProcess/WebPageProxy.cpp:
874         (WebKit::WebPageProxy::setNeedsPlainTextQuirk):
875         * UIProcess/WebPageProxy.h:
876         (WebKit::WebPageProxy::needsPlainTextQuirk):
877         (WebKit::WebPageProxy::needsHiddenContentEditableQuirk): Deleted.
878         * UIProcess/WebPageProxy.messages.in:
879
880         If m_needsPlainTextQuirk is true, set it back to false on page transition.
881         * WebProcess/WebPage/WebPage.cpp:
882         (WebKit::WebPage::didStartPageTransition):
883
884         The sites that need this quirk.
885         (WebKit::needsPlainTextQuirk):
886         (WebKit::WebPage::didChangeSelection):
887         * WebProcess/WebPage/WebPage.h:
888
889 2016-09-14  Eric Carlson  <eric.carlson@apple.com>
890
891         [MediaStream] Minor cleanup
892         https://bugs.webkit.org/show_bug.cgi?id=161976
893
894         Reviewed by Youenn Fablet and Dean Jackson.
895
896         * UIProcess/UserMediaPermissionRequestProxy.cpp:
897
898 2016-09-14  Beth Dakin  <bdakin@apple.com>
899
900         Add needsHiddenContentEditableQuirk and send it to the UIProcess
901         https://bugs.webkit.org/show_bug.cgi?id=161984
902         -and corresponding-
903         rdar://problem/26013388
904
905         Reviewed by Anders Carlsson.
906
907         Keep track of m_needsHiddenContentEditableQuirk in WebPageProxy.
908         * UIProcess/WebPageProxy.cpp:
909         (WebKit::WebPageProxy::setNeedsHiddenContentEditableQuirk):
910         * UIProcess/WebPageProxy.h:
911         (WebKit::WebPageProxy::needsHiddenContentEditableQuirk):
912         (WebKit::WebPageProxy::hasHadSelectionChangesFromUserInteraction): Deleted.
913         * UIProcess/WebPageProxy.messages.in:
914
915         If m_needsHiddenContentEditableQuirk is true, set it back to false on page 
916         transition.
917         * WebProcess/WebPage/WebPage.cpp:
918         (WebKit::WebPage::didStartPageTransition):
919
920         Google Docs and iCloud Pages are the sites that need this quirk.
921         (WebKit::needsHiddenContentEditableQuirk):
922         (WebKit::WebPage::didChangeSelection):
923         * WebProcess/WebPage/WebPage.h:
924
925 2016-09-14  Megan Gardner  <megan_gardner@apple.com>
926
927         Long tap menu on an image link no longer includes "Save Image" button
928         https://bugs.webkit.org/show_bug.cgi?id=161761
929         <rdar://27202717>
930
931         Reviewed by Beth Dakin.
932
933         * UIProcess/ios/WKActionSheetAssistant.mm:
934         (-[WKActionSheetAssistant defaultActionsForImageSheet:]):
935         Added share to image sheet as to not regress current functionality
936         * WebProcess/WebPage/ios/WebPageIOS.mm:
937         (WebKit::WebPage::getPositionInformation):
938         Gather information for images as well as links, and they can be both
939
940 2016-09-14  Carlos Garnacho  <carlosg@gnome.org>
941
942         [GTK][Wayland] Implement clipboard support
943         https://bugs.webkit.org/show_bug.cgi?id=146574
944
945         Reviewed by Carlos Garcia Campos.
946
947         Add the necessary plumbing for the GTK+ backend to use the
948         PlatformPasteboard in WebCore. All selection data is transmitted
949         at once through the serialization of PasteboardContentGtk/DataObjectGtk.
950
951         * PlatformGTK.cmake: Add PasteboardContentGtk.cpp and
952         WebPasteboardProxyGtk.cpp
953         * Shared/gtk/ArgumentCodersGtk.cpp:
954         (IPC::encode):
955         (IPC::decode): Renamed from encodeDataObject/decodeDataObject
956         and made public.
957         (IPC::ArgumentCoder<DragData>::encode):
958         (IPC::ArgumentCoder<DragData>::decode): Update DataObjectGtk
959         encode/decode callers. Encode the extra canSmartReplace field.
960         * Shared/gtk/ArgumentCodersGtk.h: Expose encode/decode methods for
961         DataObjectGtk.
962         * Shared/gtk/PasteboardContent.cpp: Added. Wraps a DataObjectGtk
963         so it can be serialized on WebProcess/UIProcess messaging.
964         (WebKit::PasteboardContent::PasteboardContent):
965         (WebKit::PasteboardContent::encode):
966         (WebKit::PasteboardContent::decode): Methods to encode/decode a
967         PasteboardContent.
968         * Shared/gtk/PasteboardContent.h: Added.
969         * UIProcess/WebFrameProxy.cpp:
970         (WebKit::WebFrameProxy::collapseSelection): Added plumbing to allow
971         collapsing the global selection from the UI process side.
972         * UIProcess/WebFrameProxy.h:
973         * UIProcess/WebPasteboardProxy.h:
974         * UIProcess/WebPasteboardProxy.messages.in: Added plumbing for the
975         GTK+ pasteboard proxy functions.
976         * UIProcess/gtk/WebPageProxyGtk.cpp:
977         (WebKit::WebPageProxy::editorStateChanged):
978         * UIProcess/gtk/WebPasteboardProxyGtk.cpp: Added.
979         (WebKit::WebPasteboardProxy::writeToClipboard):
980         (WebKit::WebPasteboardProxy::readFromClipboard): Implemented functions
981         hooking into the PlatformPasteboard. Per-selection (ie.
982         primary/clipboard) PlatformPasteboards are kept at this level, so those
983         are independently set and dealt with.
984         (WebKit::WebPasteboardProxy::setPrimarySelectionOwner):
985         (WebKit::WebPasteboardProxy::didDestroyFrame): Implemented functions
986         to manage the frame currently being currently interacted, so we can
987         signal back when the global selection has been replaced.
988         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
989         (WebKit::WebPlatformStrategies::writeToClipboard):
990         (WebKit::WebPlatformStrategies::readFromClipboard): Added methods to
991         send the WebProcess->UIProcess messages.
992         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
993         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
994         (WebKit::WebEditorClient::updateGlobalSelection): Remove GClosure to
995         get notifications about changes in global selection ownership. This
996         is done through a WebPage message now, as the UI process manages the
997         clipboard.
998         * WebProcess/WebPage/WebPage.h:
999         * WebProcess/WebPage/WebPage.messages.in:
1000         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
1001         (WebKit::WebPage::collapseSelectionInFrame): Added methods to send
1002         the UIProcess->WebProcess notification that the global selection has
1003         been replaced.
1004
1005 2016-09-13  Tim Horton  <timothy_horton@apple.com>
1006
1007         Provide a mechanism to specify the maximum size of WKThumbnailView snapshots
1008         https://bugs.webkit.org/show_bug.cgi?id=161896
1009         <rdar://problem/28229827>
1010
1011         Reviewed by Simon Fraser.
1012
1013         Some clients know that their thumbnail views will only be displayed up to
1014         a specific size that is significantly smaller than the WKView size. Allow
1015         them to avoid wasting lots of memory on unnecessarily large snapshots.
1016
1017         * UIProcess/API/Cocoa/_WKThumbnailView.h:
1018         * UIProcess/API/Cocoa/_WKThumbnailView.mm:
1019         (-[_WKThumbnailView requestSnapshot]):
1020         (-[_WKThumbnailView _requestSnapshotIfNeeded]):
1021         (-[_WKThumbnailView setMaximumSnapshotSize:]):
1022         Add a maximumSnapshotSize property which can be changed dynamically.
1023
1024 2016-09-13  Anders Carlsson  <andersca@apple.com>
1025
1026         REGRESSION (r196321): Amazon Videos are all black in Fullscreen
1027         https://bugs.webkit.org/show_bug.cgi?id=161924
1028         rdar://problem/28208208
1029
1030         Reviewed by Dan Bernstein.
1031
1032         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
1033         (main):
1034         Set AppleMagnifiedMode to true.
1035
1036 2016-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1037
1038         [GTK] Get rid of DataObjectGtk::forClipboard and cleanup pasteboard code
1039         https://bugs.webkit.org/show_bug.cgi?id=161907
1040
1041         Reviewed by Michael Catanzaro.
1042
1043         Update to DataObjectGtk and PasteboardHelper API changes.
1044
1045         * UIProcess/gtk/DragAndDropHandler.cpp:
1046         (WebKit::DragAndDropHandler::startDrag):
1047         (WebKit::DragAndDropHandler::fillDragData):
1048         (WebKit::DragAndDropHandler::dataObjectForDropData):
1049         * WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:
1050         (WebKit::WebDragClient::startDrag):
1051         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1052         (WebKit::collapseSelection):
1053         (WebKit::WebEditorClient::updateGlobalSelection): Remove wrong X11 guards, since that code is not X11 specific.
1054
1055 2016-09-12  DAN SAUNDERS  <dasau@microsoft.com>
1056
1057         AX: WKWebView for macOS does not allow configuration of tabsToLinks
1058         https://bugs.webkit.org/show_bug.cgi?id=161394
1059
1060         Reviewed by Anders Carlsson.
1061
1062         * UIProcess/API/Cocoa/WKPreferences.h:
1063         * UIProcess/API/Cocoa/WKPreferences.mm:
1064         (-[WKPreferences encodeWithCoder:]):
1065         (-[WKPreferences initWithCoder:]):
1066         (-[WKPreferences tabFocusesLinks]):
1067         (-[WKPreferences setTabFocusesLinks:]):
1068
1069 2016-09-12  Saam Barati  <sbarati@apple.com>
1070
1071         Add WebKit support for an option in Safari's debug menu similar to "Get Bytecode Profile" but for the Sampling Profiler's data
1072         https://bugs.webkit.org/show_bug.cgi?id=161785
1073
1074         Reviewed by Tim Horton.
1075
1076         This patch follows in the steps of how we dump output for the
1077         internal JSC bytecode profiler tool, but now also for the internal
1078         JSC sampling profiler tool. This can be used when doing performance
1079         analysis work analyzing the JS execution of a page.
1080
1081         * UIProcess/API/C/WKPage.cpp:
1082         (WKPageGetSamplingProfilerOutput):
1083         * UIProcess/API/C/WKPagePrivate.h:
1084         * UIProcess/WebPageProxy.cpp:
1085         (WebKit::WebPageProxy::getSamplingProfilerOutput):
1086         (WebKit::WebPageProxy::invalidateStringCallback):
1087         * UIProcess/WebPageProxy.h:
1088         * UIProcess/WebPageProxy.messages.in:
1089         * WebProcess/WebPage/WebPage.cpp:
1090         (WebKit::WebPage::getSamplingProfilerOutput):
1091         * WebProcess/WebPage/WebPage.h:
1092         * WebProcess/WebPage/WebPage.messages.in:
1093
1094 2016-09-12  Keith Rollin  <krollin@apple.com>
1095
1096         Enhance Network logging
1097         https://bugs.webkit.org/show_bug.cgi?id=161771
1098
1099         Reviewed by Antti Koivisto.
1100
1101         Modify current logging statements to follow a consistent pattern in
1102         order to enhance readability and parsing.
1103
1104         * NetworkProcess/Downloads/Download.cpp:
1105         (WebKit::Download::didReceiveResponse):
1106         (WebKit::Download::didReceiveData):
1107         (WebKit::Download::didFinish):
1108         (WebKit::Download::didFail):
1109         (WebKit::Download::didCancel):
1110         * NetworkProcess/NetworkResourceLoader.cpp:
1111         (WebKit::NetworkResourceLoader::startNetworkLoad):
1112         (WebKit::NetworkResourceLoader::didFinishLoading):
1113         (WebKit::NetworkResourceLoader::didFailLoading):
1114         (WebKit::NetworkResourceLoader::continueWillSendRequest):
1115         * WebProcess/Network/WebLoaderStrategy.cpp:
1116         (WebKit::WebLoaderStrategy::scheduleLoad):
1117         * WebProcess/Network/WebResourceLoader.cpp:
1118         (WebKit::WebResourceLoader::willSendRequest):
1119         (WebKit::WebResourceLoader::didReceiveResponse):
1120         (WebKit::WebResourceLoader::didReceiveData):
1121         (WebKit::WebResourceLoader::didFinishResourceLoad):
1122         (WebKit::WebResourceLoader::didFailResourceLoad):
1123         (WebKit::WebResourceLoader::didReceiveResource):
1124
1125 2016-09-09  Tim Horton  <timothy_horton@apple.com>
1126
1127         WKThumbnailView should expose a mode where it can be reparented without resnapshotting
1128         https://bugs.webkit.org/show_bug.cgi?id=161828
1129         <rdar://problem/28229756>
1130
1131         Reviewed by Alex Christensen.
1132
1133         * UIProcess/API/Cocoa/_WKThumbnailView.h:
1134         * UIProcess/API/Cocoa/_WKThumbnailView.mm:
1135         (-[_WKThumbnailView initWithFrame:fromWKView:]):
1136         (-[_WKThumbnailView _viewWasUnparented]):
1137         Add such a mode. Bail from snapshot teardown when unparented if it is on.
1138
1139 2016-09-08  Dean Jackson  <dino@apple.com>
1140
1141         Expose Apple Pencil data to Touch events
1142         https://bugs.webkit.org/show_bug.cgi?id=161783
1143         <rdar://problem/28218898>
1144
1145         Reviewed by Beth Dakin.
1146
1147         * Platform/spi/ios/UIKitSPI.h: Expose the new SPI. Since this is only used
1148         on public builds, guard it against everything that is <= iOS 10.0.
1149         * Shared/WebEvent.h: New properties.
1150         (WebKit::WebPlatformTouchPoint::setAltitudeAngle):
1151         (WebKit::WebPlatformTouchPoint::altitudeAngle):
1152         (WebKit::WebPlatformTouchPoint::setAzimuthAngle):
1153         (WebKit::WebPlatformTouchPoint::azimuthAngle):
1154         (WebKit::WebPlatformTouchPoint::setTouchType):
1155         (WebKit::WebPlatformTouchPoint::touchType):
1156         (WebKit::WebPlatformTouchPoint::force): Deleted.
1157         * Shared/WebEventConversion.cpp:
1158         (WebKit::webPlatformTouchTypeToPlatform):
1159         (WebKit::WebKit2PlatformTouchPoint::WebKit2PlatformTouchPoint): More
1160         parameters sent to parent constructor.
1161         * Shared/ios/NativeWebTouchEventIOS.mm:
1162         (WebKit::convertTouchType):
1163         (WebKit::NativeWebTouchEvent::extractWebTouchPoint):
1164         * Shared/ios/WebPlatformTouchPointIOS.cpp:
1165         (WebKit::WebPlatformTouchPoint::encode):
1166         (WebKit::WebPlatformTouchPoint::decode):
1167
1168 2016-09-09  Tim Horton  <timothy_horton@apple.com>
1169
1170         Text replacement candidates don't always overwrite the entire original string
1171         https://bugs.webkit.org/show_bug.cgi?id=161779
1172         <rdar://problem/28033492>
1173
1174         Reviewed by Simon Fraser.
1175
1176         * WebProcess/WebPage/mac/WebPageMac.mm:
1177         (WebKit::WebPage::platformEditorState):
1178         Make use of the shared implementation of contextRangeForCandidateRequest.
1179
1180 2016-09-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1181
1182         Unreviewed. Fix GTK+ build after r205689.
1183
1184         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.cpp:
1185         (webkit_dom_html_o_list_element_set_start):
1186
1187 2016-09-08  Dan Bernstein  <mitz@apple.com>
1188
1189         Re-landing the fix for
1190
1191         [Mac] .tbd files for the shims end up installed when building with GENERATE_TEXT_BASED_STUBS=YES
1192         https://bugs.webkit.org/show_bug.cgi?id=161722
1193
1194         without reintroducing https://webkit.org/b/161782
1195
1196         * Configurations/Shim.xcconfig: Don’t install the shims. The Copy Shims build phase in the
1197           WebKit target will copy them into place without bringing their .tbd files along. Keep the
1198           install path set, though, because it determines the dylibs’ install names.
1199
1200 2016-09-08  Commit Queue  <commit-queue@webkit.org>
1201
1202         Unreviewed, rolling out r205576.
1203         https://bugs.webkit.org/show_bug.cgi?id=161782
1204
1205         Introduced a crash at launch and broke all our Mac perf
1206         testing (Requested by rniwa on #webkit).
1207
1208         Reverted changeset:
1209
1210         "[Mac] .tbd files for the shims end up installed when building
1211         with GENERATE_TEXT_BASED_STUBS=YES"
1212         https://bugs.webkit.org/show_bug.cgi?id=161722
1213         http://trac.webkit.org/changeset/205576
1214
1215 2016-09-08  Said Abou-Hallawa  <sabouhallawa@apple.com>
1216
1217         Move the BitmapImage platform dependent code to a new file named NativeImage[CG|Cairo].cpp
1218         https://bugs.webkit.org/show_bug.cgi?id=158684
1219
1220         Reviewed by Simon Fraser.
1221
1222         * UIProcess/API/C/cg/WKIconDatabaseCG.cpp:
1223         (WKIconDatabaseTryGetCGImageForURL):
1224         (WKIconDatabaseTryCopyCGImageArrayForURL):
1225         It was the only place in the code which uses BitmapImage::getCGImageArray().
1226         Call BitmapImage::framesNativeImages() instead and form the returned
1227         Vector<NativeImagePtr> build the CFArrayRef.
1228
1229         * UIProcess/WebIconDatabase.h:
1230         Include "NativeImage.h" instead of "NativeImagePtr.h".
1231         
1232         * UIProcess/ios/WKContentViewInteraction.mm:
1233         (-[WKContentView _presentationSnapshotForPreviewItemController:]):
1234         * WebProcess/Plugins/PluginView.cpp:
1235         (WebKit::isAlmostSolidColor):
1236         Call BitmapImage::getCGImageRef() instead of calling BitmapImage::nativeImage().
1237
1238 2016-09-08  Zan Dobersek  <zdobersek@igalia.com>
1239
1240         Move webkit2gtk.pc.in, webkit2gtk-web-extension.pc.in files under Source/WebKit2/gtk/
1241         https://bugs.webkit.org/show_bug.cgi?id=161703
1242
1243         Reviewed by Carlos Garcia Campos.
1244
1245         Move the pkg-config input files that are specific to the GTK+ port
1246         under the Source/WebKit2/gtk/ directory. Build rules are updated
1247         accordingly.
1248
1249         * PlatformGTK.cmake:
1250         * gtk/webkit2gtk-web-extension.pc.in: Renamed from Source/WebKit2/webkit2gtk-web-extension.pc.in.
1251         * gtk/webkit2gtk.pc.in: Renamed from Source/WebKit2/webkit2gtk.pc.in.
1252
1253 2016-09-07  Joseph Pecoraro  <pecoraro@apple.com>
1254
1255         [Mac] Address some clang static analyzer warnings in WebKit
1256         https://bugs.webkit.org/show_bug.cgi?id=161597
1257
1258         Reviewed by Darin Adler.
1259
1260         * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm:
1261         (-[WKLayerHostView makeBackingLayer]):
1262         * UIProcess/mac/WKSharingServicePickerDelegate.mm:
1263         (-[WKSharingServicePickerDelegate sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]):
1264         * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
1265         (-[WKDOMRange rangeByExpandingToWordBoundaryByCharacters:inDirection:]):
1266         Address leaks caught by the static analyzer.
1267
1268 2016-09-07  Zan Dobersek  <zdobersek@igalia.com>
1269
1270         [GTK] Remove stale WebSoupRequestManager headers
1271         https://bugs.webkit.org/show_bug.cgi?id=161691
1272
1273         Reviewed by Sergio Villar Senin.
1274
1275         WebSoupRequestManager, WebSoupRequestManagerProxy and WebSoupRequestManagerClient
1276         classes were used to implement custom URI scheme support for Soup. This API and
1277         the implementations of these classes were removed in r174584, but curiously the
1278         headers went unnoticed. This patch removes them, as well as the
1279         WebSoupRequestManagerProxy forwarding declaration in WKAPICastSoup.h.
1280
1281         * UIProcess/API/C/soup/WKAPICastSoup.h:
1282         * UIProcess/soup/WebSoupRequestManagerClient.h: Removed.
1283         * UIProcess/soup/WebSoupRequestManagerProxy.h: Removed.
1284         (WebKit::WebSoupRequestManagerProxy::registeredURISchemes): Deleted.
1285         * WebProcess/soup/WebSoupRequestManager.h: Removed.
1286
1287 2016-09-07  Simon Fraser  <simon.fraser@apple.com>
1288
1289         Enable the <meter> element on iOS
1290         https://bugs.webkit.org/show_bug.cgi?id=161714
1291         rdar://problem/8978410
1292
1293         Reviewed by Tim Horton.
1294
1295         Define ENABLE_METER_ELEMENT unconditionally now.
1296
1297         * Configurations/FeatureDefines.xcconfig:
1298
1299 2016-09-07  Dan Bernstein  <mitz@apple.com>
1300
1301         [Mac] .tbd files for the shims end up installed when building with GENERATE_TEXT_BASED_STUBS=YES
1302         https://bugs.webkit.org/show_bug.cgi?id=161722
1303
1304         Reviewed by Anders Carlsson.
1305
1306         * Configurations/Shim.xcconfig: Don’t install the shims. The Copy Shims build phase in the
1307           WebKit target will copy them into place without bringing their .tbd files along.
1308
1309 2016-09-07  Mark Lam  <mark.lam@apple.com>
1310
1311         Add CatchScope and force all exception checks to be via ThrowScope or CatchScope.
1312         https://bugs.webkit.org/show_bug.cgi?id=161498
1313
1314         Reviewed by Geoffrey Garen.
1315
1316         * WebProcess/Plugins/Netscape/NPJSObject.cpp:
1317         (WebKit::NPJSObject::hasMethod):
1318         (WebKit::NPJSObject::hasProperty):
1319         (WebKit::NPJSObject::getProperty):
1320         (WebKit::NPJSObject::setProperty):
1321         (WebKit::NPJSObject::removeProperty):
1322         (WebKit::NPJSObject::construct):
1323         (WebKit::NPJSObject::invoke):
1324
1325 2016-09-07  Konstantin Tokarev  <annulen@yandex.ru>
1326
1327         [GTK] Make inspection of Inspector conditional on DEVELOPER_MODE
1328         https://bugs.webkit.org/show_bug.cgi?id=161702
1329
1330         Reviewed by Michael Catanzaro.
1331
1332         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
1333         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1334
1335 2016-09-07  Dan Bernstein  <mitz@apple.com>
1336
1337         [Cocoa] Update availability attributes per the macOS Sierra and iOS 10 GM seeds
1338         https://bugs.webkit.org/show_bug.cgi?id=161704
1339
1340         Reviewed by Anders Carlsson.
1341
1342         * Shared/API/Cocoa/_WKHitTestResult.h:
1343         * UIProcess/API/Cocoa/WKErrorPrivate.h:
1344         * UIProcess/API/Cocoa/WKFrameInfoPrivate.h:
1345         * UIProcess/API/Cocoa/WKMenuItemIdentifiersPrivate.h:
1346         * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
1347         * UIProcess/API/Cocoa/WKOpenPanelParameters.h:
1348         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
1349         * UIProcess/API/Cocoa/WKPreviewActionItem.h:
1350         * UIProcess/API/Cocoa/WKPreviewActionItemIdentifiers.h:
1351         * UIProcess/API/Cocoa/WKPreviewElementInfo.h:
1352         * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
1353         * UIProcess/API/Cocoa/WKUIDelegate.h:
1354         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
1355         * UIProcess/API/Cocoa/WKUserContentControllerPrivate.h:
1356         * UIProcess/API/Cocoa/WKUserScriptPrivate.h:
1357         * UIProcess/API/Cocoa/WKWebView.h:
1358         * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
1359         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
1360         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1361         * UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h:
1362         * UIProcess/API/Cocoa/WKWebsiteDataStorePrivate.h:
1363         * UIProcess/API/Cocoa/_WKActivatedElementInfo.h:
1364         * UIProcess/API/Cocoa/_WKAutomationSession.h:
1365         * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
1366         * UIProcess/API/Cocoa/_WKElementAction.h:
1367         * UIProcess/API/Cocoa/_WKExperimentalFeature.h:
1368         * UIProcess/API/Cocoa/_WKFormInputSession.h:
1369         * UIProcess/API/Cocoa/_WKInputDelegate.h:
1370         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
1371         * UIProcess/API/Cocoa/_WKUserContentExtensionStore.h:
1372         * UIProcess/API/Cocoa/_WKUserContentWorld.h:
1373         * UIProcess/API/Cocoa/_WKUserInitiatedAction.h:
1374         * UIProcess/API/Cocoa/_WKUserStyleSheet.h:
1375         * UIProcess/API/Cocoa/_WKWebsiteDataSize.h:
1376         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h:
1377         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h:
1378         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.h:
1379
1380 2016-09-07  Michael Catanzaro  <mcatanzaro@igalia.com>
1381
1382         [EFL] Switch to ENABLE_NETWORK_CACHE
1383         https://bugs.webkit.org/show_bug.cgi?id=152676
1384
1385         Reviewed by Alex Christensen.
1386
1387         Nowadays GTK+ always uses the network cache, and never the soup cache. Remove support for
1388         using the soup cache, and switch the EFL port to use network cache.
1389
1390         * NetworkProcess/cache/NetworkCacheBlobStorage.cpp:
1391         (WebKit::NetworkCache::BlobStorage::add): Check return value of link to placate
1392         -Werror=unused-result on EFL builder
1393         * NetworkProcess/efl/NetworkProcessMainEfl.cpp:
1394         * NetworkProcess/soup/NetworkProcessSoup.cpp:
1395         (WebKit::getCacheDiskFreeSize):
1396         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
1397         (WebKit::NetworkProcess::platformSetCacheModel):
1398         (WebKit::NetworkProcess::clearDiskCache):
1399         * PlatformEfl.cmake: Add files to build.
1400         * UIProcess/API/efl/APIWebsiteDataStoreEfl.cpp:
1401         (API::WebsiteDataStore::defaultNetworkCacheDirectory): Use a saner location.
1402         * UIProcess/API/gtk/APIWebsiteDataStoreGtk.cpp:
1403         (API::WebsiteDataStore::defaultNetworkCacheDirectory):
1404         * UIProcess/API/gtk/WebKitPrivate.h:
1405         * UIProcess/soup/WebProcessPoolSoup.cpp:
1406         (WebKit::WebProcessPool::platformInitializeNetworkProcess):
1407         * WebProcess/efl/WebProcessMainEfl.cpp:
1408         * config.h:
1409
1410 2016-09-07  Youenn Fablet  <youenn@apple.com>
1411
1412         [Streams API] Separate compile flag for ReadableStream and WritableStream
1413         https://bugs.webkit.org/show_bug.cgi?id=161044
1414
1415         Reviewed by Alex Christensen.
1416
1417         Moving from STREAMS_API to READABLE_STREAM_API and WRITABLE_STREAM_API compilation flags.
1418
1419         * Configurations/FeatureDefines.xcconfig:
1420
1421 2016-09-07  Emanuele Aina  <emanuele.aina@collabora.com>
1422
1423         [GTK] Clarify frame callbacks behaviour in Wayland compositor
1424         https://bugs.webkit.org/show_bug.cgi?id=161683
1425
1426         Reviewed by Carlos Garcia Campos.
1427
1428         The way we fire frame callbacks in the nested Wayland compositor can
1429         be puzzling to developers expecting Wayland semantics, but since we
1430         have our own mechanism to handle synchronization we don't care much
1431         about them. Add a comment to avoid surprised Wayland developers.
1432
1433         * UIProcess/gtk/WaylandCompositor.cpp:
1434         (WebKit::WaylandCompositor::Surface::commit):
1435
1436 2016-09-07  Csaba Osztrogonác  <ossy@webkit.org>
1437
1438         URTBF after r205369, just for fun.
1439
1440         * PlatformMac.cmake: Added new files.
1441
1442 2016-09-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1443
1444         [GTK] Remove unused GObject DOM unstable API
1445         https://bugs.webkit.org/show_bug.cgi?id=161440
1446
1447         Reviewed by Philippe Normand.
1448
1449         Remove unstable GObject DOM API now that we no longer auto-generate the bindings.
1450
1451         * PlatformGTK.cmake:
1452         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimatable.cpp: Removed.
1453         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimatable.h: Removed.
1454         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationEffect.cpp: Removed.
1455         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationEffect.h: Removed.
1456         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationEffectPrivate.h: Removed.
1457         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationTimeline.cpp: Removed.
1458         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationTimeline.h: Removed.
1459         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAnimationTimelinePrivate.h: Removed.
1460         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttr.cpp:
1461         (webkit_dom_attr_get_property):
1462         (webkit_dom_attr_class_init):
1463         (webkit_dom_attr_get_prefix): Deleted.
1464         (webkit_dom_attr_get_local_name): Deleted.
1465         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAttrUnstable.h: Removed.
1466         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrack.cpp: Removed.
1467         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrack.h: Removed.
1468         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrackList.cpp: Removed.
1469         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrackList.h: Removed.
1470         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrackListPrivate.h: Removed.
1471         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMAudioTrackPrivate.h: Removed.
1472         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBarProp.cpp: Removed.
1473         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBarProp.h: Removed.
1474         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBarPropPrivate.h: Removed.
1475         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBatteryManager.cpp: Removed.
1476         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBatteryManager.h: Removed.
1477         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBatteryManagerPrivate.h: Removed.
1478         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlob.cpp:
1479         (webkit_dom_blob_get_property):
1480         (webkit_dom_blob_class_init):
1481         (webkit_dom_blob_get_size):
1482         (webkit_dom_blob_init): Deleted.
1483         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMBlobUnstable.h: Removed.
1484         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRule.cpp:
1485         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCSSRuleUnstable.h: Removed.
1486         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterData.cpp:
1487         (webkit_dom_character_data_get_property):
1488         (webkit_dom_character_data_class_init):
1489         (webkit_dom_character_data_get_length):
1490         (webkit_dom_character_data_set_property): Deleted.
1491         (webkit_dom_character_data_substring_data): Deleted.
1492         (webkit_dom_character_data_append_data): Deleted.
1493         (webkit_dom_character_data_insert_data): Deleted.
1494         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCharacterDataUnstable.h: Removed.
1495         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMApplicationCache.cpp: Removed.
1496         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMApplicationCache.h: Removed.
1497         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMApplicationCachePrivate.h: Removed.
1498         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMCSSNamespace.cpp: Removed.
1499         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMCSSNamespace.h: Removed.
1500         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMCSSNamespacePrivate.h: Removed.
1501         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeType.cpp: Removed.
1502         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeType.h: Removed.
1503         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeTypeArray.cpp: Removed.
1504         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeTypeArray.h: Removed.
1505         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeTypeArrayPrivate.h: Removed.
1506         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMMimeTypePrivate.h: Removed.
1507         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMNamedFlowCollection.cpp: Removed.
1508         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMNamedFlowCollection.h: Removed.
1509         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMNamedFlowCollectionPrivate.h: Removed.
1510         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPlugin.cpp: Removed.
1511         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPlugin.h: Removed.
1512         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPluginArray.cpp: Removed.
1513         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPluginArray.h: Removed.
1514         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPluginArrayPrivate.h: Removed.
1515         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMPluginPrivate.h: Removed.
1516         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringList.cpp: Removed.
1517         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringList.h: Removed.
1518         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringListPrivate.h: Removed.
1519         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringMap.cpp: Removed.
1520         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringMap.h: Removed.
1521         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMStringMapPrivate.h: Removed.
1522         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.h:
1523         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowSpeechSynthesis.cpp: Removed.
1524         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowSpeechSynthesis.h: Removed.
1525         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDataCue.cpp: Removed.
1526         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDataCue.h: Removed.
1527         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDataCuePrivate.h: Removed.
1528         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDatabase.cpp: Removed.
1529         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDatabase.h: Removed.
1530         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDatabasePrivate.h: Removed.
1531         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentAnimation.cpp: Removed.
1532         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentAnimation.h: Removed.
1533         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentTimeline.cpp: Removed.
1534         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentTimeline.h: Removed.
1535         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentTimelinePrivate.h: Removed.
1536         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.cpp:
1537         (webkit_dom_document_type_get_name): Deleted.
1538         (webkit_dom_document_type_get_entities): Deleted.
1539         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentTypeUnstable.h: Removed.
1540         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEvent.cpp:
1541         (webkit_dom_event_get_property):
1542         (webkit_dom_event_class_init):
1543         (webkit_dom_event_init): Deleted.
1544         (webkit_dom_event_stop_propagation): Deleted.
1545         (webkit_dom_event_get_bubbles): Deleted.
1546         (webkit_dom_event_get_cancelable): Deleted.
1547         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMEventUnstable.h: Removed.
1548         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFile.cpp:
1549         (webkit_dom_file_get_property):
1550         (webkit_dom_file_class_init):
1551         (webkit_dom_file_get_name):
1552         (webkit_dom_file_init): Deleted.
1553         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMFileUnstable.h: Removed.
1554         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGamepad.cpp: Removed.
1555         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGamepad.h: Removed.
1556         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGamepadList.cpp: Removed.
1557         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGamepadList.h: Removed.
1558         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGeolocation.cpp: Removed.
1559         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGeolocation.h: Removed.
1560         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMGeolocationPrivate.h: Removed.
1561         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.cpp:
1562         (webkit_dom_html_anchor_element_set_property):
1563         (webkit_dom_html_anchor_element_get_property):
1564         (webkit_dom_html_anchor_element_class_init):
1565         (webkit_dom_html_anchor_element_init): Deleted.
1566         (webkit_dom_html_anchor_element_get_charset): Deleted.
1567         (webkit_dom_html_anchor_element_set_charset): Deleted.
1568         (webkit_dom_html_anchor_element_get_coords): Deleted.
1569         (webkit_dom_html_anchor_element_set_coords): Deleted.
1570         (webkit_dom_html_anchor_element_get_target): Deleted.
1571         (webkit_dom_html_anchor_element_set_target): Deleted.
1572         (webkit_dom_html_anchor_element_get_type_attr): Deleted.
1573         (webkit_dom_html_anchor_element_set_type_attr): Deleted.
1574         (webkit_dom_html_anchor_element_set_href): Deleted.
1575         (webkit_dom_html_anchor_element_get_protocol): Deleted.
1576         (webkit_dom_html_anchor_element_set_protocol): Deleted.
1577         (webkit_dom_html_anchor_element_set_hash): Deleted.
1578         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElement.h:
1579         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAnchorElementUnstable.h: Removed.
1580         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.cpp:
1581         (webkit_dom_html_area_element_set_property):
1582         (webkit_dom_html_area_element_get_property):
1583         (webkit_dom_html_area_element_class_init):
1584         (webkit_dom_html_area_element_init): Deleted.
1585         (webkit_dom_html_area_element_get_alt): Deleted.
1586         (webkit_dom_html_area_element_set_alt): Deleted.
1587         (webkit_dom_html_area_element_get_coords): Deleted.
1588         (webkit_dom_html_area_element_set_coords): Deleted.
1589         (webkit_dom_html_area_element_get_hostname): Deleted.
1590         (webkit_dom_html_area_element_set_hostname): Deleted.
1591         (webkit_dom_html_area_element_get_port): Deleted.
1592         (webkit_dom_html_area_element_set_port): Deleted.
1593         (webkit_dom_html_area_element_get_pathname): Deleted.
1594         (webkit_dom_html_area_element_get_hash): Deleted.
1595         (webkit_dom_html_area_element_set_hash): Deleted.
1596         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElement.h:
1597         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAreaElementUnstable.h: Removed.
1598         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAudioElement.cpp: Removed.
1599         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAudioElement.h: Removed.
1600         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLAudioElementPrivate.h: Removed.
1601         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElement.cpp:
1602         (webkit_dom_html_button_element_set_property):
1603         (webkit_dom_html_button_element_get_property):
1604         (webkit_dom_html_button_element_class_init):
1605         (webkit_dom_html_button_element_get_will_validate):
1606         (webkit_dom_html_button_element_get_autofocus): Deleted.
1607         (webkit_dom_html_button_element_set_autofocus): Deleted.
1608         (webkit_dom_html_button_element_get_disabled): Deleted.
1609         (webkit_dom_html_button_element_set_disabled): Deleted.
1610         (webkit_dom_html_button_element_get_form): Deleted.
1611         (webkit_dom_html_button_element_get_button_type): Deleted.
1612         (webkit_dom_html_button_element_set_button_type): Deleted.
1613         (webkit_dom_html_button_element_get_name): Deleted.
1614         (webkit_dom_html_button_element_set_value): Deleted.
1615         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLButtonElementUnstable.h: Removed.
1616         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDetailsElement.cpp: Removed.
1617         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDetailsElement.h: Removed.
1618         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLDetailsElementPrivate.h: Removed.
1619         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElement.cpp:
1620         (webkit_dom_html_field_set_element_get_property):
1621         (webkit_dom_html_field_set_element_class_init):
1622         (webkit_dom_html_field_set_element_get_form):
1623         (webkit_dom_html_field_set_element_init): Deleted.
1624         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFieldSetElementUnstable.h: Removed.
1625         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElement.cpp:
1626         (webkit_dom_html_form_element_set_property):
1627         (webkit_dom_html_form_element_get_property):
1628         (webkit_dom_html_form_element_class_init):
1629         (webkit_dom_html_form_element_get_length):
1630         (webkit_dom_html_form_element_submit): Deleted.
1631         (webkit_dom_html_form_element_reset): Deleted.
1632         (webkit_dom_html_form_element_get_action): Deleted.
1633         (webkit_dom_html_form_element_set_action): Deleted.
1634         (webkit_dom_html_form_element_get_enctype): Deleted.
1635         (webkit_dom_html_form_element_set_encoding): Deleted.
1636         (webkit_dom_html_form_element_get_method): Deleted.
1637         (webkit_dom_html_form_element_set_method): Deleted.
1638         (webkit_dom_html_form_element_set_target): Deleted.
1639         (webkit_dom_html_form_element_get_elements): Deleted.
1640         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLFormElementUnstable.h: Removed.
1641         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElement.cpp:
1642         (webkit_dom_html_html_element_set_property):
1643         (webkit_dom_html_html_element_get_property):
1644         (webkit_dom_html_html_element_class_init):
1645         (webkit_dom_html_html_element_set_version):
1646         (webkit_dom_html_html_element_get_version): Deleted.
1647         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLHtmlElementUnstable.h: Removed.
1648         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElement.cpp:
1649         (webkit_dom_html_iframe_element_set_property):
1650         (webkit_dom_html_iframe_element_get_property):
1651         (webkit_dom_html_iframe_element_class_init):
1652         (webkit_dom_html_iframe_element_init): Deleted.
1653         (webkit_dom_html_iframe_element_set_src): Deleted.
1654         (webkit_dom_html_iframe_element_get_width): Deleted.
1655         (webkit_dom_html_iframe_element_set_width): Deleted.
1656         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLIFrameElementUnstable.h: Removed.
1657         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElement.cpp:
1658         (webkit_dom_html_image_element_set_property):
1659         (webkit_dom_html_image_element_get_property):
1660         (webkit_dom_html_image_element_class_init):
1661         (webkit_dom_html_image_element_set_long_desc): Deleted.
1662         (webkit_dom_html_image_element_get_src): Deleted.
1663         (webkit_dom_html_image_element_set_src): Deleted.
1664         (webkit_dom_html_image_element_get_natural_height): Deleted.
1665         (webkit_dom_html_image_element_get_natural_width): Deleted.
1666         (webkit_dom_html_image_element_get_x): Deleted.
1667         (webkit_dom_html_image_element_get_y): Deleted.
1668         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLImageElementUnstable.h: Removed.
1669         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
1670         (webkit_dom_html_input_element_set_property):
1671         (webkit_dom_html_input_element_get_property):
1672         (webkit_dom_html_input_element_class_init):
1673         (webkit_dom_html_input_element_set_capture_type):
1674         (webkit_dom_html_input_element_init): Deleted.
1675         (webkit_dom_html_input_element_select): Deleted.
1676         (webkit_dom_html_input_element_get_accept): Deleted.
1677         (webkit_dom_html_input_element_set_accept): Deleted.
1678         (webkit_dom_html_input_element_get_alt): Deleted.
1679         (webkit_dom_html_input_element_set_alt): Deleted.
1680         (webkit_dom_html_input_element_get_default_checked): Deleted.
1681         (webkit_dom_html_input_element_set_default_checked): Deleted.
1682         (webkit_dom_html_input_element_get_checked): Deleted.
1683         (webkit_dom_html_input_element_set_checked): Deleted.
1684         (webkit_dom_html_input_element_get_disabled): Deleted.
1685         (webkit_dom_html_input_element_get_files): Deleted.
1686         (webkit_dom_html_input_element_set_files): Deleted.
1687         (webkit_dom_html_input_element_set_height): Deleted.
1688         (webkit_dom_html_input_element_get_indeterminate): Deleted.
1689         (webkit_dom_html_input_element_get_max_length): Deleted.
1690         (webkit_dom_html_input_element_set_max_length): Deleted.
1691         (webkit_dom_html_input_element_get_name): Deleted.
1692         (webkit_dom_html_input_element_set_name): Deleted.
1693         (webkit_dom_html_input_element_get_size): Deleted.
1694         (webkit_dom_html_input_element_set_size): Deleted.
1695         (webkit_dom_html_input_element_get_src): Deleted.
1696         (webkit_dom_html_input_element_set_input_type): Deleted.
1697         (webkit_dom_html_input_element_get_default_value): Deleted.
1698         (webkit_dom_html_input_element_set_default_value): Deleted.
1699         (webkit_dom_html_input_element_set_value): Deleted.
1700         (webkit_dom_html_input_element_get_width): Deleted.
1701         (webkit_dom_html_input_element_set_width): Deleted.
1702         (webkit_dom_html_input_element_get_will_validate): Deleted.
1703         (webkit_dom_html_input_element_get_align): Deleted.
1704         (webkit_dom_html_input_element_set_align): Deleted.
1705         (webkit_dom_html_input_element_get_use_map): Deleted.
1706         (webkit_dom_html_input_element_set_use_map): Deleted.
1707         (webkit_dom_html_input_element_get_capture_type): Deleted.
1708         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h:
1709         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElementUnstable.h: Removed.
1710         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLKeygenElement.cpp: Removed.
1711         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLKeygenElement.h: Removed.
1712         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLKeygenElementPrivate.h: Removed.
1713         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElement.cpp:
1714         (webkit_dom_html_label_element_get_property):
1715         (webkit_dom_html_label_element_class_init):
1716         (webkit_dom_html_label_element_init): Deleted.
1717         (webkit_dom_html_label_element_get_form): Deleted.
1718         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLabelElementUnstable.h: Removed.
1719         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.cpp:
1720         (webkit_dom_html_link_element_set_property):
1721         (webkit_dom_html_link_element_get_property):
1722         (webkit_dom_html_link_element_class_init):
1723         (webkit_dom_html_link_element_get_disabled): Deleted.
1724         (webkit_dom_html_link_element_set_disabled): Deleted.
1725         (webkit_dom_html_link_element_get_charset): Deleted.
1726         (webkit_dom_html_link_element_set_charset): Deleted.
1727         (webkit_dom_html_link_element_get_href): Deleted.
1728         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.h:
1729         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElementUnstable.h: Removed.
1730         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElement.cpp:
1731         (webkit_dom_html_marquee_element_class_init):
1732         (webkit_dom_html_marquee_element_stop):
1733         (webkit_dom_html_marquee_element_init): Deleted.
1734         (webkit_dom_html_marquee_element_start): Deleted.
1735         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMarqueeElementUnstable.h: Removed.
1736         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMediaElement.cpp: Removed.
1737         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMediaElement.h: Removed.
1738         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLMediaElementPrivate.h: Removed.
1739         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElement.cpp:
1740         (webkit_dom_html_o_list_element_set_property):
1741         (webkit_dom_html_o_list_element_get_property):
1742         (webkit_dom_html_o_list_element_class_init):
1743         (webkit_dom_html_o_list_element_init): Deleted.
1744         (webkit_dom_html_o_list_element_get_compact): Deleted.
1745         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOListElementUnstable.h: Removed.
1746         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElement.cpp:
1747         (webkit_dom_html_object_element_get_property):
1748         (webkit_dom_html_object_element_class_init):
1749         (webkit_dom_html_object_element_set_property): Deleted.
1750         (webkit_dom_html_object_element_get_form): Deleted.
1751         (webkit_dom_html_object_element_get_code): Deleted.
1752         (webkit_dom_html_object_element_set_code): Deleted.
1753         (webkit_dom_html_object_element_get_align): Deleted.
1754         (webkit_dom_html_object_element_set_align): Deleted.
1755         (webkit_dom_html_object_element_get_archive): Deleted.
1756         (webkit_dom_html_object_element_set_archive): Deleted.
1757         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLObjectElementUnstable.h: Removed.
1758         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollection.cpp:
1759         (webkit_dom_html_options_collection_get_selected_index): Deleted.
1760         (webkit_dom_html_options_collection_set_selected_index): Deleted.
1761         (webkit_dom_html_options_collection_get_length): Deleted.
1762         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLOptionsCollectionUnstable.h: Removed.
1763         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLPrivate.cpp:
1764         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.cpp:
1765         (webkit_dom_html_script_element_set_property):
1766         (webkit_dom_html_script_element_get_property):
1767         (webkit_dom_html_script_element_class_init):
1768         (webkit_dom_html_script_element_set_type_attr):
1769         (webkit_dom_html_script_element_init): Deleted.
1770         (webkit_dom_html_script_element_get_html_for): Deleted.
1771         (webkit_dom_html_script_element_set_html_for): Deleted.
1772         (webkit_dom_html_script_element_get_event): Deleted.
1773         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElement.h:
1774         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLScriptElementUnstable.h: Removed.
1775         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElement.cpp:
1776         (webkit_dom_html_select_element_set_property):
1777         (webkit_dom_html_select_element_get_property):
1778         (webkit_dom_html_select_element_class_init):
1779         (webkit_dom_html_select_element_get_will_validate):
1780         (webkit_dom_html_select_element_named_item): Deleted.
1781         (webkit_dom_html_select_element_get_autofocus): Deleted.
1782         (webkit_dom_html_select_element_set_autofocus): Deleted.
1783         (webkit_dom_html_select_element_get_disabled): Deleted.
1784         (webkit_dom_html_select_element_set_disabled): Deleted.
1785         (webkit_dom_html_select_element_get_form): Deleted.
1786         (webkit_dom_html_select_element_set_size): Deleted.
1787         (webkit_dom_html_select_element_get_select_type): Deleted.
1788         (webkit_dom_html_select_element_get_options): Deleted.
1789         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLSelectElementUnstable.h: Removed.
1790         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElement.cpp:
1791         (webkit_dom_html_style_element_set_property):
1792         (webkit_dom_html_style_element_get_property):
1793         (webkit_dom_html_style_element_class_init):
1794         (webkit_dom_html_style_element_get_sheet):
1795         (webkit_dom_html_style_element_get_disabled): Deleted.
1796         (webkit_dom_html_style_element_set_disabled): Deleted.
1797         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLStyleElementUnstable.h: Removed.
1798         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElement.cpp:
1799         (webkit_dom_html_table_element_set_property):
1800         (webkit_dom_html_table_element_get_property):
1801         (webkit_dom_html_table_element_class_init):
1802         (webkit_dom_html_table_element_insert_row): Deleted.
1803         (webkit_dom_html_table_element_set_summary): Deleted.
1804         (webkit_dom_html_table_element_get_width): Deleted.
1805         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTableElementUnstable.h: Removed.
1806         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.cpp:
1807         (webkit_dom_html_text_area_element_set_property):
1808         (webkit_dom_html_text_area_element_get_property):
1809         (webkit_dom_html_text_area_element_class_init):
1810         (webkit_dom_html_text_area_element_init): Deleted.
1811         (webkit_dom_html_text_area_element_set_selection_range): Deleted.
1812         (webkit_dom_html_text_area_element_set_autofocus): Deleted.
1813         (webkit_dom_html_text_area_element_get_disabled): Deleted.
1814         (webkit_dom_html_text_area_element_get_form): Deleted.
1815         (webkit_dom_html_text_area_element_get_name): Deleted.
1816         (webkit_dom_html_text_area_element_get_rows): Deleted.
1817         (webkit_dom_html_text_area_element_set_rows): Deleted.
1818         (webkit_dom_html_text_area_element_get_cols): Deleted.
1819         (webkit_dom_html_text_area_element_set_cols): Deleted.
1820         (webkit_dom_html_text_area_element_get_area_type): Deleted.
1821         (webkit_dom_html_text_area_element_get_default_value): Deleted.
1822         (webkit_dom_html_text_area_element_get_value): Deleted.
1823         (webkit_dom_html_text_area_element_set_value): Deleted.
1824         (webkit_dom_html_text_area_element_get_will_validate): Deleted.
1825         (webkit_dom_html_text_area_element_get_selection_start): Deleted.
1826         (webkit_dom_html_text_area_element_set_selection_start): Deleted.
1827         (webkit_dom_html_text_area_element_get_selection_end): Deleted.
1828         (webkit_dom_html_text_area_element_set_selection_end): Deleted.
1829         (webkit_dom_html_text_area_element_is_edited): Deleted.
1830         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElementUnstable.h: Removed.
1831         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLVideoElement.cpp: Removed.
1832         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLVideoElement.h: Removed.
1833         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLVideoElementPrivate.h: Removed.
1834         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHistory.cpp: Removed.
1835         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHistory.h: Removed.
1836         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHistoryPrivate.h: Removed.
1837         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyframeEffect.cpp: Removed.
1838         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyframeEffect.h: Removed.
1839         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMKeyframeEffectPrivate.h: Removed.
1840         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMLocation.cpp: Removed.
1841         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMLocation.h: Removed.
1842         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMLocationPrivate.h: Removed.
1843         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaController.cpp: Removed.
1844         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaController.h: Removed.
1845         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaControllerPrivate.h: Removed.
1846         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaDevices.cpp: Removed.
1847         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaDevices.h: Removed.
1848         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaDevicesPrivate.h: Removed.
1849         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaError.cpp: Removed.
1850         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaError.h: Removed.
1851         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaErrorPrivate.h: Removed.
1852         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaQueryList.cpp: Removed.
1853         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaQueryList.h: Removed.
1854         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaQueryListPrivate.h: Removed.
1855         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaTrackSupportedConstraints.cpp: Removed.
1856         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaTrackSupportedConstraints.h: Removed.
1857         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMediaTrackSupportedConstraintsPrivate.h: Removed.
1858         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMessagePort.cpp: Removed.
1859         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMessagePort.h: Removed.
1860         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMessagePortPrivate.h: Removed.
1861         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEvent.cpp:
1862         (webkit_dom_mouse_event_get_property):
1863         (webkit_dom_mouse_event_class_init):
1864         (webkit_dom_mouse_event_get_y): Deleted.
1865         (webkit_dom_mouse_event_get_from_element): Deleted.
1866         (webkit_dom_mouse_event_get_to_element): Deleted.
1867         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMMouseEventUnstable.h: Removed.
1868         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNavigator.cpp: Removed.
1869         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNavigator.h: Removed.
1870         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNavigatorMediaDevices.cpp: Removed.
1871         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNavigatorMediaDevices.h: Removed.
1872         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNavigatorPrivate.h: Removed.
1873         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.cpp:
1874         (webkit_dom_node_get_property):
1875         (webkit_dom_node_class_init):
1876         (webkit_dom_node_init): Deleted.
1877         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNodeUnstable.h: Removed.
1878         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformance.cpp: Removed.
1879         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformance.h: Removed.
1880         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceEntry.cpp: Removed.
1881         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceEntry.h: Removed.
1882         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceEntryPrivate.h: Removed.
1883         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceNavigation.cpp: Removed.
1884         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceNavigation.h: Removed.
1885         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceNavigationPrivate.h: Removed.
1886         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformancePrivate.h: Removed.
1887         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceTiming.cpp: Removed.
1888         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceTiming.h: Removed.
1889         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformanceTimingPrivate.h: Removed.
1890         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPrivate.cpp:
1891         (WebKit::wrap): Deleted.
1892         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPrivate.h:
1893         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMScreen.cpp: Removed.
1894         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMScreen.h: Removed.
1895         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMScreenPrivate.h: Removed.
1896         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesis.cpp: Removed.
1897         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesis.h: Removed.
1898         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisEvent.cpp: Removed.
1899         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisEvent.h: Removed.
1900         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisEventPrivate.h: Removed.
1901         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisPrivate.h: Removed.
1902         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisUtterance.cpp: Removed.
1903         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisUtterance.h: Removed.
1904         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisUtterancePrivate.h: Removed.
1905         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisVoice.cpp: Removed.
1906         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisVoice.h: Removed.
1907         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMSpeechSynthesisVoicePrivate.h: Removed.
1908         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorage.cpp: Removed.
1909         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorage.h: Removed.
1910         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorageInfo.cpp: Removed.
1911         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorageInfo.h: Removed.
1912         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStoragePrivate.h: Removed.
1913         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorageQuota.cpp: Removed.
1914         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStorageQuota.h: Removed.
1915         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleMedia.cpp: Removed.
1916         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleMedia.h: Removed.
1917         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMStyleMediaPrivate.h: Removed.
1918         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrack.cpp: Removed.
1919         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrack.h: Removed.
1920         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCue.cpp: Removed.
1921         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCue.h: Removed.
1922         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCueList.cpp: Removed.
1923         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCueList.h: Removed.
1924         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCueListPrivate.h: Removed.
1925         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackCuePrivate.h: Removed.
1926         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackList.cpp: Removed.
1927         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackList.h: Removed.
1928         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackListPrivate.h: Removed.
1929         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTextTrackPrivate.h: Removed.
1930         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTimeRanges.cpp: Removed.
1931         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTimeRanges.h: Removed.
1932         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTimeRangesPrivate.h: Removed.
1933         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTouch.cpp: Removed.
1934         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTouch.h: Removed.
1935         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTouchPrivate.h: Removed.
1936         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTrackEvent.cpp: Removed.
1937         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTrackEvent.h: Removed.
1938         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMTrackEventPrivate.h: Removed.
1939         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEvent.cpp:
1940         (webkit_dom_ui_event_get_property):
1941         (webkit_dom_ui_event_class_init):
1942         (webkit_dom_ui_event_get_page_y):
1943         (webkit_dom_ui_event_init): Deleted.
1944         (webkit_dom_ui_event_init_ui_event): Deleted.
1945         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUIEventUnstable.h: Removed.
1946         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandler.cpp: Removed.
1947         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandler.h: Removed.
1948         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlerPrivate.h: Removed.
1949         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlersNamespace.cpp: Removed.
1950         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlersNamespace.h: Removed.
1951         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlersNamespacePrivate.h: Removed.
1952         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVTTCue.cpp: Removed.
1953         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVTTCue.h: Removed.
1954         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVTTCuePrivate.h: Removed.
1955         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMValidityState.cpp: Removed.
1956         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMValidityState.h: Removed.
1957         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMValidityStatePrivate.h: Removed.
1958         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoPlaybackQuality.cpp: Removed.
1959         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoPlaybackQuality.h: Removed.
1960         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoPlaybackQualityPrivate.h: Removed.
1961         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrack.cpp: Removed.
1962         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrack.h: Removed.
1963         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrackList.cpp: Removed.
1964         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrackList.h: Removed.
1965         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrackListPrivate.h: Removed.
1966         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMVideoTrackPrivate.h: Removed.
1967         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebAnimation.cpp: Removed.
1968         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebAnimation.h: Removed.
1969         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebAnimationPrivate.h: Removed.
1970         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamedFlow.cpp: Removed.
1971         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamedFlow.h: Removed.
1972         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamedFlowPrivate.h: Removed.
1973         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamespace.cpp: Removed.
1974         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamespace.h: Removed.
1975         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitNamespacePrivate.h: Removed.
1976         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitPoint.cpp: Removed.
1977         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitPoint.h: Removed.
1978         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWebKitPointPrivate.h: Removed.
1979         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEvent.cpp:
1980         (webkit_dom_wheel_event_get_property):
1981         (webkit_dom_wheel_event_class_init):
1982         (webkit_dom_wheel_event_get_wheel_delta):
1983         (webkit_dom_wheel_event_init): Deleted.
1984         (webkit_dom_wheel_event_init_wheel_event): Deleted.
1985         (webkit_dom_wheel_event_get_wheel_delta_x): Deleted.
1986         (webkit_dom_wheel_event_get_wheel_delta_y): Deleted.
1987         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMWheelEventUnstable.h: Removed.
1988         * WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-4.0-sections.txt:
1989         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomautocleanups-unstable.h: Removed.
1990         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomdefines-unstable.h: Removed.
1991
1992 2016-09-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1993
1994         [GTK] Move some GObject DOM unstable API to stable
1995         https://bugs.webkit.org/show_bug.cgi?id=161681
1996
1997         Reviewed by Žan Doberšek.
1998
1999         Move unstable API currently used by applications to the stable API in preparation for removing all unused
2000         unstable API.
2001
2002         * PlatformGTK.cmake:
2003         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustom.cpp: Removed.
2004         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustom.h:
2005         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMCustomUnstable.h:
2006         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMSelection.h:
2007         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMTokenList.h:
2008         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.cpp:
2009         (webkit_dom_dom_window_get_property):
2010         (webkit_dom_dom_window_class_init):
2011         (webkit_dom_dom_window_webkit_message_handlers_post_message):
2012         (webkit_dom_dom_window_set_property): Deleted.
2013         (webkit_dom_dom_window_get_computed_style): Deleted.
2014         (webkit_dom_dom_window_capture_events): Deleted.
2015         (webkit_dom_dom_window_get_frame_element): Deleted.
2016         (webkit_dom_dom_window_get_offscreen_buffering): Deleted.
2017         (webkit_dom_dom_window_get_outer_height): Deleted.
2018         (webkit_dom_dom_window_get_outer_width): Deleted.
2019         (webkit_dom_dom_window_get_inner_height): Deleted.
2020         (webkit_dom_dom_window_get_inner_width): Deleted.
2021         (webkit_dom_dom_window_get_screen_x): Deleted.
2022         (webkit_dom_dom_window_set_status): Deleted.
2023         (webkit_dom_dom_window_get_default_status): Deleted.
2024         (webkit_dom_dom_window_get_window): Deleted.
2025         (webkit_dom_dom_window_get_frames): Deleted.
2026         (webkit_dom_dom_window_get_parent): Deleted.
2027         (webkit_dom_dom_window_get_top): Deleted.
2028         (webkit_dom_dom_window_get_document): Deleted.
2029         (webkit_dom_dom_window_get_device_pixel_ratio): Deleted.
2030         (webkit_dom_dom_window_get_orientation): Deleted.
2031         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindow.h:
2032         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMWindowUnstable.h:
2033         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.cpp:
2034         (webkit_dom_document_get_property):
2035         (webkit_dom_document_webkit_cancel_fullscreen):
2036         (webkit_dom_document_get_webkit_is_fullscreen):
2037         (webkit_dom_document_get_webkit_fullscreen_keyboard_input_allowed):
2038         (webkit_dom_document_get_webkit_current_fullscreen_element):
2039         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.h:
2040         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragment.h:
2041         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentFragmentUnstable.h:
2042         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentUnstable.h:
2043         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.cpp:
2044         (webkit_dom_element_webkit_request_fullscreen): Deleted.
2045         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElement.h:
2046         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementUnstable.h:
2047         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElement.h:
2048         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLElementUnstable.h:
2049         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
2050         (webkit_dom_html_input_element_is_edited):
2051         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.h:
2052         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.cpp:
2053         (webkit_dom_html_link_element_set_sizes):
2054         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLLinkElement.h:
2055         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.cpp:
2056         (webkit_dom_html_text_area_element_is_edited):
2057         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.h:
2058         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRange.h:
2059         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMRangeUnstable.h:
2060         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlersNamespace.cpp:
2061         (webkit_dom_user_message_handlers_namespace_get_handler):
2062         (webkit_dom_user_message_handlers_namespace_init): Deleted.
2063         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMUserMessageHandlersNamespace.h:
2064         * WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-4.0-sections.txt:
2065         * WebProcess/InjectedBundle/API/gtk/DOM/docs/webkitdomgtk-docs.sgml:
2066         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomdefines-unstable.h:
2067         * WebProcess/InjectedBundle/API/gtk/DOM/webkitdomdefines.h:
2068
2069 2016-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2070
2071         [GTK][Threaded Compositor] Several flaky tests
2072         https://bugs.webkit.org/show_bug.cgi?id=161242
2073
2074         Reviewed by Michael Catanzaro.
2075
2076         Reset the viewport attributes on SimpleViewportController when viewport attributes change and fixed layout is
2077         not used. We were only updating the viewport attributes when fixed layout was used, but not resetting them again
2078         when it's no longer used. That caused that reference tests run after fast/fixed-layout/fixed-layout.html or
2079         compositing/fixed-with-fixed-layout.html in the same worker thread were incorrectly rendered.
2080
2081         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2082         (WebKit::WebChromeClient::dispatchViewportPropertiesDidChange): Remove ifdefs and call
2083         WebPage::viewportPropertiesDidChange() unconditionally.
2084         * WebProcess/WebPage/WebPage.cpp:
2085         (WebKit::WebPage::setSize): Pass current page viewport arguments to sendViewportAttributesChanged().
2086         (WebKit::WebPage::sendViewportAttributesChanged): It now receives the viewport arguments.
2087         (WebKit::WebPage::viewportPropertiesDidChange): Move the iOS implementation from WebPageIOS.mm and for
2088         coordinated graphics call sendViewportAttributesChanged() when fixed layout is used or reset the viewport
2089         attributes when not used in case of threaded compositor.
2090         * WebProcess/WebPage/WebPage.h:
2091         (WebKit::WebPage::viewportPropertiesDidChange): Moved out of iOS ifdef.
2092         * WebProcess/WebPage/ios/WebPageIOS.mm:
2093         (WebKit::WebPage::viewportPropertiesDidChange): Deleted.
2094
2095 2016-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2096
2097         Unreviewed. Fix the GTK+ build after r205524.
2098
2099         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLInputElement.cpp:
2100         (webkit_dom_html_input_element_get_max_length):
2101         (webkit_dom_html_input_element_set_max_length):
2102         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMHTMLTextAreaElement.cpp:
2103         (webkit_dom_html_text_area_element_get_max_length):
2104         (webkit_dom_html_text_area_element_set_max_length):
2105
2106 2016-09-06  Daniel Bates  <dabates@apple.com>
2107
2108         [iOS] WebKit2 fails to build with iOS 10 beta SDK - "'UIWKTextInteractionAssistant' may not respond to 'selectAll:'"
2109         https://bugs.webkit.org/show_bug.cgi?id=161663
2110
2111         Reviewed by Darin Adler.
2112
2113         The UIResponderStandardEditActions extensions, including the selectAll: message, are now
2114         part of a formal protocol by the same name as of the iOS 10 beta SDK.
2115
2116         * Platform/spi/ios/UIKitSPI.h:
2117
2118 2016-09-06  Ryosuke Niwa  <rniwa@webkit.org>
2119
2120         Enable custom elements API in Safari Technology Preview
2121         https://bugs.webkit.org/show_bug.cgi?id=161518
2122
2123         Reviewed by Chris Dumez.
2124
2125         Re-enable custom elements API in Safari Technology Preview after r203296
2126         now that our implementation has caught up to the latest specification changes.
2127
2128         * Shared/WebPreferencesDefinitions.h:
2129
2130 2016-09-01  Simon Fraser  <simon.fraser@apple.com>
2131
2132         Use TemporaryChange<> to maintain m_userIsInteracting
2133         https://bugs.webkit.org/show_bug.cgi?id=161497
2134
2135         Reviewed by Tim Horton.
2136
2137         Replace some error-prone manual set/clear of m_userIsInteracting with
2138         TemporaryChange<>.
2139
2140         No behavior change.
2141
2142         * WebProcess/WebPage/WebPage.cpp:
2143         (WebKit::WebPage::mouseEvent):
2144         (WebKit::WebPage::keyEvent):
2145         (WebKit::WebPage::dispatchTouchEvent):
2146
2147 2016-09-06  Tim Horton  <timothy_horton@apple.com>
2148
2149         Remove SwipeTransitionStyle; only Overlap has ever been used
2150         https://bugs.webkit.org/show_bug.cgi?id=161617
2151
2152         Reviewed by Alex Christensen.
2153
2154         * UIProcess/mac/ViewGestureController.h:
2155         * UIProcess/mac/ViewGestureControllerMac.mm:
2156         (WebKit::ViewGestureController::beginSwipeGesture):
2157         (WebKit::ViewGestureController::handleSwipeGesture):
2158         Remove SwipeTransitionStyle::Push, and SwipeTransitionStyle itself entirely,
2159         because we've never used it and it is only supported by the Mac
2160         implementation of ViewGestureController.
2161
2162 2016-09-06  Daniel Bates  <dabates@apple.com>
2163
2164         Remove EXTERN_C from WTF
2165         https://bugs.webkit.org/show_bug.cgi?id=161090
2166
2167         Reviewed by Brent Fulgham.
2168
2169         Guard external C declarations in WTF_EXTERN_C_BEGIN, WTF_EXTERN_C_END.
2170
2171         * Platform/spi/ios/ManagedConfigurationSPI.h:
2172
2173 2016-09-06  Ryan Haddad  <ryanhaddad@apple.com>
2174
2175         Unreviewed, rolling out r205407.
2176
2177         Not the correct way to implement this functionality
2178
2179         Reverted changeset:
2180
2181         "Consult with the FrameLoaderClient about whether or not
2182         content extensions should be enabled when loading this URL."
2183         https://bugs.webkit.org/show_bug.cgi?id=161441
2184         http://trac.webkit.org/changeset/205407
2185
2186 2016-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2187
2188         [GTK][Wayland] evince-browser-plugin prevents viewing PDFs
2189         https://bugs.webkit.org/show_bug.cgi?id=158697
2190
2191         Reviewed by Michael Catanzaro.
2192
2193         Use a different cache file for plugins depending on the current platform display. Plugins can claim to work on
2194         X11 but not on Wayland, for example, if they need XEmebed to work. That's the case of the evince browser plugin.
2195
2196         * UIProcess/Plugins/gtk/PluginInfoCache.cpp:
2197         (WebKit::cacheFilenameForCurrentDisplay):
2198         (WebKit::PluginInfoCache::PluginInfoCache):
2199
2200 2016-09-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2201
2202         [Threaded Compositor] Update timer should have lower priority than tasks scheduled in compositing thread
2203         https://bugs.webkit.org/show_bug.cgi?id=161625
2204
2205         Reviewed by Sergio Villar Senin.
2206
2207         This way, if a resize is scheduled, for example, and there are pending updates, the resize will happen first,
2208         and then the updates will happen at the right size.
2209
2210         * Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:
2211         (WebKit::CompositingRunLoop::CompositingRunLoop): Use G_PRIORITY_HIGH_IDLE as update timer priority. The actual
2212         priority doesn't really matter as long as it's lower than G_PRIORITY_DEFAULT, because there are only two
2213         possible sources in the compositing run loop, one for the tasks scheduled, and another one for the update timer.
2214
2215 2016-09-06  Emanuele Aina  <emanuele.aina@collabora.com>
2216
2217         [GTK] glImageTargetTexture2D() is a GL function, rename accordingly
2218         https://bugs.webkit.org/show_bug.cgi?id=161622
2219
2220         Reviewed by Carlos Garcia Campos.
2221
2222         glImageTargetTexture2D() is a GL function, not EGL, using the 'egl'
2223         prefix is misleading.
2224
2225         * UIProcess/gtk/WaylandCompositor.cpp:
2226         (WebKit::WaylandCompositor::Surface::prepareTextureForPainting):
2227         (WebKit::WaylandCompositor::initializeEGL):
2228
2229 2016-09-06  Emanuele Aina  <emanuele.aina@collabora.com>
2230
2231         [GTK][EFL] Make *_PROCESS_CMD_PREFIX conditional on DEVELOPER_MODE
2232         https://bugs.webkit.org/show_bug.cgi?id=161621
2233
2234         Reviewed by Carlos Garcia Campos.
2235
2236         Instead of enabling support for the *_PROCESS_CMD_PREFIX set of
2237         environment valiables (eg. WEB_PROCESS_CMD_PREFIX) on debug builds
2238         only, enable it when DEVELOPER_MODE is enabled as it already guards
2239         similar features (eg. WEBKIT_EXEC_PATH).
2240
2241         * UIProcess/ChildProcessProxy.cpp:
2242         (WebKit::ChildProcessProxy::getLaunchOptions):
2243         * UIProcess/Launcher/ProcessLauncher.h:
2244         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
2245         (WebKit::ProcessLauncher::launchProcess):
2246         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
2247         (WebKit::ProcessLauncher::launchProcess):
2248
2249 2016-09-05  Zan Dobersek  <zdobersek@igalia.com>
2250
2251         Fix ENABLE(GAMEPAD) build errors on non-Cocoa platforms
2252         https://bugs.webkit.org/show_bug.cgi?id=161596
2253
2254         Reviewed by Darin Adler.
2255
2256         This patch fixes build errors popping up when enabling Gamepad
2257         feature on non-Cocoa platforms.
2258
2259         * CMakeLists.txt: Add the Source/WebCore/platform/gamepad/ directory to
2260         WebKit2_INCLUDE_DIRECTORIES. Add GamepadData.cpp, UIGamepad.cpp files to the build.
2261         * UIProcess/Gamepad/UIGamepadProvider.cpp: Don't include Cocoa-specific
2262         HIDGamepadProvider.h file. Update methods for the UIGamepadProvider class.
2263         (WebKit::UIGamepadProvider::platformWebPageProxyForGamepadInput):
2264         (WebKit::UIGamepadProvider::platformStartMonitoringGamepads): Deleted.
2265         (WebKit::UIGamepadProvider::platformStopMonitoringGamepads): Deleted.
2266         (WebKit::UIGamepadProvider::platformGamepads): Deleted.
2267         (WebKit::UIGamepadProvider::platformWebProcessProxyForGamepadInput): Deleted.
2268
2269 2016-09-05  Tim Horton  <timothy_horton@apple.com>
2270
2271         Remove some dead code in ViewGestureControllerMac
2272         https://bugs.webkit.org/show_bug.cgi?id=161616
2273
2274         Reviewed by Darin Adler.
2275
2276         * UIProcess/mac/ViewGestureControllerMac.mm:
2277         (WebKit::ViewGestureController::endSwipeGesture):
2278         All other LEGACY_SWIPE_SHADOW_STYLE code has been removed, except for this.
2279
2280 2016-09-05  Darin Adler  <darin@apple.com>
2281
2282         More bindings improvements, particularly things not needed for JavaScript bindings
2283         https://bugs.webkit.org/show_bug.cgi?id=161572
2284
2285         Reviewed by Sam Weinig.
2286
2287         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.cpp:
2288         (webkit_dom_dom_implementation_has_feature): Call SVGTests::hasFeatureForLegacyBindings
2289         instead of DOMImplementation::hasFeature. Also removed JSMainThreadNullState
2290         since this does not do anything that can invoke JavaScript.
2291
2292         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDeprecated.cpp:
2293         (webkit_dom_document_get_default_charset): Call defaultCharsetForLegacyBindings.
2294         Also removed JSMainThreadNullState.
2295
2296         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocumentType.cpp:
2297         (webkit_dom_document_type_get_entities): Changed to simply return nullptr; same behavior
2298         as before, but with no dependency on WebCore. Also removed JSMainThreadNullState.
2299         (webkit_dom_document_type_get_notations): Ditto.
2300         (webkit_dom_document_type_get_internal_subset): Ditto.
2301
2302         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMNode.cpp:
2303         (webkit_dom_node_is_supported): Call SVGTests::hasFeatureForLegacyBindings
2304         instead of Node::isSupportedForBindings. Also removed JSMainThreadNullState.
2305
2306 2016-09-05  Michael Catanzaro  <mcatanzaro@igalia.com>
2307
2308         Unreviewed, update stale variable name
2309
2310         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2311         (webkitWebViewBaseCreateWebPage):
2312
2313 2016-08-31  Filip Pizlo  <fpizlo@apple.com>
2314
2315         Butterflies should be allocated in Auxiliary MarkedSpace instead of CopiedSpace and we should rewrite as much of the GC as needed to make this not a regression
2316         https://bugs.webkit.org/show_bug.cgi?id=160125
2317
2318         Reviewed by Geoffrey Garen and Keith Miller.
2319         
2320         Just rewiring some #includes.
2321
2322         * UIProcess/ViewGestureController.cpp:
2323         * UIProcess/WebPageProxy.cpp:
2324         * UIProcess/WebProcessPool.cpp:
2325         * UIProcess/WebProcessProxy.cpp:
2326         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
2327         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2328
2329 2016-09-05  Michael Catanzaro  <mcatanzaro@igalia.com>
2330
2331         Unreviewed error message typo fix
2332
2333         * WebProcess/UserContent/WebUserContentController.cpp:
2334         (WebKit::WebUserContentController::removeUserContentWorlds):
2335
2336 2016-09-05  Dan Bernstein  <mitz@apple.com>
2337
2338         [Cocoa] Drop ".Development" suffix from XPC service bundle IDs, leave it only on the executable
2339         https://bugs.webkit.org/show_bug.cgi?id=161575
2340
2341         Reviewed by Sam Weinig.
2342
2343         Append the ".Development" suffix to the executable names, but not to the bundle names and
2344         bundle IDs.
2345
2346         * Configurations/BaseTarget.xcconfig: No need for a preprocessor definition anymore.
2347         * Configurations/BaseXPCService.xcconfig: Set EXECUTABLE_SUFFIX.
2348         * Configurations/DatabaseService.xcconfig: No need to suffix the service name and bundle ID.
2349         * Configurations/NetworkService.xcconfig: Ditto.
2350         * Configurations/PluginService.32.xcconfig: Ditto.
2351         * Configurations/PluginService.64.xcconfig: Ditto.
2352         * Configurations/WebContentService.xcconfig: Ditto.
2353         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2354         (WebKit::serviceName): Service names are no longer suffixed.
2355         * WebKit2.xcodeproj/project.pbxproj: Ditto.
2356
2357 2016-09-05  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2358
2359         [GTK] GL_PACK_ROW_LENGTH is not available in GLES2
2360         https://bugs.webkit.org/show_bug.cgi?id=161484
2361
2362         Reviewed by Carlos Garcia Campos.
2363
2364         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
2365         (WebKit::AcceleratedBackingStoreWayland::paint): when under GLES2 we cannot rely on
2366         GL_PACK_ROW_LENGTH; use glReadPixel directly when stride matches width, read line
2367         by line manually otherwise. Colour conversion is also required to get the data out
2368         correctly.
2369
2370 2016-09-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2371
2372         [GTK] SetNativeSurfaceHandleForCompositing should not be compiled in for wayland build
2373         https://bugs.webkit.org/show_bug.cgi?id=161483
2374
2375         Reviewed by Žan Doberšek.
2376
2377         SetNativeSurfaceHandleForCompositing and DestroyNativeSurfaceHandleForCompositing messages should only be used
2378         for GTK+ port when compiled with OpenGL and X11 enabled and redirected XComposite window disabled. So, we should
2379         use USE(TEXTURE_MAPPER) && PLATFORM(GTK) && PLATFORM(X11) && !USE(REDIRECTED_XCOMPOSITE_WINDOW) consistently.
2380         This fixes the build when building the GTK+ port with Wayland enabled and X11 disabled.
2381
2382         * UIProcess/AcceleratedDrawingAreaProxy.cpp:
2383         (WebKit::AcceleratedDrawingAreaProxy::didUpdateBackingStoreState):
2384         * UIProcess/AcceleratedDrawingAreaProxy.h:
2385         * WebProcess/WebPage/AcceleratedDrawingArea.cpp:
2386         (WebKit::AcceleratedDrawingArea::enterAcceleratedCompositingMode):
2387         * WebProcess/WebPage/AcceleratedDrawingArea.h:
2388         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
2389         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
2390         * WebProcess/WebPage/DrawingArea.h:
2391         * WebProcess/WebPage/DrawingArea.messages.in:
2392         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2393         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2394
2395 2016-09-05  Zan Dobersek  <zdobersek@igalia.com>
2396
2397         [GObject bindings] override handleEvent() method in GObjectEventListener
2398         https://bugs.webkit.org/show_bug.cgi?id=161593
2399
2400         Reviewed by Carlos Garcia Campos.
2401
2402         * WebProcess/InjectedBundle/API/gtk/DOM/GObjectEventListener.h: Override
2403         the handleMethod() which is inherited from the WebCore EventListener class.
2404         Suppresses the -Winconsistent-missing-override warning that Clang propagates.
2405
2406 2016-09-04  Joseph Pecoraro  <pecoraro@apple.com>
2407
2408         Remove unnecessary RetainPtr.
2409
2410         Review comments on earlier change.
2411
2412         * UIProcess/mac/WKImmediateActionController.mm:
2413         (-[WKImmediateActionController _defaultAnimationController]):
2414
2415 2016-09-04  Dan Bernstein  <mitz@apple.com>
2416
2417         [Cocoa] Wrapping XPC service execution in os_activity is no longer needed
2418         https://bugs.webkit.org/show_bug.cgi?id=161577
2419
2420         Reviewed by Sam Weinig.
2421
2422         Removed code that created an os_activity around the execution of the XPC service
2423         code, because this workaround is no longer needed.
2424
2425         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:
2426         (DatabaseServiceInitializer):
2427         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
2428         (NetworkServiceInitializer):
2429         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
2430         (PluginServiceInitializer):
2431         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
2432         (WebContentServiceInitializer):
2433
2434 2016-09-04  Commit Queue  <commit-queue@webkit.org>
2435
2436         Unreviewed, rolling out r205415.
2437         https://bugs.webkit.org/show_bug.cgi?id=161573
2438
2439         Many bots see inspector test failures, rolling out now and
2440         investigating later. (Requested by brrian on #webkit).
2441
2442         Reverted changeset:
2443
2444         "Web Inspector: unify Main.html and Test.html sources and
2445         generate different copies with the preprocessor"
2446         https://bugs.webkit.org/show_bug.cgi?id=161212
2447         http://trac.webkit.org/changeset/205415
2448
2449 2016-09-01  Brian Burg  <bburg@apple.com>
2450
2451         Web Inspector: unify Main.html and Test.html sources and generate different copies with the preprocessor
2452         https://bugs.webkit.org/show_bug.cgi?id=161212
2453         <rdar://problem/28017961>
2454
2455         Reviewed by Joseph Pecoraro.
2456
2457         Rearrange CMake rules so that most Inspector UI work is done in WebInspectorUI.
2458
2459         * PlatformGTK.cmake:
2460         - Move the list of Inspector resources into WebInspectorUI/CMakeLists.txt.
2461         - Move generation of InspectorGResourceBundle into WebInspectorUI.
2462         - Copy over InspectorGResourceBundle.c into WebKit2's Derived Sources before compiling.
2463
2464 2016-09-03  Wenson Hsieh  <wenson_hsieh@apple.com>
2465
2466         Refactor the heuristic for showing media controls to take all media sessions into account
2467         https://bugs.webkit.org/show_bug.cgi?id=161503
2468         <rdar://problem/28033783>
2469
2470         Reviewed by Darin Adler.
2471
2472         Adds an SPI testing hook for sending the element ID of the currently controlled video element from the web
2473         process to the UI process. See VideoControlsManager.mm in Tools/TestWebKitAPI/ for usage.
2474
2475         * UIProcess/API/Cocoa/WKWebView.mm:
2476         (-[WKWebView _requestControlledElementID]):
2477         (-[WKWebView _handleControlledElementIDResponse:]):
2478         (-[WKWebView _hasActiveVideoForControlsManager]): Deleted.
2479         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
2480         * UIProcess/Cocoa/WebPlaybackSessionManagerProxy.h:
2481         * UIProcess/Cocoa/WebPlaybackSessionManagerProxy.messages.in:
2482         * UIProcess/Cocoa/WebPlaybackSessionManagerProxy.mm:
2483         (WebKit::WebPlaybackSessionManagerProxy::handleControlledElementIDResponse):
2484         (WebKit::WebPlaybackSessionManagerProxy::requestControlledElementID):
2485         * UIProcess/PageClient.h:
2486         * UIProcess/WebPageProxy.cpp:
2487         (WebKit::WebPageProxy::requestControlledElementID):
2488         (WebKit::WebPageProxy::handleControlledElementIDResponse):
2489         * UIProcess/WebPageProxy.h:
2490         * UIProcess/mac/PageClientImpl.h:
2491         * UIProcess/mac/PageClientImpl.mm:
2492         (WebKit::PageClientImpl::handleControlledElementIDResponse):
2493         * WebProcess/cocoa/WebPlaybackSessionManager.h:
2494         * WebProcess/cocoa/WebPlaybackSessionManager.messages.in:
2495         * WebProcess/cocoa/WebPlaybackSessionManager.mm:
2496         (WebKit::WebPlaybackSessionManager::handleControlledElementIDRequest):
2497
2498 2016-09-03  Darin Adler  <darin@apple.com>
2499
2500         Streamline DOMImplementation, and move it to our new DOM exception system
2501         https://bugs.webkit.org/show_bug.cgi?id=161295
2502
2503         Reviewed by Ryosuke Niwa.
2504
2505         * UIProcess/WebFrameProxy.cpp:
2506         (WebKit::WebFrameProxy::isDisplayingMarkupDocument): Use isXMLMIMEType in its
2507         new location in MIMETypeRegistry rather than in DOMImplementation.
2508         (WebKit::WebFrameProxy::isDisplayingPDFDocument): Removed unneeded redundant
2509         check for empty string, already done by MIMETypeRegistry.
2510
2511 2016-09-03  Brian Weinstein  <bweinstein@apple.com>
2512
2513         Implement WebFrameLoaderClient::shouldUseContentExtensionsForURL and consult the InjectedBundlePageLoaderClient.
2514         https://bugs.webkit.org/show_bug.cgi?id=161441
2515
2516         Reviewed by Darin Adler.
2517
2518         WebFrameLoaderClient::shouldUseContentExtensionsForURL only consults the injected bundle, because we don't want to
2519         defer the loading of every main resource to consult with the UI Process about whether or not we should use content
2520         extensions for the load.
2521
2522         * WebProcess/InjectedBundle/API/c/WKBundlePageLoaderClient.h: Bump the latest version to WKBundlePageLoaderClientV9 and
2523         add WKBundlePageShouldUseContentExtensionsForURLCallback.
2524         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2525         (WebKit::InjectedBundlePageLoaderClient::shouldUseContentExtensionsForURL): Ask the client if we should use content
2526         extensions for this URL.
2527         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2528         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2529         (WebKit::WebFrameLoaderClient::shouldUseContentExtensionsForURL): Only consult with the injected bundle about whether
2530         or not we should use content extensions for this URL.
2531         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2532
2533         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDOMImplementation.cpp:
2534         (webkit_dom_dom_implementation_create_document_type): Updated to work with ExceptionOr.
2535         (webkit_dom_dom_implementation_create_document): Updated to work with ExceptionOr.
2536         (webkit_dom_dom_implementation_create_css_style_sheet): Updated since this function
2537         can no longer raise an exception.
2538
2539         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMDocument.cpp:
2540         (webkit_dom_document_set_xml_standalone): Updated since this function can no longer
2541         raise an exception.
2542
2543 2016-09-03  Joseph Pecoraro  <pecoraro@apple.com>
2544
2545         Web Inspector: Move WebKit2 WebInspector files to #pragma once
2546         https://bugs.webkit.org/show_bug.cgi?id=161550
2547
2548         Reviewed by Darin Adler.
2549
2550         * UIProcess/InspectorServer/WebInspectorServer.h:
2551         * UIProcess/WebInspectorProxy.h:
2552         * UIProcess/gtk/WebInspectorClientGtk.h:
2553         * WebProcess/WebCoreSupport/WebInspectorClient.h:
2554         * WebProcess/WebPage/WebInspector.h:
2555         * WebProcess/WebPage/WebInspectorFrontendAPIDispatcher.h:
2556         * WebProcess/WebPage/WebInspectorUI.h:
2557
2558 2016-09-02  Michael Catanzaro  <mcatanzaro@igalia.com>
2559
2560         [GTK] -Wmissing-field-initializers on WaylandCompositor.cpp:295
2561         https://bugs.webkit.org/show_bug.cgi?id=161524
2562
2563         Reviewed by Carlos Garcia Campos.
2564
2565         * UIProcess/gtk/WaylandCompositor.cpp:
2566
2567 2016-09-02  Carlos Garcia Campos  <cgarcia@igalia.com>
2568
2569         [Threaded Compositor] Move the viewport controller off the compositing thread
2570         https://bugs.webkit.org/show_bug.cgi?id=161532
2571
2572         Reviewed by Michael Catanzaro.
2573
2574         While working on bug #161242 I've realized that having the view port controller in the compositing thread makes
2575         everything more complex. The viewport controller receives changes about things like contents size, viewport
2576         size, etc. and uses that information to compute the visible contents rect and page scale factor. Then it
2577         notifies back to main thread about the computed visible contents rect and page scale. Those computations are not
2578         heave at all, so they could be done in the main thread and we would avoid communications between the main and
2579         compositing thread in both directions. The main thread needs the visible contents rect to notify the compositing
2580         coordinator and the page cale to scale the page in case of pixed layout. But the compositing thread only needs
2581         to know the effective scale and scroll position. So, instead of going to the compositing thread after every
2582         change that might update the visible contents rect and page scale factor, we could do those calculations in the
2583         main thread and only notify the compositing thread about the actual changes in the scroll position and effective scale.
2584
2585         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
2586         (WebKit::CoordinatedGraphicsScene::createTilesIfNeeded): Return early if backingStore is nullptr, which can
2587         happen if the layer shouldn't have a backing store and was removed by the previous call to prepareContentBackingStore().
2588         (WebKit::CoordinatedGraphicsScene::updateTilesIfNeeded): Ditto.
2589         * Shared/CoordinatedGraphics/SimpleViewportController.cpp:
2590         (WebKit::SimpleViewportController::SimpleViewportController): Remove the client since we no longer need to
2591         notify about changes.
2592         (WebKit::SimpleViewportController::didChangeViewportSize): Remove call to syncVisibleContents().
2593         (WebKit::SimpleViewportController::didChangeContentsSize): Ditto.
2594         (WebKit::SimpleViewportController::didChangeViewportAttributes): Ditto.
2595         (WebKit::SimpleViewportController::didScroll): Removed unused scrollBy methods and renamed scrollTo as
2596         didiScroll for consistency. Save the position without calling boundContentsPosition, because that's already
2597         donde when the position is used to compute the contents visible rectangle.
2598         (WebKit::SimpleViewportController::visibleContentsRect): No need to notify about the changes.
2599         (WebKit::SimpleViewportController::visibleContentsSize): Deleted.
2600         * Shared/CoordinatedGraphics/SimpleViewportController.h:
2601         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
2602         (WebKit::ThreadedCompositor::create): Pass a reference to the client instead of a pointer. It's no longer
2603         possible to have a valid pointer when the object has been destroyed, so we can better use a reference now.
2604         (WebKit::ThreadedCompositor::ThreadedCompositor): Ditto.
2605         (WebKit::ThreadedCompositor::~ThreadedCompositor): Remove assert.
2606         (WebKit::ThreadedCompositor::invalidate): No need to invalidate the client.
2607         (WebKit::ThreadedCompositor::setScaleFactor): Set the effective scale factor that should be used for rendering.
2608         (WebKit::ThreadedCompositor::setScrollPosition): Set the current scroll position and effective scale factor.
2609         (WebKit::ThreadedCompositor::setViewportSize): Set the viewport size and effective scale factor.
2610         (WebKit::ThreadedCompositor::renderNextFrame): Update m_client use that is no longer a pointer.
2611         (WebKit::ThreadedCompositor::commitScrollOffset): Ditto.
2612         (WebKit::ThreadedCompositor::renderLayerTree): Call glViewport after a resize and use m_viewportSize,
2613         m_scrollPosition and m_scaleFactor members.
2614         (WebKit::ThreadedCompositor::didChangeVisibleRect): Deleted.
2615         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
2616         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
2617         (WebKit::ThreadedCoordinatedLayerTreeHost::ThreadedCoordinatedLayerTreeHost): Pass the compositor client as a
2618         reference to ThreadedCompositor constructor.
2619         (WebKit::ThreadedCoordinatedLayerTreeHost::scrollNonCompositedContents): Update the viewport and call didChangeViewport().
2620         (WebKit::ThreadedCoordinatedLayerTreeHost::contentsSizeChanged): Ditto.
2621         (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged): Pass the effective scale factor to
2622         the compositor.
2623         (WebKit::ThreadedCoordinatedLayerTreeHost::sizeDidChange): Update the viewport, the compositor and call didChangeViewport().
2624         (WebKit::ThreadedCoordinatedLayerTreeHost::didChangeViewportProperties): Update the viewport and call didChangeViewport().
2625         (WebKit::ThreadedCoordinatedLayerTreeHost::didChangeViewport): Notify the compositing coordinator about the new
2626         visible contents rectangle, and update the threaded compositor if needed.
2627         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
2628
2629 2016-09-02  Beth Dakin  <bdakin@apple.com>
2630
2631         Need to updateEditorState if an element change edit-ability without changing 
2632         selection
2633         https://bugs.webkit.org/show_bug.cgi?id=161546
2634         -and corresponding-
2635         rdar://problem/27806012
2636
2637         Reviewed by Ryosuke Niwa.
2638
2639         Every time WebPage::editorState() is called, we now save whether the last state 
2640         was contentEditable. That way in updateEditorStateAfterLayoutIfNeeded() we can 
2641         assess whether or not edit-ability has changed. 
2642
2643         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2644         (WebKit::WebEditorClient:: updateEditorStateAfterLayoutIfEditabilityChanged):
2645         * WebProcess/WebCoreSupport/WebEditorClient.h:
2646         * WebProcess/WebPage/WebPage.cpp:
2647         (WebKit::WebPage::editorState):
2648         (WebKit::WebPage:: updateEditorStateAfterLayoutIfEditabilityChanged):
2649         (WebKit::WebPage::didStartPageTransition):
2650         * WebProcess/WebPage/WebPage.h:
2651
2652 2016-09-02  Jonathan Bedard  <jbedard@apple.com>
2653
2654         WebKitTestRunner needs layoutTestController.setDashboardCompatibilityMode
2655         https://bugs.webkit.org/show_bug.cgi?id=42547
2656
2657         Reviewed by Darin Adler.
2658
2659         Added access to setUseDashBoardCompatibilityMode for WebKit2.
2660         Note: this bug mistakenly called this function setDashboardCompatibilityMode, it is actually setUseDashboardCompatibilityMode.
2661
2662         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
2663         (WKBundleSetUseDashboardCompatibilityMode): Added dashboard compatiblity mode setter.
2664         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Ditto.
2665         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2666         (WebKit::InjectedBundle::setUseDashboardCompatibilityMode): Ditto.
2667         * WebProcess/InjectedBundle/InjectedBundle.h: Ditto.
2668
2669 2016-09-02  Joseph Pecoraro  <pecoraro@apple.com>
2670
2671         [Mac] RetainPtr misuse, AnimationController leaks
2672         https://bugs.webkit.org/show_bug.cgi?id=161552
2673
2674         Reviewed by Tim Horton.
2675
2676         * UIProcess/mac/WKImmediateActionController.mm:
2677         (-[WKImmediateActionController _defaultAnimationController]):
2678
2679 2016-09-02  Joseph Pecoraro  <pecoraro@apple.com>
2680
2681         [Mac] RetainPtr misuse, DDActionContext leaks
2682         https://bugs.webkit.org/show_bug.cgi?id=161551
2683
2684         Reviewed by Tim Horton.
2685
2686         * Platform/mac/MenuUtilities.mm:
2687         (WebKit::menuItemForTelephoneNumber):
2688         (WebKit::menuForTelephoneNumber):
2689
2690 2016-09-02  Joseph Pecoraro  <pecoraro@apple.com>
2691
2692         Fix Mac CMake build, missing _WKRemoteWebInspectorViewController.mm
2693
2694         Unreviewed build fix.
2695
2696         * PlatformMac.cmake:
2697
2698 2016-09-02  Jer Noble  <jer.noble@apple.com>
2699
2700         Unreviewed build fix; partial roll out of r205365 to remove unintentional change in WKWebView.mm.
2701
2702         * UIProcess/API/Cocoa/WKWebView.mm:
2703         (-[WKWebView _initializeWithConfiguration:]):
2704
2705 2016-09-02  Joseph Pecoraro  <pecoraro@apple.com>
2706
2707         Web Inspector: If inspector process crashes, re-inspecting the page does not work
2708         https://bugs.webkit.org/show_bug.cgi?id=161502
2709         <rdar://problem/28120368>
2710
2711         Reviewed by Brian Burg.
2712
2713         This is an issue on Mac because WebInspectorProxyMac's platformDidClose
2714         doesn't immediately get rid of the WKWebView for the inspector. This is
2715         intended so that a quick close and reopen of Web Inspector is faster,
2716         however in the case where the WebPage under the WKWebView crashed, we
2717         actually should clear things instead of using the timer path. Provide
2718         a stronger platform close handler when the inspector page crashed.
2719
2720         * UIProcess/WebInspectorProxy.cpp:
2721         (WebKit::WebInspectorProxy::closeForCrash):
2722         (WebKit::webProcessDidCrash):
2723         (WebKit::WebInspectorProxy::platformDidCloseForCrash):
2724         Go through a stronger path when the web process crashes.
2725         Some platforms may want to handle this differently then the user
2726         closing a web inspector window.
2727         
2728         * UIProcess/WebInspectorProxy.h:
2729         * UIProcess/efl/WebInspectorProxyEfl.cpp:
2730         (WebKit::WebInspectorProxy::platformDidCloseForCrash):
2731         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
2732         (WebKit::WebInspectorProxy::platformDidCloseForCrash):
2733         These platforms do not need to do anything special.
2734
2735         * UIProcess/mac/WebInspectorProxyMac.mm:
2736         (WebKit::WebInspectorProxy::closeTimerFired):
2737         Loosen this code. There is no need for it to be so strict.
2738
2739         (WebKit::WebInspectorProxy::platformDidCloseForCrash):
2740         If the inspector page crashed, close our handles immediately.
2741
2742 2016-09-02  Joseph Pecoraro  <pecoraro@apple.com>
2743
2744         Web Inspector: Provide a way to open an inspector frontend for a remote target
2745         https://bugs.webkit.org/show_bug.cgi?id=161515
2746         <rdar://problem/13182127>
2747
2748         Reviewed by Brian Burg.
2749
2750         Provide an interface to open a Web Inspector window/webView for a
2751         remote debuggable. Unlike the local Web Inspector, the remote
2752         debuggable may be either a JSContext or WebPage, and may only
2753         support an older version of the protocol. The Inspector frontend
2754         already supports these configurations.
2755
2756         This adds new RemoteWebInspector/Proxy classes that mirror the
2757         WebInspector/Proxy classes for local inspection, but have
2758         slightly different behavior as the inspected target is not
2759         directly available (and may not be a web page).
2760
2761         The remote and local classes share a lot of inspector
2762         frontend implementation:
2763
2764           - share most of the inspector frontend host implementation
2765           - share much of the frontend webview/window handling
2766           - use an inspector process for the frontend page
2767
2768         But remains separate in some ways:
2769
2770           - inspected target is unavailable
2771           - docking is never available
2772           - a few inspector frontend host methods are duplicated
2773           - some of the webview/window handling is duplicated
2774
2775         * UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.h: Added.
2776         * UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm: Added.
2777         (-[_WKRemoteWebInspectorViewController init]):
2778         (-[_WKRemoteWebInspectorViewController window]):
2779         (-[_WKRemoteWebInspectorViewController webView]):
2780         (-[_WKRemoteWebInspectorViewController loadForDebuggableType:backendCommandsURL:]):
2781         (-[_WKRemoteWebInspectorViewController close]):
2782         (-[_WKRemoteWebInspectorViewController show]):
2783         (-[_WKRemoteWebInspectorViewController sendMessageToFrontend:]):
2784         (-[_WKRemoteWebInspectorViewController sendMessageToBackend:]):
2785         (-[_WKRemoteWebInspectorViewController closeFromFrontend]):
2786         The interface that may be used to open an inspector window for
2787         a remote debuggable. There are only a few delegates to handle
2788         sending messages to the backend and knowing if the frontend
2789         closed itself (InspectorFrontendHost.closeWindow() or crashed).
2790
2791         * UIProcess/WebInspectorUtilities.h:
2792         * UIProcess/WebInspectorUtilities.cpp: Added.
2793         (WebKit::pageLevelMap):
2794         (WebKit::inspectorLevelForPage):
2795         (WebKit::inspectorPageGroupIdentifierForPage):
2796         (WebKit::trackInspectorPage):
2797         (WebKit::untrackInspectorPage):
2798         (WebKit::inspectorProcessPool):
2799         (WebKit::isInspectorProcessPool):
2800         (WebKit::isInspectorPage):
2801         Extract utilities for determining if a page contains an inspector frontend.
2802         Previously this was part of WebInspectorProxy and subclasses but can
2803         now be used by multiple classes.
2804
2805         * UIProcess/WebInspectorProxy.h:
2806         * UIProcess/WebInspectorProxy.cpp:
2807         (WebKit::WebInspectorProxy::inspectionLevel):
2808         (WebKit::WebInspectorProxy::invalidate):
2809         (WebKit::WebInspectorProxy::isMainOrTestInspectorPage):
2810         (WebKit::decidePolicyForNavigationAction):
2811         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
2812         (WebKit::WebInspectorProxy::didClose):
2813         (WebKit::pageLevelMap): Deleted.
2814         (WebKit::WebInspectorProxy::inspectorPageGroupIdentifier): Deleted.
2815         (WebKit::WebInspectorProxy::inspectorProcessPool): Deleted.
2816         (WebKit::WebInspectorProxy::isInspectorProcessPool): Deleted.
2817         (WebKit::WebInspectorProxy::isInspectorPage): Deleted.
2818         (WebKit::isMainOrTestInspectorPage): Deleted.
2819         * UIProcess/WebPageProxy.cpp:
2820         (WebKit::WebPageProxy::maybeInitializeSandboxExtensionHandle):
2821         * UIProcess/WebProcessProxy.cpp:
2822         (WebKit::WebProcessProxy::getLaunchOptions):
2823         * UIProcess/efl/WebInspectorProxyEfl.cpp:
2824         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2825         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
2826         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2827         Extract methods to utilities and use them.
2828
2829         Also address an issue where WebInspectorProxy was untracking
2830         the wrong page. It should have been untracking the inspector
2831         page but was untracking the inspected page.
2832
2833         * UIProcess/RemoteWebInspectorProxy.cpp: Added.
2834         (WebKit::RemoteWebInspectorProxy::RemoteWebInspectorProxy):
2835         (WebKit::RemoteWebInspectorProxy::~RemoteWebInspectorProxy):
2836         (WebKit::RemoteWebInspectorProxy::invalidate):
2837         (WebKit::RemoteWebInspectorProxy::load):
2838         (WebKit::RemoteWebInspectorProxy::closeFromBackend):
2839         (WebKit::RemoteWebInspectorProxy::closeFromCrash):
2840         (WebKit::RemoteWebInspectorProxy::show):
2841         (WebKit::RemoteWebInspectorProxy::sendMessageToFrontend):
2842         (WebKit::RemoteWebInspectorProxy::frontendDidClose):
2843         (WebKit::RemoteWebInspectorProxy::bringToFront):
2844         (WebKit::RemoteWebInspectorProxy::save):
2845         (WebKit::RemoteWebInspectorProxy::append):
2846         (WebKit::RemoteWebInspectorProxy::startWindowDrag):
2847         (WebKit::RemoteWebInspectorProxy::openInNewTab):
2848         (WebKit::RemoteWebInspectorProxy::sendMessageToBackend):
2849         (WebKit::RemoteWebInspectorProxy::createFrontendPageAndWindow):
2850         (WebKit::RemoteWebInspectorProxy::closeFrontendPageAndWindow):
2851         This class behaves like WebInspectorProxy but without having a
2852         reference to the inspected target. It communicates with
2853         RemoteInspectorUI in an Inspector process to send and receive
2854         frontend messages. What can't be easily shared is duplicated.
2855
2856         * UIProcess/mac/RemoteWebInspectorProxyMac.mm: Added.
2857         (-[WKRemoteWebInspectorProxyObjCAdapter initWithRemoteWebInspectorProxy:]):
2858         (-[WKRemoteWebInspectorProxyObjCAdapter webViewWebContentProcessDidTerminate:]):
2859         (-[WKRemoteWebInspectorProxyObjCAdapter webView:decidePolicyForNavigationAction:decisionHandler:]):
2860         (WebKit::RemoteWebInspectorProxy::platformCreateFrontendPageAndWindow):
2861         (WebKit::RemoteWebInspectorProxy::platformCloseFrontendPageAndWindow):
2862         (WebKit::RemoteWebInspectorProxy::platformBringToFront):
2863         (WebKit::RemoteWebInspectorProxy::platformSave):
2864         (WebKit::RemoteWebInspectorProxy::platformAppend):
2865         (WebKit::RemoteWebInspectorProxy::platformStartWindowDrag):
2866         (WebKit::RemoteWebInspectorProxy::platformOpenInNewTab):
2867         Platform implementation for the bits that are platform specific.
2868         What can't be easily shared is duplicated. Ideally we will
2869         eventually share this with WebInspectorProxyMac.
2870
2871         * UIProcess/mac/WKWebInspectorWKWebView.h:
2872         * UIProcess/mac/WKWebInspectorWKWebView.mm: Added.
2873         (WebKit::getWindowFrame):
2874         (WebKit::setWindowFrame):
2875         (WebKit::exceededDatabaseQuota):
2876         (WebKit::runOpenPanel):
2877         (-[WKWebInspectorWKWebView initWithFrame:configuration:]):
2878         (-[WKWebInspectorWKWebView tag]):
2879         Extract Mac platform code for the inspector webview from WebInspectorProxyMac.
2880
2881         * UIProcess/mac/WebInspectorProxyMac.mm:
2882         (WebKit::WebInspectorProxy::closeTimerFired):
2883         (WebKit::WebInspectorProxy::createInspectorWindow):
2884         (WebKit::WebInspectorProxy::createFrontendConfiguration):
2885         (WebKit::WebInspectorProxy::createFrontendWindow):
2886         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
2887         (-[WKWebInspectorWKWebView tag]): Deleted.
2888         (WebKit::getWindowFrame): Deleted.
2889         (WebKit::setWindowFrame): Deleted.
2890         (WebKit::exceededDatabaseQuota): Deleted.
2891         (WebKit::runOpenPanel): Deleted.
2892         Extact Mac platform code to be shared for construction of a
2893         WKWebViewConfiguration, WKWebView, and NSWindow for an inspector webview.
2894         
2895         * WebProcess/WebPage/RemoteWebInspectorUI.cpp: Added.
2896         (WebKit::RemoteWebInspectorUI::create):
2897         (WebKit::RemoteWebInspectorUI::RemoteWebInspectorUI):
2898         (WebKit::RemoteWebInspectorUI::initialize):
2899         (WebKit::RemoteWebInspectorUI::didSave):
2900         (WebKit::RemoteWebInspectorUI::didAppend):
2901         (WebKit::RemoteWebInspectorUI::sendMessageToFrontend):
2902         (WebKit::RemoteWebInspectorUI::sendMessageToBackend):
2903         (WebKit::RemoteWebInspectorUI::windowObjectCleared):
2904         (WebKit::RemoteWebInspectorUI::frontendLoaded):
2905         (WebKit::RemoteWebInspectorUI::startWindowDrag):
2906         (WebKit::RemoteWebInspectorUI::moveWindowBy):
2907         (WebKit::RemoteWebInspectorUI::bringToFront):
2908         (WebKit::RemoteWebInspectorUI::closeWindow):
2909         (WebKit::RemoteWebInspectorUI::openInNewTab):
2910         (WebKit::RemoteWebInspectorUI::save):
2911         (WebKit::RemoteWebInspectorUI::append):
2912         (WebKit::RemoteWebInspectorUI::inspectedURLChanged):
2913         * WebProcess/WebPage/RemoteWebInspectorUI.h: Added.
2914         * WebProcess/WebPage/RemoteWebInspectorUI.messages.in: Added.
2915         * UIProcess/RemoteWebInspectorProxy.messages.in: Added.
2916         * UIProcess/RemoteWebInspectorProxy.mm: Added.
2917         Inspector frontend client that knows to talk
2918         with a RemoteWebInspectorProxy instead of a WebInspectorProxy.
2919
2920         * WebProcess/WebPage/WebInspectorUI.cpp:
2921         * WebProcess/WebPage/WebInspectorUI.h:
2922         * WebProcess/WebPage/mac/WebInspectorUIMac.mm:
2923         (WebKit::webInspectorUILocalizedStringsURL):
2924         (WebKit::WebInspectorUI::localizedStringsURL):
2925         (WebKit::RemoteWebInspectorUI::localizedStringsURL):
2926         Simplify localized string URL lookup.
2927
2928         * DerivedSources.make:
2929         * WebKit2.xcodeproj/project.pbxproj:
2930         New files.
2931
2932         * WebProcess/WebPage/WebPage.cpp:
2933         (WebKit::WebPage::WebPage):
2934         (WebKit::WebPage::~WebPage):
2935         (WebKit::WebPage::remoteInspectorUI):
2936         (WebKit::WebPage::didReceiveMessage):
2937         * WebProcess/WebPage/WebPage.h:
2938         (WebKit::WebPage::isInspectorPage):
2939         An InspectorProcess WebPage may have either a WebInspectorUI or a RemoteWebInspectorUI.
2940
2941 2016-07-08  Jer Noble  <jer.noble@apple.com>
2942
2943         Refactor WebPlaybackSessionModelMediaElement to be client based.
2944         https://bugs.webkit.org/show_bug.cgi?id=159580
2945
2946         Reviewed by Eric Carlson.
2947
2948         Adopt the changes made in the WebPlaybackSessionModel,Interface and WebVideoFullscreenModel,Interface
2949         in the WebPlaybackSessionManager,Proxy classes.
2950
2951         * UIProcess/API/Cocoa/WKWebView.mm:
2952         (-[WKWebView _initializeWithConfiguration:]): Deleted.
2953         * UIProcess/Cocoa/WebPlaybackSessionManagerProxy.h:
2954         * UIProcess/Cocoa/WebPlaybackSessionManagerProxy.mm:
2955         (WebKit::WebPlaybackSessionModelContext::addClient):
2956         (WebKit::WebPlaybackSessionModelContext::removeClient):
2957         (WebKit::WebPlaybackSessionModelContext::setDuration):
2958         (WebKit::WebPlaybackSessionModelContext::setCurrentTime):
2959         (WebKit::WebPlaybackSessionModelContext::setBufferedTime):
2960         (WebKit::WebPlaybackSessionModelContext::setRate):
2961         (WebKit::WebPlaybackSessionModelContext::setSeekableRanges):
2962         (WebKit::WebPlaybackSessionModelContext::setCanPlayFastReverse):
2963         (WebKit::WebPlaybackSessionModelContext::setAudioMediaSelectionOptions):
2964         (WebKit::WebPlaybackSessionModelContext::setLegibleMediaSelectionOptions):
2965         (WebKit::WebPlaybackSessionModelContext::setExternalPlayback):
2966         (WebKit::WebPlaybackSessionModelContext::setWirelessVideoPlaybackDisabled):
2967         (WebKit::WebPlaybackSessionManagerProxy::createModelAndInterface):
2968         (WebKit::WebPlaybackSessionManagerProxy::removeClientForContext):
2969         (WebKit::WebPlaybackSessionManagerProxy::setCurrentTime):
2970         (WebKit::WebPlaybackSessionManagerProxy::setBufferedTime):
2971         (WebKit::WebPlaybackSessionManagerProxy::setSeekableRangesVector):
2972         (WebKit::WebPlaybackSessionManagerProxy::setCanPlayFastReverse):
2973         (WebKit::WebPlaybackSessionManagerProxy::setAudioMediaSelectionOptions):
2974         (WebKit::WebPlaybackSessionManagerProxy::setLegibleMediaSelectionOptions):
2975         (WebKit::WebPlaybackSessionManagerProxy::setExternalPlaybackProperties):
2976         (WebKit::WebPlaybackSessionManagerProxy::setWirelessVideoPlaybackDisabled):
2977         (WebKit::WebPlaybackSessionManagerProxy::setDuration):
2978         (WebKit::WebPlaybackSessionManagerProxy::setRate):
2979         * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h:
2980         * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in:
2981         * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm:
2982         (WebKit::WebVideoFullscreenModelContext::addClient):
2983         (WebKit::WebVideoFullscreenModelContext::removeClient):
2984         (WebKit::WebVideoFullscreenManagerProxy::setHasVideo):
2985         (WebKit::WebVideoFullscreenManagerProxy::setVideoDimensions):
2986         * WebProcess/cocoa/WebPlaybackSessionManager.h:
2987         * WebProcess/cocoa/WebPlaybackSessionManager.mm:
2988         (WebKit::WebPlaybackSessionInterfaceContext::durationChanged):
2989         (WebKit::WebPlaybackSessionInterfaceContext::currentTimeChanged):
2990         (WebKit::WebPlaybackSessionInterfaceContext::bufferedTimeChanged):
2991         (WebKit::WebPlaybackSessionInterfaceContext::rateChanged):
2992         (WebKit::WebPlaybackSessionInterfaceContext::seekableRangesChanged):
2993         (WebKit::WebPlaybackSessionInterfaceContext::canPlayFastReverseChanged):
2994         (WebKit::WebPlaybackSessionInterfaceContext::audioMediaSelectionOptionsChanged):
2995         (WebKit::WebPlaybackSessionInterfaceContext::legibleMediaSelectionOptionsChanged):
2996         (WebKit::WebPlaybackSessionInterfaceContext::externalPlaybackChanged):
2997         (WebKit::WebPlaybackSessionInterfaceContext::wirelessVideoPlaybackDisabledChanged):
2998         (WebKit::WebPlaybackSessionManager::~WebPlaybackSessionManager):
2999         (WebKit::WebPlaybackSessionManager::createModelAndInterface):
3000         (WebKit::WebPlaybackSessionManager::removeContext):
3001         (WebKit::WebPlaybackSessionManager::durationChanged):
3002         (WebKit::WebPlaybackSessionManager::currentTimeChanged):
3003         (WebKit::WebPlaybackSessionManager::bufferedTimeChanged):
3004         (WebKit::WebPlaybackSessionManager::rateChanged):
3005         (WebKit::WebPlaybackSessionManager::seekableRangesChanged):
3006         (WebKit::WebPlaybackSessionManager::canPlayFastReverseChanged):
3007         (WebKit::WebPlaybackSessionManager::audioMediaSelectionOptionsChanged):
3008         (WebKit::WebPlaybackSessionManager::legibleMediaSelectionOptionsChanged):
3009         (WebKit::WebPlaybackSessionManager::externalPlaybackChanged):
3010         (WebKit::WebPlaybackSessionManager::wirelessVideoPlaybackDisabledChanged):
3011         (WebKit::WebPlaybackSessionInterfaceContext::setDuration): Deleted.
3012         (WebKit::WebPlaybackSessionInterfaceContext::setCurrentTime): Deleted.
3013         (WebKit::WebPlaybackSessionInterfaceContext::setBufferedTime): Deleted.
3014         (WebKit::WebPlaybackSessionInterfaceContext::setRate): Deleted.
3015         (WebKit::WebPlaybackSessionInterfaceContext::setSeekableRanges): Deleted.
3016         (WebKit::WebPlaybackSessionInterfaceContext::setCanPlayFastReverse): Deleted.
3017         (WebKit::WebPlaybackSessionInterfaceContext::setAudioMediaSelectionOptions): Deleted.
3018         (WebKit::WebPlaybackSessionInterfaceContext::setLegibleMediaSelectionOptions): Deleted.
3019         (WebKit::WebPlaybackSessionInterfaceContext::setExternalPlayback): Deleted.
3020         (WebKit::WebPlaybackSessionInterfaceContext::setWirelessVideoPlaybackDisabled): Deleted.
3021         (WebKit::WebPlaybackSessionManager::setDuration): Deleted.
3022         (WebKit::WebPlaybackSessionManager::setCurrentTime): Deleted.
3023         (WebKit::WebPlaybackSessionManager::setBufferedTime): Deleted.
3024         (WebKit::WebPlaybackSessionManager::setRate): Deleted.
3025         (WebKit::WebPlaybackSessionManager::setSeekableRanges): Deleted.
3026         (WebKit::WebPlaybackSessionManager::setCanPlayFastReverse): Deleted.
3027         (WebKit::WebPlaybackSessionManager::setAudioMediaSelectionOptions): Deleted.
3028         (WebKit::WebPlaybackSessionManager::setLegibleMediaSelectionOptions): Deleted.
3029         (WebKit::WebPlaybackSessionManager::setExternalPlayback): Deleted.
3030         (WebKit::WebPlaybackSessionManager::setWirelessVideoPlaybackDisabled): Deleted.
3031         * WebProcess/cocoa/WebVideoFullscreenManager.h:
3032         (WebKit::WebVideoFullscreenInterfaceContext::create):
3033         * WebProcess/cocoa/WebVideoFullscreenManager.mm:
3034         (WebKit::WebVideoFullscreenInterfaceContext::WebVideoFullscreenInterfaceContext):
3035         (WebKit::WebVideoFullscreenInterfaceContext::hasVideoChanged):
3036         (WebKit::WebVideoFullscreenInterfaceContext::videoDimensionsChanged):
3037         (WebKit::WebVideoFullscreenManager::~WebVideoFullscreenManager):
3038         (WebKit::WebVideoFullscreenManager::createModelAndInterface):
3039         (WebKit::WebVideoFullscreenManager::removeContext):
3040         (WebKit::WebVideoFullscreenManager::hasVideoChanged):
3041         (WebKit::WebVideoFullscreenManager::videoDimensionsChanged):
3042         (WebKit::WebVideoFullscreenInterfaceContext::resetMediaState): Deleted.
3043         (WebKit::WebVideoFullscreenInterfaceContext::setDuration): Deleted.
3044         (WebKit::WebVideoFullscreenInterfaceContext::setCurrentTime): Deleted.
3045         (WebKit::WebVideoFullscreenInterfaceContext::setBufferedTime): Deleted.
3046         (WebKit::WebVideoFullscreenInterfaceContext::setRate): Deleted.
3047         (WebKit::WebVideoFullscreenInterfaceContext::setVideoDimensions): Deleted.
3048         (WebKit::WebVideoFullscreenInterfaceContext::setSeekableRanges): Deleted.
3049         (WebKit::WebVideoFullscreenInterfaceContext::setCanPlayFastReverse): Deleted.
3050         (WebKit::WebVideoFullscreenInterfaceContext::setAudioMediaSelectionOptions): Deleted.
3051         (WebKit::WebVideoFullscreenInterfaceContext::setLegibleMediaSelectionOptions): Deleted.
3052         (WebKit::WebVideoFullscreenInterfaceContext::setExternalPlayback): Deleted.
3053         (WebKit::WebVideoFullscreenInterfaceContext::setWirelessVideoPlaybackDisabled): Deleted.
3054         (WebKit::WebVideoFullscreenManager::setVideoDimensions): Deleted.
3055
3056 2016-09-02  Zan Dobersek  <zdobersek@igalia.com>
3057
3058         Fix GObject bindings build breakage when compiling with ENABLE_USER_TIMING disabled.
3059
3060         Rubber-stamped by Carlos Garcia Campos.
3061
3062         Add additional ENABLE(USER_TIMING) build guards to WebKitDOMPerformance bindings,
3063         avoiding build errors when building with that feature disabled. Previously this
3064         wasn't a problem because the four amended binding functions weren't generated
3065         when the feature was disabled due to the similar use of guards in the Performance.idl
3066         file.
3067
3068         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMPerformance.cpp:
3069         (webkit_dom_performance_webkit_mark):
3070         (webkit_dom_performance_webkit_clear_marks):
3071         (webkit_dom_performance_webkit_measure):
3072         (webkit_dom_performance_webkit_clear_measures):
3073
3074 2016-09-02  Zan Dobersek  <zdobersek@igalia.com>
3075
3076         Unreviewed GTK+ build fix when compiling with Clang.
3077
3078         * WebProcess/WebPage/gtk/AcceleratedSurface.cpp: Include WebPage.h.
3079
3080 2016-09-01  Yusuke Suzuki  <utatane.tea@gmail.com>
3081
3082         Unreviewed, build fix after r205327
3083
3084         * UIProcess/API/gtk/WebKitUIClient.cpp:
3085
3086 2016-09-01  Dan Bernstein  <mitz@apple.com>
3087
3088         Build fix.
3089
3090         * Configurations/FeatureDefines.xcconfig:
3091
3092 2016-09-01  Anders Carlsson  <andersca@apple.com>
3093
3094         Use WTF::Function for completion handlers in API::UIClient
3095         https://bugs.webkit.org/show_bug.cgi?id=161516
3096
3097         Reviewed by Tim Horton.
3098
3099         * UIProcess/API/APIUIClient.h:
3100         (API::UIClient::runJavaScriptAlert):
3101         (API::UIClient::runJavaScriptConfirm):
3102         (API::UIClient::runJavaScriptPrompt):
3103         (API::UIClient::runBeforeUnloadConfirmPanel):
3104         (API::UIClient::exceededDatabaseQuota):
3105         (API::UIClient::reachedApplicationCacheOriginQuota):
3106         * UIProcess/API/C/WKPage.cpp:
3107         (WebKit::RunBeforeUnloadConfirmPanelResultListener::create):
3108         (WebKit::RunBeforeUnloadConfirmPanelResultListener::RunBeforeUnloadConfirmPanelResultListener):
3109         (WebKit::RunJavaScriptAlertResultListener::create):
3110         (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener):
3111         (WebKit::RunJavaScriptConfirmResultListener::create):
3112         (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener):
3113         (WebKit::RunJavaScriptPromptResultListener::create):
3114         (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener):
3115         (WKPageSetPageUIClient):
3116         * UIProcess/Cocoa/UIDelegate.h:
3117         * UIProcess/Cocoa/UIDelegate.mm:
3118         (WebKit::UIDelegate::UIClient::runJavaScriptAlert):
3119         (WebKit::UIDelegate::UIClient::runJavaScriptConfirm):
3120         (WebKit::UIDelegate::UIClient::runJavaScriptPrompt):
3121         (WebKit::UIDelegate::UIClient::exceededDatabaseQuota):
3122         (WebKit::UIDelegate::UIClient::reachedApplicationCacheOriginQuota):
3123
3124 2016-09-01  JF Bastien  <jfbastien@apple.com>
3125
3126         Fix cmake build, missing SecItemShim.messages.in
3127         https://bugs.webkit.org/show_bug.cgi?id=161496
3128
3129         Reviewed by Alex Christensen.
3130
3131         * PlatformMac.cmake:
3132
3133 2016-09-01  Joseph Pecoraro  <pecoraro@apple.com>
3134
3135         [Mac] Web Inspector: Remove stale inspector process termination code
3136         https://bugs.webkit.org/show_bug.cgi?id=161465
3137         <rdar://problem/28106584>
3138
3139         Reviewed by Brian Burg.
3140
3141         * UIProcess/WebInspectorProxy.cpp:
3142         (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess): Deleted.
3143         * UIProcess/WebInspectorProxy.h:
3144         * UIProcess/mac/WebInspectorProxyMac.mm:
3145         (-[WKWebInspectorProxyObjCAdapter didRelaunchProcess]): Deleted.
3146         (-[WKWebInspectorWKWebView _didRelaunchProcess]): Deleted.
3147         This code doesn't appear to be run when the WebContent process inside
3148         of an Inspector process crashes. The general WebInspectorProxy has its
3149         own handling of when the page inside an inspector process crashes, so
3150         this Mac specific path appears to be unused and stale.
3151
3152 2016-09-01  Jeremy Huddleston Sequoia  <jeremyhu@apple.com>
3153
3154         [GTK] Fix configuration without wayland support
3155         https://bugs.webkit.org/show_bug.cgi?id=161475
3156
3157         WebKit2WaylandClientProtocol.c is a derived source that is created
3158         conditionally on ENABLE_WAYLAND_TARGET.  It was being included
3159         in the sources list unconditionally, so configure failed whenever
3160         wayland support was unavailable.
3161
3162         Reviewed by Žan Doberšek.
3163
3164         * PlatformGTK.cmake: Include WebKit2WaylandClientProtocol.c in source list conditional on ENABLE_WAYLAND_TARGET
3165
3166 2016-08-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3167
3168         [GTK] Move GObject DOM bindings to WebKit2 layer and stop auto generating them
3169         https://bugs.webkit.org/show_bug.cgi?id=161438
3170
3171         Reviewed by Michael Catanzaro.
3172
3173         Move all GObject bindings code to WebProcess/InjectedBundle/API/gtk/DOM.
3174
3175         * PlatformGTK.cmake:
3176         * WebProcess/InjectedBundle/API/gtk/DOM:
3177
3178 2016-08-31  Keith Rollin  <krollin@apple.com>
3179
3180         WebKit should set a subsystem for os_log so it's easier to filter for WebKit log messages
3181         https://bugs.webkit.org/show_bug.cgi?id=160969
3182         <rdar://problem/26068734>
3183
3184         Reviewed by Simon Fraser.
3185
3186         - Specify a channel when using RELEASE_LOG macros.
3187         - Add some new channels so that we have something to pass to the
3188           RELEASE_LOG macros (ProcessSuspension, IPC, Layers).
3189         - Enable subsystem- and channel-related data and functions when using
3190           RELEASE_LOG macros.
3191         - Use the DECLARE_LOG_CHANNEL, DEFINE_LOG_CHANNEL, and
3192           LOG_CHANNEL_ADDRESS macros that are now defined in WTF.
3193
3194         * NetworkProcess/Downloads/Download.cpp:
3195         * NetworkProcess/NetworkProcess.cpp:
3196         (WebKit::NetworkProcess::prepareToSuspend):
3197         (WebKit::NetworkProcess::cancelPrepareToSuspend):
3198         (WebKit::NetworkProcess::processDidResume):
3199         * NetworkProcess/NetworkResourceLoader.cpp:
3200         * Platform/IPC/Connection.cpp:
3201         (IPC::Connection::waitForSyncReply):
3202         * Platform/LogInitialization.h:
3203         * Platform/Logging.cpp:
3204         (WebKit::initializeLogChannelsIfNecessary):
3205         * Platform/Logging.h:
3206         * Platform/foundation/LoggingFoundation.mm:
3207         * Platform/unix/LoggingUnix.cpp:
3208         * Shared/ChildProcess.cpp:
3209         (WebKit::didCloseOnConnectionWorkQueue):
3210         * Shared/WebKit2Initialize.cpp:
3211         (WebKit::InitializeWebKit2):
3212         * UIProcess/Cocoa/NavigationState.mm:
3213         (WebKit::NavigationState::releaseNetworkActivityToken):
3214         (WebKit::NavigationState::didChangeIsLoading):
3215         * UIProcess/Network/NetworkProcessProxy.cpp:
3216         (WebKit::NetworkProcessProxy::fetchWebsiteData):
3217         (WebKit::NetworkProcessProxy::deleteWebsiteData):
3218         (WebKit::NetworkProcessProxy::deleteWebsiteDataForOrigins):
3219         (WebKit::NetworkProcessProxy::setIsHoldingLockedFiles):
3220         * UIProcess/ProcessThrottler.cpp:
3221         (WebKit::ProcessThrottler::updateAssertionNow):
3222         (WebKit::ProcessThrottler::updateAssertion):
3223         * UIProcess/WebPageProxy.cpp:
3224         * UIProcess/WebProcessPool.cpp:
3225         (WebKit::m_hiddenPageThrottlingTimer):
3226         * UIProcess/WebProcessProxy.cpp:
3227         (WebKit::WebProcessProxy::fetchWebsiteData):
3228         (WebKit::WebProcessProxy::deleteWebsiteData):
3229         (WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
3230         (WebKit::WebProcessProxy::didSetAssertionState):
3231         (WebKit::WebProcessProxy::setIsHoldingLockedFiles):
3232         * UIProcess/ios/ProcessAssertionIOS.mm:
3233         (-[WKProcessAssertionBackgroundTaskManager _updateBackgroundTask]):
3234         (WebKit::ProcessAssertion::ProcessAssertion):
3235         * WebProcess/Network/WebLoaderStrategy.cpp:
3236         * WebProcess/Network/WebResourceLoader.cpp:
3237         * WebProcess/WebPage/WebPage.cpp:
3238         (WebKit::WebPage::layerVolatilityTimerFired):
3239         * WebProcess/WebProcess.cpp:
3240         (WebKit::WebProcess::actualPrepareToSuspend):
3241         (WebKit::WebProcess::processWillSuspendImminently):
3242         (WebKit::WebProcess::prepareToSuspend):
3243         (WebKit::WebProcess::cancelPrepareToSuspend):
3244         (WebKit::WebProcess::markAllLayersVolatile):
3245         (WebKit::WebProcess::processDidResume):
3246
3247 2016-08-31  Yoav Weiss  <yoav@yoav.ws>
3248
3249         Add event support for link preload.
3250         https://bugs.webkit.org/show_bug.cgi?id=158466
3251
3252         Reviewed by Alex Christensen.
3253
3254         * WebProcess/Network/WebLoaderStrategy.cpp:
3255         (WebKit::maximumBufferingTime): Removed LinkPreload.
3256
3257 2016-08-31  Alex Christensen  <achristensen@webkit.org>
3258
3259         Add runtime flag for using URLParser
3260         https://bugs.webkit.org/show_bug.cgi?id=161363
3261
3262         Reviewed by Sam Weinig.
3263
3264         * NetworkProcess/NetworkProcess.cpp:
3265         (WebKit::NetworkProcess::initializeNetworkProcess):
3266         * NetworkProcess/NetworkProcessCreationParameters.cpp:
3267         (WebKit::NetworkProcessCreationParameters::encode):
3268         (WebKit::NetworkProcessCreationParameters::decode):
3269         * NetworkProcess/NetworkProcessCreationParameters.h:
3270         * PlatformEfl.cmake:
3271         * PlatformGTK.cmake:
3272         * PlatformMac.cmake:
3273         * Shared/Cocoa/WebKit2InitializeCocoa.mm: Added.
3274         (WebKit::platformInitializeWebKit2):
3275         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
3276         (WebKit::XPCServiceInitializer):
3277         * Shared/WebKit2Initialize.cpp:
3278         (WebKit::InitializeWebKit2):
3279         * Shared/WebKit2Initialize.h:
3280         * Shared/WebProcessCreationParameters.cpp:
3281         (WebKit::WebProcessCreationParameters::encode):
3282         (WebKit::WebProcessCreationParameters::decode):
3283         * Shared/WebProcessCreationParameters.h:
3284         * Shared/efl/WebKit2InitializeEFL.cpp: Added.
3285         (WebKit::platformInitializeWebKit2):
3286         * Shared/gtk/WebKit2InitializeGTK.cpp: Added.
3287         (WebKit::platformInitializeWebKit2):
3288         * UIProcess/WebProcessPool.cpp:
3289         (WebKit::WebProcessPool::ensureNetworkProcess):
3290         (WebKit::WebProcessPool::createNewWebProcess):
3291         * WebKit2.xcodeproj/project.pbxproj:
3292         * WebProcess/WebProcess.cpp:
3293         (WebKit::WebProcess::initializeWebProcess):
3294
3295 2016-08-30  Anders Carlsson  <andersca@apple.com>
3296
3297         Use Connection::sendWithReply for the SecItem shim messages
3298         https://bugs.webkit.org/show_bug.cgi?id=161419
3299
3300         Reviewed by Tim Horton.
3301
3302         * DerivedSources.make:
3303         * NetworkProcess/NetworkProcess.cpp:
3304         (WebKit::NetworkProcess::initializeConnection):
3305         * NetworkProcess/mac/NetworkProcessMac.mm:
3306         (WebKit::NetworkProcess::platformInitializeNetworkProcess):
3307         * Shared/mac/SecItemShim.cpp:
3308         (WebKit::workQueue):
3309         (WebKit::sendSecItemRequest):
3310         (WebKit::webSecItemCopyMatching):
3311         (WebKit::webSecItemAdd):
3312         (WebKit::webSecItemUpdate):
3313         (WebKit::webSecItemDelete):
3314         (WebKit::initializeSecItemShim):
3315         (WebKit::responseMap): Deleted.
3316         (WebKit::SecItemShim::singleton): Deleted.
3317         (WebKit::SecItemShim::SecItemShim): Deleted.
3318         (WebKit::generateSecItemRequestID): Deleted.
3319         (WebKit::SecItemShim::secItemResponse): Deleted.
3320         (WebKit::SecItemShim::initialize): Deleted.
3321         (WebKit::SecItemShim::initializeConnection): Deleted.
3322         * Shared/mac/SecItemShim.h:
3323         * Shared/mac/SecItemShim.messages.in: Removed.
3324         * UIProcess/mac/SecItemShimProxy.cpp:
3325         (WebKit::SecItemShimProxy::didReceiveMessage):
3326         (WebKit::SecItemShimProxy::secItemRequest):
3327         * UIProcess/mac/SecItemShimProxy.h:
3328         * UIProcess/mac/SecItemShimProxy.messages.in:
3329         * WebKit2.xcodeproj/project.pbxproj:
3330         * WebProcess/WebProcess.cpp:
3331         (WebKit::WebProcess::initializeConnection):
3332         * WebProcess/cocoa/WebProcessCocoa.mm:
3333         (WebKit::WebProcess::platformInitializeProcess):
3334
3335 2016-08-31  Andreas Kling  <akling@apple.com>
3336
3337         DOM event handling should pass Event around by reference.
3338         <https://webkit.org/b/161398>
3339
3340         Reviewed by Chris Dumez.
3341
3342         * WebProcess/WebPage/mac/WebPageMac.mm:
3343         (WebKit::WebPage::performNonEditingBehaviorForSelector):
3344
3345 2016-08-31  Brady Eidson  <beidson@apple.com>
3346
3347         WK2 Gamepad provider on iOS.
3348         https://bugs.webkit.org/show_bug.cgi?id=161412
3349
3350         Reviewed by Tim Horton.
3351
3352         * Configurations/FeatureDefines.xcconfig:
3353
3354         * Platform/spi/ios/UIKitSPI.h:
3355
3356         * UIProcess/Gamepad/UIGamepadProvider.cpp:
3357
3358         * UIProcess/Gamepad/ios/UIGamepadProviderIOS.mm: Copied from Source/WebKit2/UIProcess/Gamepad/mac/UIGamepadProviderMac.mm.
3359         (WebKit::UIGamepadProvider::platformWebPageProxyForGamepadInput):
3360
3361         * UIProcess/Gamepad/mac/UIGamepadProviderMac.mm:
3362
3363         * WebKit2.xcodeproj/project.pbxproj:
3364
3365 2016-08-30  Anders Carlsson  <andersca@apple.com>
3366
3367         Try to fix the 32-bit build.
3368
3369         * UIProcess/WebProcessProxy.cpp:
3370         (WebKit::WebProcessProxy::deleteWebsiteData):
3371         (WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
3372         * UIProcess/WebProcessProxy.h:
3373
3374 2016-08-30  Anders Carlsson  <andersca@apple.com>
3375
3376         Switch more messages over to Connection::sendWithReply
3377         https://bugs.webkit.org/show_bug.cgi?id=161415
3378
3379         Reviewed by Tim Horton.
3380
3381         * UIProcess/WebProcessProxy.cpp:
3382         (WebKit::WebProcessProxy::~WebProcessProxy):
3383         (WebKit::WebProcessProxy::processWillShutDown):
3384         (WebKit::WebProcessProxy::canTerminateChildProcess):
3385         (WebKit::WebProcessProxy::deleteWebsiteData):
3386         (WebKit::WebProcessProxy::deleteWebsiteDataForOrigins):
3387         (WebKit::generateCallbackID): Deleted.
3388         (WebKit::WebProcessProxy::didDeleteWebsiteData): Deleted.
3389         (WebKit::WebProcessProxy::didDeleteWebsiteDataForOrigins): Deleted.
3390         * UIProcess/WebProcessProxy.h:
3391         * UIProcess/WebProcessProxy.messages.in:
3392         * WebProcess/WebProcess.cpp:
3393         (WebKit::WebProcess::deleteWebsiteData):
3394         (WebKit::WebProcess::deleteWebsiteDataForOrigins):
3395         * WebProcess/WebProcess.h:
3396         * WebProcess/WebProcess.messages.in:
3397
3398 2016-08-30  Anders Carlsson  <andersca@apple.com>
3399
3400         Add Connection::sendWithReply
3401         https://bugs.webkit.org/show_bug.cgi?id=161399
3402
3403         Reviewed by Tim Horton.
3404
3405         Connection::sendWithReply makes it easy to send a message and process its reply asynchronously on a given WorkQueue or RunLoop.
3406         The reply handler is guaranteed to be called. If the reply is successfully received, it will consist of an std::tuple with the arguments,
3407         otherwise it will be called with Nullopt.
3408
3409         * Platform/IPC/Connection.cpp:
3410         (IPC::Connection::invalidate):
3411         Go through all reply handlers and dispatch them with a null Decoder.
3412
3413         (IPC::Connection::sendMessageWithReply):
3414         Add the reply handler to the m_replyHandlers hash map, and send the message.
3415
3416         (IPC::Connection::processIncomingSyncReply):
3417         Check if the incoming reply has an entry in m_replyHandlers. If it does, dispatch its handler using the given dispatcher.
3418
3419         (IPC::Connection::connectionDidClose):
3420         Go through all reply handlers and dispatch them with a null Decoder.
3421
3422         * Platform/IPC/Connection.h:
3423         (IPC::Connection::sendWithReply):
3424         Encode the message (we use the sync message ID infrastructure for this), then call sendMessageWithReply with a reply handler that
3425         decodes the reply and calls the real reply handler.
3426
3427         * Platform/IPC/HandleMessage.h:
3428         Forward declare Connection.
3429
3430         * UIProcess/Databases/DatabaseProcessProxy.h:
3431         * UIProcess/Network/NetworkProcessProxy.h:
3432         Forward declare WebsiteData.
3433
3434         * UIProcess/WebProcessProxy.cpp:
3435         (WebKit::WebProcessProxy::~WebProcessProxy):
3436         (WebKit::WebProcessProxy::processWillShutDown):
3437         Remove m_pendingFetchWebsiteDataCallbacks.
3438
3439         (WebKit::WebProcessProxy::fetchWebsiteData):
3440         Use Connection::sendWithReply.
3441
3442         (WebKit::WebProcessProxy::didFetchWebsiteData): Deleted.
3443
3444         * UIProcess/WebProcessProxy.h:
3445         Remove members.
3446
3447         * UIProcess/WebProcessProxy.messages.in:
3448         Remove DidFetchWebsiteData.
3449
3450         * WebProcess/WebProcess.cpp:
3451         (WebKit::WebProcess::fetchWebsiteData):
3452         * WebProcess/WebProcess.h:
3453         * WebProcess/WebProcess.messages.in:
3454         Update the FetchWebsiteData message to have a reply parameter.
3455
3456 2016-08-30  Brady Eidson  <beidson@apple.com>
3457
3458         Fix runtime error caused by missing export after https://bugs.webkit.org/show_bug.cgi?id=160846
3459
3460         Rubberstamped by Dan Bernstein.
3461
3462         * UIProcess/API/Cocoa/_WKVisitedLinkProvider.mm:
3463
3464 2016-08-30  Brady Eidson  <beidson@apple.com>
3465
3466         GameController.framework backend for gamepad API.
3467         https://bugs.webkit.org/show_bug.cgi?id=161086
3468
3469         Reviewed by Alex Christensen.
3470
3471         * UIProcess/API/Cocoa/WKProcessPool.mm:
3472         (+[WKProcessPool _forceGameControllerFramework]):
3473         * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
3474
3475         * UIProcess/Gamepad/UIGamepadProvider.h:
3476
3477         * UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm: Renamed from Source/WebKit2/UIProcess/Gamepad/mac/UIGamepadProviderHID.cpp.
3478         (WebKit::UIGamepadProvider::setUsesGameControllerFramework):
3479         (WebKit::UIGamepadProvider::platformSetDefaultGamepadProvider):
3480         (WebKit::UIGamepadProvider::platformStopMonitoringInput):
3481         (WebKit::UIGamepadProvider::platformStartMonitoringInput):
3482
3483         * WebKit2.xcodeproj/project.pbxproj:
3484
3485 2016-08-30  Mark Lam  <mark.lam@apple.com>
3486
3487         Introduce the ThrowScope and force every throw site to instantiate a ThrowScope.
3488         https://bugs.webkit.org/show_bug.cgi?id=161171
3489
3490         Reviewed by Filip Pizlo and Geoffrey Garen.
3491
3492         * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
3493         (WebKit::callMethod):
3494         * WebProcess/Plugins/Netscape/JSNPObject.cpp:
3495         (WebKit::JSNPObject::callMethod):
3496         (WebKit::JSNPObject::callObject):
3497         (WebKit::JSNPObject::callConstructor):
3498         (WebKit::JSNPObject::getOwnPropertySlot):
3499         (WebKit::JSNPObject::put):
3500         (WebKit::JSNPObject::deleteProperty):
3501         (WebKit::JSNPObject::getOwnPropertyNames):
3502         (WebKit::JSNPObject::propertyGetter):
3503         (WebKit::JSNPObject::methodGetter):
3504         (WebKit::JSNPObject::throwInvalidAccessError):
3505         * WebProcess/Plugins/Netscape/JSNPObject.h:
3506         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
3507         (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
3508
3509 2016-08-29  Anders Carlsson  <andersca@apple.com>
3510
3511         Stop using m_client to indicate whether an IPC::Connection is valid
3512         https://bugs.webkit.org/show_bug.cgi?id=161362
3513
3514         Reviewed by Andreas Kling.
3515
3516         Instead, add an std::atomic<bool> so we can reliably check the state from other threads.
3517
3518         * Platform/IPC/Connection.cpp:
3519         (IPC::Connection::Connection):
3520         (IPC::Connection::invalidate):
3521         (IPC::Connection::connectionDidClose):
3522         (IPC::Connection::dispatchSyncMessage):
3523         (IPC::Connection::dispatchDidReceiveInvalidMessage):
3524         (IPC::Connection::dispatchMessage):
3525         * Platform/IPC/Connection.h:
3526         (IPC::Connection::client):
3527         (IPC::Connection::isValid):
3528         (IPC::Connection::waitForAndDispatchImmediately):
3529         * UIProcess/WebGeolocationManagerProxy.cpp:
3530         (WebKit::WebGeolocationManagerProxy::startUpdating):
3531         (WebKit::WebGeolocationManagerProxy::stopUpdating):
3532         (WebKit::WebGeolocationManagerProxy::setEnableHighAccuracy):
3533
3534 2016-08-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3535
3536         REGRESSION(r194846): [GTK] UI process crash visiting sites protected with HTTP auth when using GTK+ < 3.14
3537         https://bugs.webkit.org/show_bug.cgi?id=161385
3538
3539         Reviewed by Antonio Gomes.
3540
3541         Since r194846, we are chaining up webkitWebViewBaseMotionNotifyEvent, but before GTK+ 3.14
3542         GtkWidget::motion_notify_event was nullptr, so it can't be used unconditionally.
3543
3544         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3545         (webkitWebViewBaseMotionNotifyEvent):
3546
3547 2016-08-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3548
3549         Unreviewed. Fix GTK+ build after r205150.
3550
3551         * UIProcess/API/gtk/WebKitUserContentManager.cpp:
3552
3553 2016-08-29  Gyuyoung Kim  <gyuyoung.kim@navercorp.com>
3554
3555         Unreviewed EFL/GTK build fix since r205150
3556
3557         * CMakeLists.txt: Add Shared/FrameInfoData.cpp.
3558
3559 2016-08-29  Anders Carlsson  <andersca@apple.com>
3560
3561         Get rid of ChildProcessProxy::fromConnection
3562         https://bugs.webkit.org/show_bug.cgi?id=161357
3563
3564         Reviewed by Tim Horton.
3565
3566         * UIProcess/ChildProcessProxy.cpp:
3567         (WebKit::ChildProcessProxy::fromConnection): Deleted.
3568         * UIProcess/ChildProcessProxy.h:
3569         * UIProcess/WebProcessProxy.h:
3570         (WebKit::WebProcessProxy::fromConnection): Deleted.
3571
3572 2016-08-29  Anders Carlsson  <andersca@apple.com>
3573
3574         Remove the last uses of WebProcessProxy::fromConnection
3575         https://bugs.webkit.org/show_bug.cgi?id=161355
3576
3577         Reviewed by Tim Horton.
3578
3579         * UIProcess/WebProcessPool.cpp:
3580         (WebKit::webProcessProxyFromConnection):
3581         (WebKit::WebProcessPool::handleMessage):
3582         (WebKit::WebProcessPool::handleSynchronousMessage):
3583         (WebKit::WebProcessPool::startedUsingGamepads):
3584         (WebKit::WebProcessPool::stoppedUsingGamepads):
3585
3586 2016-08-29  Anders Carlsson  <andersca@apple.com>
3587
3588         Get rid of another use of WebProcessProxy::fromConnection
3589         https://bugs.webkit.org/show_bug.cgi?id=161331
3590
3591         Reviewed by Dan Bernstein.
3592
3593         WebUserContentControllerProxy::didPostMessage uses WebProcessProxy::fromConnection to be able to find a WebFrameProxy from
3594         a given frame ID. Since the WebFrameProxy is only used to construct an API::FrameInfo object from, introduce a FrameInfoData object
3595         and fill it in on the web process side and send it over to the UI process where an API::FrameInfo object can be created.
3596
3597         * Shared/FrameInfoData.cpp: Added.
3598         (WebKit::FrameInfoData::encode):
3599         (WebKit::FrameInfoData::decode):
3600         * Shared/FrameInfoData.h: Added.
3601         * UIProcess/API/APIFrameInfo.cpp:
3602         (API::FrameInfo::create):
3603         (API::FrameInfo::FrameInfo):
3604         * UIProcess/API/APIFrameInfo.h:
3605         * UIProcess/API/Cocoa/WKUserContentController.mm:
3606         * UIProcess/UserContent/WebScriptMessageHandler.h:
3607         * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
3608         (WebKit::WebUserContentControllerProxy::didPostMessage):
3609         * UIProcess/UserContent/WebUserContentControllerProxy.h:
3610         * UIProcess/UserContent/WebUserContentControllerProxy.messages.in:
3611         * WebKit2.xcodeproj/project.pbxproj:
3612         * WebProcess/UserContent/WebUserContentController.cpp:
3613         * WebProcess/WebPage/WebFrame.cpp:
3614         (WebKit::WebFrame::info):
3615         * WebProcess/WebPage/WebFrame.h:
3616
3617 2016-08-29  Anders Carlsson  <andersca@apple.com>
3618
3619         Stop using WebProcessProxy::fromConnection in WebPageProxy
3620         https://bugs.webkit.org/show_bug.cgi?id=161322
3621
3622         Reviewed by Dan Bernstein.
3623
3624         The WebPageProxy already knows its WebProcessProxy - no need to look it up from the connection.
3625
3626         * UIProcess/WebPageProxy.cpp:
3627         (WebKit::WebPageProxy::handleMessage):
3628         (WebKit::WebPageProxy::handleSynchronousMessage):
3629
3630 2016-08-29  Anders Carlsson  <andersca@apple.com>
3631
3632         Move some structs into Connection.cpp
3633         https://bugs.webkit.org/show_bug.cgi?id=161320
3634
3635         Reviewed by Darin Adler.
3636
3637         * Platform/IPC/Connection.cpp:
3638         (IPC::Connection::PendingSyncReply::PendingSyncReply):
3639         * Platform/IPC/Connection.h:
3640         (IPC::Connection::PendingSyncReply::PendingSyncReply): Deleted.
3641
3642 2016-08-26  Anders Carlsson  <andersca@apple.com>
3643
3644         Remove sync message sending from secondary threads
3645         https://bugs.webkit.org/show_bug.cgi?id=161277
3646
3647         Reviewed by Sam Weinig.
3648
3649         This codepath hasn't been used for some time, and removing it will make it easier to make IPC::Connection backed by libxpc.
3650
3651         * Platform/IPC/Connection.cpp:
3652         (IPC::Connection::sendSyncMessage):
3653         (IPC::Connection::processIncomingSyncReply):
3654         (IPC::Connection::connectionDidClose):
3655         (IPC::Connection::sendSyncMessageFromSecondaryThread): Deleted.
3656         * Platform/IPC/Connection.h:
3657
3658 2016-08-16  Carlos Garcia Campos  <cgarcia@igalia.com>
3659
3660         [GTK] Accelerated compositing does not work in Wayland
3661         https://bugs.webkit.org/show_bug.cgi?id=115803
3662
3663         Reviewed by Michael Catanzaro.
3664
3665         This is the initial implementation of accelerated compositing support in Wayland for the GTK+ port. It's based
3666         on previous patches written by Iago Toral, Žan Doberšek, Emanuele Aina and Emilio Pozuelo Monfort.
3667
3668         The existing WebKitGTK+ Wayland interface previously added for this to WebCore has been moved to the WebKit2
3669         layer, since it's actually specific to WebKit2, and it's now actually used. The UI process runs a nested Wayland
3670         compositor that web processes connect to. Web processes create a Wayland surface in the nested compositor for
3671         the web page, and using the WebKitGTK+ Wayland protocol interface they tell the nested compositor the web page
3672         associated to the surface. A Wayland window is created for that surface that is then used as the native window
3673         handle for compositing. To communicate with the nested compositor and to ensure all GL operations happen in the
3674         nested compositor display, the web process creates a Wayland display that connects to the nested compositor,
3675         uses the WebKitGTK+ Wayland interface and it's set as the global shared display for compositing.
3676
3677         The nested Wayland compositor creates a new display with a unique name that is sent to the web processes at
3678         start up. It implements the Wayland surface interface to handle the Wayland buffers created for every surface
3679         and scheduling redraws on the web pages when updates are available. It uses the WebKitGTK+ Wayland interface to
3680         associate the surfaces to a particular web page. A texture is created for every surface and updated with the
3681         Wayland buffer contents using an EGLImageKHR and eglImageTargetTexture2d API.
3682
3683         To abstract the platform differences and avoid ifdefs as much as possible, new abstract classes have been added
3684         to represent the surfaces used in accelerated compositing. AcceleratedSurface is used by the web process and
3685         represents the surface where contents are rendered into. The X11 implementation is the redirected XComposite
3686         window, and the Wayland implementation is equivalent to the previous Wayland surface added to WebCore but never
3687         used. In the UI process the web view creates an abstract AcceleratedBackingStore that is used to render the
3688         AcceleratedSurface into the web view using cairo. The X11 implementation creates the cairo surface for the
3689         redirected XComposite window pixmap and uses XDamage extension to schedule redraws. The Wayland implementation
3690         asks the nested Wayland compositor for the texture associated to the web view page.
3691
3692         Accelerated compositing is now always enabled by default in both X11 and Wayland, unless it's explicitly
3693         disabled by the user using the WEBKIT_DISABLE_COMPOSITING_MODE environment variable, or if any extension or
3694         feature required by X11 or Wayland implementations are not available.
3695
3696         * PlatformGTK.cmake:
3697         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
3698         (WebKit::ThreadedCompositor::glContext): Pass the shared display for compositing to GLContext::createContextForWindow()
3699         * Shared/WebProcessCreationParameters.cpp:
3700         (WebKit::WebProcessCreationParameters::encode): Encode wayland compositor display name.
3701         (WebKit::WebProcessCreationParameters::decode): Decode wayland compositor display name.
3702         * Shared/WebProcessCreationParameters.h: Add wayland compositor display name initial parameter.
3703         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3704         (webkitWebViewBaseDispose):
3705         (webkitWebViewBaseDraw):
3706         (webkitWebViewBaseCreateWebPage):
3707         (webkitWebViewBaseEnterAcceleratedCompositingMode):
3708         (webkitWebViewBaseUpdateAcceleratedCompositingMode):
3709         (webkitWebViewBaseExitAcceleratedCompositingMode):
3710         (webkitWebViewBasePageClosed):
3711         * UIProcess/WebProcessPool.cpp:
3712         (WebKit::WebProcessPool::createNewWebProcess): Initialize the wayland compositor display name initial parameter.
3713         * UIProcess/gtk/AcceleratedBackingStore.cpp: Added.
3714         (WebKit::AcceleratedBackingStore::create):
3715         (WebKit::AcceleratedBackingStore::AcceleratedBackingStore):
3716         (WebKit::AcceleratedBackingStore::~AcceleratedBackingStore):
3717         (WebKit::AcceleratedBackingStore::paint):
3718         * UIProcess/gtk/AcceleratedBackingStore.h: Added.
3719         (WebKit::AcceleratedBackingStore::update):
3720         * UIProcess/gtk/AcceleratedBackingStoreWayland.cpp: Added.
3721         (WebKit::AcceleratedBackingStoreWayland::create):
3722         (WebKit::AcceleratedBackingStoreWayland::AcceleratedBackingStoreWayland):
3723         (WebKit::AcceleratedBackingStoreWayland::~AcceleratedBackingStoreWayland):
3724         (WebKit::AcceleratedBackingStoreWayland::paint):
3725         * UIProcess/gtk/AcceleratedBackingStoreWayland.h: Added.
3726         * UIProcess/gtk/AcceleratedBackingStoreX11.cpp: Added.
3727         (WebKit::XDamageNotifier::singleton):
3728         (WebKit::XDamageNotifier::add):
3729         (WebKit::XDamageNotifier::remove):
3730         (WebKit::XDamageNotifier::filterXDamageEvent):
3731         (WebKit::XDamageNotifier::notify):
3732         (WebKit::AcceleratedBackingStoreX11::create):
3733         (WebKit::AcceleratedBackingStoreX11::AcceleratedBackingStoreX11):
3734         (WebKit::AcceleratedBackingStoreX11::~AcceleratedBackingStoreX11):
3735         (WebKit::AcceleratedBackingStoreX11::update):
3736         (WebKit::AcceleratedBackingStoreX11::paint):
3737         * UIProcess/gtk/AcceleratedBackingStoreX11.h: Added.
3738         * UIProcess/gtk/WaylandCompositor.cpp: Added.
3739         (WebKit::WaylandCompositor::singleton):
3740         (WebKit::WaylandCompositor::Buffer::getOrCreate):
3741         (WebKit::WaylandCompositor::Buffer::Buffer):
3742         (WebKit::WaylandCompositor::Buffer::~Buffer):
3743         (WebKit::WaylandCompositor::Buffer::destroyListenerCallback):
3744         (WebKit::WaylandCompositor::Buffer::use):
3745         (WebKit::WaylandCompositor::Buffer::unuse):
3746         (WebKit::WaylandCompositor::Buffer::createImage):
3747         (WebKit::WaylandCompositor::Buffer::size):
3748         (WebKit::WaylandCompositor::Surface::Surface):
3749         (WebKit::WaylandCompositor::Surface::~Surface):
3750         (WebKit::WaylandCompositor::Surface::makePendingBufferCurrent):
3751         (WebKit::WaylandCompositor::Surface::attachBuffer):
3752         (WebKit::WaylandCompositor::Surface::requestFrame):
3753         (WebKit::WaylandCompositor::Surface::prepareTextureForPainting):
3754         (WebKit::WaylandCompositor::Surface::commit):
3755         (WebKit::WaylandCompositor::initializeEGL):
3756         (WebKit::createWaylandLoopSource):
3757         (WebKit::WaylandCompositor::WaylandCompositor):
3758         (WebKit::WaylandCompositor::getTexture):
3759         (WebKit::WaylandCompositor::bindSurfaceToWebPage):
3760         (WebKit::WaylandCompositor::registerWebPage):
3761         (WebKit::WaylandCompositor::unregisterWebPage):
3762         * UIProcess/gtk/WaylandCompositor.h: Added.
3763         (WebKit::WaylandCompositor::Buffer::createWeakPtr):
3764         (WebKit::WaylandCompositor::Surface::setWebPage):
3765         (WebKit::WaylandCompositor::isRunning):
3766         (WebKit::WaylandCompositor::displayName):
3767         * UIProcess/gtk/WebPreferencesGtk.cpp:
3768         (WebKit::WebPreferences::platformInitializeStore):
3769         * UIProcess/gtk/XDamageNotifier.cpp: Removed.
3770         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
3771         (WebKit::ThreadedCoordinatedLayerTreeHost::ThreadedCoordinatedLayerTreeHost):
3772         (WebKit::ThreadedCoordinatedLayerTreeHost::invalidate):
3773         (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
3774         (WebKit::ThreadedCoordinatedLayerTreeHost::sizeDidChange):
3775         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.h:
3776         * WebProcess/WebPage/gtk/AcceleratedSurface.cpp: Added.
3777         (WebKit::AcceleratedSurface::create):
3778         (WebKit::AcceleratedSurface::AcceleratedSurface):
3779         (WebKit::AcceleratedSurface::~AcceleratedSurface):
3780         (WebKit::AcceleratedSurface::resize):
3781         * WebProcess/WebPage/gtk/AcceleratedSurface.h: Added.
3782         (WebKit::AcceleratedSurface::window):
3783         (WebKit::AcceleratedSurface::surfaceID):
3784         * WebProcess/WebPage/gtk/AcceleratedSurfaceWayland.cpp: Added.
3785         (WebKit::waylandCompositorDisplay):
3786         (WebKit::AcceleratedSurfaceWayland::create):
3787         (WebKit::AcceleratedSurfaceWayland::AcceleratedSurfaceWayland):
3788         (WebKit::AcceleratedSurfaceWayland::~AcceleratedSurfaceWayland):
3789         (WebKit::AcceleratedSurfaceWayland::resize):
3790         * WebProcess/WebPage/gtk/AcceleratedSurfaceWayland.h: Added.
3791         * WebProcess/WebPage/gtk/AcceleratedSurfaceX11.cpp: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/RedirectedXCompositeWindow.cpp.
3792         (WebKit::AcceleratedSurfaceX11::create):
3793         (WebKit::AcceleratedSurfaceX11::AcceleratedSurfaceX11):
3794         (WebKit::AcceleratedSurfaceX11::~AcceleratedSurfaceX11):
3795         (WebKit::AcceleratedSurfaceX11::resize):
3796         * WebProcess/WebPage/gtk/AcceleratedSurfaceX11.h: Renamed from Source/WebKit2/WebProcess/WebPage/gtk/RedirectedXCompositeWindow.h.
3797         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
3798         (WebKit::LayerTreeHostGtk::LayerTreeHostGtk):
3799         (WebKit::LayerTreeHostGtk::makeContextCurrent):
3800         (WebKit::LayerTreeHostGtk::invalidate):
3801         (WebKit::LayerTreeHostGtk::sizeDidChange):
3802         (WebKit::LayerTreeHostGtk::deviceOrPageScaleFactorChanged):
3803         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::RenderFrameScheduler): Deleted.
3804         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
3805         * WebProcess/WebProcess.cpp:
3806         (WebKit::WebProcess::initializeWebProcess): Initialize the wayland compositor display name.
3807         * WebProcess/WebProcess.h:
3808         (WebKit::WebProcess::waylandCompositorDisplayName): Return the wayland compositor display name.
3809
3810 2016-08-27  Jonathan Bedard  <jbedard@apple.com>
3811
3812         WTR needs an implementation of setAutomaticLinkDetectionEnabled
3813         https://bugs.webkit.org/show_bug.cgi?id=87162
3814
3815         Reviewed by Darin Adler
3816
3817         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
3818         (WKBundleSetAutomaticLinkDetectionEnabled): Added WKBundleSetAutomaticLinkDetectionEnabled definition.
3819         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Added WKBundleSetAutomaticLinkDetectionEnabled declaration.
3820         * WebProcess/InjectedBundle/InjectedBundle.cpp:
3821         (WebKit::InjectedBundle::setAutomaticLinkDetectionEnabled): Added setAutomaticLinkDetectionEnabled definition.
3822         * WebProcess/InjectedBundle/InjectedBundle.h: Added setAutomaticLinkDetectionEnabled declaration.
3823         * WebProcess/WebProcess.h: Declared setTextCheckerState public.
3824
3825 2016-08-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3826
3827         [GTK][Threaded Compositor] Several flaky tests
3828         https://bugs.webkit.org/show_bug.cgi?id=161242
3829
3830         Reviewed by Michael Catanzaro.
3831
3832         We still have a lot of flaky tests since we switched to the threaded compositor. The UI process might
3833         take the screenshot too early, before everything is actually painted. I can't reproduce the problem, so this is
3834         actually a speculative fix or workaround. Our implementation of DrawingArea::dispatchAfterEnsuringDrawing() is
3835         quite simple, we just dispatch the callback in the next run loop iteration, which doesn't really ensures any
3836         drawing at all. So, we can wait for draw events before dispatching the given callback. Since we don't really
3837         know if draw events were already processed before dispatchAfterEnsuringDrawing() is called, or if there will be
3838         more than one damage event in a short time, this patch waits up to 1 second for draw events, and if a draw
3839         happens it stops if there isn't another draw event in the next 100ms. This should ensure a drawing if it was
3840         really needed.
3841
3842         * UIProcess/DrawingAreaProxyImpl.cpp:
3843         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::DrawingMonitor):
3844         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::~DrawingMonitor):
3845         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::webViewDrawCallback):
3846         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::start):
3847         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::stop):
3848         (WebKit::DrawingAreaProxyImpl::DrawingMonitor::didDraw):
3849         (WebKit::DrawingAreaProxyImpl::dispatchAfterEnsuringDrawing):
3850         * UIProcess/DrawingAreaProxyImpl.h:
3851
3852 2016-08-26  Sam Weinig  <sam@webkit.org>
3853
3854         Remove support for ENABLE_LEGACY_WEB_AUDIO
3855         https://bugs.webkit.org/show_bug.cgi?id=161262
3856
3857         Reviewed by Anders Carlsson.
3858
3859         * Configurations/FeatureDefines.xcconfig:
3860         Remove ENABLE_LEGACY_WEB_AUDIO.
3861
3862 2016-08-26  Anders Carlsson  <andersca@apple.com>
3863
3864         Get rid of NetworkResourceLoader::sendAbortingOnFailure
3865         https://bugs.webkit.org/show_bug.cgi?id=161267
3866
3867         Reviewed by Dan Bernstein.
3868
3869         NetworkResourceLoader::sendAbortingOnFailure sends an IPC message, and if IPC::Connection::send returns false,
3870         it will abort the network resource load.
3871
3872         IPC::Connection::send will only return false if the connection is invalid, and when it becomes invalidated the
3873         connection client member function "didClose" is invoked. For the network process, this will call abort on all outstanding
3874         network loads.
3875
3876         Auditing all the sendAbortingOnFailure call sites, shows that none of them can be called with an invalid connection,
3877         so replace sendAbortingOnFailure with send.
3878
3879         * NetworkProcess/NetworkResourceLoader.cpp:
3880         (WebKit::NetworkResourceLoader::didReceiveResponse):
3881         This is a NetworkLoadClient function which won't be called if the load has been aborted.
3882
3883         (WebKit::NetworkResourceLoader::didReceiveBuffer):
3884         Ditto.
3885
3886         (WebKit::NetworkResourceLoader::didFinishLoading):
3887         Ditto. Also, update a call to sendBufferMaybeAborting to sendBuffer.
3888
3889         (WebKit::NetworkResourceLoader::willSendRedirectedRequest):
3890         This is another NetworkLoadClient function.
3891
3892         (WebKit::NetworkResourceLoader::bufferingTimerFired):
3893         The buffering timer is stopped when abort() is called.
3894
3895         (WebKit::NetworkResourceLoader::sendBuffer):
3896         Rename this from sendBufferMaybeAborting. It has three call sites:
3897         - didReceiveBuffer and didFinishLoading are both NetworkLoadClient functions.
3898         - didRetrieveCacheEntry is called from didFinishLoading (a NetworkLoadClient function) and from
3899           the completion function of retrieveCacheEntry, which has an early return for when the loader has been aborted.
3900
3901         (WebKit::NetworkResourceLoader::didRetrieveCacheEntry):
3902         This is called from the retrieveCacheEntry completion function, which has an early return for when the loader has been aborted.
3903
3904         (WebKit::NetworkResourceLoader::dispatchWillSendRequestForCacheEntry):
3905         Ditto.
3906
3907         (WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
3908         * NetworkProcess/NetworkResourceLoader.h:
3909
3910 2016-08-26  Dan Bernstein  <mitz@apple.com>
3911
3912         [Cocoa] Infinite recursion calling -charValue on a WKNSNumber
3913         https://bugs.webkit.org/show_bug.cgi?id=161258
3914
3915         Reviewed by Anders Carlsson.
3916
3917         * Shared/Cocoa/WKNSNumber.mm:
3918         (-[WKNSNumber charValue]): Override this…
3919         (-[WKNSNumber boolValue]): …not this.
3920
3921 2016-08-26  Csaba Osztrogonác  <ossy@webkit.org>
3922
3923         [EFL][GTK] REGRESSION(204877): Fix the clean build
3924         https://bugs.webkit.org/show_bug.cgi?id=161240
3925
3926         Reviewed by Carlos Garcia Campos.
3927
3928         * Scripts/generate-forwarding-headers.pl: Added back multiple include-path support. (removed by r183389)
3929
3930 2016-08-26  Gyuyoung Kim  <gyuyoung.kim@navercorp.com>
3931
3932         Unreviewed EFL build fix since r204996.
3933
3934         * UIProcess/efl/WebPageProxyEfl.cpp:
3935         (WebKit::WebPageProxy::editorStateChanged):
3936         (WebKit::WebPageProxy::setThemePath):
3937         (WebKit::WebPageProxy::confirmComposition):
3938         (WebKit::WebPageProxy::setComposition):
3939         (WebKit::WebPageProxy::cancelComposition):
3940
3941 2016-08-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3942
3943         Unreviewed. Fix GTK+ build after r204986 and r204996.
3944
3945         * Platform/IPC/unix/ConnectionUnix.cpp:
3946         (IPC::Connection::willSendSyncMessage):
3947         (IPC::Connection::didReceiveSyncReply):
3948         * UIProcess/WebPageProxy.cpp:
3949         (WebKit::WebPageProxy::drawPagesForPrinting):
3950
3951 2016-08-25  Anders Carlsson  <andersca@apple.com>
3952
3953         Replace all IPC message send flags with OptionSet
3954         https://bugs.webkit.org/show_bug.cgi?id=161211
3955
3956         Reviewed by Tim Horton.
3957
3958         * NetworkProcess/NetworkResourceLoader.cpp:
3959         (WebKit::NetworkResourceLoader::didFailLoading):
3960         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
3961         * NetworkProcess/NetworkResourceLoader.h:
3962         * Platform/IPC/Connection.cpp:
3963         (IPC::WaitForMessageState::WaitForMessageState):
3964         (IPC::Connection::sendMessage):
3965         (IPC::Connection::sendSyncReply):
3966         (IPC::Connection::waitForMessage):
3967         (IPC::Connection::sendSyncMessage):
3968         (IPC::Connection::sendSyncMessageFromSecondaryThread):
3969         (IPC::Connection::waitForSyncReply):
3970         (IPC::Connection::processIncomingMessage):
3971         * Platform/IPC/Connection.h:
3972         (IPC::Connection::send):
3973         (IPC::Connection::sendSync):
3974         (IPC::Connection::waitForAndDispatchImmediately):
3975         * Platform/IPC/MessageSender.cpp:
3976         (IPC::MessageSender::sendMessage):
3977         * Platform/IPC/MessageSender.h:
3978         (IPC::MessageSender::send):
3979         (IPC::MessageSender::sendSync):
3980         * Platform/IPC/mac/ConnectionMac.mm:
3981         (IPC::Connection::open):
3982         (IPC::Connection::willSendSyncMessage):
3983         (IPC::Connection::didReceiveSyncReply):
3984         * PluginProcess/mac/PluginControllerProxyMac.mm:
3985         (WebKit::PluginControllerProxy::setComplexTextInputState):
3986         * UIProcess/ChildProcessProxy.cpp:
3987         (WebKit::ChildProcessProxy::sendMessage):
3988         (WebKit::ChildProcessProxy::didFinishLaunching):
3989         * UIProcess/ChildProcessProxy.h:
3990         (WebKit::ChildProcessProxy::send):
3991         (WebKit::ChildProcessProxy::sendSync):
3992         * UIProcess/Databases/DatabaseProcessProxy.cpp:
3993         (WebKit::DatabaseProcessProxy::getDatabaseProcessConnection):
3994         * UIProcess/Network/NetworkProcessProxy.cpp:
3995         (WebKit::NetworkProcessProxy::getNetworkProcessConnection):
3996         * UIProcess/Plugins/PluginProcessProxy.cpp:
3997         (WebKit::PluginProcessProxy::getPluginProcessConnection):
3998         * UIProcess/WebEditCommandProxy.cpp:
3999         (WebKit::WebEditCommandProxy::unapply):
4000         (WebKit::WebEditCommandProxy::reapply):
4001         * UIProcess/WebPageProxy.cpp:
4002         (WebKit::printingSendOptions):
4003         (WebKit::WebPageProxy::preferencesDidChange):
4004         (WebKit::WebPageProxy::sendMessage):
4005         (WebKit::WebPageProxy::beginPrinting):
4006         (WebKit::WebPageProxy::endPrinting):
4007         (WebKit::WebPageProxy::computePagesForPrinting):
4008         (WebKit::WebPageProxy::drawRectToImage):
4009         (WebKit::WebPageProxy::drawPagesToPDF):
4010         (WebKit::WebPageProxy::drawPagesForPrinting):
4011         (WebKit::WebPageProxy::setMinimumLayoutSize): Deleted.
4012         (WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight): Deleted.
4013         (WebKit::WebPageProxy::handleAlternativeTextUIResult): Deleted.
4014         * UIProcess/WebPageProxy.h:
4015         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
4016         (WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
4017         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
4018         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
4019         * WebProcess/Plugins/PluginProxy.cpp:
4020         (WebKit::PluginProxy::geometryDidChange):
4021         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
4022         (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
4023         (WebKit::WebChromeClient::runJavaScriptAlert):
4024         (WebKit::WebChromeClient::runJavaScriptConfirm):
4025         (WebKit::WebChromeClient::runJavaScriptPrompt):
4026         (WebKit::WebChromeClient::print):
4027         (WebKit::WebChromeClient::exceededDatabaseQuota):
4028         (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
4029         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
4030         (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
4031         * WebProcess/WebPage/WebFrame.cpp:
4032         (WebKit::WebFrame::createWithCoreMainFrame):
4033         (WebKit::WebFrame::createSubframe):
4034         * WebProcess/WebPage/WebPage.cpp:
4035         (WebKit::WebPage::sendPostLayoutEditorStateIfNeeded):
4036         (WebKit::WebPage::postSynchronousMessageForTesting):
4037         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
4038         (WebKit::RemoteLayerTreeDrawingArea::BackingStoreFlusher::flush):
4039