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