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