4f8ca3eaa96330ea65809ce5380d82598734bb92
[WebKit-https.git] / Tools / ChangeLog
1 2019-01-11  Zalan Bujtas  <zalan@apple.com>
2
3         [LFC][BFC][MarginCollapsing] Adjust vertical position when box margin collapses through.
4         https://bugs.webkit.org/show_bug.cgi?id=193346
5
6         Reviewed by Antti Koivisto.
7
8         * LayoutReloaded/misc/LFC-passing-tests.txt:
9
10 2019-01-10  Ryan Haddad  <ryanhaddad@apple.com>
11
12         Unreviewed, fix typo that breaks dashboard link.
13
14         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
15         (WebKitBuildbot):
16
17 2019-01-10  Ryan Haddad  <ryanhaddad@apple.com>
18
19         Update macOS queue configurations
20         https://bugs.webkit.org/show_bug.cgi?id=193329
21
22         Reviewed by Alexey Proskuryakov.
23
24         * BuildSlaveSupport/build.webkit.org-config/config.json:
25         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
26         (BubbleQueueServer):
27         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
28         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
29         (WebKitBuildbot):
30         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
31         (table.queue-grid tr.platform.macos-sierra img.logo): Deleted.
32         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
33
34 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
35
36         MiniBrowser should be able to navigate to about:blank
37         https://bugs.webkit.org/show_bug.cgi?id=193345
38
39         Reviewed by Simon Fraser.
40
41         * MiniBrowser/mac/BrowserWindowController.m:
42         (-[BrowserWindowController addProtocolIfNecessary:]):
43         Don't prepend "http://" to "about:" prefixed URLs like "about:blank".
44
45         * MiniBrowser/mac/WK1BrowserWindowController.m:
46         (-[WK1BrowserWindowController fetch:]):
47         * MiniBrowser/mac/WK2BrowserWindowController.m:
48         (-[WK2BrowserWindowController fetch:]):
49         Clean up the code that uses this to match style.
50
51 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
52
53         Remove MiniBrowser custom "Process Swap" menu item which does not work
54         https://bugs.webkit.org/show_bug.cgi?id=193344
55
56         Reviewed by Simon Fraser.
57
58         There is a menu item under the Experimental menu that does work.
59
60         * MiniBrowser/mac/AppDelegate.m:
61         (defaultConfiguration):
62         * MiniBrowser/mac/SettingsController.h:
63         * MiniBrowser/mac/SettingsController.m:
64         (-[SettingsController _populateMenu]):
65         (-[SettingsController validateMenuItem:]):
66         (-[SettingsController processSwapOnNavigationEnabled]): Deleted.
67         (-[SettingsController toggleProcessSwapOnNavigation:]): Deleted.
68
69 2019-01-10  Timothy Hatcher  <timothy@apple.com>
70
71         Add WKBundlePage SPI to temporarily force light or dark appearance on a page.
72         https://bugs.webkit.org/show_bug.cgi?id=193327
73         rdar://problem/47093222
74
75         Reviewed by Tim Horton.
76
77         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
78         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm: Added.
79         (TestWebKitAPI::didFinishNavigation):
80         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
81         (TestWebKitAPI::TEST):
82         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle_Bundle.mm: Added.
83         (TestWebKitAPI::ForceLightAppearanceInBundleTest::ForceLightAppearanceInBundleTest):
84         (TestWebKitAPI::ForceLightAppearanceInBundleTest::didCreatePage):
85         (TestWebKitAPI::ForceLightAppearanceInBundleTest::didReceiveMessage):
86         * TestWebKitAPI/Tests/WebKit/mac/dark-mode.html: Added.
87
88 2019-01-10  Joseph Pecoraro  <pecoraro@apple.com>
89
90         Leak of WKWebProcessPlugInHitTestResult (160 bytes) in com.apple.WebKit.WebContent running layout tests
91         https://bugs.webkit.org/show_bug.cgi?id=193338
92         <rdar://problem/46664774>
93
94         Reviewed by David Kilzer.
95
96         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
97         (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
98
99 2019-01-10  Commit Queue  <commit-queue@webkit.org>
100
101         Unreviewed, rolling out r239825.
102         https://bugs.webkit.org/show_bug.cgi?id=193330
103
104         Broke tests on armv7/linux bots (Requested by guijemont on
105         #webkit).
106
107         Reverted changeset:
108
109         "Enable DFG on ARM/Linux again"
110         https://bugs.webkit.org/show_bug.cgi?id=192496
111         https://trac.webkit.org/changeset/239825
112
113 2019-01-10  Zhifei Fang  <zhifei_fang@apple.com>
114
115         Disable the run-jsc-stress-test remote host key check.
116         https://bugs.webkit.org/show_bug.cgi?id=192988
117
118         Reviewed by Alexey Proskuryakov.
119
120         * Scripts/run-jsc-stress-tests:
121
122 2019-01-10  John Wilander  <wilander@apple.com>
123
124         Override the session configuration for cookieAcceptPolicy
125         https://bugs.webkit.org/show_bug.cgi?id=190925
126         <rdar://problem/45497382>
127
128         Reviewed by Alexey Proskuryakov and Alex Christensen.
129
130         Test infrastructure for setting a first-party-only cookie policy.
131
132         * DumpRenderTree/TestRunner.cpp:
133         (setOnlyAcceptFirstPartyCookiesCallback):
134         (TestRunner::staticFunctions):
135         * DumpRenderTree/TestRunner.h:
136         * DumpRenderTree/mac/TestRunnerMac.mm:
137         (TestRunner::setOnlyAcceptFirstPartyCookies):
138         * DumpRenderTree/win/TestRunnerWin.cpp:
139         (TestRunner::setOnlyAcceptFirstPartyCookies):
140         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
141         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
142         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
143         * WebKitTestRunner/InjectedBundle/TestRunner.h:
144         * WebKitTestRunner/TestInvocation.cpp:
145         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
146
147 2019-01-09  Matt Rajca  <mrajca@apple.com>
148
149         Put per-document autoplay behavior behind runtime website policies quirk instead of a compile time flag
150         https://bugs.webkit.org/show_bug.cgi?id=193301
151
152         Reviewed by Jer Noble.
153         
154         Added API tests.
155
156         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
157         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
158         (TEST):
159         * TestWebKitAPI/Tests/WebKitCocoa/autoplaying-multiple-media-elements.html: Added.
160
161 2019-01-10  Zalan Bujtas  <zalan@apple.com>
162
163         [LFC][BFC][MarginCollapsing] Take collapsed through siblings into account when computing vertical position
164         https://bugs.webkit.org/show_bug.cgi?id=193310
165
166         Reviewed by Antti Koivisto.
167
168         * LayoutReloaded/misc/LFC-passing-tests.txt:
169
170 2019-01-10  Dominik Infuehr  <dinfuehr@igalia.com>
171
172         Enable DFG on ARM/Linux again
173         https://bugs.webkit.org/show_bug.cgi?id=192496
174
175         Reviewed by Yusuke Suzuki.
176
177         After changing the bytecode format DFG was disabled on all 32-bit
178         architectures. Enable DFG now again on ARM/Linux. Run again JIT-tests
179         on ARM by default.
180
181         * Scripts/run-jsc-stress-tests:
182
183 2019-01-09  Fujii Hironori  <Hironori.Fujii@sony.com>
184
185         [Win][MiniBrowser] wchar_t strings shouldn't be treated as BSTR
186         https://bugs.webkit.org/show_bug.cgi?id=193271
187
188         Reviewed by Brent Fulgham.
189
190         BSTR is a special data structure created by SysAllocString, not a
191         wchar_t null-terminated string.
192
193         * DumpRenderTree/win/TestRunnerWin.cpp:
194         (TestRunner::setDatabaseQuota): Use L"" instead of "" for _bstr_t.
195         * MiniBrowser/win/MiniBrowserWebHost.cpp:
196         (MiniBrowserWebHost::didFinishLoadForFrame): Use _bstr_t to create
197         BSTR from wide string literals.
198
199 2019-01-09  Alexey Proskuryakov  <ap@apple.com>
200
201         Tweak wording for build/version_check style checker error
202         https://bugs.webkit.org/show_bug.cgi?id=193256
203
204         Reviewed by Tim Horton.
205
206         * Scripts/webkitpy/style/checkers/cpp.py:
207         (check_os_version_checks):
208         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
209         (WebKitStyleTest.test_os_version_checks):
210
211 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
212
213         [ews-build] Add link to bug along with bug title
214         https://bugs.webkit.org/show_bug.cgi?id=193293
215
216         Reviewed by Lucas Forschler.
217
218         * BuildSlaveSupport/ews-build/steps.py:
219         (ValidatePatch._is_bug_closed): Fetch bug title from Bugzilla and add it to the build.
220         (ConfigureBuild.add_bug_id_url): Deleted.
221         (ConfigureBuild.getBugURL): Deleted.
222
223 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
224
225         [ews-build] Use https for ews-build server
226         https://bugs.webkit.org/show_bug.cgi?id=193193
227
228         Reviewed by Lucas Forschler.
229
230         * BuildSlaveSupport/ews-build/steps.py:
231
232 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
233
234         [ews-build] Parse and display number of style failures
235         https://bugs.webkit.org/show_bug.cgi?id=193280
236
237         Reviewed by Lucas Forschler.
238
239         * BuildSlaveSupport/ews-build/steps.py:
240         (CheckStyle): Use TestWithFailureCount as base class.
241         (CheckStyle.countFailures): Count the number of style failures.
242
243 2019-01-09  Aakash Jain  <aakash_jain@apple.com>
244
245         [ews-build] use patch_id instead of ewspatchid
246         https://bugs.webkit.org/show_bug.cgi?id=193235
247
248         Reviewed by Lucas Forschler.
249
250         * BuildSlaveSupport/ews-build/factories.py: Replaced ewspatchid with patch_id.
251         * BuildSlaveSupport/ews-build/steps.py: Ditto.
252         * BuildSlaveSupport/ews-build/steps_unittest.py: Ditto.
253
254 2019-01-09  Zalan Bujtas  <zalan@apple.com>
255
256         [LFC][BFC][MarginCollapsing] Add support for peculiar cases.
257         https://bugs.webkit.org/show_bug.cgi?id=192625
258
259         Reviewed by Antti Koivisto.
260
261         * LayoutReloaded/misc/LFC-passing-tests.txt:
262
263 2019-01-09  Michael Catanzaro  <mcatanzaro@igalia.com>
264
265         [WPE][GTK] Purge use of g_assert() under TestWebKitAPI
266         https://bugs.webkit.org/show_bug.cgi?id=192841
267
268         Reviewed by Carlos Garcia Campos.
269
270         There are separate g_assert_*() macros for use in tests, which we use inconsistently
271         currently. Use them always. We'll get nicer error messages now when tests fail, and the
272         assertions will now run during tests even if G_DISABLE_ASSERT is used when building.
273
274         Note that the documentation of g_assert() says that it is not to be used when writing tests.
275
276         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
277         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
278         (WebKitWebEditorTest::testSelectionChanged):
279         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
280         (WebKitFrameTest::testMainFrame):
281         (WebKitFrameTest::testURI):
282         (WebKitFrameTest::testJavaScriptContext):
283         (WebKitFrameTest::testJavaScriptValues):
284         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
285         (testWebViewAuthenticationRequest):
286         (testWebViewAuthenticationLoadCancelled):
287         (testWebViewAuthenticationFailure):
288         (testWebViewAuthenticationStorage):
289         (ProxyAuthenticationTest::ProxyAuthenticationTest):
290         (testWebViewAuthenticationProxy):
291         (testWebViewAuthenticationProxyHTTPS):
292         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
293         (testAutomationSessionRequestSession):
294         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
295         (testBackForwardListNavigation):
296         (testWebKitWebViewSessionState):
297         (testWebKitWebViewSessionStateWithFormData):
298         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
299         (ConsoleMessageTest::consoleMessageReceivedCallback):
300         (testWebKitConsoleMessageConsoleAPI):
301         (testWebKitConsoleMessageJavaScriptException):
302         (testWebKitConsoleMessageNetworkError):
303         (testWebKitConsoleMessageSecurityError):
304         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
305         (testCookieManagerAcceptPolicy):
306         (testCookieManagerCookiesChanged):
307         (testCookieManagerPersistentStorage):
308         (testCookieManagerPersistentStorageDeleteAll):
309         (testCookieManagerEphemeral):
310         * TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp:
311         (testWebKitDOMElementAutoFill):
312         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
313         (downloadLocalFileSuccessfully):
314         (createFileAtDestination):
315         (testDownloadOverwriteDestinationDisallowed):
316         (testDownloadLocalFileError):
317         (testDownloadRemoteFile):
318         (testDownloadRemoteFileError):
319         (testWebViewDownloadURI):
320         (testPolicyResponseDownload):
321         (testPolicyResponseDownloadCancel):
322         (testDownloadMIMEType):
323         (contextMenuCallback):
324         (testContextMenuDownloadActions):
325         (testBlobDownload):
326         * TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp:
327         (testWebKitWebEditorSelectionChanged):
328         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
329         (testWebKitFrameMainFrame):
330         (testWebKitFrameURI):
331         (testWebKitFrameJavaScriptContext):
332         (testWebKitFrameJavaScriptValues):
333         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
334         (LoadStopTrackingTest::loadFailed):
335         (testWebViewTitle):
336         (testURIRequestHTTPHeaders):
337         (testURIRequestHTTPMethod):
338         (testURIResponseHTTPHeaders):
339         (testRedirectToDataURI):
340         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
341         (testProcessPerWebView):
342         (testWebProcessLimit):
343         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
344         (testWebViewResources):
345         (testWebResourceLoading):
346         (testWebResourceSuggestedFilename):
347         (testWebResourceGetData):
348         (testWebResourceGetDataError):
349         (testWebViewResourcesHistoryCache):
350         (testWebResourceSendRequest):
351         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
352         (testSSL):
353         (testInsecureContent):
354         (testTLSErrorsPolicy):
355         (testTLSErrorsRedirect):
356         (testTLSErrorsHTTPAuth):
357         (testLoadFailedWithTLSErrors):
358         (testSubresourceLoadFailedWithTLSErrors):
359         (httpsServerCallback):
360         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
361         (testWebViewCreateNavigationData):
362         (testWebViewJavaScriptDialogs):
363         (testWebViewWindowProperties):
364         (testWebViewMouseTarget):
365         (testWebViewFileChooserRequest):
366         (testWebViewColorChooserRequest):
367         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
368         (testWebExtensionGetTitle):
369         (testDocumentLoadedSignal):
370         (testWebKitWebViewProcessCrashed):
371         (testWebExtensionWindowObjectCleared):
372         (testWebExtensionIsolatedWorld):
373         (permissionRequestCallback):
374         (didAssociateFormControlsCallback):
375         (testWebExtensionFormControlsAssociated):
376         (FormSubmissionTest::FormSubmissionTest):
377         (FormSubmissionTest::testFormSubmissionResult):
378         (testWebExtensionFormSubmissionSteps):
379         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
380         (testNotInitialized):
381         (testClearDatabase):
382         (testPrivateBrowsing):
383         (testGetFavicon):
384         (testWebViewFavicon):
385         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
386         (testFindControllerTextFound):
387         (testFindControllerTextNotFound):
388         (testFindControllerMatchCount):
389         (testFindControllerMaxMatchCount):
390         (testFindControllerNext):
391         (testFindControllerPrevious):
392         (testFindControllerCountedMatches):
393         (testFindControllerOptions):
394         (testFindControllerHide):
395         (testFindControllerInstance):
396         (testFindControllerGetters):
397         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
398         (testNavigationPolicy):
399         (testResponsePolicy):
400         (testNewWindowPolicy):
401         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
402         (testSecurityOriginBasicConstructor):
403         (testSecurityOriginURIConstructor):
404         (testSecurityOriginDefaultPort):
405         (testSecurityOriginFileURI):
406         (testOpaqueSecurityOrigin):
407         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
408         (testWebKitSettings):
409         (testWebKitSettingsNewWithSettings):
410         (testWebKitSettingsUserAgent):
411         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
412         (testWebViewNewWithUserContentManager):
413         (isStyleSheetInjectedForURLAtPath):
414         (isScriptInjectedForURLAtPath):
415         (testUserContentManagerInjectedStyleSheet):
416         (testUserContentManagerInjectedScript):
417         (UserScriptMessageTest::scriptMessageReceived):
418         (UserScriptMessageTest::waitUntilMessageReceived):
419         (UserScriptMessageTest::runJavaScriptFinished):
420         (testUserContentManagerScriptMessageReceived):
421         (testUserContentManagerScriptMessageInWorldReceived):
422         (testUserContentManagerScriptMessageFromDOMBindings):
423         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
424         (testWebContextDefault):
425         (testWebContextEphemeral):
426         (testWebContextGetPlugins):
427         (testWebContextURIScheme):
428         (testWebContextSpellChecker):
429         (testWebContextLanguages):
430         (consoleMessageReceivedCallback):
431         (testWebContextSecurityFileXHR):
432         (ProxyTest::ProxyTest):
433         (testWebContextProxySettings):
434         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
435         (testWebViewWebContext):
436         (testWebViewWebBackend):
437         (testWebViewEphemeral):
438         (testWebViewCustomCharset):
439         (testWebViewSettings):
440         (testWebViewRunJavaScript):
441         (testWebViewCanShowMIMEType):
442         (testWebViewSubmitForm):
443         (testWebViewSave):
444         (testWebViewPageVisibility):
445         (testWebViewSnapshot):
446         (testWebViewNotification):
447         (testWebViewNotificationInitialPermissionAllowed):
448         (testWebViewNotificationInitialPermissionDisallowed):
449         (testWebViewIsPlayingAudio):
450         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
451         (WebsiteDataTest::WebsiteDataTest):
452         (WebsiteDataTest::remove):
453         (WebsiteDataTest::clear):
454         (testWebsiteDataConfiguration):
455         (testWebsiteDataEphemeral):
456         (testWebsiteDataCache):
457         (testWebsiteDataStorage):
458         (testWebsiteDataDatabases):
459         (testWebsiteDataAppcache):
460         (testWebsiteDataCookies):
461         (testWebsiteDataDeviceIdHashSalt):
462         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
463         (emitDocumentLoaded):
464         (emitURIChanged):
465         (sendRequestCallback):
466         (contextMenuCallback):
467         (consoleMessageSentCallback):
468         (emitFormControlsAssociated):
469         (formControlsAssociatedCallback):
470         (emitFormSubmissionEvent):
471         (willSubmitFormCallback):
472         (windowObjectCleared):
473         (methodCallCallback):
474         (registerGResource):
475         (webkit_web_extension_initialize_with_user_data):
476         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
477         (checkLeaks):
478         (WebProcessTest::create):
479         (runTest):
480         * TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp:
481         (AutocleanupsTest::testWebProcessAutocleanups):
482         * TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
483         (WebKitDOMClientRectTest::testDivBoundingClientRectPosition):
484         (WebKitDOMClientRectTest::testDivClientRectsPositionAndLength):
485         * TestWebKitAPI/Tests/WebKitGtk/DOMDOMWindowTest.cpp:
486         (WebKitDOMDOMWindowTest::testSignals):
487         (WebKitDOMDOMWindowTest::testDispatchEvent):
488         (WebKitDOMDOMWindowTest::testGetComputedStyle):
489         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeFilterTest.cpp:
490         (WebKitDOMNodeFilterTest::testTreeWalker):
491         (WebKitDOMNodeFilterTest::testNodeIterator):
492         * TestWebKitAPI/Tests/WebKitGtk/DOMNodeTest.cpp:
493         (WebKitDOMNodeTest::testHierarchyNavigation):
494         (WebKitDOMNodeTest::testInsertion):
495         (WebKitDOMNodeTest::testTagNamesNodeList):
496         (WebKitDOMNodeTest::testTagNamesHTMLCollection):
497         (WebKitDOMNodeTest::testDOMCache):
498         * TestWebKitAPI/Tests/WebKitGtk/DOMXPathNSResolverTest.cpp:
499         (WebKitDOMXPathNSResolverTest::evaluateFooChildTextAndCheckResult):
500         (WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
501         (WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
502         * TestWebKitAPI/Tests/WebKitGtk/TestAutocleanups.cpp:
503         (testUIProcessAutocleanups):
504         (testWebProcessAutocleanups):
505         * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
506         (testContextMenuPopulateMenu):
507         (testContextMenuDismissed):
508         * TestWebKitAPI/Tests/WebKitGtk/TestDOMClientRect.cpp:
509         (testWebKitDOMClientRectDivBoundingClientRectPosition):
510         (testWebKitDOMClientRectDivClientRectsPositionAndLength):
511         * TestWebKitAPI/Tests/WebKitGtk/TestDOMDOMWindow.cpp:
512         (testWebKitDOMDOMWindowSignals):
513         (testWebKitDOMDOMWindowDispatchEvent):
514         (testWebKitDOMDOMWindowGetComputedStyle):
515         * TestWebKitAPI/Tests/WebKitGtk/TestDOMNode.cpp:
516         (testWebKitDOMNodeHierarchyNavigation):
517         (testWebKitDOMNodeInsertion):
518         (testWebKitDOMNodeTagNamesNodeList):
519         (testWebKitDOMNodeTagNamesHTMLCollection):
520         (testWebKitDOMObjectCache):
521         * TestWebKitAPI/Tests/WebKitGtk/TestDOMNodeFilter.cpp:
522         (testWebKitDOMNodeFilterTreeWalker):
523         (testWebKitDOMNodeFilterNodeIterator):
524         * TestWebKitAPI/Tests/WebKitGtk/TestDOMXPathNSResolver.cpp:
525         (testWebKitDOMXPathNSResolverNative):
526         (testWebKitDOMXPathNSResolverCustom):
527         * TestWebKitAPI/Tests/WebKitGtk/TestInspector.cpp:
528         (testInspectorDefault):
529         (testInspectorManualAttachDetach):
530         (testInspectorCustomContainerDestroyed):
531         * TestWebKitAPI/Tests/WebKitGtk/TestInspectorServer.cpp:
532         (startTestServer):
533         (testInspectorServerPageList):
534         * TestWebKitAPI/Tests/WebKitGtk/TestOptionMenu.cpp:
535         (OptionMenuTest::showOptionMenuCallback):
536         (OptionMenuTest::menuCloseCallback):
537         (OptionMenuTest::close):
538         (OptionMenuTest::activateItem):
539         (OptionMenuTest::selectItem):
540         (testOptionMenuSimple):
541         (testOptionMenuGroups):
542         (testOptionMenuActivate):
543         (testOptionMenuSelect):
544         * TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
545         (testPrintOperationPrintSettings):
546         (webViewPrintCallback):
547         (testPrintOperationPrint):
548         (testPrintCustomWidget):
549         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
550         (checkAtspiAccessible):
551         (testAtspiBasicHierarchy):
552         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitVersion.cpp:
553         (testWebKitCheckVersion):
554         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
555         (testWebViewEditorCutCopyPasteNonEditable):
556         (testWebViewEditorCutCopyPasteEditable):
557         (testWebViewEditorSelectAllNonEditable):
558         (testWebViewEditorSelectAllEditable):
559         (loadContentsAndTryToCutSelection):
560         (testWebViewEditorNonEditable):
561         (testWebViewEditorEditable):
562         (testWebViewEditorEditorStateTypingAttributes):
563         (testWebViewEditorInsertImage):
564         (testWebViewEditorCreateLink):
565         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
566         (loadChangedCallback):
567         (loadFailedCallback):
568         (loadFailedWithTLSErrorsCallback):
569         (LoadTrackingTest::LoadTrackingTest):
570         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
571         (registerGResource):
572         (removeNonEmptyDirectory):
573         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
574         (Test::adoptView):
575         (Test::~Test):
576         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
577         (WebKitTestBus::getOrCreateConnection):
578         (WebKitTestBus::createProxy):
579         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
580         (WebKitTestServer::getWebSocketURIForPath const):
581         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
582         (WebViewTest::initializeWebView):
583         (WebViewTest::loadURI):
584         (WebViewTest::loadHtml):
585         (WebViewTest::loadPlainText):
586         (WebViewTest::loadBytes):
587         (WebViewTest::loadRequest):
588         (WebViewTest::loadAlternateHTML):
589         (WebViewTest::goBack):
590         (WebViewTest::goForward):
591         (WebViewTest::goToBackForwardListItem):
592         (resourceGetDataCallback):
593         (WebViewTest::mainResourceData):
594         (WebViewTest::javascriptResultToCString):
595         (WebViewTest::javascriptResultToNumber):
596         (WebViewTest::javascriptResultToBoolean):
597         (WebViewTest::javascriptResultIsNull):
598         (WebViewTest::javascriptResultIsUndefined):
599         (onSnapshotReady):
600         (WebViewTest::runWebProcessTest):
601         * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp:
602         (WebViewTest::platformInitializeWebView):
603         (WebViewTest::showInWindow):
604         (WebViewTest::showInWindowAndWaitUntilMapped):
605         (WebViewTest::mouseMoveTo):
606         (WebViewTest::emitPopupMenuSignal):
607         (WebViewTest::keyStroke):
608         (WebViewTest::doMouseButtonEvent):
609
610 2019-01-09  Philippe Normand  <pnormand@igalia.com>
611
612         [WPE] API tests can't run in flatpak environment
613         https://bugs.webkit.org/show_bug.cgi?id=193242
614
615         Reviewed by Michael Catanzaro.
616
617         * Scripts/run-wpe-tests: Add --wpe to arguments passed to
618         flatpakutils so that it knows which port it's dealing with.
619         * glib/common.py: Remove build_dir globals so that subsequent
620         calls actually take args into account.
621         (library_build_path):
622         (binary_build_path):
623
624 2019-01-08  Dean Jackson  <dino@apple.com>
625
626         Blob references for System Previews don't get a correct file extension
627         https://bugs.webkit.org/show_bug.cgi?id=193268
628         <rdar://problem/47133037>
629
630         Reviewed by Tim Horton.
631
632         New test that a Blob download of a USDZ file gets named correctly.
633
634         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
635         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
636         (-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
637         (-[BlobWithUSDZExtensionDownloadDelegate _downloadDidFinish:]):
638         (TEST):
639         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreviewBlobNaming.html: Added.
640
641 2019-01-08  Jiewen Tan  <jiewen_tan@apple.com>
642
643         [WebAuthN] Support U2F HID Authenticators on macOS
644         https://bugs.webkit.org/show_bug.cgi?id=191535
645         <rdar://problem/47102027>
646
647         Reviewed by Brent Fulgham.
648
649         This patch:
650         1) adds support for U2F mocking mechanism;
651         2) updates tests to reflect U2fCommandConstructor changes.
652
653         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
654         (TestWebKitAPI::TEST):
655         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
656         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
657         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
658
659 2019-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
660
661         [iOS] Dispatch a synthetic mousedown event prior to starting drags
662         https://bugs.webkit.org/show_bug.cgi?id=193229
663         <rdar://problem/46717097>
664
665         Reviewed by Tim Horton.
666
667         Add a cross-platform drag and drop test to verify that calling `preventDefault()` on the mousedown event
668         prevents a drag from starting.
669
670         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
671         * TestWebKitAPI/Tests/WebKitCocoa/link-and-target-div.html:
672
673         Tweak this test to make it robust when dragging the link to the target element multiple times in a single test.
674
675 2019-01-08  Zhifei Fang  <zhifei_fang@apple.com>
676   
677         Layout test will generate a perf metric file to results dir.
678         https://bugs.webkit.org/show_bug.cgi?id=192030
679         <rdar://problem/32779516>
680
681         Reviewed by Aakash Jain.
682
683         Layout test running time will be collected to a perf metric file.
684         For now, instead of outputing running time of all tests (which is huge),
685         we aggregate them by test directories which are at most two level deep. 
686
687         * Scripts/webkitpy/layout_tests/controllers/manager.py:
688         (Manager._end_test_run):
689         (Manager._output_perf_metrics):
690         (Manager._print_expectation_line_for_test):
691         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
692         (add_test_perf_metric):
693         (test_perf_metrics):
694         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
695         (JSONGeneratorTest.test_test_timings_trie):
696         (JSONGeneratorTest):
697         (JSONGeneratorTest.test_test_perf_metrics):
698         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
699         (RebaselineTest.test_reset_results):
700         (RebaselineTest.test_missing_results):
701         (RebaselineTest.test_new_baseline):
702
703 2019-01-08  Patrick Griffis  <pgriffis@igalia.com>
704
705         [WPE][GTK] Add php-json to install-dependencies
706         https://bugs.webkit.org/show_bug.cgi?id=193233
707
708         Reviewed by Michael Catanzaro.
709
710         * gtk/install-dependencies:
711         * wpe/install-dependencies:
712
713 2019-01-08  Chris Dumez  <cdumez@apple.com>
714
715         Regression(PSON-r239182): Blank view when navigating back and forth between google.com and stack overflow
716         https://bugs.webkit.org/show_bug.cgi?id=193224
717         <rdar://problem/47097726>
718
719         Reviewed by Alex Christensen.
720
721         Add API test coverage.
722
723         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
724
725 2019-01-07  David Kilzer  <ddkilzer@apple.com>
726
727         Leak of ScrollCompletionCallbackData (16 bytes) in com.apple.WebKit.WebContent running WebKit layout tests
728         <https://webkit.org/b/193222>
729         <rdar://problem/46862309>
730
731         Reviewed by Joseph Pecoraro.
732
733         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
734         (WTR::executeCallback): Fix camel case of variable name.
735         (WTR::EventSendingController::callAfterScrollingCompletes): If
736         WKBundlePageRegisterScrollOperationCompletionCallback() returns
737         false, make sure to release the ScrollCompletionCallbackData
738         object.  This fixes the leak.
739
740 2019-01-07  Fujii Hironori  <Hironori.Fujii@sony.com>
741
742         [Win] EWS: wincairo-ews cannot apply a patch with *.png
743         https://bugs.webkit.org/show_bug.cgi?id=193044
744
745         Reviewed by Daniel Bates.
746
747         WinCairo EWS bots are using Windows Perl. Binary files should be
748         opened as binary mode.
749
750         * Scripts/svn-apply:
751         (handleGitBinaryChange): Use 'binmode' for binary file handles.
752
753 2019-01-07  Don Olmstead  <don.olmstead@sony.com>
754
755         [CMake] Add ENABLE_CSS_TYPED_OM option
756         https://bugs.webkit.org/show_bug.cgi?id=193216
757
758         Reviewed by Michael Catanzaro.
759
760         * Scripts/webkitperl/FeatureList.pm:
761
762 2019-01-07  David Kilzer  <ddkilzer@apple.com>
763
764         Prefer RetainPtr<NSObject> to RetainPtr<NSObject *>
765         <https://webkit.org/b/193056>
766
767         Reviewed by Alex Christensen.
768
769         * Scripts/webkitpy/style/checker.py:
770         - Ignore use of new runtime/retainptr check in
771           Tools/TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm since it
772           contains tests to ensure RetainPtr<NSObject *> is compatible
773           with RetainPtr<NSObject>.
774
775         * Scripts/webkitpy/style/checkers/cpp.py:
776         (check_language):
777         (CppChecker):
778         - Add checker for use of '*' in RetainPtr<> type.  A for loop
779           was used instead of a single regex so that angle brackets
780           could be matched up when checking the type contained within
781           the RetainPtr<> type.
782
783         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
784         (CppStyleTest):
785         - Add unit test for new runtime/retainptr check.
786
787         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h:
788         * TestWebKitAPI/EditingTestHarness.h:
789         - Remove '*' from RetainPtr<> type.
790
791         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
792         - Add cf/RetainPtr.cpp back to TestWTFLibrary target!  This
793           regressed in r201938.
794
795         * TestWebKitAPI/Tests/WTF/cf/RetainPtr.cpp:
796         (TestWebKitAPI::TEST):
797         - Update tests to match RetainPtr.mm tests (except for the
798           `*SimilarNSType` tests since there is no CF equivalent of
799           RetainPtr<NSString> and RetainPtr<NSString *>).
800
801         * TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm:
802         (TestWebKitAPI::TEST):
803         - Update tests to:
804           - Not conflict by name with equivalent CF tests in
805             RetainPtr.cpp.
806           - Add test cases for RetainPtr<NSObject>,
807             RetainPtr<NSObject *> and RetainPtr<id> were appropriate.
808           - Add `*SimilarNSType` tests for converting between
809             RetainPtr<NSObject> and RetainPtr<NSObject *>.
810           - Change `0` to `nil` as appropriate.
811           - Re-alphabetize the tests by name.
812           - Add Optional<RetainPtr<>> tests.
813           - Add retainPtr() tests.
814
815         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
816         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
817         * TestWebKitAPI/Tests/WebKitCocoa/IconLoadingDelegate.mm:
818         (TEST):
819         - Remove '*' from RetainPtr<> type.
820
821         * TestWebKitAPI/Tests/WebKitCocoa/JITEnabled.mm:
822         (TEST(WebKit, JITEnabled)):
823         - Add missing WTFMove().  Apparently a temporary was being
824           created before in the argument list due to mismatched
825           RetainPtr<> types.
826
827         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
828         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
829         (TestWebKitAPI::setUpWebViewForTestingVideoControlsManager):
830         (TestWebKitAPI::TEST):
831         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
832         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
833         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
834         (WTR::resourcesDirectoryURL):
835         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
836         (WTR::InjectedBundle::platformInitialize):
837         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
838         - Remove '*' from RetainPtr<> type.
839
840 2019-01-07  Eric Carlson  <eric.carlson@apple.com>
841
842         A MediaTime timescale must never be zero
843         https://bugs.webkit.org/show_bug.cgi?id=193156
844         <rdar://problem/32504501>
845
846         Reviewed by Jer Noble.
847
848         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
849         (TestWebKitAPI::TEST): Add tests for zero timescale.
850
851 2019-01-07  Youenn Fablet  <youenn@apple.com>
852
853         API test broken: TestWebKitAPI.WebKit.CustomDataStorePathsVersusCompletionHandlers
854         https://bugs.webkit.org/show_bug.cgi?id=193175
855
856         Reviewed by Chris Dumez.
857
858         Updated API test as we bumped the SW schema to version 4.
859
860         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
861         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-4.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3.
862         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
863         (TEST):
864
865 2019-01-06  Fujii Hironori  <Hironori.Fujii@sony.com>
866
867         [Win][Clang] Fix compilation warnings of MiniBrowser
868         https://bugs.webkit.org/show_bug.cgi?id=193029
869
870         Reviewed by Ross Kirsling.
871
872         * MiniBrowser/win/MiniBrowserWebHost.h: Removed unused m_oldFont
873         and m_URLBarFont. Reorder member variables to fix -Wreorder
874         warning.
875         * MiniBrowser/win/PageLoadTestClient.cpp:
876         (PageLoadTestClient::PageLoadTestClient): Reorder the member initializer list.
877         * MiniBrowser/win/PageLoadTestClient.h: Removed 'virtual' of
878         pageLoadStartedAtTime and pageLoadEndedAtTime. Removed unused
879         m_currentURLIndex.
880         * MiniBrowser/win/WebKitBrowserWindow.cpp:
881         (WebKitBrowserWindow::WebKitBrowserWindow): Initialize
882         navigationClient with '{ }' to fix the missing field warning.
883         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
884         (initDocStruct): Changed the argument type docname to const.
885
886 2019-01-06  Jiewen Tan  <jiewen_tan@apple.com>
887
888         [WebAuthN] Import U2F command/response converters from Chromium
889         https://bugs.webkit.org/show_bug.cgi?id=193150
890         <rdar://problem/47054028>
891
892         Reviewed by Brent Fulgham.
893
894         Adds API tests.
895
896         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
897         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
898         (TestWebKitAPI::getTestAttestedCredentialDataBytes):
899         (TestWebKitAPI::getTestAuthenticatorDataBytes):
900         (TestWebKitAPI::getTestAttestationObjectBytes):
901         (TestWebKitAPI::getTestSignResponse):
902         (TestWebKitAPI::getTestU2fRegisterResponse):
903         (TestWebKitAPI::TEST):
904         (TestWebKitAPI::convertToVector): Deleted.
905         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
906         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp: Added.
907         (TestWebKitAPI::constructMakeCredentialRequest):
908         (TestWebKitAPI::constructGetAssertionRequest):
909         (TestWebKitAPI::TEST):
910
911 2019-01-05  Oriol Brufau  <obrufau@igalia.com>
912
913         [GTK] Add python3-setuptools, libunistring-dev, bison and flex dependencies
914         https://bugs.webkit.org/show_bug.cgi?id=193136
915
916         Reviewed by Michael Catanzaro.
917
918         * gtk/install-dependencies:
919         Add python3-setuptools, libunistring-dev, bison and flex to install-dependencies,
920         they are needed by update-webkitgtk-libs.
921
922 2019-01-05  Aakash Jain  <aakash_jain@apple.com>
923
924         Unreviewed follow-up fix to r239650
925         https://bugs.webkit.org/show_bug.cgi?id=193140
926         <rdar://problem/47063037>
927
928         Typecast patch_id to string.
929
930         * BuildSlaveSupport/ews-build/steps.py:
931         (ValidatePatch._is_patch_obsolete):
932
933 2019-01-04  Daniel Bates  <dabates@apple.com>
934
935         [lldb-webkit]: Add support for pretty-printing raw bitmask types
936         https://bugs.webkit.org/show_bug.cgi?id=193024
937
938         Reviewed by Jer Noble.
939
940         Add support infrastructure to pretty-print a raw bitmask type. Included is a pretty-printer
941         for the bitmask type WebEventFlags as an example.
942
943         Exposed a new function lldb_webkit.addSummaryAndSyntheticFormattersForRawBitmaskType()
944         that can be used to register summary and synthetic child formatters for a bitmask type.
945         For example, consider the following enum and bitmask typedefs:
946
947         typedef enum {
948             A = 1 << 0,
949             B = 1 << 1,
950             C = 1 << 2,
951         } SpecialFlagValues;
952         typedef unsigned SpecialFlags;
953
954         To teach lldb-webkit how to pretty print SpecialFlags types, add the following code inside
955         __lldb_init_module():
956
957             addSummaryAndSyntheticFormattersForRawBitmaskType(debugger, "SpecialFlags", {
958                     1 << 0: "A",
959                     1 << 1: "B",
960                     1 << 2: "C",
961             })
962
963         * lldb/lldb_webkit.py:
964         (addSummaryAndSyntheticFormattersForRawBitmaskType):
965         (addSummaryAndSyntheticFormattersForRawBitmaskType.GeneratedRawBitmaskProvider):
966         (addSummaryAndSyntheticFormattersForRawBitmaskType.raw_bitmask_summary_provider):
967         (addSummaryAndSyntheticFormattersForRawBitmaskType.lldb_webkit):
968         A convenience function to dynamically creaste a synthetic formatter class and summary
969         string function for the specified bitmask type and enumerator value to name map. This
970         function register the dynamically created class and function with LLDB.
971
972         (__lldb_init_module):
973         (FlagEnumerationProvider):
974         (FlagEnumerationProvider._enumerator_value_to_name_map):
975         (FlagEnumerationProvider._bitmask):
976         (FlagEnumerationProvider._update):
977         (FlagEnumerationProvider.has_children):
978         (FlagEnumerationProvider.num_children):
979         (FlagEnumerationProvider.get_child_index):
980         (FlagEnumerationProvider.get_child_at_index):
981         (FlagEnumerationProvider.update):
982         Extract out provider logic from WTFOptionSetProvider into a base class that can be shared.
983
984         (WTFOptionSetProvider):
985         (WTFOptionSetProvider._enumerator_value_to_name_map):
986         (WTFOptionSetProvider._bitmask):
987         (WTFOptionSetProvider._update):
988         Write in terms of the base class.
989
990         (RawBitmaskProviderBase):
991         (RawBitmaskProviderBase._enumerator_value_to_name_map):
992         (RawBitmaskProviderBase._bitmask):
993         Added. Base synthetic formatter class for a raw bitmask type. Derived classes are expected to
994         override the class variable ENUMERATOR_VALUE_TO_NAME_MAP with a dictionary of the form:
995         {
996             1 << 0: "A",
997             1 << 1: "B",
998             1 << 2: "C",
999         }
1000         It is not necessary to instantiate such a derived class directory. Instead use the convenience
1001         function addSummaryAndSyntheticFormattersForRawBitmaskType.
1002
1003         (WTFOptionSetProvider.has_children): Deleted.
1004         (WTFOptionSetProvider.num_children): Deleted.
1005         (WTFOptionSetProvider.get_child_index): Deleted.
1006         (WTFOptionSetProvider.get_child_at_index): Deleted.
1007         (WTFOptionSetProvider.update): Deleted.
1008
1009 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
1010
1011         [ews-build] Add build step to validate the patch before processing it
1012         https://bugs.webkit.org/show_bug.cgi?id=193140
1013
1014         Reviewed by Lucas Forschler.
1015
1016         * BuildSlaveSupport/ews-build/factories.py:
1017         (Factory.__init__): Added ValidatePatch step.
1018         * BuildSlaveSupport/ews-build/steps.py:
1019         (ValidatePatch):
1020         (ValidatePatch.fetch_data_from_url): Fetch data from a url.
1021         (ValidatePatch.get_patch_json): Get patch json data.
1022         (ValidatePatch.get_bug_json): Get bug json data.
1023         (ValidatePatch.get_bug_id_from_patch): Get bug id from a patch id.
1024         (ValidatePatch._is_patch_obsolete): Check if the patch is obsolete.
1025         (ValidatePatch._is_patch_review_denied): Check if the patch is marked r-.
1026         (ValidatePatch._is_bug_closed): Check if the bug is already closed.
1027         (ValidatePatch.skip_build): Skip the build.
1028         (ValidatePatch.start):
1029
1030 2019-01-04  Alex Christensen  <achristensen@webkit.org>
1031
1032         Progress towards fixing Mac CMake build
1033         https://bugs.webkit.org/show_bug.cgi?id=193105
1034
1035         Reviewed by Don Olmstead.
1036
1037         * TestWebKitAPI/PlatformMac.cmake:
1038
1039 2019-01-04  Alex Christensen  <achristensen@webkit.org>
1040
1041         Fix API test after r239631
1042         https://bugs.webkit.org/show_bug.cgi?id=193118
1043
1044         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1045         (TestWebKitAPI::TEST):
1046         This test relied on m_maximumProcessCount being set to 1 in ProcessPoolConfiguration::createWithLegacyOptions.
1047         Do the same thing via the API to fix the test.
1048
1049 2019-01-04  Jer Noble  <jer.noble@apple.com>
1050
1051         [WebKitLegacy] Media playback pauses on scroll
1052         https://bugs.webkit.org/show_bug.cgi?id=192829
1053
1054         Reviewed by Eric Carlson.
1055
1056         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1057         * TestWebKitAPI/Tests/WebKitCocoa/StopSuspendResumeAllMedia.mm: Added.
1058         (TestWebKitAPI::TEST):
1059         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm: Added.
1060         (-[ScrollingDoesNotPauseMediaDelegate webViewDidFinishLoad:]):
1061         (-[ScrollingDoesNotPauseMediaDelegate uiWebView:didCommitLoadForFrame:]):
1062         (-[ScrollingDoesNotPauseMediaDelegate handleEvent:]):
1063         (TestWebKitAPI::TEST):
1064
1065 2019-01-04  Chris Dumez  <cdumez@apple.com>
1066
1067         Add support for toggling device orientation API support per site
1068         https://bugs.webkit.org/show_bug.cgi?id=193143
1069         <rdar://problem/46605724>
1070
1071         Reviewed by Alex Christensen.
1072
1073         Add API test coverage.
1074
1075         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1076         (-[DataMappingSchemeHandler setTaskHandler:]):
1077         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
1078         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationEventEnabled:]):
1079         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1080         (-[WebsitePoliciesDeviceOrientationDelegate webView:didFinishNavigation:]):
1081
1082 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
1083
1084         [ews-build] use svn-apply script to apply the patches
1085         https://bugs.webkit.org/show_bug.cgi?id=193138
1086
1087         Reviewed by Lucas Forschler.
1088
1089         * BuildSlaveSupport/ews-build/factories.py:
1090         (Factory.__init__): Add the ApplyPatch step.
1091         * BuildSlaveSupport/ews-build/steps.py:
1092         (CheckOutSource): Added step name.
1093         (CheckOutSource.__init__): Used alwaysUseLatest so that it doesn't apply patch.
1094         (ApplyPatch): Build step to apply patch using svn-apply script.
1095         (UnApplyPatchIfRequired):
1096         (UnApplyPatchIfRequired.__init__): Deleted, since the alwaysUseLatest parameter is now in base class.
1097
1098 2019-01-04  Alex Christensen  <achristensen@webkit.org>
1099
1100         Deprecate WKContextCreate
1101         https://bugs.webkit.org/show_bug.cgi?id=193118
1102
1103         Reviewed by Brady Eidson.
1104
1105         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1106         (WebKitBrowserWindow::WebKitBrowserWindow):
1107         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
1108         (TestWebKitAPI::TEST):
1109         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
1110         (TestWebKitAPI::TEST):
1111         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
1112         (TestWebKitAPI::TEST):
1113         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
1114         (TestWebKitAPI::TEST):
1115         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
1116         (TestWebKitAPI::TEST):
1117         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
1118         (TestWebKitAPI::TEST):
1119         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
1120         (TestWebKitAPI::TEST):
1121         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
1122         (TestWebKitAPI::TEST):
1123         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
1124         (TestWebKitAPI::TEST):
1125         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
1126         (TestWebKitAPI::TEST):
1127         * TestWebKitAPI/Tests/WebKit/Find.cpp:
1128         (TestWebKitAPI::TEST):
1129         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
1130         (TestWebKitAPI::TEST):
1131         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
1132         (TestWebKitAPI::TEST):
1133         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
1134         (TestWebKitAPI::TEST):
1135         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
1136         (TestWebKitAPI::TEST):
1137         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
1138         (TestWebKitAPI::TEST):
1139         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
1140         (TestWebKitAPI::TEST):
1141         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
1142         (TestWebKitAPI::TEST):
1143         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
1144         (TestWebKitAPI::loadAlternateHTMLString):
1145         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
1146         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
1147         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
1148         (TestWebKitAPI::buildAndPerformTest):
1149         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
1150         (TestWebKitAPI::TEST):
1151         * TestWebKitAPI/Tests/WebKit/NavigationClientDefaultCrypto.cpp:
1152         (TestWebKitAPI::TEST):
1153         * TestWebKitAPI/Tests/WebKit/PageGroup.cpp:
1154         (TestWebKitAPI::TEST):
1155         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
1156         (TestWebKitAPI::TEST):
1157         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
1158         (TestWebKitAPI::TEST):
1159         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
1160         (TestWebKitAPI::TEST):
1161         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
1162         (TestWebKitAPI::TEST):
1163         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
1164         (TestWebKitAPI::TEST):
1165         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
1166         (TestWebKitAPI::TEST):
1167         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1168         (TestWebKitAPI::TEST):
1169         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
1170         (TestWebKitAPI::TEST):
1171         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
1172         (TestWebKitAPI::TEST):
1173         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
1174         (TestWebKitAPI::TEST):
1175         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
1176         (TestWebKitAPI::TEST):
1177         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
1178         (TestWebKitAPI::TEST):
1179         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
1180         (TestWebKitAPI::TEST):
1181         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
1182         (TestWebKitAPI::TEST):
1183         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1184         (TestWebKitAPI::TEST):
1185         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
1186         (TestWebKitAPI::TEST):
1187         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
1188         (TestWebKitAPI::TEST):
1189         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
1190         (TestWebKitAPI::TEST):
1191         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
1192         (TestWebKitAPI::TEST):
1193         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
1194         (TestWebKitAPI::TEST):
1195         * TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp:
1196         (TestWebKitAPI::TEST):
1197         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
1198         (TestWebKitAPI::TEST):
1199         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
1200         (TestWebKitAPI::TEST):
1201         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
1202         (WebKit2_CommandBackForwardTestWKView::SetUp):
1203         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
1204         (TestWebKitAPI::TEST):
1205         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
1206         (TestWebKitAPI::TEST):
1207         * TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm:
1208         (TestWebKitAPI::TEST):
1209         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
1210         (TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
1211
1212 2019-01-03  Matt Rajca  <mrajca@apple.com>
1213
1214         Make DidPlayMediaPreventedFromPlaying autoplay event more generic.
1215         https://bugs.webkit.org/show_bug.cgi?id=193128
1216         rdar://34554231
1217
1218         Reviewed by Jer Noble.
1219
1220         Today, the "DidPlayMediaPreventedFromPlaying" autoplay event is only sent for
1221         media prevented from autoplaying. It could be generalized to a "DidPlayMediaWithUserGesture"
1222         event along with a flag that indicates whether or not autoplay was actually prevented.
1223
1224         Tests: existing API tests were updated to reflect the new names. New API tests
1225         were added for the new case in which the "DidPlayMediaWithUserGesture" event is sent.
1226
1227         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1228         * TestWebKitAPI/Tests/WebKit/long-test.mp4: Added.
1229         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1230         (TEST):
1231         * TestWebKitAPI/Tests/WebKitCocoa/audio-with-play-button.html: Added.
1232         * TestWebKitAPI/Tests/WebKitCocoa/video-with-play-button.html: Added.
1233
1234 2019-01-04  Chris Dumez  <cdumez@apple.com>
1235
1236         [PSON] Calling history.back() from inside the load event handler prevents process-swapping
1237         https://bugs.webkit.org/show_bug.cgi?id=193120
1238
1239         Reviewed by Alex Christensen.
1240
1241         Add API test coverage.
1242
1243         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1244
1245 2019-01-04  Chris Dumez  <cdumez@apple.com>
1246
1247         Crash under WebProcessPool::addSuspendedPage()
1248         https://bugs.webkit.org/show_bug.cgi?id=193110
1249
1250         Reviewed by Youenn Fablet.
1251
1252         Add API test coverage.
1253
1254         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1255
1256 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
1257
1258         [ews-build] Check patch relevance before applying the patch
1259         https://bugs.webkit.org/show_bug.cgi?id=193102
1260
1261         Reviewed by Lucas Forschler.
1262
1263         * BuildSlaveSupport/ews-build/factories.py:
1264         (Factory.__init__): Moved CheckPatchRelevance step to base class.
1265
1266 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
1267
1268         [ews-build] Check patch relevance step should print patch id
1269         https://bugs.webkit.org/show_bug.cgi?id=193137
1270
1271         Reviewed by Lucas Forschler.
1272
1273         * BuildSlaveSupport/ews-build/steps.py:
1274         (CheckPatchRelevance.start): Update the status to include patch id.
1275
1276 2019-01-04  Jonathan Bedard  <jbedard@apple.com>
1277
1278         webkitpy: Increase simulator teardown timeout
1279         https://bugs.webkit.org/show_bug.cgi?id=193141
1280         <rdar://problem/46174217>
1281
1282         Rubber-stamped by Aakash Jain.
1283
1284         * Scripts/webkitpy/xcode/simulated_device.py:
1285         (SimulatedDeviceManager.tear_down): Use SIMULATOR_BOOT_TIMEOUT.
1286
1287 2019-01-03  Ross Kirsling  <ross.kirsling@sony.com>
1288
1289         test262-runner misbehaves when test file YAML has a trailing space
1290         https://bugs.webkit.org/show_bug.cgi?id=193053
1291
1292         Reviewed by Yusuke Suzuki.
1293
1294         * Scripts/test262/Runner.pm:
1295         (parseData):
1296         Accept trailing space when parsing a test file's YAML block.
1297
1298 2019-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
1299
1300         UserMedia test should use WKPageNavigationClient
1301         https://bugs.webkit.org/show_bug.cgi?id=192913
1302
1303         Reviewed by Youenn Fablet.
1304
1305         The test currently uses the deprecated WKPageLoaderClient. It should use
1306         WKPageNavigationClient instead, which provides the same callback under a similar name.
1307
1308         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1309         (TestWebKitAPI::TEST):
1310
1311 2019-01-02  Alex Christensen  <achristensen@webkit.org>
1312
1313         Homograph with LATIN SMALL LETTER R WITH FISHHOOK
1314         https://bugs.webkit.org/show_bug.cgi?id=192944
1315
1316         Reviewed by Tim Horton.
1317
1318         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
1319         (TestWebKitAPI::TEST):
1320
1321 2019-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
1322
1323         Add support for using the current text selection as the find string on iOS
1324         https://bugs.webkit.org/show_bug.cgi?id=193034
1325         <rdar://problem/45138739>
1326
1327         Reviewed by Tim Horton.
1328
1329         Add a new API test to verify that the new WebKit SPI (_stringForFind, _takeFindStringFromSelection:, and
1330         _setStringForFind) works as expected.
1331
1332         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1333         * TestWebKitAPI/Tests/WebKitCocoa/UseSelectionAsFindString.mm: Added.
1334
1335 2019-01-02  Aakash Jain  <aakash_jain@apple.com>
1336
1337         [ews-build] Use git on OpenSource EWS bots
1338         https://bugs.webkit.org/show_bug.cgi?id=193092
1339
1340         Reviewed by Lucas Forschler.
1341
1342         * BuildSlaveSupport/ews-build/steps.py:
1343         (CheckOutSource): Use git instead of svn.
1344         (CheckOutSource.__init__): Use timeout of 2 hours since the initial checkout might take a long time.
1345
1346 2019-01-02  Daniel Bates  <dabates@apple.com>
1347
1348         [lldb-webkit] Remove broken code to print WTF::OptionSet::m_storage
1349         https://bugs.webkit.org/show_bug.cgi?id=193023
1350
1351         Reviewed by Simon Fraser.
1352
1353         The code to print WTF::OptionSet::m_storage as an item in the set never worked and does
1354         not seem meaningful to fix because WTF::OptionSet::m_storage is just the sum of the printed
1355         enumerator values. We should just remove this code.
1356
1357         * lldb/lldb_webkit.py:
1358         (WTFOptionSetProvider.has_children):
1359         (WTFOptionSetProvider.num_children):
1360         (WTFOptionSetProvider.get_child_index):
1361         (WTFOptionSetProvider.get_child_at_index):
1362
1363 2018-12-29  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
1364
1365         .ycm_extra_conf.py should handle XXXInlines.h
1366         https://bugs.webkit.org/show_bug.cgi?id=193055
1367
1368         Reviewed by Carlos Garcia Campos.
1369
1370         compile_commands.json database only records flags and options for cpp source files.
1371         So, when we open headers, this database does not have any information for that.
1372         Our .ycm_extra_conf.py alleviates this by using XXX.cpp's configuration for XXX.h.
1373         But this mitigation does not handle XXXInlines.h well since we do not have XXXInlines.cpp.
1374         This patch adds support for XXXInlines.h in .ycm_extra_conf.py. When XXXInlines.h is queried,
1375         we attempt to find XXX.cpp and use the configuration if it exists.
1376
1377         * gtk/ycm_extra_conf.py:
1378         (getImplementationFilename):
1379         (FlagsForFile):
1380
1381 2018-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
1382
1383         Unreviewed. Support PHP 7.3 in Debian.
1384
1385         Add 7.3 to the list of php versions supported in Debian.
1386
1387         * Scripts/webkitpy/port/base.py:
1388         (Port._debian_php_version):
1389
1390 2018-12-27  Alex Christensen  <achristensen@webkit.org>
1391
1392         Resurrect Mac CMake build
1393         https://bugs.webkit.org/show_bug.cgi?id=192658
1394
1395         Reviewed by Yusuke Suzuki.
1396
1397         * DumpRenderTree/PlatformMac.cmake:
1398         * MiniBrowser/mac/CMakeLists.txt:
1399         * TestWebKitAPI/PlatformMac.cmake:
1400
1401 2018-12-26  Adrian Perez de Castro  <aperez@igalia.com>
1402
1403         [Tools] Remove references to Bison and Flex
1404         https://bugs.webkit.org/show_bug.cgi?id=193033
1405
1406         Reviewed by Michael Catanzaro.
1407
1408         The Bison and Flex tools are not needed anymore since r209883.
1409
1410         * CygwinDownloader/cygwin-downloader.py:
1411         * EWSTools/ubuntu-ews-packages:
1412         * Scripts/filter-build-webkit:
1413         (shouldIgnoreLine):
1414         * gtk/install-dependencies:
1415         * wpe/install-dependencies:
1416
1417 2018-12-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1418
1419         WebDriver: warn about non existing tests when parsing expectations
1420         https://bugs.webkit.org/show_bug.cgi?id=192979
1421
1422         Reviewed by Michael Catanzaro.
1423
1424         It's common to update web driver tests and forget updating the test expectations in case of tests removed or
1425         renamed.
1426
1427         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
1428         (WebDriverTestRunner.__init__):
1429
1430 2018-12-21  Chris Dumez  <cdumez@apple.com>
1431
1432         navigator.userAgent in service workers does not reflect customUserAgent set by client
1433         https://bugs.webkit.org/show_bug.cgi?id=192951
1434
1435         Reviewed by Youenn Fablet.
1436
1437         Extend API test coverage.
1438
1439         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1440         (-[SWCustomUserAgentDelegate initWithUserAgent:]):
1441         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1442         (-[SWUserAgentMessageHandler initWithExpectedMessage:]):
1443         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
1444
1445 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
1446
1447         [WebAuthN] userPresence should always be true
1448         https://bugs.webkit.org/show_bug.cgi?id=192835
1449         <rdar://problem/46538788>
1450
1451         Reviewed by Brent Fulgham.
1452
1453         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
1454         (TestWebKitAPI::TEST):
1455
1456 2018-12-19  Simon Fraser  <simon.fraser@apple.com>
1457
1458         Add support to run-benchmark to use non-default copies of the browser apps
1459         https://bugs.webkit.org/show_bug.cgi?id=192905
1460         rdar://problem/46845840
1461
1462         Reviewed by Dewei Zhu.
1463         
1464         Add support for a --browser-path argument to run-benchmark, which allows you to use
1465         a custom app bundle for a given browser (only implemented for Safari at present).
1466
1467         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1468         (BenchmarkRunner.__init__):
1469         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
1470         (BrowserDriver.__init__):
1471         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver_factory.py:
1472         (BrowserDriverFactory.create):
1473         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
1474         (OSXBrowserDriver._launch_process):
1475         (OSXBrowserDriver._launch_process_with_caffeinate): Fix spelling.
1476         (OSXBrowserDriver._launch_process_with_caffinate): Deleted.
1477         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
1478         (OSXChromeCanaryDriver.launch_url):
1479         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
1480         (OSXFirefoxNightlyDriver.launch_url):
1481         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
1482         (OSXSafariDriver.__init__):
1483         (OSXSafariDriver.launch_url):
1484         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1485         (parse_args):
1486         (run_benchmark_plan):
1487         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
1488         (WebServerBenchmarkRunner.__init__):
1489         * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py:
1490         (FakeBenchmarkRunner.__init__):
1491
1492 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
1493
1494         [WebAuthN] Import an APDU coder from Chromium
1495         https://bugs.webkit.org/show_bug.cgi?id=192949
1496         <rdar://problem/46879933>
1497
1498         Reviewed by Brent Fulgham.
1499
1500         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1501         * TestWebKitAPI/Tests/WebCore/ApduTest.cpp: Added.
1502         (TestWebKitAPI::TEST):
1503
1504 2018-12-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1505
1506         Setting the file wrapper and content type of an attachment to a PDF should update its image
1507         https://bugs.webkit.org/show_bug.cgi?id=192984
1508         <rdar://problem/46798028>
1509
1510         Reviewed by Tim Horton.
1511
1512         Add an API test to verify that setting the file wrapper for a _WKAttachment with an enclosing image element with
1513         PDF data correctly updates the image element.
1514
1515         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1516
1517 2018-12-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1518
1519         Add JSCOnly to bot dashboard
1520         https://bugs.webkit.org/show_bug.cgi?id=192964
1521
1522         Reviewed by Alexey Proskuryakov.
1523
1524         Apparently we have five JSCOnly test bots and multiple developers working on keeping them in
1525         good shape. Sadly, they are hidden bots not exposed in the dashboard. They would be more
1526         useful if they were not so secret, so add them.
1527
1528         There appear to be no build-only bots, so the first column is blank. And of course there are
1529         no WebKit1 or WebKit2 bots, because this is JSCOnly, so the second and third columns are
1530         blank too. That's OK. This will be the last bot on the dashboard, so it won't look too bad,
1531         and there's plenty of room in the final column for all the bots.
1532
1533         I had a hard time picking a logo to use, because the JavaScript language does not have an
1534         official logo. But I believe I've found one that will be satisfactory.
1535
1536         I will sneak in one bonus change: WPE's EWS queue was missing, and has been added.
1537
1538         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish.png: Added.
1539         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish@2x.png: Added.
1540         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1541         (BubbleQueueServer):
1542         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1543         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1544         (WebKitBuildbot):
1545         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1546         (table.queue-grid tr.platform.linux-jsconly img.logo):
1547
1548 2018-12-21  Benjamin Poulain  <benjamin@webkit.org>
1549
1550         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
1551         https://bugs.webkit.org/show_bug.cgi?id=192821
1552
1553         Reviewed by Chris Dumez.
1554
1555         * DumpRenderTree/mac/DumpRenderTree.mm:
1556         (createWebViewAndOffscreenWindow):
1557         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
1558
1559 2018-12-20  Fujii Hironori  <Hironori.Fujii@sony.com>
1560
1561         [Win][Clang] Fix compilation warnings of DumpRenderTree
1562         https://bugs.webkit.org/show_bug.cgi?id=192924
1563
1564         Reviewed by Alex Christensen.
1565
1566         * DumpRenderTree/AccessibilityController.h: Added member variable initializations in the class definition.
1567         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
1568         (AccessibilityController::AccessibilityController): Moved member variable initializations to the class definition.
1569         * DumpRenderTree/win/DumpRenderTree.cpp:
1570         (dumpHistoryItem): String literals can't be converted non-const type. Use auto for them.
1571         (resetWebPreferencesToConsistentValues): Pass a temporal _bstr_t
1572         object to the argument of setDefaultTextEncodingName instead of a
1573         const string literal.
1574         (createWebViewAndOffscreenWindow): Use %lx for HRESULT (aka 'long').
1575         (main): Exit if _dup2 fails. Use %lu for'DWORD'(aka 'unsigned long').
1576         (setCacheFolder): Deleted.
1577         * DumpRenderTree/win/DumpRenderTreeWin.h: Fix class/struct mismatch of FrameLoadDelegate and PolicyDelegate declarations.
1578         * DumpRenderTree/win/EditingDelegate.cpp:
1579         (dump): Use %d for int.
1580         * DumpRenderTree/win/FrameLoadDelegate.cpp: Removed unused variable g_delegateWaitingOnTimer.
1581         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
1582         (BSTRFromString): Deleted unused function.
1583         * DumpRenderTree/win/TestRunnerWin.cpp:
1584         (TestRunner::setDatabaseQuota): Pass a temporal _bstr_t object to
1585         the arguemnt of setQuota instead of const string literal.
1586         * DumpRenderTree/win/WorkQueueItemWin.cpp:
1587         (jsStringRefToWString): Deleted unused function.
1588
1589 2018-12-20  Chris Dumez  <cdumez@apple.com>
1590
1591         Add API test coverage for customUserAgent client setting and service workers
1592         https://bugs.webkit.org/show_bug.cgi?id=192952
1593
1594         Reviewed by Alex Christensen.
1595
1596         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1597         (-[SWMessageHandler userContentController:didReceiveScriptMessage:]):
1598         (-[SWSchemes webView:startURLSchemeTask:]):
1599         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1600         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
1601
1602 2018-12-20  Chris Dumez  <cdumez@apple.com>
1603
1604         Use Optional::hasValue() instead of Optional::has_value()
1605         https://bugs.webkit.org/show_bug.cgi?id=192948
1606
1607         Reviewed by Tim Horton.
1608
1609         * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
1610         (TestWebKitAPI::TEST):
1611         * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
1612         (TestWebKitAPI::TEST):
1613         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
1614         (TestWebKitAPI::TEST_F):
1615
1616 2018-12-20  Chris Dumez  <cdumez@apple.com>
1617
1618         Add style script rule to check for uses of std::optional<>
1619         https://bugs.webkit.org/show_bug.cgi?id=192931
1620
1621         Reviewed by Tim Horton.
1622
1623         * Scripts/webkitpy/style/checkers/cpp.py:
1624         (check_wtf_optional):
1625         (check_style):
1626
1627 2018-12-20  Jiewen Tan  <jiewen_tan@apple.com>
1628
1629         [WebAuthN] Add a runtime flag for local authenticator
1630         https://bugs.webkit.org/show_bug.cgi?id=192792
1631         <rdar://problem/46798738>
1632
1633         Reviewed by Brent Fulgham.
1634
1635         * DumpRenderTree/TestOptions.cpp:
1636         (TestOptions::TestOptions):
1637         * DumpRenderTree/TestOptions.h:
1638         * DumpRenderTree/mac/DumpRenderTree.mm:
1639         (enableExperimentalFeatures):
1640         (setWebPreferencesForTestOptions):
1641         * WebKitTestRunner/TestController.cpp:
1642         (WTR::TestController::resetPreferencesToConsistentValues):
1643         (WTR::updateTestOptionsFromTestHeader):
1644         * WebKitTestRunner/TestOptions.h:
1645         (WTR::TestOptions::hasSameInitializationOptions const):
1646
1647 2018-12-20  Jonathan Bedard  <jbedard@apple.com>
1648
1649         webkitpy: Autoinstall package URLs have changed
1650         https://bugs.webkit.org/show_bug.cgi?id=192909
1651         <rdar://problem/46860359>
1652
1653         Rubber-stamped by Alexey Proskuryakov.
1654
1655         PyPi urls have been moved around, we need to update our auto-installed packages.
1656
1657         We should check for Selenium before asking PyPi for the latest version.
1658
1659         * Scripts/webkitpy/thirdparty/__init__.py:
1660         (AutoinstallImportHook._install_mechanize): Update with new pypi url.
1661         (AutoinstallImportHook._install_keyring): Ditto.
1662         (AutoinstallImportHook._install_pep8): Ditto.
1663         (AutoinstallImportHook._install_mozlog): Ditto.
1664         (AutoinstallImportHook._install_mozprocess): Ditto.
1665         (AutoinstallImportHook._install_pytest_timeout): Ditto.
1666         (AutoinstallImportHook._install_pytest): Ditto.
1667         (AutoinstallImportHook._install_pylint): Ditto.
1668         (AutoinstallImportHook._install_buildbot): Ditto.
1669         (AutoinstallImportHook._install_coverage): Ditto.
1670         (AutoinstallImportHook._install_twisted_15_5_0): Ditto.
1671         (AutoinstallImportHook._install_selenium): Update with new pypi url, only check
1672         for new Selenium if the installed version isn't sufficient.
1673         (AutoinstallImportHook.get_latest_pypi_url): Update with new pypi url.
1674
1675 2018-12-20  Chris Dumez  <cdumez@apple.com>
1676
1677         Use Optional::valueOr() instead of Optional::value_or()
1678         https://bugs.webkit.org/show_bug.cgi?id=192933
1679
1680         Reviewed by Geoffrey Garen.
1681
1682         * TestWebKitAPI/Tests/WTF/URLParser.cpp:
1683         (TestWebKitAPI::checkURL):
1684         (TestWebKitAPI::checkRelativeURL):
1685         (TestWebKitAPI::checkURLDifferences):
1686         (TestWebKitAPI::checkRelativeURLDifferences):
1687         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
1688         (TestWebKitAPI::checkURL):
1689
1690 2018-12-20  Ryan Haddad  <ryanhaddad@apple.com>
1691
1692         Unreviewed, rolling out r239417.
1693
1694         Introduced two API test failures on macOS.
1695
1696         Reverted changeset:
1697
1698         "<rdar://problem/46194315> macOS: WebKit1 does not handle
1699         occlusion changes"
1700         https://bugs.webkit.org/show_bug.cgi?id=192821
1701         https://trac.webkit.org/changeset/239417
1702
1703 2018-12-20  Devin Rousso  <drousso@apple.com>
1704
1705         Web Inspector: UIString should take an optional key and description to aid localization
1706         https://bugs.webkit.org/show_bug.cgi?id=153962
1707         <rdar://problem/24542505>
1708
1709         Reviewed by Brian Burg.
1710
1711         * Scripts/extract-localizable-js-strings:
1712
1713 2018-12-20  Tim Horton  <timothy_horton@apple.com>
1714
1715         Unparented WKWebView can't retrieve main resource data for a main frame plugin
1716         https://bugs.webkit.org/show_bug.cgi?id=192923
1717         <rdar://problem/46859068>
1718
1719         Reviewed by Wenson Hsieh.
1720
1721         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1722         * TestWebKitAPI/WebKitCocoa/GetResourceData.mm:
1723         Add a test ensuring that both parented and unparented WKWebViews can
1724         retrieve main resource data when loading a PDF.
1725
1726 2018-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1727
1728         [GTK][WPE] Bump webkitgtk-test-fonts to 0.0.8
1729         https://bugs.webkit.org/show_bug.cgi?id=192852
1730
1731         Reviewed by Michael Catanzaro.
1732
1733         EmojiOne font was replaced by Noto Color Emoji.
1734
1735         * WebKitTestRunner/gtk/fonts/fonts.conf: Use Noto Color Emoji when Apple Color Emoji font family is used in tests.
1736         * gtk/jhbuild.modules:
1737         * wpe/jhbuild.modules:
1738
1739 2018-12-19  Chris Dumez  <cdumez@apple.com>
1740
1741         wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
1742         https://bugs.webkit.org/show_bug.cgi?id=192728
1743         <rdar://problem/46746779>
1744
1745         Reviewed by Geoff Garen.
1746
1747         * DumpRenderTree/*:
1748         * MiniBrowser/*:
1749         * TestRunnerShared/*:
1750         * TestWebKitAPI/*:
1751         * WebGPUAPIStructure/*:
1752         * WebKitTestRunner/*:
1753
1754 2018-12-19  Benjamin Poulain  <benjamin@webkit.org>
1755
1756         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
1757         https://bugs.webkit.org/show_bug.cgi?id=192821
1758
1759         Reviewed by Chris Dumez.
1760
1761         * DumpRenderTree/mac/DumpRenderTree.mm:
1762         (createWebViewAndOffscreenWindow):
1763
1764 2018-12-19  Alex Christensen  <achristensen@webkit.org>
1765
1766         Navigations away from the SafeBrowsing interstitial show a flash of old content
1767         https://bugs.webkit.org/show_bug.cgi?id=192676
1768
1769         Reviewed by Chris Dumez.
1770
1771         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1772         (safeBrowsingView):
1773         (TEST):
1774         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
1775
1776 2018-12-19  Adrian Perez de Castro  <aperez@igalia.com>
1777
1778         [GTK][WPE] Unify TestController::platformRunUntil() and honor condition flag
1779         https://bugs.webkit.org/show_bug.cgi?id=192855
1780
1781         Reviewed by Michael Catanzaro.
1782
1783         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
1784         (WTR::TestController::notifyDone): Use the WPE implementation.
1785         (WTR::TestController::platformRunUntil): Use the WPE implementation.
1786         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
1787         (WTR::TestController::platformRunUntil): Honor the condition flag.
1788
1789 2018-12-19  Megan Gardner  <megan_gardner@apple.com>
1790
1791         Allow clients to set the navigator platform
1792         https://bugs.webkit.org/show_bug.cgi?id=192735
1793
1794         Reviewed by Tim Horton.
1795
1796         Add a test for setting a custom navigator platform.
1797
1798         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1799         (-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1800         (-[CustomNavigatorPlatformDelegate webView:didFinishNavigation:]):
1801
1802 2018-12-19  Truitt Savell  <tsavell@apple.com>
1803
1804         Unreviewed, rolling out r239358.
1805
1806         Revision caused imported/w3c/web-platform-tests/IndexedDB/ to
1807         crash on Debug bots
1808
1809         Reverted changeset:
1810
1811         "Clean up IndexedDB files between tests"
1812         https://bugs.webkit.org/show_bug.cgi?id=192796
1813         https://trac.webkit.org/changeset/239358
1814
1815 2018-12-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1816
1817         [iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
1818         https://bugs.webkit.org/show_bug.cgi?id=192842
1819         <rdar://problem/46823586>
1820
1821         Reviewed by Tim Horton.
1822
1823         Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
1824         item provider when dragging a rich text selection.
1825
1826         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1827
1828 2018-12-18  David Quesada  <david_quesada@apple.com>
1829
1830         REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
1831         https://bugs.webkit.org/show_bug.cgi?id=192810
1832         <rdar://problem/46812536>
1833
1834         Reviewed by Alex Christensen.
1835
1836         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
1837         (-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
1838             After releasing our reference to the web view, wait until the next turn of the runloop
1839             before checking that the originatingWebView has been zeroed, since the web view might
1840             still be referenced in the autorelease pool. This _WKDownload unit test isn't about
1841             testing general memory management of WKWebViews, only that _WKDownload does not retain
1842             its web view via the 'originatingWebView' property.
1843
1844 2018-12-18  Sihui Liu  <sihui_liu@apple.com>
1845
1846         Clean up IndexedDB files between tests
1847         https://bugs.webkit.org/show_bug.cgi?id=192796
1848
1849         Reviewed by Geoffrey Garen.
1850
1851         * DumpRenderTree/mac/DumpRenderTree.mm:
1852         (runTest):
1853         * WebKitTestRunner/TestController.cpp:
1854         (WTR::TestController::resetStateToConsistentValues):
1855         (WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
1856         (WTR::RemoveAllIndexedDatabasesCallback):
1857         (WTR::TestController::ClearIndexedDatabases):
1858         * WebKitTestRunner/TestController.h:
1859
1860 2018-12-18  Alex Christensen  <achristensen@webkit.org>
1861
1862         Fix API test introduced in r239339 on iOS.
1863         https://bugs.webkit.org/show_bug.cgi?id=192675
1864
1865         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1866         (TEST):
1867         The iOS implementation of the safe browsing warning is a little different.
1868         It does some element creation when it is added to the window so it knows how big it is.
1869         To test these elements, we need to simulate adding it to the window.
1870         A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
1871
1872 2018-12-18  Jonathan Bedard  <jbedard@apple.com>
1873
1874         webkitpy: Ignore device type for test when using --force
1875         https://bugs.webkit.org/show_bug.cgi?id=192786
1876         <rdar://problem/46794894>
1877
1878         Reviewed by Daniel Bates.
1879
1880         It is sometimes the case that a contributor will wish to run a test on a specific device,
1881         despite expectations which indicate a test should not be run on that device.
1882
1883         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1884         (parse_args):
1885         * Scripts/webkitpy/port/device_port.py:
1886         (DevicePort.default_child_processes): Strip device type information when using --force.
1887         (DevicePort.setup_test_run): Only allow incomplete match when using --force.
1888
1889 2018-12-18  Alex Christensen  <achristensen@webkit.org>
1890
1891         WKWebView has old URL while displaying SafeBrowsing interstitial, for link-click navigations
1892         https://bugs.webkit.org/show_bug.cgi?id=192675
1893
1894         Reviewed by Geoffrey Garen.
1895
1896         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1897         (goBack):
1898         (TEST):
1899         (visitUnsafeSite):
1900         (-[SafeBrowsingHelper observeValueForKeyPath:ofObject:change:context:]):
1901         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1902
1903 2018-12-18  Chris Dumez  <cdumez@apple.com>
1904
1905         Regression(r239182) SuspendedPage's process reuse for link navigation optimization sometimes broken
1906         https://bugs.webkit.org/show_bug.cgi?id=192772
1907
1908         Reviewed by Antti Koivisto.
1909
1910         Add API test coverage.
1911
1912         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1913
1914 2018-12-18  Philippe Normand  <pnormand@igalia.com>
1915
1916         Unreviewed, JHBuild GTK build fix attempt
1917
1918         * gtk/jhbuild.modules: There's no libffi in this moduleset anymore.
1919         There's no ninja module either, it should be provided by the
1920         host system.
1921
1922 2018-12-17  Chris Dumez  <cdumez@apple.com>
1923
1924         Allow passing nil as session state to [WKWebView _restoreSessionState:]
1925         https://bugs.webkit.org/show_bug.cgi?id=192789
1926         <rdar://problem/46755277>
1927
1928         Reviewed by Alex Christensen.
1929
1930         Add API test coverage.
1931
1932         * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
1933         (TEST):
1934
1935 2018-12-17  Simon Fraser  <simon.fraser@apple.com>
1936
1937         Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled
1938         https://bugs.webkit.org/show_bug.cgi?id=192780
1939         rdar://problem/43394387
1940
1941         Reviewed by Tim Horton.
1942
1943         No need to set "AppleFontSmoothing" defaults for WK2.
1944
1945         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
1946         (WTR::InjectedBundle::platformInitialize):
1947
1948 2018-12-17  Jonathan Bedard  <jbedard@apple.com>
1949
1950         webkitpy: Handle case where stdout and stderr don't accept unicode
1951         https://bugs.webkit.org/show_bug.cgi?id=192775
1952         <rdar://problem/46497303>
1953
1954         Reviewed by Stephanie Lewis.
1955
1956         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
1957         (MeteredStream.write): If unicode cannot be written to the stream, replace unicode
1958         characters with '?'.
1959         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
1960         (RegularTest.test_stream_with_encoding):
1961
1962 2018-12-17  Daniel Bates  <dabates@apple.com>
1963
1964         Support concatenating StringView with other string types
1965         https://bugs.webkit.org/show_bug.cgi?id=177566
1966
1967         Reviewed by Darin Adler.
1968
1969         Add some tests to ensure we do not regress the number of allocations needed when performing
1970         string concatenation with string views.
1971
1972         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
1973         (TestWebKitAPI::TEST):
1974
1975 2018-12-17  Commit Queue  <commit-queue@webkit.org>
1976
1977         Unreviewed, rolling out r239265 and r239274.
1978         https://bugs.webkit.org/show_bug.cgi?id=192765
1979
1980         unorm_normalize is deprecated, and broke an internal build
1981         (Requested by Truitt on #webkit).
1982
1983         Reverted changesets:
1984
1985         "[GTK][WPE] Need a function to convert internal URI to display
1986         ("pretty") URI"
1987         https://bugs.webkit.org/show_bug.cgi?id=174816
1988         https://trac.webkit.org/changeset/239265
1989
1990         "Fix the Apple Internal Mac build with a newer SDK"
1991         https://trac.webkit.org/changeset/239274
1992
1993 2018-12-17  Daniel Bates  <dabates@apple.com>
1994
1995         Implement UIScriptController::toggleCapsLock() for iOS
1996         https://bugs.webkit.org/show_bug.cgi?id=191815
1997
1998         Reviewed by Andy Estes.
1999
2000         Add support for toggling the caps lock state in WebKitTestRunner on iOS.
2001
2002         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2003         * WebKitTestRunner/TestController.cpp:
2004         (WTR::TestController::resetStateToConsistentValues): Clear the current modifier state
2005         before running a test. This ensures that the caps lock state does not persist between
2006         tests should a test enable caps lock and not disable it.
2007         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2008         (hidUsageCodeForCharacter): Map "capsLock" to the Caps Lock key usage code.
2009         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2010         (WTR::createUIPhysicalKeyboardEvent): Modified to take the keyboard input flags to use to
2011         create the event. Also substituted NSString* for const String& as the data type for the first
2012         two parameters to avoid conversions in the implementation of UIScriptController::toggleCapsLock()
2013         below.
2014         (WTR::UIScriptController::keyDown): Update as needed due to changes to prototype of createUIPhysicalKeyboardEvent().
2015         (WTR::UIScriptController::toggleCapsLock): Dispatch a UIEvent to toggle caps lock.
2016
2017 2018-12-17  Daniel Bates  <dabates@apple.com>
2018
2019         [iOS] Remove -[WebEvent initWithKeyEventType:...:characterSet:]
2020         https://bugs.webkit.org/show_bug.cgi?id=192633
2021
2022         Reviewed by Wenson Hsieh.
2023
2024         Update code to use the modern initializer.
2025
2026         * DumpRenderTree/mac/EventSendingController.mm:
2027         (-[EventSendingController keyDown:withModifiers:withLocation:]):
2028
2029 2018-12-17  Matt Lewis  <jlewis3@apple.com>
2030
2031         Unreviewed, rolling out r239254.
2032
2033         This broke the Windows 10 Debug build
2034
2035         Reverted changeset:
2036
2037         "Replace many uses of String::format with more type-safe
2038         alternatives"
2039         https://bugs.webkit.org/show_bug.cgi?id=192742
2040         https://trac.webkit.org/changeset/239254
2041
2042 2018-12-17  David Kilzer  <ddkilzer@apple.com>
2043
2044         clang-tidy: loop variable is copied but only used as const reference in WebCore, WebKit, Tools
2045         <https://webkit.org/b/192751>
2046         <rdar://problem/46771623>
2047
2048         Reviewed by Daniel Bates.
2049
2050         Change loop variables to const references to avoid unnecessary
2051         copies.
2052
2053         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2054         (-[LocalPasteboard pasteboardItems]):
2055
2056 2018-12-17  Ms2ger  <Ms2ger@igalia.com>
2057
2058         [GTK][WPE] Need a function to convert internal URI to display ("pretty") URI
2059         https://bugs.webkit.org/show_bug.cgi?id=174816
2060
2061         Reviewed by Michael Catanzaro.
2062
2063         Add tests for userVisibleString() and (for GTK and WPE) webkit_uri_for_display().
2064
2065         * TestWebKitAPI/CMakeLists.txt:
2066         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2067         * TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Added.
2068         (TestWebKitAPI::TEST):
2069         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitURIUtilities.cpp: Added.
2070         (testURIForDisplayUnaffected):
2071         (testURIForDisplayAffected):
2072         (beforeAll):
2073         (afterAll):
2074         * TestWebKitAPI/glib/CMakeLists.txt:
2075
2076 2018-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2077
2078         [WPE] Add API to notify about frame displayed view backend callback
2079         https://bugs.webkit.org/show_bug.cgi?id=192224
2080
2081         Reviewed by Michael Catanzaro.
2082
2083         Add a test case to check the new API.
2084
2085         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2086         (testWebViewFrameDisplayed):
2087         (beforeAll):
2088         * wpe/jhbuild.modules: Bump WPEBackend-fdo to 1.1.0.
2089
2090 2018-12-16  Adrian Perez de Castro  <aperez@igalia.com>
2091
2092         Unreviewed build fix after r239253
2093
2094         * gtk/jhbuild.modules: Fix typo in libpsl dependency name.
2095
2096 2018-12-15  Darin Adler  <darin@apple.com>
2097
2098         Use warning-ignoring macros more consistently and simply
2099         https://bugs.webkit.org/show_bug.cgi?id=192743
2100
2101         Reviewed by Mark Lam.
2102
2103         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2104         (handleEventCarbon): Use ALLOW_DEPRECATED_DECLARATIONS_BEGIN/END.
2105         * DumpRenderTree/mac/TextInputControllerMac.m:
2106         (-[TextInputController interpretKeyEvents:withSender:]): Use
2107         IGNORE_WARNINGS_BEGIN/END.
2108         * WebKitTestRunner/mac/EventSenderProxy.mm:
2109         (WTR::EventSenderProxy::mouseForceClick): Use
2110         IGNORE_NULL_CHECK_WARNINGS_BEGIN/END.
2111         (WTR::EventSenderProxy::startAndCancelMouseForceClick): Ditto.
2112         (WTR::EventSenderProxy::mouseForceDown): Ditto.
2113         (WTR::EventSenderProxy::mouseForceUp): Ditto.
2114         (WTR::EventSenderProxy::mouseForceChanged): Ditto.
2115
2116 2018-12-15  Darin Adler  <darin@apple.com>
2117
2118         Replace many uses of String::format with more type-safe alternatives
2119         https://bugs.webkit.org/show_bug.cgi?id=192742
2120
2121         Reviewed by Mark Lam.
2122
2123         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2124         (WTR::cacheTestRunnerCallback): Use makeString.
2125         * WebKitTestRunner/TestController.cpp:
2126         (WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
2127         (WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
2128
2129 2018-12-15  Adrian Perez de Castro  <aperez@igalia.com>
2130
2131         [WPE][GTK] Add libpsl to JHBuild module sets
2132         https://bugs.webkit.org/show_bug.cgi?id=192740
2133
2134         Reviewed by Michael Catanzaro.
2135
2136         * gtk/jhbuild.modules: Add libpsl module.
2137         * wpe/jhbuild.modules: Ditto.
2138
2139 2018-12-14  Alexey Proskuryakov  <ap@apple.com>
2140
2141         Add a style checker rule for Xcode version macros use
2142         https://bugs.webkit.org/show_bug.cgi?id=192703
2143
2144         Reviewed by Alex Christensen.
2145
2146         * Scripts/webkitpy/style/checkers/cpp.py:
2147         (check_os_version_checks):
2148         (process_line):
2149         (CppChecker):
2150         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2151         (WebKitStyleTest.test_os_version_checks):
2152
2153 2018-12-14  Chris Dumez  <cdumez@apple.com>
2154
2155         [PSON] Process-swapping on a loadHTMLString causes duplicate decidePolicyForNavigationAction delegate calls
2156         https://bugs.webkit.org/show_bug.cgi?id=192704
2157
2158         Reviewed by Geoffrey Garen.
2159
2160         Extend existing API test to reproduce the problem.
2161
2162         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2163
2164 2018-12-14  Chris Dumez  <cdumez@apple.com>
2165
2166         [PSON] WebsitePolicies are lost on process-swap
2167         https://bugs.webkit.org/show_bug.cgi?id=192694
2168         <rdar://problem/46715748>
2169
2170         Reviewed by Brady Eidson.
2171
2172         Extend existing API test to reproduce the issue.
2173
2174         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2175
2176 2018-12-14  Michael Catanzaro  <mcatanzaro@igalia.com>
2177
2178         [GTK] Error writing data to TLS socket in some sites when using the jhbuild
2179         https://bugs.webkit.org/show_bug.cgi?id=192678
2180
2181         Reviewed by Carlos Garcia Campos.
2182
2183         Update our ancient versions of libsoup and glib-networking.
2184
2185         * gtk/install-dependencies:
2186         * gtk/jhbuild.modules:
2187         * gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Removed.
2188         * gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Removed.
2189         * gtk/patches/libsoup-soup-message-io-Do-not-fail-when-there-s-no-empty-li.patch: Removed.
2190         * gtk/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
2191         * wpe/install-dependencies:
2192         * wpe/jhbuild.modules:
2193         * wpe/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
2194
2195 2018-12-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2196
2197         [WPE] Use new view state API from libwpe
2198         https://bugs.webkit.org/show_bug.cgi?id=191906
2199
2200         Reviewed by Žan Doberšek.
2201
2202         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2203         (beforeAll): Enable /webkit/WebKitWebView/page-visibility in WPE.
2204         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2205         (Test::createWebViewBackend): Make the view initially hidden for consistency with GTK+ tests.
2206         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
2207         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
2208         (WebViewTest::showInWindow): Add wpe_view_activity_state_visible, wpe_view_activity_state_in_window and
2209         wpe_view_activity_state_focused state flags.
2210         (WebViewTest::hideView): Remove wpe_view_activity_state_visible and wpe_view_activity_state_focused state flags.
2211         * wpe/backends/HeadlessViewBackend.cpp:
2212         (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend): Assume view is always visible, focused and in window.
2213         * wpe/backends/WindowViewBackend.cpp:
2214         (WPEToolingBackends::WindowViewBackend::WindowViewBackend): Update the view state flags depending on state
2215         received in configure callback.
2216         * wpe/jhbuild.modules: Bump libwpe to 1.1.0
2217
2218 2018-12-13  Fujii Hironori  <Hironori.Fujii@sony.com>
2219
2220         [WinCairo][Clang] DLLLauncherMain.cpp: warning: unused function 'prependPath' and 'appleApplicationSupportDirectory'
2221         https://bugs.webkit.org/show_bug.cgi?id=192688
2222
2223         Reviewed by Ross Kirsling.
2224
2225         * win/DLLLauncher/DLLLauncherMain.cpp:
2226         (copyEnvironmentVariable): Moved.
2227         (getStringValue): Enclosed with #if !defined(WIN_CAIRO).
2228         (applePathFromRegistry): Ditto.
2229         (appleApplicationSupportDirectory): Ditto.
2230         (prependPath): Ditto.
2231
2232 2018-12-13  Don Olmstead  <don.olmstead@sony.com>
2233
2234         Unreviewed. Changed my status to a reviewer.
2235
2236         * Scripts/webkitpy/common/config/contributors.json:
2237
2238 2018-12-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2239
2240         [iOS] Support dropping contact card data (public.vcard) in editable content
2241         https://bugs.webkit.org/show_bug.cgi?id=192570
2242         <rdar://problem/35626913>
2243
2244         Reviewed by Tim Horton.
2245
2246         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2247
2248         Add API tests to verify that registering `MKMapItem`s and `CNContact`s to item providers and dropping them in
2249         attachment-enabled rich text editable areas inserts attachment elements (and in the case of `MKMapItem`,
2250         additionally inserts a link).
2251
2252         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2253         (TestWebKitAPI::createMapItemForTesting):
2254         (TestWebKitAPI::createContactItemForTesting):
2255
2256         Add API tests to verify that dropping map items and contact items into rich and plain editable areas behaves as
2257         expected (in the case where a URL is present, e.g. dropping a map item, we insert the URL as an anchor, and when
2258         there is no other suitable representation in the item provider, we do nothing at all, which is the case for the
2259         dropped `CNContact`). Also, add a test to verify that drag and drop can be used to upload these items as .vcf
2260         files.
2261
2262 2018-12-13  Ross Kirsling  <ross.kirsling@sony.com>
2263
2264         Unreviewed -- update my status to "reviewer".
2265
2266         * Scripts/webkitpy/common/config/contributors.json:
2267
2268 2018-12-13  Youenn Fablet  <youenn@apple.com>
2269
2270         On page close, WebPage::m_userMediaPermissionRequestManager is nullified too early
2271         https://bugs.webkit.org/show_bug.cgi?id=192657
2272
2273         Reviewed by Eric Carlson.
2274
2275         Add a test that loads a page registering ondevicechange,
2276         load another page in the same process, closes the first page.
2277         Ensure that the process does not crash in that case.
2278
2279         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2280         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
2281         (TestWebKitAPI::TEST):
2282         (TestWebKitAPI::didCrashCallback):
2283         * TestWebKitAPI/Tests/WebKit/ondevicechange.html: Added.
2284
2285 2018-12-13  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
2286
2287         [GStreamer][JHBuild] update-webkit{gtk,wpe}-libs fails with libfdk-2.0.0
2288         https://bugs.webkit.org/show_bug.cgi?id=192643
2289
2290         Reviewed by Philippe Normand.
2291
2292         This problem happens with Arch Linux users which have libfdk-2.0.0
2293         installed (which is anybody with gst-plugins-bad 1.14.4 installed).
2294
2295         The problem has already been solved upstream at
2296         https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/77.
2297
2298         Adding patches while this problem is not in a release yet.
2299
2300         * gstreamer/jhbuild.modules: Add patches to fix build of gst-plugins-bad with libfdk-2.0.0.
2301         * gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Added.
2302         * gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Added.
2303
2304 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2305
2306         [FreeType] Add initial implementation of variation fonts
2307         https://bugs.webkit.org/show_bug.cgi?id=192151
2308
2309         Reviewed by Michael Catanzaro.
2310
2311         Add cairo patch to avoid crashes.
2312
2313         * gtk/jhbuild.modules:
2314         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
2315
2316 2018-12-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2317
2318         [Win][Clang][WebKitLegacy] WebFrame.cpp: warning: delete called on non-final 'WebFrame' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
2319         https://bugs.webkit.org/show_bug.cgi?id=192618
2320
2321         Reviewed by Alex Christensen.
2322
2323         * DumpRenderTree/win/DRTDataObject.cpp:
2324         * DumpRenderTree/win/DRTDataObject.h:
2325         * DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
2326         * DumpRenderTree/win/DRTDropSource.h:
2327         * DumpRenderTree/win/EditingDelegate.h:
2328         * DumpRenderTree/win/PolicyDelegate.h:
2329         * DumpRenderTree/win/UIDelegate.h:
2330
2331 2018-12-12  Ryosuke Niwa  <rniwa@webkit.org>
2332
2333         Make TextInputController.legacyAttributedString take DOM nodes and offsets
2334         https://bugs.webkit.org/show_bug.cgi?id=192653
2335
2336         Reviewed by Wenson Hsieh.
2337
2338         Updated TextInputController.legacyAttributedString to take DOM nodes and offsets instead of
2339         a DOM Range object in preparation to add layout tests for HTMLConverter which crosses
2340         shadow boundaries.
2341
2342         * DumpRenderTree/mac/TextInputControllerMac.m:
2343         (+[TextInputController isSelectorExcludedFromWebScript:]): Updated the selector signature.
2344         (+[TextInputController webScriptNameForSelector:]): Ditto.
2345         (-[TextInputController legacyAttributedString:offset:to:offset:]): Made this function take
2346         start node and offset then end node and offset pairs.
2347
2348 2018-12-12  Alex Christensen  <achristensen@webkit.org>
2349
2350         Implement safe browsing in WebKit on WatchOS
2351         https://bugs.webkit.org/show_bug.cgi?id=192641
2352         <rdar://problem/46376188>
2353
2354         Reviewed by Geoff Garen.
2355
2356         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2357         (-[SafeBrowsingNavigationDelegate _webViewDidShowSafeBrowsingWarning:]):
2358         (safeBrowsingView):
2359         Add a test that the new delegate callback is called.
2360
2361 2018-12-12  Michael Catanzaro  <mcatanzaro@igalia.com>
2362
2363         Unreviewed manual rollout of r239100-r239102 and r239116
2364         https://bugs.webkit.org/show_bug.cgi?id=192151
2365         <rdar://problem/46655586>
2366
2367         * gtk/jhbuild.modules:
2368         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Removed.
2369
2370 2018-12-12  Commit Queue  <commit-queue@webkit.org>
2371
2372         Unreviewed, rolling out r239103.
2373         https://bugs.webkit.org/show_bug.cgi?id=192627
2374
2375         It broke the built because it depends on another patch that
2376         didn't land yet (Requested by KaL on #webkit).
2377
2378         Reverted changeset:
2379
2380         "[WPE] Add API to notify about frame displayed view backend
2381         callback"
2382         https://bugs.webkit.org/show_bug.cgi?id=192224
2383         https://trac.webkit.org/changeset/239103
2384
2385 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2386
2387         [WPE] Add API to notify about frame displayed view backend callback
2388         https://bugs.webkit.org/show_bug.cgi?id=192224
2389
2390         Reviewed by Michael Catanzaro.
2391
2392         Add a test case to check the new API.
2393
2394         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2395         (testWebViewFrameDisplayed):
2396         (beforeAll):
2397
2398 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2399
2400         [FreeType] Add initial implementation of variation fonts
2401         https://bugs.webkit.org/show_bug.cgi?id=192151
2402
2403         Reviewed by Michael Catanzaro.
2404
2405         Add cairo patch to avoid crashes.
2406
2407         * gtk/jhbuild.modules:
2408         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
2409
2410 2018-12-11  Justin Michaud  <justin_michaud@apple.com>
2411
2412         Implement feature flag for CSS Typed OM
2413         https://bugs.webkit.org/show_bug.cgi?id=192610
2414
2415         Reviewed by Ryosuke Niwa.
2416
2417         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2418
2419 2018-12-11  Chris Dumez  <cdumez@apple.com>
2420
2421         Unreviewed, fix bad check in API test added in r239080.
2422
2423         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2424
2425 2018-12-11  Fujii Hironori  <Hironori.Fujii@sony.com>
2426
2427         [Win][Clang] Fix warning -Wmissing-field-initializers
2428         https://bugs.webkit.org/show_bug.cgi?id=192584
2429
2430         Reviewed by Yusuke Suzuki.
2431
2432         Initialize a struct with '{ }' instead of '= {0}'.
2433
2434         * DumpRenderTree/win/DumpRenderTree.cpp:
2435         (runTest):
2436         * DumpRenderTree/win/EventSender.cpp:
2437         (makeMsg):
2438         (replaySavedEvents):
2439         (beginDragWithFilesCallback):
2440         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
2441         (createBitmapContextFromWebView):
2442         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
2443         (updateMenuItemForHistoryItem):
2444         * MiniBrowser/win/WinMain.cpp:
2445         (wWinMain):
2446         * TestWebKitAPI/win/HostWindow.cpp:
2447         (TestWebKitAPI::HostWindow::clientRect const):
2448         (TestWebKitAPI::HostWindow::registerWindowClass):
2449         * TestWebKitAPI/win/PlatformWebViewWin.cpp:
2450         (TestWebKitAPI::PlatformWebView::registerWindowClass):
2451         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
2452         (WTR::registerWindowClass):
2453         (WTR::PlatformWebView::windowFrame):
2454         (WTR::PlatformWebView::windowSnapshotImage):
2455
2456 2018-12-11  Chris Dumez  <cdumez@apple.com>
2457
2458         PSON logic gets confused by concurrent decidePolicyForNavigationAction requests
2459         https://bugs.webkit.org/show_bug.cgi?id=192482
2460         <rdar://problem/46470145>
2461
2462         Reviewed by Antti Koivisto.
2463
2464         Add API test coverage.
2465
2466         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2467
2468 2018-12-11  Andy Estes  <aestes@apple.com>
2469
2470         Introduce makeBlockPtr for lambdas
2471         https://bugs.webkit.org/show_bug.cgi?id=192594
2472
2473         Reviewed by Alex Christensen.
2474
2475         Adopted makeBlockPtr and added API tests.
2476
2477         * DumpRenderTree/TestRunner.cpp:
2478         (TestRunner::callUIScriptCallback):
2479         * TestWebKitAPI/Tests/WTF/BlockPtr.mm:
2480         (TestWebKitAPI::TEST):
2481         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
2482         (-[DownloadProgressTestRunner init]):
2483         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
2484
2485 2018-12-11  Chris Dumez  <cdumez@apple.com>
2486
2487         REGRESSION (r238764-238783): TestWTF.WTF.StringOperators is failing
2488         https://bugs.webkit.org/show_bug.cgi?id=192361
2489         <rdar://problem/46524903>
2490
2491         Reviewed by Alex Christensen.
2492
2493         Compile StringOperators.cpp with -O1 optimization level instead of -Os. This
2494         fixes the failures for me locally.
2495
2496         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2497
2498 2018-12-11  Philippe Normand  <pnormand@igalia.com>
2499
2500         Unreviewed, WPE build fix after r239028
2501
2502         The FLATPAK_USER_DIR env var is not set early enough, leading to:
2503
2504         Traceback (most recent call last):
2505         File "/home/phil/WebKit/Tools/Scripts/webkit-flatpak", line 28, in <module>
2506           sys.exit(WebkitFlatpak.load_from_args().run())
2507         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 761, in run
2508           if not self.clean_args():
2509         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 574, in clean_args
2510           _log.debug("Using flatpak user dir: %s" % os.environ["FLATPAK_USER_DIR"])
2511         File "/usr/lib/python2.7/UserDict.py", line 40, in __getitem__
2512           raise KeyError(key)
2513         KeyError: 'FLATPAK_USER_DIR'
2514
2515         * flatpak/flatpakutils.py:
2516         (WebkitFlatpak.clean_args):
2517
2518 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
2519
2520         Move ENABLE_RESOURCE_LOAD_STATISTICS to FeatureDefines.xcconfig
2521         https://bugs.webkit.org/show_bug.cgi?id=192573
2522
2523         Reviewed by Simon Fraser.
2524
2525         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2526
2527 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
2528
2529         [CMake] Add ENABLE_RESOURCE_LOAD_STATISTICS to WebKitFeatures.cmake
2530         https://bugs.webkit.org/show_bug.cgi?id=192574
2531
2532         Reviewed by Michael Catanzaro.
2533
2534         * Scripts/webkitperl/FeatureList.pm:
2535
2536 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
2537
2538         Sync FeatureList.pm
2539         https://bugs.webkit.org/show_bug.cgi?id=192565
2540
2541         Reviewed by Michael Catanzaro.
2542
2543         * Scripts/webkitperl/FeatureList.pm:
2544
2545 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2546
2547         [iOS] Unable to upload data that conforms to "public.item" but not "public.content"
2548         https://bugs.webkit.org/show_bug.cgi?id=192555
2549         <rdar://problem/35204990>
2550
2551         Reviewed by Tim Horton.
2552
2553         Add a test to verify that `.p12` files may be uploaded as files via drag and drop. "com.rsa.pkcs-12" is an
2554         example of a data type that conforms to "public.item", but not "public.content"; before this patch, we would
2555         only support uploading "public.content", so files such as these would not be accepted when dropping into file
2556         inputs, or be exposed as files on DataTransfer.
2557
2558         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2559         (TestWebKitAPI::TEST):
2560
2561 2018-12-10  David Kilzer  <ddkilzer@apple.com>
2562
2563         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
2564         <https://webkit.org/b/192481>
2565         <rdar://problem/46539059>
2566
2567         Follow-up to address Darin's feedback.
2568
2569         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2570         (WTR::TestRunner::shouldDumpPixels const):
2571         (WTR::TestRunner::whatToDump const):
2572         (WTR::TestRunner::shouldWaitUntilDone const):
2573         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
2574         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
2575         (WTR::TestRunner::secureEventInputIsEnabled const):
2576         (WTR::TestRunner::isStatisticsPrevalentResource):
2577         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
2578         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
2579         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2580         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2581         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2582         (WTR::TestRunner::isStatisticsGrandfathered):
2583         (WTR::TestRunner::hasDOMCache):
2584         (WTR::TestRunner::keyExistsInKeychain):
2585
2586 2018-12-10  Jonathan Bedard  <jbedard@apple.com>
2587
2588         webkitpy: Ref tests don't respect platform specific expectations
2589         https://bugs.webkit.org/show_bug.cgi?id=192515
2590         <rdar://problem/46564839>
2591
2592         Reviewed by Lucas Forschler.
2593
2594         * Scripts/webkitpy/port/base.py:
2595         (Port._expected_baselines_for_suffixes): Accept multiple suffixes so ref tests can use this function.
2596         (Port.expected_baselines): Move implementation to _expected_baselines_for_suffixes.
2597         (Port.expected_filename): Remove irrelevant FIXME, code clean-up.
2598         (Port.reference_files): Instead of just searching a single directory, use _expected_baselines_for_suffixes to
2599         search all platform expectations as well.
2600         * Scripts/webkitpy/port/base_unittest.py:
2601         (test_ref_tests_platform_directory):
2602
2603 2018-12-10  Chris Dumez  <cdumez@apple.com>
2604
2605         Add SPI to allow the client to set the user-agent at main frame level, from the UIProcess
2606         https://bugs.webkit.org/show_bug.cgi?id=192509
2607         <rdar://problem/46500832>
2608
2609         Reviewed by Alex Christensen.
2610
2611         Add API test coverage.
2612
2613         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2614         (-[DataMappingSchemeHandler addMappingFromURLString:toData:]):
2615         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
2616         (-[DataMappingSchemeHandler webView:stopURLSchemeTask:]):
2617         (-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2618         (-[CustomUserAgentDelegate webView:didFinishNavigation:]):
2619
2620 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2621
2622         [iOS] Caret is obscured by finger when dragging over an editable element
2623         https://bugs.webkit.org/show_bug.cgi?id=192499
2624         <rdar://problem/46570101>
2625
2626         Reviewed by Tim Horton.
2627
2628         Augment some existing API tests to check that the `precise` flag is either on or off on `UIDropProposal`.
2629
2630         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2631         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2632         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2633         (-[DragAndDropSimulator _resetSimulatedState]):
2634         (-[DragAndDropSimulator lastKnownDropProposal]):
2635
2636         Rename `currentDropProposal` to `lastKnownDropProposal`, and expose it as a readonly property.
2637
2638         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
2639         (-[DragAndDropSimulator _advanceProgress]):
2640         (-[DragAndDropSimulator setShowCustomActionSheetBlock:]):
2641         (-[DragAndDropSimulator showCustomActionSheetBlock]):
2642         (-[DragAndDropSimulator setConvertItemProvidersBlock:]):
2643         (-[DragAndDropSimulator convertItemProvidersBlock]):
2644         (-[DragAndDropSimulator setOverridePerformDropBlock:]):
2645         (-[DragAndDropSimulator overridePerformDropBlock]):
2646         (-[DragAndDropSimulator setOverrideDragUpdateBlock:]):
2647         (-[DragAndDropSimulator overrideDragUpdateBlock]):
2648         (-[DragAndDropSimulator setDropCompletionBlock:]):
2649         (-[DragAndDropSimulator dropCompletionBlock]):
2650
2651         Refactor these properties to return and take normal Objective-C blocks, rather than `BlockPtr`s. However, use
2652         `BlockPtr` instance variables to manage the lifetimes of these blocks.
2653
2654         (-[DragAndDropSimulator _webView:willUpdateDropProposalToProposal:forSession:]):
2655         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]): Deleted.
2656
2657         Update this to use the new WebKit delegate hook for overriding the drop proposal.
2658
2659 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2660
2661         [WPE][GTK] run-minibrowser improperly creates webkit-flatpak environment
2662         https://bugs.webkit.org/show_bug.cgi?id=190241
2663
2664         Reviewed by Carlos Garcia Campos.
2665
2666         run-minibrowser calls into webkit-flatpak to check if a flatpak environment is available.
2667         Currently this actually creates the directories needed for the flatpak environment. Fix it.
2668
2669         * flatpak/flatpakutils.py:
2670         (WebkitFlatpak.clean_args):
2671         (WebkitFlatpak.run):
2672
2673 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2674
2675         [GTK] Don't use the slice allocator
2676         https://bugs.webkit.org/show_bug.cgi?id=192360
2677
2678         Reviewed by Carlos Garcia Campos.
2679
2680         * MiniBrowser/gtk/main.c:
2681         (aboutDataRequestFree):
2682         (aboutDataRequestNew):
2683
2684 2018-12-10  Tim Horton  <timothy_horton@apple.com>
2685
2686         WKWebView should support custom tintColor
2687         https://bugs.webkit.org/show_bug.cgi?id=192518
2688         <rdar://problem/37243261>
2689
2690         Reviewed by Wenson Hsieh.
2691
2692         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
2693         (TestWebKitAPI::TEST):
2694         Add a test that tintColor affects UITextInputTraits' interaction colors.
2695
2696 2018-12-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2697
2698         [iOS] DragAndDropTests.RespectsExternalSourceFidelityRankings is flaky
2699         https://bugs.webkit.org/show_bug.cgi?id=192524
2700
2701         Reviewed by Ryosuke Niwa.
2702
2703         This test started failing on certain builds of iOS where UIKit now attempts to reveal the selection by scrolling
2704         (see <rdar://problem/28300343>). This API test simulates two drops from external sources, both from the point
2705         (300, 400) to (100, 300) in window coordinates. On these aforementioned builds of iOS, what happens is that the
2706         first drop inserts text that overflows the editable region by an enormous amount, which creates an extremely
2707         wide selection rect and increases the width of the document; revealing this selection causes the web view to
2708         scroll horizontally, such that the second attempt to simulate a drag from (300, 400) to (100, 300) fails, since
2709         these window coordinates no longer correspond to the drop destination element in the document.
2710
2711         To fix this test, we simply mark the drop destination as `overflow: hidden` to ensure that we don't try and
2712         scroll horizontally after the first drop.
2713
2714         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
2715
2716 2018-12-08  Daniel Bates  <dabates@apple.com>
2717
2718         Fix lldb_webkit.py following r238771
2719         (https://bugs.webkit.org/show_bug.cgi?id=190234)
2720
2721         Substitute WTFURLProvider for WebCoreURLProvider in one call site that was inadvertently
2722         missed in r238771.
2723
2724         * lldb/lldb_webkit.py:
2725         (WebCoreDocumentProvider.url):
2726
2727 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2728
2729         [ews-build] check-patch-relevance failure should not mark the overall build as failure
2730         https://bugs.webkit.org/show_bug.cgi?id=192510
2731
2732         Reviewed by Lucas Forschler.
2733
2734         * BuildSlaveSupport/ews-build/steps.py:
2735         (CheckPatchRelevance.start):
2736
2737 2018-12-07  Chris Dumez  <cdumez@apple.com>
2738
2739         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
2740         https://bugs.webkit.org/show_bug.cgi?id=192362
2741         <rdar://problem/46460360>
2742
2743         Reviewed by Ryosuke Niwa.
2744
2745         Move the call to _setCookieAcceptPolicy *after* we've constructed a WKWebView and thus
2746         *after* we know for sure we have a network process to communicate the policy to.
2747         This should address the failures on iOS.
2748
2749         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2750
2751 2018-12-07  Jiewen Tan  <jiewen_tan@apple.com>
2752
2753         Add keychain access entitlement to WebKitTestRunnerApp
2754         https://bugs.webkit.org/show_bug.cgi?id=192489
2755         <rdar://problem/45057952>
2756
2757         Reviewed by Alexey Proskuryakov.
2758
2759         * WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
2760
2761 2018-12-07  Saam Barati  <sbarati@apple.com>
2762
2763         WKWebProcessPlugInLoadDelegate should have API for saying which rendering events it wants to listen for
2764         https://bugs.webkit.org/show_bug.cgi?id=192473
2765
2766         Reviewed by Andy Estes.
2767
2768         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2769         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgress.mm: Added.
2770         (-[DidFirstMeaningfulPaintRemoteObject didFirstMeaningfulPaint]):
2771         (TEST):
2772         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressPlugIn.mm: Added.
2773         (-[RenderingProgressPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2774         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextControllerRenderingProgressEvents:]):
2775         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextController:renderingProgressDidChange:]):
2776         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressProtocol.h: Added.
2777
2778 2018-12-07  Jonathan Bedard  <jbedard@apple.com>
2779
2780         REGRESSION: run-webkit-tests may fail when using booted simulators (Follow-up fix)
2781         https://bugs.webkit.org/show_bug.cgi?id=192470
2782         <rdar://problem/46532001>
2783
2784         Unreviewed infrastructure fix.
2785
2786         * Scripts/webkitpy/port/device_port.py:
2787         (DevicePort.setup_test_run): Check that the number of initialized devices matches the
2788         number of child processes.
2789
2790 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2791
2792         [ews-app] Send bug id as a build property
2793         https://bugs.webkit.org/show_bug.cgi?id=192494
2794
2795         Reviewed by Lucas Forschler.
2796
2797         * BuildSlaveSupport/ews-app/ews/fetcher.py:
2798         (BugzillaPatchFetcher.fetch):
2799
2800 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2801
2802         [ews-build] Builds should have a link to patch and bug
2803         https://bugs.webkit.org/show_bug.cgi?id=192492
2804
2805         Reviewed by Lucas Forschler.
2806
2807         * BuildSlaveSupport/ews-build/steps.py:
2808         (ConfigureBuild.add_patch_id_url): Method to add Patch URL.
2809         (ConfigureBuild.add_bug_id_url): Method to add Bug URL.
2810         (ConfigureBuild.getPatchURL): Method to get Patch URL.
2811         (ConfigureBuild.getBugURL): Method to get Bug URL.
2812
2813 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2814
2815         [ews-app] Configure logfile for ews-app logs
2816         https://bugs.webkit.org/show_bug.cgi?id=192493
2817
2818         Reviewed by Lucas Forschler.
2819
2820         * BuildSlaveSupport/ews-app/ews/__init__.py:
2821
2822 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2823
2824         Style queue exception on some security bugs
2825         https://bugs.webkit.org/show_bug.cgi?id=190793
2826
2827         Reviewed by Lucas Forschler.
2828
2829         * Scripts/webkitpy/tool/steps/applywatchlist.py:
2830         (ApplyWatchList.run):
2831
2832 2018-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
2833
2834         [Attachment Support] Cloned attachment elements lose their unique identifiers
2835         https://bugs.webkit.org/show_bug.cgi?id=192483
2836
2837         Reviewed by Tim Horton.
2838
2839         Introduce a new API test.
2840
2841         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2842         (TestWebKitAPI::TEST):
2843
2844 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2845
2846         Consecutive DumpRenderTree crashes are happening again on WinCairo BuildBots since r238903
2847         https://bugs.webkit.org/show_bug.cgi?id=192486
2848
2849         Unreviewed infrastructure fix.
2850
2851         WinCairo bots define WEBKIT_TEST_CHILD_PROCESSES to run less processes due to RAM restrictions.
2852
2853         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2854         (_set_up_derived_options):
2855
2856 2018-12-06  David Kilzer  <ddkilzer@apple.com>
2857
2858         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
2859         <https://webkit.org/b/192481>
2860         <rdar://problem/46539059>
2861
2862         Reviewed by Simon Fraser.
2863
2864         This patch:
2865         - Fixes leaks in various injected bundle methods that return +1
2866           retained WKTypeRef objects via pointer.
2867         - Asserts the returned object is the expected WKTypeRef.
2868         - Replaces 0 with nullptr in many places.
2869
2870         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2871         (WTR::InjectedBundle::didCreatePage):
2872         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2873         (WTR::TestRunner::shouldDumpPixels const):
2874         (WTR::TestRunner::whatToDump const):
2875         (WTR::TestRunner::shouldWaitUntilDone const):
2876         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
2877         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
2878         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
2879         (WTR::TestRunner::secureEventInputIsEnabled const):
2880         (WTR::TestRunner::isStatisticsPrevalentResource):
2881         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
2882         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
2883         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2884         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2885         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2886         (WTR::TestRunner::isStatisticsGrandfathered):
2887         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
2888         (WTR::TestRunner::statisticsUpdateCookieBlocking):
2889         (WTR::TestRunner::statisticsSubmitTelemetry):
2890         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
2891         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
2892         (WTR::TestRunner::statisticsResetToConsistentState):
2893         (WTR::TestRunner::getAllStorageAccessEntries):
2894         (WTR::TestRunner::hasDOMCache):
2895         (WTR::TestRunner::domCacheSize):
2896         (WTR::TestRunner::injectUserScript):
2897         (WTR::TestRunner::keyExistsInKeychain):
2898
2899 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2900
2901         REGRESSION: run-webkit-tests may fail when using booted simulators
2902         https://bugs.webkit.org/show_bug.cgi?id=192470
2903         <rdar://problem/46532001>
2904
2905         Reviewed by Lucas Forschler.
2906
2907         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2908         (Manager.run): Logging uses the number of child processes to print out information about how efficiently tests
2909         were sharded after the fact. This number is the most meaningful if it is the maximum number of child processes used.
2910         * Scripts/webkitpy/port/base.py:
2911         (Port.max_child_processes): By default, Ports do not support running on any specific kind of device.
2912         * Scripts/webkitpy/port/device_port.py:
2913         (DevicePort.default_child_processes): Rather than using the currently initialized devices as a proxy for how many
2914         child processes are being used, check the device manager every time. Regardless of which devices are attached or
2915         available, iOS cannot boot watchOS devices and vice-versa. dedicated_simulators is not a known argument to
2916         device_count_for_type, use use_booted_simulator instead.
2917         (DevicePort.max_child_processes): Simulators can boot more devices than what is specified by device_count_for_type,
2918         but, if no devices are available, then max_child_processes should return 0 even for simulators.
2919         * Scripts/webkitpy/port/ios_device_unittest.py:
2920         (IOSDeviceTest):
2921         (IOSDeviceTest.test_max_child_processes):
2922         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2923         (IOSSimulatorTest):
2924         (IOSSimulatorTest.test_max_child_processes):
2925         * Scripts/webkitpy/port/port_testcase.py:
2926         (PortTestCase):
2927         (PortTestCase.test_max_child_processes):
2928         * Scripts/webkitpy/port/watch_simulator_unittest.py:
2929         (WatchSimulatorTest):
2930         (WatchSimulatorTest.test_max_child_processes):
2931
2932 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2933
2934         webkitpy: Ignore case when comparing device types (Follow-up fix)
2935         https://bugs.webkit.org/show_bug.cgi?id=192409
2936         <rdar://problem/46491558>
2937
2938         Unreviewed typo fix.
2939
2940         * Scripts/webkitpy/xcode/device_type_unittest.py:
2941         (DeviceTypeTest.test_comparison_lower_case):
2942         (DeviceTypeTest.test_comparsion_lower_case): Deleted.
2943
2944 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2945
2946         webkitpy: Create device given lower-case DeviceType
2947         <https://bugs.webkit.org/show_bug.cgi?id=192472>
2948         <rdar://problem/46532650>
2949
2950         Reviewed by Lucas Forschler.
2951
2952         * Scripts/webkitpy/xcode/simulated_device.py:
2953         (SimulatedDeviceManager._get_device_identifier_for_type): Comparing simctl device identifiers with DeviceTypes
2954         should be letter-case agnostic.
2955         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
2956         (test_lower_case_device_type):
2957
2958 2018-12-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2959
2960         [iOS] WKWebView should match UITextView behavior when editing text with an RTL keyboard
2961         https://bugs.webkit.org/show_bug.cgi?id=187554
2962         <rdar://problem/42075638>
2963
2964         Reviewed by Tim Horton.
2965
2966         Add support for simulating the keyboard input mode in layout tests using UIScriptController, as well as a new
2967         `TestOption` to make the web view editable.
2968
2969         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2970         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
2971         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2972         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2973         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
2974         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2975         * WebKitTestRunner/PlatformWebView.h:
2976         * WebKitTestRunner/TestController.cpp:
2977         (WTR::updateTestOptionsFromTestHeader):
2978         * WebKitTestRunner/TestController.h:
2979         (WTR::TestController::overriddenKeyboardInputMode const):
2980         * WebKitTestRunner/TestOptions.h:
2981         (WTR::TestOptions::hasSameInitializationOptions const):
2982         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2983         (WTR::TestController::platformCreateWebView):
2984         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2985         (WTR::PlatformWebView::setEditable):
2986         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2987         (WTR::PlatformWebView::setEditable):
2988         * WebKitTestRunner/ios/TestControllerIOS.mm:
2989         (WTR::TestController::platformResetStateToConsistentValues):
2990         (WTR::swizzleCurrentInputMode):
2991         (WTR::TestController::setKeyboardInputModeIdentifier):
2992
2993         Swizzle out several `UIKeyboardInputModeController` methods in order to convince UIKit that the user has
2994         selected a `UIKeyboardInputMode` corresponding to the given identifier. The call to
2995         `-prepareKeyboardInputModeFromPreferences:` is also necessary on iOS 12 in order to update cached writing
2996         direction state in UIKit.
2997
2998         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2999         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
3000         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3001         (WTR::PlatformWebView::setEditable):
3002         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
3003         (WTR::PlatformWebView::setEditable):
3004         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
3005         (WTR::PlatformWebView::setEditable):
3006
3007 2018-12-05  Wenson Hsieh  <wenson_hsieh@apple.com>
3008
3009         [Cocoa] Share ClassMethodSwizzler and InstanceMethodSwizzler between TestWebKitAPI and WebKitTestRunner
3010         https://bugs.webkit.org/show_bug.cgi?id=192437
3011
3012         Reviewed by Tim Horton.
3013
3014         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3015         * TestRunnerShared/cocoa/ClassMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.h.
3016         * TestRunnerShared/cocoa/ClassMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.mm.
3017         (ClassMethodSwizzler::ClassMethodSwizzler):
3018         (ClassMethodSwizzler::~ClassMethodSwizzler):
3019         * TestRunnerShared/cocoa/InstanceMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.h.
3020         * TestRunnerShared/cocoa/InstanceMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm.
3021         (InstanceMethodSwizzler::InstanceMethodSwizzler):
3022         (InstanceMethodSwizzler::~InstanceMethodSwizzler):
3023
3024         Move these swizzling helper classes into TestRunnerShared.
3025
3026         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3027         * TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
3028         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3029         (safeBrowsingView):
3030         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDefaultNavigationDelegate.mm:
3031         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3032         (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
3033
3034         Remove namespacing around ClassMethodSwizzler and InstanceMethodSwizzler in a few API tests.
3035
3036         * TestWebKitAPI/mac/TestFontOptions.mm:
3037         * WebKitTestRunner/TestController.h:
3038         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3039         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3040         (WTR::ClassMethodSwizzler::ClassMethodSwizzler): Deleted.
3041         (WTR::ClassMethodSwizzler::~ClassMethodSwizzler): Deleted.
3042
3043         Remove this duplicate implementation of ClassMethodSwizzler in WebKitTestRunner.
3044
3045 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
3046
3047         webkitpy: Clean-up apple_additions
3048         https://bugs.webkit.org/show_bug.cgi?id=192413
3049         <rdar://problem/46493491>
3050
3051         Reviewed by Lucas Forschler.
3052
3053         After the addition of watchOS, some functions which were originally iOS specific were
3054         generalized to include all devices.
3055
3056         * Scripts/webkitpy/port/ios_device.py:
3057         (IOSDevicePort._driver_class): Replace iOS specific call with generalized device call.
3058         (IOSDevicePort.path_to_crash_logs): Ditto.
3059         (IOSDevicePort.clean_up_test_run): Ditto.
3060
3061 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
3062
3063         webkitpy: Ignore case when comparing device types
3064         https://bugs.webkit.org/show_bug.cgi?id=192409
3065         <rdar://problem/46491558>
3066
3067         Reviewed by Lucas Forschler.
3068
3069         This allows DeviceTypes constructed with lowercase strings to correctly compare
3070         against DeviceTypes coming from the simulator runtime.
3071
3072         * Scripts/webkitpy/xcode/device_type.py:
3073         (DeviceType.__eq__):
3074         (DeviceType.__contains__):
3075         * Scripts/webkitpy/xcode/device_type_unittest.py:
3076         (DeviceTypeTest):
3077         (DeviceTypeTest.test_comparsion_lower_case):
3078
3079 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
3080
3081         webkitpy: Sort tests by associated device type
3082         https://bugs.webkit.org/show_bug.cgi?id=192161
3083         <rdar://problem/46345392>
3084
3085         Reviewed by Lucas Forschler.
3086
3087         Sort tests by device type and make an effort to run each specified device type.
3088         Do not run tests if their specified device is not available.
3089
3090         * Scripts/webkitpy/common/system/platforminfo.py:
3091         (PlatformInfo.is_watchos): Add watchos bits to platform info.
3092         (PlatformInfo._determine_os_name): Ditto.
3093         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3094         (Manager.run): Assign each test a device type. Then, generate a list of
3095         device types to sequentially iterate through. Note that a test will run
3096         on the first device which matches.
3097         (Manager._end_test_run): Handle the case where no devices are available and no
3098         tests are run.
3099         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3100         (_set_up_derived_options): Manage child processes in manager.
3101         * Scripts/webkitpy/port/base.py:
3102         (Port):
3103         (Port.default_child_processes): Accept additional arguments.
3104         (Port.max_child_processes): Add upper limit for number of child processes.
3105         * Scripts/webkitpy/port/device_port.py:
3106         (DevicePort):
3107         (DevicePort._device_type_with_version): Adds version to the DeviceType.
3108         (DevicePort.default_child_processes): Allows default_child_processes to be
3109         attached to a device type.
3110         (DevicePort.max_child_processes): Add upper limit to the maximum number of child processes.
3111         (DevicePort.setup_test_run): Use _device_type_with_version.
3112         * Scripts/webkitpy/port/ios_device.py:
3113         (IOSDevicePort):
3114         (IOSDevicePort.default_child_processes): Deleted.
3115         * Scripts/webkitpy/port/ios_simulator.py:
3116         (IOSSimulatorPort.default_child_processes): Deleted.
3117         (IOSSimulatorPort.check_sys_deps): Deleted.
3118         * Scripts/webkitpy/port/mac.py:
3119         (MacPort.default_child_processes): Accept additional arguments.
3120         * Scripts/webkitpy/port/test.py:
3121         * Scripts/webkitpy/port/watch_device.py:
3122         (WatchDevicePort):
3123         (WatchDevicePort.default_child_processes): Deleted.
3124         * Scripts/webkitpy/port/watch_simulator.py:
3125         (WatchSimulatorPort.default_child_processes): Deleted.
3126         (WatchSimulatorPort.check_sys_deps): Deleted.
3127         * Scripts/webkitpy/xcode/simulated_device.py:
3128         (SimulatedDeviceManager):
3129         (SimulatedDeviceManager.device_count_for_type): Count the number of devices
3130         available for a specific device type.
3131
3132 2018-12-05  Devin Rousso  <drousso@apple.com>
3133
3134         Unreviewed, add myself to some watch lists.
3135
3136         * Scripts/webkitpy/common/config/watchlist:
3137
3138 2018-12-05  Alicia Boya García  <aboya@igalia.com>
3139
3140         [MSE][GStreamer] Remove the AppendPipeline state machine
3141         https://bugs.webkit.org/show_bug.cgi?id=192204
3142
3143         Reviewed by Xabier Rodriguez-Calvar.
3144
3145         Updated AbortableTaskQueue tests:
3146
3147         Added test: AbortedBySyncTaskHandler.
3148
3149         Renamed test: AbortDuringSyncTask -> AbortBeforeSyncTaskRun (in
3150         order to avoid confusion with the new test).
3151
3152         Added checks for the correct destruction of response objects.
3153
3154         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
3155         (TestWebKitAPI::FancyResponse::FancyResponse):
3156         (TestWebKitAPI::FancyResponse::~FancyResponse):
3157         (TestWebKitAPI::TEST):
3158
3159 2018-12-04  Chris Dumez  <cdumez@apple.com>
3160
3161         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
3162         https://bugs.webkit.org/show_bug.cgi?id=192362
3163
3164         Reviewed by Alex Christensen.
3165
3166         Set the cookie policy to Accept to make sure the cookies are saved.
3167
3168         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3169
3170 2018-12-04  Michael Catanzaro  <mcatanzaro@igalia.com>
3171
3172         [WPE][GTK] Update GLib
3173         https://bugs.webkit.org/show_bug.cgi?id=191222
3174
3175         Reviewed by Žan Doberšek.
3176
3177         When I try running API tests locally, they crash with:
3178
3179         GLib-GIO-WARNING **: unknown schema extension 'd'
3180
3181         We need to update our old glib to support the 'd' value type, otherwise schemas that may
3182         exist on the host using this type will cause instant crashes.
3183
3184         Also, switch the GLib build to use meson. This requires updating meson as well.
3185
3186         * gtk/jhbuild.modules:
3187         * gtk/patches/glib-cast-function-type.patch: Removed.
3188         * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Removed.
3189         * wpe/jhbuild.modules:
3190         * wpe/patches/glib-cast-function-type.patch: Removed.
3191         * wpe/patches/glib-revert-wakeup-changes.patch: Removed.
3192
3193 2018-12-04  Aakash Jain  <aakash_jain@apple.com>
3194
3195         [ews-app] Run BugzillaPatchFetcher periodically
3196         https://bugs.webkit.org/show_bug.cgi?id=192241
3197
3198         Reviewed by Lucas Forschler.
3199
3200         * BuildSlaveSupport/ews-app/ews/__init__.py:
3201         * BuildSlaveSupport/ews-app/ews/apps.py:
3202         (EwsConfig.ready): This method is called by Django on startup.
3203         * BuildSlaveSupport/ews-app/ews/fetcher.py:
3204         (FetchLoop): Class which invokes BugzillaPatchFetcher every 60s.
3205
3206 2018-12-04  Jonathan Bedard  <jbedard@apple.com>
3207
3208         webkitpy: Support unicode in MeteredStream
3209         https://bugs.webkit.org/show_bug.cgi?id=192260
3210
3211         Reviewed by Aakash Jain.
3212
3213         It's possible that the test runner returns unicode characters to be logged when
3214         running layout tests.
3215
3216         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
3217         (MeteredStream.write): Print message without attempting to encode/decode it.
3218         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
3219         (RegularTest.test_unicode):
3220
3221 2018-12-04  Keith Rollin  <krollin@apple.com>
3222
3223         Update scripts for generating .xcfilelist files
3224         https://bugs.webkit.org/show_bug.cgi?id=192081
3225         <rdar://problem/46312290>
3226
3227         Reviewed by Brent Fulgham.
3228
3229         The initial pass at generate-xcfilelists (a script for
3230         creating/updating the .xcfilelist files needed for various Generate
3231         Foo Source build phases in Xcode) only generated the .xcfilelist files
3232         that held the output files; it did not generate the list of input
3233         files. As well, for the sources generated by DerivedSources.make
3234         makefiles, the script accomplished this via the implementation of a
3235         convention in the makefile that allowed the printing of these output
3236         files when invoked with the 'print_all_generated_files' target. Use of
3237         this convention is inconvenient and error-prone.
3238
3239         The script is now updated to address both of these issues. First, it
3240         generates for the input and output sets of files. Second, it does away
3241         with the convention in the DerivedSources.make makefiles and instead
3242         works from the dependency output information printed when `make` is
3243         invoked with --debug. This second part is implemented in the new
3244         script extract-dependencies-from-makefile.
3245
3246         * Scripts/extract-dependencies-from-makefile: Added.
3247         (Parser):
3248         (Parser.__init__):
3249         (Parser.nextLine):
3250         (Parser.addTarget):
3251         (Parser.addPrereq):
3252         (Parser.doParse):
3253         (Parser.printInputs):
3254         (Parser.printOutputs):
3255         (parseArgs):
3256         (main):
3257         * Scripts/generate-xcfilelists:
3258
3259 2018-12-04  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
3260
3261         [WPE] Add gtk-doc
3262         https://bugs.webkit.org/show_bug.cgi?id=178900
3263
3264         Reviewed by Michael Catanzaro.
3265
3266         Add gtk-doc to WPE port. This patch tries to reuse as much code from
3267         WebKitGTK+ as possible.
3268
3269         * gtkdoc/generate-gtkdoc: Renamed from Tools/gtk/generate-gtkdoc.
3270         (get_gtkdoc_module_paths): Add GDK and GTK only if building for GTK.
3271         (prepare_environment_for_gtkdoc_generation):
3272         (build_gtkdoc_for_wpe): Code to generate doc for WPE.
3273         (build_gtkdoc_for_wkgtk): Code to generate doc for WebKitGTK+. Moved from main.
3274         * gtkdoc/gtkdoc.py: Renamed from Tools/gtk/gtkdoc.py.
3275         (GTKDoc.__init__): Initialized required variables according to pylint.
3276         (GTKDoc.api_missing_documentation):
3277         * wpe/install-dependencies: Add gtkdoc dependency.
3278
3279 2018-12-04  Carlos Garcia Campos  <cgarcia@igalia.com>
3280
3281         [SOUP] Move URLSoup back to WebCore after r238771
3282         https://bugs.webkit.org/show_bug.cgi?id=192306
3283
3284         Reviewed by Michael Catanzaro.
3285
3286         Include GUniquePtrSoup from WebCore again.
3287
3288         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
3289
3290 2018-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
3291
3292         [GTK] Bump freetype, fontconfig, harfbuzz, cairo and icu in jhbuild
3293         https://bugs.webkit.org/show_bug.cgi?id=192310
3294
3295         Reviewed by Michael Catanzaro.
3296
3297         Update those dependencies to their latest stable versions.
3298
3299         * gtk/jhbuild.modules:
3300
3301 2018-12-03  Tomas Popela  <tpopela@redhat.com>
3302
3303         [GTK] Can't run MiniBrowser due to missing python2-yaml
3304         https://bugs.webkit.org/show_bug.cgi?id=192308
3305
3306         Reviewed by Michael Catanzaro.
3307
3308         * gtk/install-dependencies:
3309
3310 2018-12-03  Chris Dumez  <cdumez@apple.com>
3311
3312         Regression(PSON) Google OAuth is broken in private sessions
3313         https://bugs.webkit.org/show_bug.cgi?id=192337
3314         <rdar://problem/46353558>
3315
3316         Reviewed by Alex Christensen.
3317
3318         Add API test coverage.
3319
3320         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3321         * TestWebKitAPI/Tests/WebKitCocoa/GetSessionCookie.html: Added.
3322         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3323         * TestWebKitAPI/Tests/WebKitCocoa/SetSessionCookie.html: Added.
3324
3325 2018-12-03  Chris Dumez  <cdumez@apple.com>
3326
3327         [PSON] Request by the client to process-swap is ignored if the window has an opener
3328         https://bugs.webkit.org/show_bug.cgi?id=192267
3329         <rdar://problem/46386886>
3330
3331         Reviewed by Brady Eidson.
3332
3333         Add API test coverage.
3334
3335         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3336
3337 2018-12-03  Keith Rollin  <krollin@apple.com>
3338
3339         Add .xcfilelist files
3340         https://bugs.webkit.org/show_bug.cgi?id=192082
3341         <rdar://problem/46312533>
3342
3343         Reviewed by Brent Fulgham.
3344
3345         Add .xcfilelist files for Generate Derived Sources and Generate
3346         Unified Sources build phases in Xcode. These are just being staged for
3347         now; they'll be added to the Xcode projects later.
3348
3349         * DumpRenderTree/DerivedSources-input.xcfilelist: Added.
3350         * DumpRenderTree/DerivedSources-output.xcfilelist: Added.
3351         * WebKitTestRunner/DerivedSources-input.xcfilelist: Added.
3352         * WebKitTestRunner/DerivedSources-output.xcfilelist: Added.
3353
3354 2018-12-03  Alex Christensen  <achristensen@webkit.org>
3355
3356         Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
3357         https://bugs.webkit.org/show_bug.cgi?id=192272
3358
3359         Reviewed by Brady Eidson.
3360
3361         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
3362         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]):
3363         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
3364
3365 2018-12-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3366
3367         [iOSMac] Unable to upload non-image files using drag and drop in WKWebView
3368         https://bugs.webkit.org/show_bug.cgi?id=192283
3369         <rdar://problem/46399461>
3370
3371         Reviewed by Ryosuke Niwa.
3372
3373         Add a new API test to check that an item provider which contains plain text data and a file URL (but is not
3374         marked as an attachment) is still treated as an attachment upon drop. Furthermore, verify that "text/uri-list"
3375         does not expose the actual file URL written to the item provider.
3376
3377         Additionally, rebaseline an existing API test to remove an extraneous "text/uri-list" type that appears in
3378         `DataTransfer.types`, but whose data is inaccessible via `getData` anyways.
3379
3380         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3381
3382 2018-12-01  Don Olmstead  <don.olmstead@sony.com>
3383
3384         Cleanup WebKit Features
3385         https://bugs.webkit.org/show_bug.cgi?id=192262
3386
3387         Reviewed by Michael Catanzaro.
3388
3389         Removes obsolete ENABLE options and variable names. Syncs the option's
3390         descriptions with what is present in WebKitFeatures.cmake. Sorts the
3391         options based on the associated define.
3392
3393         * Scripts/webkitperl/FeatureList.pm:
3394
3395 2018-12-01  Chris Dumez  <cdumez@apple.com>
3396
3397         [PSON] process-swapping may occur even though opener has handle to openee
3398         https://bugs.webkit.org/show_bug.cgi?id=192277
3399
3400         Reviewed by Antti Koivisto.
3401
3402         Add API test coverage.
3403
3404         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3405
3406 2018-12-01  Jonathan Bedard  <jbedard@apple.com>
3407
3408         Unreviewed, rolling out r238764.
3409
3410         Breaks existing layout tests
3411
3412         Reverted changeset:
3413
3414         "webkitpy: Support unicode in MeteredStream"
3415         https://bugs.webkit.org/show_bug.cgi?id=192260
3416         https://trac.webkit.org/changeset/238764
3417
3418 2018-12-01  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
3419
3420         Move URL tests from TestWebKitAPI to TestWTF
3421         https://bugs.webkit.org/show_bug.cgi?id=192275
3422
3423         Reviewed by Keith Miller.
3424
3425         Since URL is moved from WebCore to WTF, we also move tests for them from TestWebKitAPI (TestWebCore) to TestWTF.
3426         But we still have some tests in TestWebCore since only WebCore implements TextEncoding. That part is now decoupled
3427         from URLParser tests and new URLParserTextEncoding.cpp is created.
3428
3429         * TestWebKitAPI/CMakeLists.txt:
3430         * TestWebKitAPI/PlatformGTK.cmake:
3431         * TestWebKitAPI/PlatformWPE.cmake:
3432         * TestWebKitAPI/PlatformWin.cmake:
3433         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3434         * TestWebKitAPI/Tests/WTF/URL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URL.cpp.
3435         (TestWebKitAPI::TEST_F):
3436         * TestWebKitAPI/Tests/WTF/URLParser.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp.
3437         (TestWebKitAPI::TEST_F):
3438         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm.
3439         (TestWebKitAPI::TEST):
3440         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp: Added.
3441         (TestWebKitAPI::ExpectedParts::isInvalid const):
3442         (TestWebKitAPI::eq):
3443         (TestWebKitAPI::insertTabAtLocation):
3444         (TestWebKitAPI::invalidParts):
3445         (TestWebKitAPI::checkURL):
3446         (TestWebKitAPI::TEST_F):
3447
3448 2018-11-30  Zalan Bujtas  <zalan@apple.com>
3449
3450         Unreviewed LFC passing test list update.
3451
3452         * LayoutReloaded/misc/LFC-passing-tests.txt:
3453
3454 2018-11-30  Alex Christensen  <achristensen@webkit.org>
3455
3456         Move URL from WebCore to WTF
3457         https://bugs.webkit.org/show_bug.cgi?id=190234
3458
3459         Reviewed by Keith Miller.
3460
3461         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
3462         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
3463         * TestWebKitAPI/Tests/WebCore/URL.cpp:
3464         (TestWebKitAPI::createURL):
3465         (TestWebKitAPI::TEST_F):
3466         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3467         (TestWebKitAPI::checkURL):
3468         (TestWebKitAPI::checkRelativeURL):
3469         (TestWebKitAPI::checkURLDifferences):
3470         (TestWebKitAPI::checkRelativeURLDifferences):
3471         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3472         * TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
3473         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
3474         (TestWebKitAPI::originalDataAsString):
3475         (TestWebKitAPI::userVisibleString):
3476         (TestWebKitAPI::literalURL):
3477         (TestWebKitAPI::TEST):
3478         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
3479         (TEST):
3480         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
3481         (literalURL):
3482         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
3483         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
3484         (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
3485         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
3486         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
3487         (TestWebKitAPI::Util::createURLForResource):
3488         * lldb/lldb_webkit.py:
3489         (__lldb_init_module):
3490         (WTFURL_SummaryProvider):
3491         (WTFURLProvider):
3492         (WebCoreURL_SummaryProvider): Deleted.
3493         (WebCoreURLProvider): Deleted.
3494         (WebCoreURLProvider.__init__): Deleted.
3495         (WebCoreURLProvider.to_string): Deleted.
3496
3497 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
3498
3499         webkitpy: Support unicode in MeteredStream
3500         https://bugs.webkit.org/show_bug.cgi?id=192260
3501
3502         Reviewed by Stephanie Lewis.
3503
3504         It's possible that the test runner returns unicode characters to be logged when
3505         running layout tests.
3506
3507         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
3508         (MeteredStream.write): Message written to metered stream should be unicode.
3509         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
3510         (RegularTest.test_unicode):
3511
3512 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
3513
3514         REGRESSION (r238749): run-api-tests dies with AttributeError: 'IOSSimulatorPort' object has no attribute 'DEFAULT_DEVICE_CLASS'
3515         https://bugs.webkit.org/show_bug.cgi?id=192257
3516         <rdar://problem/46384671>
3517
3518         Reviewed by Stephanie Lewis.
3519
3520         Follow-up fix for r238749.
3521
3522         * Scripts/webkitpy/api_tests/manager.py:
3523         (Manager._initialize_devices): Use DEFAULT_DEVICE_TYPE instead of DEFAULT_DEVICE_CLASS.
3524
3525 2018-11-30  Chris Dumez  <cdumez@apple.com>
3526
3527         [PSON] We are sometimes swapping processes even though there is an opened window with an opener link to us
3528         https://bugs.webkit.org/show_bug.cgi?id=192242
3529
3530         Reviewed by Geoffrey Garen.
3531
3532         Add API test coverage.
3533
3534         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3535
3536 2018-11-30  Don Olmstead  <don.olmstead@sony.com>
3537
3538         Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
3539         https://bugs.webkit.org/show_bug.cgi?id=192197
3540
3541         Reviewed by Jiewen Tan.
3542
3543         * Scripts/webkitperl/FeatureList.pm:
3544         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3545
3546 2018-11-30  Dean Jackson  <dino@apple.com>
3547
3548         Add first-class support for .mjs files in jsc binary
3549         https://bugs.webkit.org/show_bug.cgi?id=192190
3550         <rdar://problem/46375715>
3551
3552         Reviewed by Keith Miller.
3553
3554         Add .mjs files to the regexp looking for all JS files.
3555
3556         * Scripts/run-jsc-stress-tests:
3557
3558 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
3559
3560         webkitpy: Use DeviceType instead of str to represent device class
3561         https://bugs.webkit.org/show_bug.cgi?id=192160
3562         <rdar://problem/46344845>
3563
3564         Rubber-stamped by Aakash Jain.
3565
3566         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3567         (Manager._custom_device_for_test): Use DeviceTypes instead of strings to represent device type.
3568         (Manager._set_up_run): Do not set _options.device_class, use device_type instead of device_class.
3569         (Manager.run): Use device_type instead of device_class.
3570         (Manager._print_expectations_for_subset): Ditto.
3571         (Manager.print_expectations): Ditto.
3572         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
3573         (ManagerTest.test_uses_custom_device): Use DeviceType and actual device definition.
3574         * Scripts/webkitpy/layout_tests/views/printing.py:
3575         (Printer.print_workers_and_shards): Outputting the device suffix doesn't really help, and means
3576         device type needs to be passed around.
3577         * Scripts/webkitpy/port/apple.py:
3578         (ApplePort.setup_test_run): Use device_type instead of device_class.
3579         * Scripts/webkitpy/port/base.py:
3580         (Port):
3581         (Port.setup_test_run): Use device_type instead of device_class.
3582         * Scripts/webkitpy/port/device_port.py:
3583         (DevicePort):
3584         (DevicePort.setup_test_run): Receive device_type as DeviceType object.
3585         (DevicePort._create_devices): Deleted.
3586         * Scripts/webkitpy/port/gtk.py:
3587         (GtkPort.setup_test_run): Use device_type instead of device_class.
3588         * Scripts/webkitpy/port/ios.py:
3589         (IOSPort):
3590         * Scripts/webkitpy/port/ios_simulator.py:
3591         (IOSSimulatorPort):
3592         (IOSSimulatorPort.__init__): Deleted.
3593         (IOSSimulatorPort._set_device_class): Deleted.
3594         * Scripts/webkitpy/port/test.py:
3595         * Scripts/webkitpy/port/watch.py:
3596         (WatchPort):
3597         * Scripts/webkitpy/port/watch_simulator.py:
3598         (WatchSimulatorPort):
3599         (WatchSimulatorPort.__init__): Deleted.
3600         (WatchSimulatorPort._set_device_class): Deleted.
3601         * Scripts/webkitpy/port/win.py:
3602         (WinPort.setup_test_run): Use device_type instead of device_class.
3603         * Scripts/webkitpy/xcode/simulated_device.py:
3604         (SimulatedDeviceManager._disambiguate_device_type): Using the existing devices for this is
3605         a problem if no such device exists yet. Use the _device_identifier_to_name dictionary instead
3606         since this should have hardware types in the device names.
3607
3608 2018-11-30  David Quesada  <david_quesada@apple.com>
3609
3610         -[WKProcessPool _downloadURLRequest:] should allow specifying the initiating web view
3611         https://bugs.webkit.org/show_bug.cgi?id=192212
3612         rdar://problem/46363706
3613
3614         Reviewed by Alex Christensen.
3615
3616         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
3617         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
3618
3619 2018-11-30  Zalan Bujtas  <zalan@apple.com>
3620
3621         [LFC][BFC] Compute min/maxHeight margins only when they are needed.
3622         https://bugs.webkit.org/show_bug.cgi?id=192223
3623
3624         Reviewed by Antti Koivisto.
3625
3626         * LayoutReloaded/misc/LFC-passing-tests.txt:
3627
3628 2018-11-30  Zalan Bujtas  <zalan@apple.com>
3629
3630         [LFC][BFC][MarginCollapsing] Do not use computed display box values for border and padding
3631         https://bugs.webkit.org/show_bug.cgi?id=192214
3632
3633         Reviewed by Antti Koivisto.
3634
3635         * LayoutReloaded/misc/LFC-passing-tests.txt:
3636
3637 2018-11-30  Thibault Saunier  <tsaunier@igalia.com>
3638
3639         [GTK][MiniBrowser] Handle Device Info permission requests
3640         https://bugs.webkit.org/show_bug.cgi?id=191585
3641
3642         Reviewed by Carlos Garcia Campos.
3643
3644         * MiniBrowser/gtk/BrowserTab.c:
3645         (permissionRequestDataNew):
3646         (permissionRequestDataFree):
3647         (permissionRequestDialogResponse):
3648         (decidePermissionRequest):
3649         (browserTabConstructed):
3650
3651 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3652
3653         Unreviewed GTK+ gardening. Stop running tests without complex text enforced
3654
3655         We have enforced complex text in GTK+ for one release cycle without noticing any major issue nor performance
3656         regression.
3657
3658         * WebKitTestRunner/gtk/main.cpp:
3659         (main):
3660
3661 2018-11-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3662
3663         REGRESSION (r238635): Dragging a text selection within WKWebView causes the selection highlight to get into a bad state
3664         https://bugs.webkit.org/show_bug.cgi?id=192165
3665         <rdar://problem/46346682>
3666
3667         Reviewed by Daniel Bates.
3668
3669         Fixes 11 API tests that started failing or timing out after r238635. See below for more details.
3670
3671         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
3672         (TestWebKitAPI::webViewForEditActionTesting):
3673         (TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
3674
3675         Ensure that the web view becomes first responder before executing edit actions.
3676
3677         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
3678         * TestWebKitAPI/Tests/WebKitCocoa/contenteditable-and-textarea.html:
3679
3680         Tweak these tests to allow selected content to overflow the width of the web view. Without this change,
3681         ContentEditableToContentEditable and ContentEditableToTextarea will sometimes fail because the content causes
3682         the body to scroll horizontally, so we miss the drop destination.
3683
3684         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3685         (loadTestPageAndEnsureInputSession):
3686
3687         Add a new helper to load a test page with a given name, become first responder, and wait until an input session
3688         starts. Use this in various drag and drop tests to reduce code duplication.
3689
3690         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
3691         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3692         (-[DragAndDropSimulator initWithWebView:]):
3693         (-[DragAndDropSimulator _resetSimulatedState]):
3694         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
3695         (-[DragAndDropSimulator _advanceProgress]):
3696
3697         To more accurately emulate UIKit behavior, begin focus preservation when starting a drag, and attempt to clear
3698         the focus preservation token when the drag session ends. This allows us to simulate and test the scenario that
3699         regressed with r238635.
3700
3701         (-[DragAndDropSimulator ensureInputSession]):
3702         (-[DragAndDropSimulator _webView:didStartInputSession:]):
3703         (-[DragAndDropSimulator waitForInputSession]): Deleted.
3704
3705         Refactored into -ensureInputSession. Instead of assuming that an input session has not yet been started, simply
3706         wait for an input session to start if needed.
3707
3708         * TestWebKitAPI/ios/UIKitSPI.h:
3709
3710         Add a new SPI declaration.
3711
3712 2018-11-29  Tim Horton  <timothy_horton@apple.com>
3713
3714         Inform clients when editable image attachment backing data changes
3715         https://bugs.webkit.org/show_bug.cgi?id=192206
3716         <rdar://problem/46350277>
3717
3718         Reviewed by Wenson Hsieh.
3719
3720         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3721         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3722         (-[AttachmentUpdateObserver init]):
3723         (-[AttachmentUpdateObserver dataInvalidated]):
3724         (-[AttachmentUpdateObserver _webView:didInvalidateDataForAttachment:]):
3725         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentInvalidation):
3726         (webViewForTestingAttachments):
3727         (TestWebKitAPI::forEachViewInHierarchy):
3728         (TestWebKitAPI::findEditableImageCanvas):
3729         (TestWebKitAPI::drawSquareInEditableImage):
3730         (TestWebKitAPI::TEST):
3731         * TestWebKitAPI/ios/PencilKitTestSPI.h: Added.
3732         Add a test ensuring that we get an invalidation callback when an editable image is changed.
3733
3734 2018-11-29  Fujii Hironori  <Hironori.Fujii@sony.com>
3735
3736         REGRESSION(r238445)[Buildbot] Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
3737         https://bugs.webkit.org/show_bug.cgi?id=192143
3738
3739         Reviewed by Philippe Normand.
3740
3741         Buildbot can't start since r238445.
3742
3743         > Configuration Errors:
3744         >   Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
3745         >   Unknown builder 'GTK Linux ARM Release' in scheduler 'trunk'
3746
3747         * BuildSlaveSupport/build.webkit.org-config/config.json: Removed deprecated builders.
3748
3749 2018-11-29  David Quesada  <david_quesada@apple.com>
3750
3751         Add SPI to publish NSProgress on active downloads
3752         https://bugs.webkit.org/show_bug.cgi?id=192021
3753         rdar://problem/44405661
3754
3755         Reviewed by Alex Christensen.
3756
3757         Add API tests to exercise the progress-publishing functionality in a variety of scenarios.
3758
3759         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3760         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm: Added.
3761         (+[DownloadProgressTestProtocol registerProtocolForTestRunner:]):
3762         (+[DownloadProgressTestProtocol unregisterProtocol]):
3763         (+[DownloadProgressTestProtocol canInitWithRequest:]):
3764         (+[DownloadProgressTestProtocol canonicalRequestForRequest:]):
3765         (+[DownloadProgressTestProtocol requestIsCacheEquivalent:toRequest:]):
3766         (-[DownloadProgressTestProtocol startLoading]):
3767         (-[DownloadProgressTestProtocol stopLoading]):
3768         (-[DownloadProgressTestRunner init]):
3769         (-[DownloadProgressTestRunner startLoadingWithProtocol:]):
3770         (-[DownloadProgressTestRunner tearDown]):
3771         (-[DownloadProgressTestRunner _didGetProgress:]):
3772         (-[DownloadProgressTestRunner _didLoseProgress]):
3773         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
3774         (-[DownloadProgressTestRunner waitToLoseProgress]):
3775         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
3776         (-[DownloadProgressTestRunner publishProgress]):
3777         (-[DownloadProgressTestRunner receiveData:]):
3778         (-[DownloadProgressTestRunner finishDownloadTask]):
3779         (-[DownloadProgressTestRunner failDownloadTask]):
3780         (-[DownloadProgressTestRunner waitForDownloadDidCreateDestination]):
3781         (-[DownloadProgressTestRunner waitForDownloadFinished]):
3782         (-[DownloadProgressTestRunner waitForDownloadCanceled]):
3783         (-[DownloadProgressTestRunner waitForDownloadFailed]):
3784         (-[DownloadProgressTestRunner waitForUpdatedCompletedUnitCount]):
3785         (-[DownloadProgressTestRunner observeValueForKeyPath:ofObject:change:context:]):
3786         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationResponse:decisionHandler:]):
3787         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationAction:decisionHandler:]):
3788         (-[DownloadProgressTestRunner _downloadDidStart:]):
3789         (-[DownloadProgressTestRunner _download:didCreateDestination:]):
3790         (-[DownloadProgressTestRunner _downloadDidFinish:]):
3791         (-[DownloadProgressTestRunner _downloadDidCancel:]):
3792         (-[DownloadProgressTestRunner _download:didFailWithError:]):
3793         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3794         (TEST):
3795
3796 2018-11-29  Alexey Proskuryakov  <ap@apple.com>
3797
3798         Exception in bot watcher's dashboard if a hidden platform in no longer configured for display
3799         https://bugs.webkit.org/show_bug.cgi?id=185527
3800
3801         Reviewed by Aakash Jain.
3802
3803         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
3804         (updateHiddenPlatforms):
3805
3806 2018-11-29  Zalan Bujtas  <zalan@apple.com>
3807
3808         [LFC][BFC][Quirk] Body and html height stretching.
3809         https://bugs.webkit.org/show_bug.cgi?id=192154
3810
3811         Reviewed by Antti Koivisto.
3812
3813         * LayoutReloaded/misc/LFC-passing-tests.txt:
3814
3815 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3816
3817         webkitpy: Unify device creation
3818         https://bugs.webkit.org/show_bug.cgi?id=192158
3819         <rdar://problem/46344757>
3820
3821         Reviewed by Lucas Forschler.
3822
3823         * Scripts/webkitpy/port/device_port.py:
3824         (DevicePort):
3825         (DevicePort.setup_test_run): Use DEVICE_MANAGER to create devices based on the specified device class.
3826         * Scripts/webkitpy/port/ios.py:
3827         (IOSPort): Add DEFAULT_DEVICE_CLASS.
3828         * Scripts/webkitpy/port/ios_device.py:
3829         (IOSDevicePort):
3830         (IOSDevicePort._create_devices): Deleted.
3831         * Scripts/webkitpy/port/ios_simulator.py:
3832         (IOSSimulatorPort._create_devices): Deleted.
3833         * Scripts/webkitpy/port/watch.py:
3834         (WatchPort): Add DEFAULT_DEVICE_CLASS.
3835         * Scripts/webkitpy/port/watch_device.py:
3836         (WatchDevicePort):
3837         (WatchDevicePort._create_devices): Deleted.
3838         * Scripts/webkitpy/port/watch_simulator.py:
3839         (WatchSimulatorPort._create_devices): Deleted.
3840         * Scripts/webkitpy/xcode/device_type_unittest.py:
3841         (DeviceTypeTest.test_from_string): Test that DeviceTypes without hardware types can be constructed
3842         from strings.
3843
3844 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3845
3846         EWS iOS-sim bots sometimes fails to shutdown simulator
3847         https://bugs.webkit.org/show_bug.cgi?id=191864
3848
3849         Reviewed by Aakash Jain.
3850
3851         * Scripts/webkitpy/xcode/simulated_device.py:
3852         (SimulatedDevice._shut_down): Increase time to wait for simulated device to
3853         shut down, ignore exit code indicating a device is already shut down.
3854
3855 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3856
3857         webkitpy: Unify ios_version/watchos_version code
3858         https://bugs.webkit.org/show_bug.cgi?id=192153
3859         <rdar://problem/46343642>
3860
3861         Reviewed by Lucas Forschler.
3862
3863         Treating watchOS and iOS versions differently makes it harder to share code between the similar ports.
3864
3865         * Scripts/webkitpy/port/device_port.py:
3866         (DevicePort):
3867         (DevicePort.device_version): Added.
3868         * Scripts/webkitpy/port/ios.py:
3869         (IOSPort.default_baseline_search_path): Use device_version() instead of ios_version().
3870         (IOSPort.ios_version): Deleted.
3871         * Scripts/webkitpy/port/ios_device.py:
3872         (IOSDevicePort.device_version): Renamed from ios_version().
3873         (IOSDevicePort.ios_version): Deleted.
3874         * Scripts/webkitpy/port/ios_simulator.py:
3875         (IOSSimulatorPort.device_version): Renamed from ios_version().
3876         (IOSSimulatorPort.default_child_processes.booted_ios_devices_filter): Use device_version() instead of ios_version().
3877         (IOSSimulatorPort._create_devices): Ditto.
3878         (IOSSimulatorPort.check_sys_deps): Ditto.
3879         (IOSSimulatorPort.ios_version): Deleted.
3880         * Scripts/webkitpy/port/watch.py:
3881         (WatchPort.default_baseline_search_path): Use device_version() instead of watchos_version().
3882         (WatchPort.watchos_version): Deleted.
3883         * Scripts/webkitpy/port/watch_device.py:
3884         (WatchDevicePort.device_version): Renamed from watchos_version().
3885         (WatchDevicePort.watchos_version): Deleted.
3886         * Scripts/webkitpy/port/watch_simulator.py:
3887         (WatchSimulatorPort.device_version): Renamed from watchos_version().
3888         (WatchSimulatorPort.default_child_processes.filter_booted_watchos_devices): Use device_version() instead of watchos_version().
3889         (WatchSimulatorPort._create_devices): Ditto.
3890         (WatchSimulatorPort.check_sys_deps): Ditto.
3891         (WatchSimulatorPort.watchos_version): Deleted.
3892
3893 2018-11-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3894
3895         [iOSMac] Dropping text selections from web content into editable elements crashes the web process
3896         https://bugs.webkit.org/show_bug.cgi?id=192113
3897         <rdar://problem/46323701>
3898
3899         Reviewed by Ryosuke Niwa.
3900
3901         Add a test to verify that, when dropping an item with both "com.apple.webarchive" and "public.utf8-plain-text"
3902         representations, the higher fidelity web archive data is used when handling the drop.
3903
3904         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
3905
3906 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3907
3908         [ews-app] Fetch bugs from Bugzilla and submit to Buildbot
3909         https://bugs.webkit.org/show_bug.cgi?id=191947
3910
3911         Reviewed by Lucas Forschler.
3912
3913         * BuildSlaveSupport/ews-app/ews/fetcher.py: Added.
3914
3915 2018-11-28  Alex Christensen  <achristensen@webkit.org>
3916
3917         Fix iOS API test after r238585
3918         https://bugs.webkit.org/show_bug.cgi?id=192022
3919
3920         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3921         (TEST):
3922         On iOS, a safe browsing warning over a WKWebView with frame of {0, 0, 0, 0} has a size of {0, 0}, which is fine.
3923         The test was added to catch a bug on Mac platforms, so testing it only on Mac will catch any regression.
3924
3925 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3926
3927         [ews-app] Configure python logging
3928         https://bugs.webkit.org/show_bug.cgi?id=192005
3929
3930         Reviewed by Lucas Forschler.
3931
3932         * BuildSlaveSupport/ews-app/ews/__init__.py: Configured logging.
3933
3934 2018-11-28  Keith Rollin  <krollin@apple.com>
3935
3936         Update generate-{derived,unified}-sources scripts to support generating .xcfilelist files
3937         https://bugs.webkit.org/show_bug.cgi?id=192031
3938         <rdar://problem/46286816>
3939
3940         Reviewed by Alex Christensen.
3941
3942         The Generate Derived Sources and Generate Unified Sources build phases
3943         in Xcode need to have their inputs and outputs specified. This
3944         specification will come in the form of .xcfilelist files that will be
3945         attached to these build phases. There is one .xcfilelist file that
3946         lists the input file and one that lists the output files. As part of
3947         this work, the various generate-{derived,unified}-sources scripts that
3948         are executed in these Generate build phases are modified to help in
3949         the creation of these .xcfilelist files. In particular, they can now
3950         be invoked with command-line parameters. These parameters are then
3951         used to alter the normal execution of these scripts, causing them to
3952         produce the .xcfilelist files as opposed to actually generating the
3953         files that are listed in those files.
3954
3955         * DumpRenderTree/Scripts/generate-derived-sources.sh:
3956         * WebKitTestRunner/Scripts/generate-derived-sources.sh:
3957
3958 2018-11-28  Keith Rollin  <krollin@apple.com>
3959
3960         Revert print_all_generated_files work in r238008; tighten up target specifications
3961         https://bugs.webkit.org/show_bug.cgi?id=192025
3962         <rdar://problem/46284301>
3963
3964         Reviewed by Alex Christensen.
3965
3966         In r238008, I added a facility for DerivedSources.make makefiles to
3967         print out the list of files that they generate. This output was used
3968         in the generation of .xcfilelist files used to specify the output of
3969         the associated Generate Derived Sources build phases in Xcode. This
3970         approach worked, but it meant that people would need to follow a
3971         specific convention to keep this mechanism working.
3972
3973         Instead of continuing this approach, I'm going to implement a new
3974         facility based on the output of `make` when passed the -d flag (which
3975         prints dependency information). This new mechanism is completely
3976         automatic and doesn't need maintainers to follow a convention. To that
3977         end, remove most of the work performed in r238008 that supports the
3978         print_all_generated_files target.
3979
3980         At the same time, it's important for the sets of targets and their
3981         dependencies to be complete and correct. Therefore, also include
3982         changes to bring those up-to-date. As part of that, you'll see
3983         prevalent use of a particular technique. Here's an example:
3984
3985             BYTECODE_FILES = \
3986                 Bytecodes.h \
3987                 BytecodeIndices.h \
3988                 BytecodeStructs.h \
3989                 InitBytecodes.asm \
3990             #
3991             BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
3992
3993             all : $(BYTECODE_FILES)
3994
3995             $(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb
3996                 ...
3997
3998         These lines indicate a set of generated files (those specified in
3999         BYTECODE_FILES). These files are generated by the BytecodeList.rb
4000         tool. But, as opposed to the normal rule where a single foo.output is
4001         generated by foo.input plus some additional dependencies, this rule
4002         produces multiple output files from a tool whose connection to the
4003         output files is not immediately clear. A special approach is needed
4004         where a single rule produces multiple output files. The normal way to
4005         implement this is to use an .INTERMEDIATE target. However, we used
4006         this approach in the past and ran into a problem with it, addressing
4007         it with an alternate approach in r210507. The above example shows this
4008         approach. The .'s in the list of target files are replaced with %'s,
4009         and the result is used as the left side of the dependency rule.
4010
4011         * DumpRenderTree/DerivedSources.make:
4012         * WebKitTestRunner/DerivedSources.make:
4013
4014 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
4015
4016         [ews-app] Add support to get list of Bugzilla patches needing review
4017         https://bugs.webkit.org/show_bug.cgi?id=191942
4018
4019         Reviewed by Lucas Forschler.
4020
4021         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
4022         (Bugzilla.get_list_of_patches_needing_reviews): Get list of patches needing review.
4023         (BugzillaBeautifulSoup.fetch_attachment_ids_from_review_queue): Copied from Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py
4024         (BugzillaBeautifulSoup._load_query): Ditto.
4025         (BugzillaBeautifulSoup._parse_attachment_ids_request_query): Ditto.
4026
4027 2018-11-28  Daniel Bates  <dabates@apple.com>
4028
4029         [iOS] Page not defocused when Find-in-page becomes first responder
4030         https://bugs.webkit.org/show_bug.cgi?id=192084
4031         <rdar://problem/46146777>
4032
4033         Reviewed by Tim Horton.
4034
4035         Add tests for both Mac and iOS to ensure that when finding a string on the page
4036         that we do not start an input session if a match is found in an <input> and the
4037         WKWebView is not the first responder.
4038
4039         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4040         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm: Added.
4041         (-[WKWebViewFindStringInputDelegate _webView:didStartInputSession:]):
4042         (-[WKWebViewFindStringFindDelegate findString]):
4043         (-[WKWebViewFindStringFindDelegate _webView:didCountMatches:forString:]):
4044         (-[WKWebViewFindStringFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
4045         (-[WKWebViewFindStringFindDelegate _webView:didFailToFindString:]):
4046         (returnNo):
4047         (returnYes):
4048         (viewIsFirstResponder):
4049         (TestWebKitAPI::TEST):
4050         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
4051         (WTR::PlatformWebView::PlatformWebView): Make the view the first responder before the
4052         window key. This matches the ordering used in PlatformWebView::focus(). No behavior change.
4053
4054 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
4055
4056         [ews-app] Add BeautifulSoup
4057         https://bugs.webkit.org/show_bug.cgi?id=191994
4058
4059         Reviewed by Lucas Forschler.
4060
4061         * BuildSlaveSupport/ews-app/ews/thirdparty: Added.
4062         * BuildSlaveSupport/ews-app/ews/thirdparty/BeautifulSoup.py: Added.
4063         * BuildSlaveSupport/ews-app/ews/thirdparty/__init__.py: Added.
4064
4065 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
4066
4067         [ews-app] Add support to download Patch from Bugzilla
4068         https://bugs.webkit.org/show_bug.cgi?id=191943
4069
4070         Reviewed by Lucas Forschler.
4071
4072         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py: Added.
4073         (Bugzilla.retrieve_attachment): Retreives the attachment from Bugzilla and saves to disk.
4074         (Bugzilla._fetch_attachment_json):
4075         (Bugzilla.file_path_for_patch):
4076         * BuildSlaveSupport/ews-app/ews/common/util.py: Added.
4077         (fetch_data_from_url): Method to fetch data from given url.
4078         * BuildSlaveSupport/ews-app/ews/config.py:
4079
4080 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
4081
4082         [ews-app] Add methods to update Patch fields
4083         https://bugs.webkit.org/show_bug.cgi?id=191931
4084
4085         Reviewed by Lucas Forschler.
4086
4087         * BuildSlaveSupport/ews-app/ews/models/patch.py:
4088         (Patch.set_sent_to_buildbot):
4089         (Patch.set_bug_id):
4090         (Patch.set_obsolete):
4091
4092 2018-11-28  Yongjun Zhang  <yongjun_zhang@apple.com>
4093
4094         Allow WebKit clients to specify a minimum effective width for layout.
4095         https://bugs.webkit.org/show_bug.cgi?id=191499
4096         <rdar://problem/45362678>
4097
4098         Reviewed by Wenson Hsieh.
4099
4100         Allow UIScriptController to set WKWebView's minimum effective width with a new `setMinimumEffectiveWidth` method.
4101
4102         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4103         (WTR::UIScriptController::setMinimumEffectiveWidth):
4104         * DumpRenderTree/mac/UIScriptControllerMac.mm:
4105         (WTR::UIScriptController::setViewScale):
4106         (WTR::UIScriptController::setMinimumEffectiveWidth):
4107         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4108         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4109         (WTR::UIScriptController::setMinimumEffectiveWidth):
4110         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4111         * WebKitTestRunner/UIScriptControllerCocoa.mm:
4112         (WTR::UIScriptController::setMinimumEffectiveWidth):
4113         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
4114         (WTR::TestController::cocoaResetStateToConsistentValues):
4115
4116 2018-11-28  Lucas Forschler  <lforschler@apple.com>
4117
4118         Fix webkitbot hi command.
4119         https://bugs.webkit.org/show_bug.cgi?id=192080
4120
4121         Reviewed by Alexey Proskuryakov.
4122
4123         * Scripts/webkitpy/tool/bot/irc_command.py:
4124         (Hi.execute):
4125
4126 2018-11-28  Zalan Bujtas  <zalan@apple.com>
4127
4128         [LFC][Quirk] Use non-collapsed vertical margin values when the container is stretched to the size of the ICB.
4129         https://bugs.webkit.org/show_bug.cgi?id=192078
4130
4131         Reviewed by Antti Koivisto.
4132
4133         * LayoutReloaded/misc/LFC-passing-tests.txt:
4134
4135 2018-11-28  Zalan Bujtas  <zalan@apple.com>
4136
4137         [LFC] Add support for quirk container's collapsing top margin in quirks mode.
4138         https://bugs.webkit.org/show_bug.cgi?id=192070
4139
4140         Reviewed by Antti Koivisto.
4141
4142         * LayoutReloaded/misc/LFC-passing-tests.txt:
4143
4144 2018-11-28  Thibault Saunier  <tsaunier@igalia.com>
4145
4146         [WebRTC][GStreamer] Make sure to have the default microphone on the top of the list
4147         https://bugs.webkit.org/show_bug.cgi?id=192026
4148
4149         Reviewed by Philippe Normand.
4150
4151         Otherwise we might end up picking a useless one in some applications
4152         (not sure what those application do though).
4153
4154         GStreamer patch proposed as https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/34/diffs
4155
4156         * flatpak/org.webkit.CommonModules.yaml:
4157         * gstreamer/jhbuild.modules:
4158         * gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Added.
4159
4160 2018-11-28  Tomas Popela  <tpopela@redhat.com>
4161
4162         [GTK] Silence compilation warnings in glib unittests
4163         https://bugs.webkit.org/show_bug.cgi?id=192009
4164
4165         Reviewed by Michael Catanzaro.
4166
4167         Mark the destructor as virtual.
4168
4169         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
4170         (Test::~Test):
4171
4172 2018-11-27  Mark Lam  <mark.lam@apple.com>
4173
4174         ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
4175         https://bugs.webkit.org/show_bug.cgi?id=192055
4176         <rdar://problem/46288783>
4177
4178         Reviewed by Saam Barati.
4179
4180         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
4181
4182 2018-11-27  Alex Christensen  <achristensen@webkit.org>
4183
4184         Make synchronous IPC introduced in r237267 asynchronous
4185         https://bugs.webkit.org/show_bug.cgi?id=190757
4186
4187         Reviewed by Chris Dumez.
4188
4189         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4190
4191 2018-11-27  Jonathan Bedard  <jbedard@apple.com>
4192
4193         webkitpy: Add watchOS ports
4194         https://bugs.webkit.org/show_bug.cgi?id=191974
4195         <rdar://problem/46251051>
4196
4197         Reviewed by Aakash Jain.
4198
4199         * Scripts/webkitpy/port/factory.py:
4200         (PortFactory): Add WatchDevice and WatchSimulator ports.
4201         * Scripts/webkitpy/port/watch.py: Added.
4202         (WatchPort): Base class for watchOS ports.
4203         * Scripts/webkitpy/port/watch_device.py: Added.
4204         (WatchDevicePort): Class for running layout tests on a watchOS device.
4205         * Scripts/webkitpy/port/watch_simulator.py: Added.
4206         (WatchSimulatorPort): Class for running layout tests on a watchOS simulator.
4207         * Scripts/webkitpy/port/watch_simulator_unittest.py: Added.
4208         (WatchSimulatorTest):
4209         * Scripts/webkitpy/port/watch_testcase.py: Added.
4210         (WatchTest):
4211
4212 2018-11-27  Alex Christensen  <achristensen@webkit.org>
4213
4214         Safe browsing warning text needs to be visible on High Sierra
4215         https://bugs.webkit.org/show_bug.cgi?id=192022
4216
4217         Reviewed by Tim Horton.
4218
4219         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
4220         (TEST):
4221
4222 2018-11-27  Wenson Hsieh  <wenson_hsieh@apple.com>
4223
4224         Unreviewed, fix the watchOS engineering build
4225
4226         Disable a newly added API test, since DDScannerResult is unavailable on watchOS.
4227
4228         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
4229
4230 2018-11-27  Chris Dumez  <cdumez@apple.com>
4231
4232         Regression(PSON) crash under WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame()
4233         https://bugs.webkit.org/show_bug.cgi?id=191983
4234         <rdar://problem/46246863>
4235
4236         Reviewed by Geoffrey Garen.
4237
4238         Add API test coverage.
4239
4240         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4241
4242 2018-11-27  Aakash Jain  <aakash_jain@apple.com>
4243
4244         [ews-app] Add support to communicate with Buildbot (Follow-up fix)
4245         https://bugs.webkit.org/show_bug.cgi?id=191935
4246         <rdar://problem/46262314>
4247
4248         Unreviewed infrastructure fix.
4249
4250         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
4251         (Buildbot.send_patch_to_buildbot):
4252
4253 2018-11-26  Wenson Hsieh  <wenson_hsieh@apple.com>
4254
4255         [Cocoa] No way for clients to tell whether the content view is in the responder chain when the web view is
4256         https://bugs.webkit.org/show_bug.cgi?id=169212
4257         <rdar://problem/30899656>
4258
4259         Reviewed by Tim Horton.
4260
4261         Add an API test to exercise the behavior of `-_contentViewIsFirstResponder` when an embedded text input becomes
4262         and resigns first responder.
4263
4264         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4265         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm: Added.
4266         (-[FirstResponderTestingView initWithFrame:]):
4267         (-[FirstResponderTestingView inputField]):
4268         (TestWebKitAPI::TEST):
4269
4270 2018-11-26  Fujii Hironori  <Hironori.Fujii@sony.com>
4271
4272         [CMake] Remove ENABLE_ACCESSIBILITY CMake variable
4273         https://bugs.webkit.org/show_bug.cgi?id=191831
4274
4275         Reviewed by Michael Catanzaro.
4276
4277         * WebKitTestRunner/CMakeLists.txt:
4278
4279 2018-11-26  Tim Horton  <timothy_horton@apple.com>
4280
4281         Insert <attachment> elements under editable images to make their backing data accessible
4282         https://bugs.webkit.org/show_bug.cgi?id=191844
4283         <rdar://problem/30900149>
4284
4285         Reviewed by Simon Fraser.
4286
4287         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4288         (WTR::UIScriptController::attachmentInfo):
4289         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4290         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4291         (WTR::UIScriptController::attachmentInfo):
4292         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4293         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4294         (WTR::UIScriptController::attachmentInfo):
4295         Add a UIScriptController mechanism to retrieve information about
4296         a given attachment.
4297
4298 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
4299
4300         [ews-app] Add support to communicate with Buildbot
4301         https://bugs.webkit.org/show_bug.cgi?id=191935
4302