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