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