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