0a6101dee1a10c047036ad4ee05caa710802d256
[WebKit-https.git] / Tools / ChangeLog
1 2020-06-29  Philippe Normand  <pnormand@igalia.com>
2
3         REGRESSION(r263625): run-minibrowser --debug/--release options gone
4         https://bugs.webkit.org/show_bug.cgi?id=213697
5
6         Reviewed by Žan Doberšek.
7
8         * Scripts/webkitpy/minibrowser/run_webkit_app.py:
9         (main): Explicitely skip the --target option. Previous code was also skipping --release and
10         --debug options because their `dest` is the same as with the --target option.
11
12 2020-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
13
14         [GTK][WPE] Add webkit_authentication_request_get_security_origin
15         https://bugs.webkit.org/show_bug.cgi?id=213596
16
17         Reviewed by Michael Catanzaro.
18
19         Update the unit tests to check the new API.
20
21         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
22         (testWebViewAuthenticationRequest):
23         (testWebViewAuthenticationProxy):
24         (testWebViewAuthenticationProxyHTTPS):
25
26 2020-06-28  Geoffrey Garen  <ggaren@apple.com>
27
28         Rename initializeThreading to initialize
29         https://bugs.webkit.org/show_bug.cgi?id=213674
30
31         Reviewed by Mark Lam.
32
33         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
34         (ApplicationManifestParserTest::SetUp):
35         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
36         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
37         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
38         (TestWebKitAPI::ContentExtensionTest::SetUp):
39         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
40         (TestWebKitAPI::TEST):
41         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
42         (TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
43         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
44         (WebKitTestServer::WebKitTestServer):
45         * WebKitTestRunner/TestController.cpp:
46         (WTR::TestController::initialize):
47
48 2020-06-27  Daniel Bates  <dabates@apple.com>
49
50         Revert r262654 because it caused <rdar://problem/64664156>.
51         Moreover it is no longer necessary as the embedding client
52         changes selection through a different SPI after focusing.
53
54         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
55         (TestWebKitAPI::TEST):
56
57 2020-06-27  Keith Miller  <keith_miller@apple.com>
58
59         compare-results should be able to parse multiple JSONs at once by merging them
60         https://bugs.webkit.org/show_bug.cgi?id=213685
61
62         Reviewed by Saam Barati.
63
64         This patch improves the compare-results script to enable it to
65         merge JSON output files. This is handy when running scripts by
66         hand where you'll get many a and b JSONs.  To do the merging this
67         patch moves the logic of merge-result-jsons into a shared library.
68
69         compare-results can take multiple files sequentally or by passing
70         the '-a'/'-b' flags multiple times. e.g. `/compare-results -a
71         OG-1.json -a OG-2.json -a OG-3.json -a OG-4.json -b MC-1.json
72         MC-2.json MC-3.json MC-4.json` will behave as you'd expect;
73         combining all the OG JSONs and the MC JSONs before computing the
74         result.
75
76         Lastly, the benchmark_results script now can handle duplicates of
77         an aggregator in the aggregator list. This is useful because
78         otherwise the logic of merging JSONs is significantly more
79         complicated.
80
81         * Scripts/compare-results:
82         (getOptions):
83         (main):
84         * Scripts/merge-result-jsons:
85         (readJSONFile):
86         (deepAppend): Deleted.
87         (mergeJSONs): Deleted.
88         * Scripts/webkitpy/benchmark_runner/benchmark_json_merge.py: Copied from Tools/Scripts/merge-result-jsons.
89         (deepAppend):
90         (mergeJSONs):
91         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
92         (BenchmarkResults._aggregate_results_for_test):
93         (BenchmarkResults._lint_subtest_results):
94         * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py:
95
96 2020-06-27  Jer Noble  <jer.noble@apple.com>
97
98         iOS Safari incorrectly reports "AppleCoreMedia" as UA string
99         https://bugs.webkit.org/show_bug.cgi?id=213245
100         <rdar://problem/64471582>
101
102         Reviewed by Youenn Fablet.
103
104         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
105         * TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm: Added.
106         (TestWebKitAPI::parseUserAgent):
107         (TestWebKitAPI::TEST):
108
109 2020-06-27  Philippe Normand  <pnormand@igalia.com>
110
111         Migrate run-minibrowser to webkitpy
112         https://bugs.webkit.org/show_bug.cgi?id=213431
113
114         Reviewed by Jonathan Bedard.
115
116         The perl version was renamed to old-run-minibrowser and remains used by the Mac ports.
117         run-minibrowser is now a Python script hooking into webkitpy and the Port infrastructure.
118         Both WPE and GTK ports will now use the pure python implementation.
119
120         * Scripts/old-run-minibrowser: Copied from Tools/Scripts/run-minibrowser.
121         * Scripts/run-minibrowser:
122         * Scripts/webkitpy/minibrowser/run_minibrowser.py: Added.
123         (main):
124         (parse_args):
125         * Scripts/webkitpy/port/base.py:
126         (Port.run_minibrowser_arguments):
127         (Port):
128         (Port.run_minibrowser):
129         * Scripts/webkitpy/port/darwin.py:
130         (DarwinPort.environment_for_api_tests):
131         (DarwinPort):
132         (DarwinPort.run_minibrowser_arguments):
133         * Scripts/webkitpy/port/gtk.py:
134         (GtkPort.show_results_html_file):
135         (GtkPort.configuration_for_upload):
136         (GtkPort):
137         (GtkPort.run_minibrowser):
138         * Scripts/webkitpy/port/wpe.py:
139         (WPEPort.show_results_html_file):
140         (WPEPort.configuration_for_upload):
141         (WPEPort):
142         (WPEPort.run_minibrowser):
143
144 2020-06-27  Stephan Szabo  <stephan.szabo@sony.com>
145
146         [PlayStation] Update test runner for changes to Options and signing
147         https://bugs.webkit.org/show_bug.cgi?id=213650
148
149         Reviewed by Don Olmstead.
150
151         * Scripts/webkitdirs.pm: Update extension for PlayStation binary
152
153 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
154
155         [webkitpy] Allow callers to override the reported model (Part 1)
156         https://bugs.webkit.org/show_bug.cgi?id=213677
157         <rdar://problem/64834043>
158
159         Reviewed by Dewei Zhu.
160
161         * Scripts/webkitpy/port/base.py:
162         (Port.configuration_for_upload): Set the model based on --model.
163         * Scripts/webkitpy/port/factory.py:
164         (configuration_options): Add --model option, drive-by fix for --architecture.
165         * Scripts/webkitpy/port/mac.py:
166         (MacPort.configuration_for_upload): --model overrides detected model.
167
168 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
169
170         [webkitpy] Automatically detect hw architecture for supporting Apple Silicon
171         https://bugs.webkit.org/show_bug.cgi?id=213653
172         <rdar://problem/64817656>
173
174         Rubber-stamped by Aakash Jain.
175
176         * Scripts/webkitpy/common/config/ews.json: iOS has the correct defaults, no need to override them.
177         * Scripts/webkitpy/common/system/platforminfo.py:
178         (PlatformInfo):
179         (PlatformInfo.architecture): Retrieve the current system's architecture.
180         * Scripts/webkitpy/common/system/platforminfo_mock.py:
181         (MockPlatformInfo.__init__):
182         (MockPlatformInfo.architecture):
183         * Scripts/webkitpy/port/base.py:
184         (Port.__init__): Remove 'did_override_architecture', should be implied by architecture compared with DEFAULT_ARCHITECTURE.
185         (Port.architecture): Return the architecture specified by the user, if it exists.
186         (Port.set_architecture): Remove 'did_override_architecture'.
187         * Scripts/webkitpy/port/factory.py:
188         (configuration_options): Add --arm and --architecture flags.
189         * Scripts/webkitpy/port/mac.py:
190         (MacPort): Add arm64 to supported architectures.
191         (MacPort.architecture): Convert arm64e to arm64, check the host's architecture.
192         (MacPort._build_driver_flags): Always specify the build architecture since it may be x86_64 or arm64.
193         * Scripts/webkitpy/port/mac_unittest.py:
194         (MacTest.test_64bit):
195         (MacTest):
196         (MacTest.test_arm):
197         (MacTest.test_default):
198         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
199         (AbstractEarlyWarningSystem.run_command): Remove did_override_architecture.
200
201 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
202
203         [Big Sur] Handle baseline search path (Follow-up fix)
204         https://bugs.webkit.org/show_bug.cgi?id=213639
205         <rdar://problem/64789480>
206
207         Unreviewed follow-up fix.
208
209         * Scripts/webkitpy/port/mac.py:
210         (MacPort.default_baseline_search_path): Copy reference version by value, not by reference.
211
212 2020-06-26  Geoffrey Garen  <ggaren@apple.com>
213
214         Initializing the main thread should initialize the main run loop
215         https://bugs.webkit.org/show_bug.cgi?id=213637
216
217         Reviewed by Anders Carlsson.
218
219         Updated TestWebKitAPI to stop using RunLoop::initializeMain directly.
220
221         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
222         (TestWebKitAPI::TEST):
223         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
224         (TestWebKitAPI::TEST):
225         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
226         (TestWebKitAPI::TEST):
227         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
228         (ApplicationManifestParserTest::SetUp):
229         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
230         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
231         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
232         (TestWebKitAPI::ContentExtensionTest::SetUp):
233         * TestWebKitAPI/Tests/WebCore/DNS.cpp:
234         (TestWebKitAPI::TEST):
235         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
236         (TestWebKitAPI::TEST_F):
237         * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
238         (initializeInAppBrowserPrivacyTestSettings):
239         * TestWebKitAPI/TestsController.cpp:
240         (TestWebKitAPI::TestsController::TestsController):
241         * WebKitTestRunner/TestController.cpp:
242         (TestController::initialize):
243
244 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
245
246         run-javascriptcore-tests: Support Apple Silicon running x86 processes
247         https://bugs.webkit.org/show_bug.cgi?id=213487
248         <rdar://problem/64606667>
249
250         Reviewed by Saam Barati.
251
252         * Scripts/run-javascriptcore-tests:
253         (configurationForUpload): Add --architecture flag.
254         (runTest): Run test suite with specific architecture.
255         (runJSCStressTests): Pass architecture to run-jsc-stress-tests.
256         * Scripts/run-jsc-stress-tests: Add --force-architecture flag.
257         * Scripts/webkitdirs.pm:
258         (determineNativeArchitecture): Add function to determine machine's native architecture.
259         (determineArchitecture): Leverage the nativeArchitecture instead of hard-coding simulator
260         architectures.
261         (architecturesForProducts): Determine the architectures supported by a given build.
262         (nativeArchitecture): Return nativeArchitecture.
263
264 2020-06-26  Sihui Liu  <sihui_liu@apple.com>
265
266         Text manipulation should observe adjacent elements with new renderer together
267         https://bugs.webkit.org/show_bug.cgi?id=213333
268
269         Reviewed by Geoffrey Garen.
270
271         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
272         (TestWebKitAPI::TEST):
273
274 2020-06-26  Jonathan Bedard  <jbedard@apple.com>
275
276         [Big Sur] Handle baseline search path
277         https://bugs.webkit.org/show_bug.cgi?id=213639
278         <rdar://problem/64789480>
279
280         Rubber-stamped by Aakash Jain.
281
282         * Scripts/webkitpy/port/mac.py:
283         (MacPort):
284         (MacPort.default_baseline_search_path): Break infinite loop for major version bump.
285         * Scripts/webkitpy/port/mac_unittest.py:
286         (MacTest.test_big_sur_baseline_search_path): Test Big Sur baseline search path.
287
288 2020-06-26  Carlos Alberto Lopez Perez  <clopez@igalia.com>
289
290         generate-jsc-bundle should fail if passed an invalid remote-config-file parameter
291         https://bugs.webkit.org/show_bug.cgi?id=213615
292
293         Reviewed by Žan Doberšek.
294
295         Raise an exception if the parameter passed as remote-config-file is not a file.
296
297         * Scripts/generate-jsc-bundle:
298         (main):
299
300 2020-06-26  Takashi Komori  <takashi.komori@sony.com>
301
302         Add myself to contributors.json
303
304         Unreviewed.
305
306         * Scripts/webkitpy/common/config/contributors.json:
307
308 2020-06-25  Ryan Haddad  <ryanhaddad@apple.com>
309
310         [Big Sur] Regression tests fail to run due to failed assert: self._os_version.major == 10
311         https://bugs.webkit.org/show_bug.cgi?id=213639
312
313         Reviewed by Jonathan Bedard.
314
315         * Scripts/webkitpy/port/mac.py:
316         (MacPort.__init__): Remove the assert since it is no longer valid.
317
318 2020-06-25  Commit Queue  <commit-queue@webkit.org>
319
320         Unreviewed, reverting r263537.
321         https://bugs.webkit.org/show_bug.cgi?id=213640
322
323         Broke watchOS and tvOS builds
324
325         Reverted changeset:
326
327         "iOS Safari incorrectly reports "AppleCoreMedia" as UA string"
328         https://bugs.webkit.org/show_bug.cgi?id=213245
329         https://trac.webkit.org/changeset/263537
330
331 2020-06-25  Alex Christensen  <achristensen@webkit.org>
332
333         REGRESSION(r256166, r260596) WKNavigationAction.request.allHTTPHeaderFields needs to contain User-Agent and Accept
334         https://bugs.webkit.org/show_bug.cgi?id=213626
335         <rdar://problem/62374208>
336
337         Reviewed by Darin Adler.
338
339         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
340         (TEST):
341
342 2020-06-25  Jer Noble  <jer.noble@apple.com>
343
344         iOS Safari incorrectly reports "AppleCoreMedia" as UA string
345         https://bugs.webkit.org/show_bug.cgi?id=213245
346         <rdar://problem/64471582>
347
348         Reviewed by Youenn Fablet.
349
350         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
351         * TestWebKitAPI/Tests/WebKitCocoa/MediaLoading.mm: Added.
352         (TestWebKitAPI::parseUserAgent):
353         (TestWebKitAPI::TEST):
354
355 2020-06-25  Daniel Bates  <dabates@apple.com>
356
357         [iOS] -_requestTextInputContextsInRect cannot find empty Quip spreadsheet title
358         https://bugs.webkit.org/show_bug.cgi?id=213564
359         <rdar://problem/59355847>
360
361         Reviewed by Simon Fraser.
362
363         Add some tests.
364
365         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
366         (TestWebKitAPI::TEST):
367
368 2020-06-25  Sam Weinig  <weinig@apple.com>
369
370         Add a new templated string type to help write more idiomatic parsing code
371         https://bugs.webkit.org/show_bug.cgi?id=213588
372
373         Reviewed by Darin Adler.
374
375         * TestWebKitAPI/CMakeLists.txt:
376         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
377         * TestWebKitAPI/Tests/WTF/StringParsingBuffer.cpp: Added.
378         (TestWebKitAPI::TEST):
379         Added new tests for new class.
380
381 2020-06-25  Wenson Hsieh  <wenson_hsieh@apple.com>
382
383         Text manipulation should exclude text rendered using icon-only fonts
384         https://bugs.webkit.org/show_bug.cgi?id=213446
385         <rdar://problem/63734298>
386
387         Reviewed by Myles Maxfield.
388
389         Add a new API test.
390
391         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
392         * TestWebKitAPI/Tests/WebKitCocoa/Ahem.ttf: Added.
393         * TestWebKitAPI/Tests/WebKitCocoa/SpaceOnly.otf: Added.
394         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
395         (TestWebKitAPI::TEST):
396
397 2020-06-25  Aakash Jain  <aakash_jain@apple.com>
398
399         [ews] Share more bots between EWS builder and testers
400         https://bugs.webkit.org/show_bug.cgi?id=213521
401
402         Reviewed by Jonathan Bedard.
403
404         * BuildSlaveSupport/ews-build/config.json:
405
406 2020-06-25  Aakash Jain  <aakash_jain@apple.com>
407
408         [ews] Improve handling of invalid changelog
409         https://bugs.webkit.org/show_bug.cgi?id=213609
410
411         Reviewed by Jonathan Bedard.
412
413         * Scripts/webkitpy/tool/steps/validatereviewer.py:
414         (ValidateReviewer.run):
415
416 2020-06-24  Alexey Proskuryakov  <ap@apple.com>
417
418         macOS Big Sur build fix.
419
420         Remove long obsolete checks for Mac OS X 10.6 that didn't respect the major version.
421
422         * MiniBrowser/Makefile:
423         * TestWebKitAPI/Makefile:
424         * WebKitTestRunner/Makefile:
425
426 2020-06-24  Alex Christensen  <achristensen@webkit.org>
427
428         REGRESSION(r262341) Use UTF-8 to decode CFURLRefs from IPC
429         https://bugs.webkit.org/show_bug.cgi?id=213565
430         <rdar://problem/64408924>
431
432         Reviewed by Darin Adler.
433
434         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
435         (TestWebKitAPI::TEST):
436
437 2020-06-24  Umar Iqbal  <uiqbal@apple.com>
438
439         We should resurrect the older patch that collects some statistics of web API calls
440         https://bugs.webkit.org/show_bug.cgi?id=213319
441
442         Reviewed by Brent Fulgham.
443         
444         + Enabled ENABLE_WEB_API_STATISTICS flag.
445         
446         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
447
448 2020-06-24  Andy Estes  <aestes@apple.com>
449
450         [iOS] Open element actions sometimes result in a hover instead of a click
451         https://bugs.webkit.org/show_bug.cgi?id=213530
452         <rdar://problem/64176707>
453
454         Reviewed by Darin Adler.
455
456         Added an API test.
457
458         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
459         * TestWebKitAPI/Tests/ios/ElementActionTests.mm: Added.
460         * TestWebKitAPI/Tests/ios/link-with-hover-menu.html: Added.
461
462 2020-06-24  Caitlin Potter  <caitp@igalia.com>
463
464         [JSC] add microbenchmark for op_get_private_name
465         https://bugs.webkit.org/show_bug.cgi?id=213544
466
467         Reviewed by Yusuke Suzuki.
468
469         Add machinery to add --usePrivateClassFields flag in a family of
470         microbenchmarks.
471  
472         * Scripts/run-jsc-benchmarks:
473
474 2020-06-24  Carlos Garcia Campos  <cgarcia@igalia.com>
475
476         [GTK][WPE] Add API to allow applications to handle the HTTP authentication credential storage
477         https://bugs.webkit.org/show_bug.cgi?id=213177
478
479         Reviewed by Michael Catanzaro.
480
481         Update the authentication tests to check the new API.
482
483         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
484         (testWebViewAuthenticationCancel):
485         (testWebViewAuthenticationLoadCancelled):
486         (testWebViewAuthenticationFailure):
487         (testWebViewAuthenticationNoCredential):
488         (testWebViewAuthenticationEphemeral):
489         (testWebViewAuthenticationStorage):
490         (testWebViewAuthenticationSuccess):
491         (testWebViewAuthenticationEmptyRealm):
492         (serverCallback):
493         (beforeAll):
494
495 2020-06-23  Alex Christensen  <achristensen@webkit.org>
496
497         Make HTTP/3 experimental feature work on iOS and only create storage directory if enabled
498         https://bugs.webkit.org/show_bug.cgi?id=213527
499
500         Reviewed by Geoffrey Garen.
501
502         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
503         (TEST):
504
505 2020-06-23  Jonathan Bedard  <jbedard@apple.com>
506
507         [Big Sur] Add 11.0 version to scripts
508         https://bugs.webkit.org/show_bug.cgi?id=213532
509         <rdar://problem/64663032>
510
511         Reviewed by Tim Horton.
512
513         * Scripts/run-javascriptcore-tests:
514         (configurationForUpload): Make version checks more explicit, add Big Sur.
515         * Scripts/webkitpy/common/version_name_map.py:
516         (VersionNameMap.__init__): Add Big Sur.
517         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
518         (TestExpectationParser): Ditto.
519
520 2020-06-23  Wenson Hsieh  <wenson_hsieh@apple.com>
521
522         REGRESSION (r244633): Mail flashes when copying text in an email
523         https://bugs.webkit.org/show_bug.cgi?id=213529
524         <rdar://problem/55025522>
525
526         Reviewed by Tim Horton.
527
528         Add an API test to verify that temporarily changing the height of the document before restoring it to the
529         original value does not cause intrinsic content size to be invalidated.
530
531         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
532         (-[AutoLayoutWKWebView invalidateIntrinsicContentSize]):
533         (-[AutoLayoutWKWebView setInvalidatedIntrinsicContentSizeBlock:]):
534         (-[AutoLayoutWKWebView invalidatedIntrinsicContentSizeBlock]):
535
536 2020-06-23  Diego Pino Garcia  <dpino@igalia.com>
537
538         [ews] Allow archiving 'jsc' product
539         https://bugs.webkit.org/show_bug.cgi?id=213518
540
541         Reviewed by Aakash Jain.
542
543         * BuildSlaveSupport/built-product-archive:
544         (archiveBuiltProduct):
545
546 2020-06-23  Alex Christensen  <achristensen@webkit.org>
547
548         Expose already-available WKNavigationAction.request.HTTPBody through the API
549         https://bugs.webkit.org/show_bug.cgi?id=179077
550
551         Reviewed by Brady Eidson.
552
553         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
554         (TEST):
555
556 2020-06-23  Alicia Boya García  <aboya@igalia.com>
557
558         [GStreamer] Add GStreamer patch to fix EWS glupload racy crash
559         https://bugs.webkit.org/show_bug.cgi?id=210498
560
561         Reviewed by Philippe Normand.
562
563         This WebKit patch backports a patch from GStreamer 1.17 that prevents
564         the crashes in the attached bug to our flatpak build.
565
566         * buildstream/elements/sdk/gst-plugins-base.bst:
567         * buildstream/patches/gst-plugins-base-0003-glbasefilter-add-support-for-changing-the-display.patch: Added.
568
569 2020-06-23  Alicia Boya García  <aboya@igalia.com>
570
571         [flatpak] Ensure en_US.UTF-8 locale
572         https://bugs.webkit.org/show_bug.cgi?id=212459
573
574         Reviewed by Philippe Normand.
575
576         When developing WebKit we want as few system differences as possible
577         to make tests reproducible.
578
579         en_US.UTF-8 is indeed the only locale installed in our development
580         flatpak, but our scripts were not correctly clearing most locale
581         environment variables, which resulted in warnings when running some
582         tools (notably perl) when the user OS has a different locale.
583
584         This patch ensures all locale environment variables are cleared and
585         LANG is set to en_US.UTF-8. It also removes now redundant code from
586         flatpakutils.py.
587
588         * flatpak/flatpakutils.py:
589         (WebkitFlatpak.run_in_sandbox):
590         * flatpak/webkit-bwrap:
591
592 2020-06-23  Simon Fraser  <simon.fraser@apple.com>
593
594         [ Catalina Debug WK2 ] fast/events/platform-wheelevent-in-scrolling-div.html is a flaky failure
595         https://bugs.webkit.org/show_bug.cgi?id=213351
596         <rdar://problem/64502429>
597
598         Reviewed by Tim Horton.
599
600         The variadic CGEventCreateScrollWheelEvent() seems to have an issue that causes the resulting event
601         to rarely put the x value into the deltaY. Change to the non-variadic CGEventCreateScrollWheelEvent2()
602         to avoid this.
603
604         * DumpRenderTree/mac/EventSendingController.mm:
605         (-[EventSendingController mouseScrollByX:andY:continuously:]):
606         (-[EventSendingController mouseScrollByX:andY:withWheel:andMomentumPhases:]):
607         * WebKitTestRunner/mac/EventSenderProxy.mm:
608         (WTR::EventSenderProxy::mouseScrollBy):
609         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
610
611 2020-06-23  Diego Pino Garcia  <dpino@igalia.com>
612
613         [ews] Rename 'JSCTestsFactory' to 'JSCBuildAndTestsFactory'
614         https://bugs.webkit.org/show_bug.cgi?id=213503
615
616         Reviewed by Aakash Jain.
617
618         * BuildSlaveSupport/ews-build/config.json:
619         * BuildSlaveSupport/ews-build/factories.py:
620         (JSCBuildAndTestsFactory):
621         (JSCTestsFactory): Deleted.
622         (JSCTestsFactory.__init__): Deleted.
623         * BuildSlaveSupport/ews-build/loadConfig.py:
624
625 2020-06-23  Aakash Jain  <aakash_jain@apple.com>
626
627         [ews] Add JSC-Only builders for MIPS and ARMv7 architectures (follow-up fix)
628         https://bugs.webkit.org/show_bug.cgi?id=213366
629
630         Unreviewed follow-up fix.
631
632         Remove unused runTests parameter.
633         * BuildSlaveSupport/ews-build/factories.py:
634
635 2020-06-23  Philippe Normand  <pnormand@igalia.com>
636
637         [Flatpak SDK] relax restriction on build-webkit script name
638         https://bugs.webkit.org/show_bug.cgi?id=213432
639
640         Reviewed by Žan Doberšek.
641
642         * flatpak/flatpakutils.py:
643         (WebkitFlatpak.run_in_sandbox): Match the build-webkit string in the whole command-line
644         argument and thus allow alternative implementations of build-webkit. Also let the
645         MAX_CPU_LOAD env var in the sandbox.
646
647 2020-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
648
649         [GTK] MiniBrowser: set a base directory for website data and cache
650         https://bugs.webkit.org/show_bug.cgi?id=213368
651
652         Reviewed by Michael Catanzaro.
653
654         Stop using the default ones.
655
656         * MiniBrowser/gtk/main.c:
657         (activate):
658
659 2020-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
660
661         [GTK][WPE] Add API to configure and handle DOM cache to WebKitWebsiteDataManager
662         https://bugs.webkit.org/show_bug.cgi?id=213337
663
664         Reviewed by Adrian Perez de Castro.
665
666         Handle new website data in MiniBrowser and add a unit test.
667
668         * MiniBrowser/gtk/main.c:
669         (gotWebsiteDataCallback):
670         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
671         (testWebsiteDataConfiguration):
672         (testWebsiteDataDOMCache):
673         (beforeAll):
674         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
675         (Test::Test):
676
677 2020-06-22  Diego Pino Garcia  <dpino@igalia.com>
678
679         [ews] Add JSC-Only builders for MIPS and ARMv7 architectures
680         https://bugs.webkit.org/show_bug.cgi?id=213366
681
682         Reviewed by Aakash Jain.
683
684         In a follow-up patch the built product of these bots will be consumed
685         by the EWS JSC-Only testing bots.
686
687         * BuildSlaveSupport/ews-build/config.json:
688         * BuildSlaveSupport/ews-build/factories.py:
689         (JSCBuildFactory):
690         (JSCBuildFactory.__init__):
691         * BuildSlaveSupport/ews-build/factories_unittest.py:
692         (TestBuildFactory):
693         (TestBuildFactory.test_jsc_mipsel_factory):
694         (TestBuildFactory.test_jsc_armv7_factory):
695         * BuildSlaveSupport/ews-build/loadConfig.py:
696
697 2020-06-22  Fujii Hironori  <Hironori.Fujii@sony.com>
698
699         [Win] fast/dom/Window/alert-with-unmatched-utf16-surrogate-should-not-crash.html is failing
700         https://bugs.webkit.org/show_bug.cgi?id=213452
701
702         Reviewed by Yusuke Suzuki.
703
704         If window.alert() was given an invalid UTF-16 sequence, Windows
705         DumpRenderTree output it without any conversions. It should output
706         "(null)" to match with WebKitTestRunner behavior.
707
708         * DumpRenderTree/win/UIDelegate.cpp:
709         (toMessage): Added
710         (UIDelegate::runJavaScriptAlertPanelWithMessage):
711         (UIDelegate::runJavaScriptConfirmPanelWithMessage):
712         (UIDelegate::runJavaScriptTextInputPanelWithPrompt):
713         (UIDelegate::runBeforeUnloadConfirmPanelWithMessage):
714         (UIDelegate::setStatusText):
715
716 2020-06-22  Jer Noble  <jer.noble@apple.com>
717
718         [ macOS iOS ] (r263321): TestWebKitAPI.SleepDisabler.Load & TestWebKitAPI.SleepDisabler.Reload are constant failures
719         https://bugs.webkit.org/show_bug.cgi?id=213475
720         <rdar://problem/64603555>
721
722         Reviewed by Eric Carlson.
723
724         Looks like the SleepDisabler can come and go while the TestWebKitAPI process is spinning, so make the
725         Reload and Load tests more deterministic by only checking SleepDisabler after getting a "playing" message
726         from the WebContent process.
727
728         * TestWebKitAPI/Tests/WebKit/SleepDisabler.mm:
729         (SleepDisabler::runAndWaitUntilPlaying):
730         (SleepDisabler::loadPlayingPage):
731         (TEST_F):
732
733 2020-06-22  Jonathan Bedard  <jbedard@apple.com>
734
735         resultsdbpy: Make architecture differences explicit
736         https://bugs.webkit.org/show_bug.cgi?id=213473
737         <rdar://problem/64602736>
738
739         Rubber-stamped by Aakash Jain.
740
741         * resultsdbpy/resultsdbpy/view/static/js/configuration.js:
742         (Configuration.prototype.toString):
743
744 2020-06-22  Tim Horton  <timothy_horton@apple.com>
745
746         Update macOS version macros
747         https://bugs.webkit.org/show_bug.cgi?id=213484
748
749         Reviewed by Alexey Proskuryakov.
750
751         * ContentExtensionTester/Configurations/Base.xcconfig:
752         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
753         * DumpRenderTree/mac/Configurations/Base.xcconfig:
754         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
755         * ImageDiff/cg/Configurations/Base.xcconfig:
756         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
757         * MiniBrowser/Configurations/Base.xcconfig:
758         * MiniBrowser/Configurations/DebugRelease.xcconfig:
759         * TestWebKitAPI/Configurations/Base.xcconfig:
760         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
761         * WebEditingTester/Configurations/Base.xcconfig:
762         * WebEditingTester/Configurations/DebugRelease.xcconfig:
763         * WebKitTestRunner/Configurations/Base.xcconfig:
764         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
765         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
766         * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig:
767
768 2020-06-22  Tim Horton  <timothy_horton@apple.com>
769
770         API Test WeakLinking.WeakImport fails on arm64
771         https://bugs.webkit.org/show_bug.cgi?id=213477
772
773         Reviewed by Alexey Proskuryakov.
774
775         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS-v2.tbd:
776         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-iOS.tbd:
777         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS-v2.tbd:
778         * TestWebKitAPI/Tests/WTF/darwin/libTestWTFAlwaysMissing-macOS.tbd:
779         Add this architecture to the TBD files.
780
781 2020-06-22  Jonathan Bedard  <jbedard@apple.com>
782
783         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix x3)
784         https://bugs.webkit.org/show_bug.cgi?id=213402
785         <rdar://problem/64542588>
786
787         Reviewed by Alexey Proskuryakov.
788
789         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
790         (WebKitBuildbot): 64 bit is more correct for watchOS embedded builds.
791
792 2020-06-22  Aakash Jain  <aakash_jain@apple.com>
793
794         [ews] Switch contributors.json url from trac to svn server
795         https://bugs.webkit.org/show_bug.cgi?id=213457
796
797         Reviewed by Jonathan Bedard.
798
799         * BuildSlaveSupport/ews-build/steps.py:
800         (ValidateCommiterAndReviewer):
801         (ValidateCommiterAndReviewer.load_contributors_from_trac):
802
803 2020-06-22  Philippe Normand  <pnormand@igalia.com>
804
805         [Flatpak SDK] Persist sccache auth token across flatpak updates
806         https://bugs.webkit.org/show_bug.cgi?id=213427
807
808         Reviewed by Žan Doberšek.
809
810         After a successful flatpak update check if an sccache auth token exists and reuse it when
811         updating the sccache config file.
812
813         * flatpak/flatpakutils.py:
814         (WebkitFlatpak.save_config):
815
816 2020-06-21  Yusuke Suzuki  <ysuzuki@apple.com>
817
818         [WTF] URL should support dataLog
819         https://bugs.webkit.org/show_bug.cgi?id=213450
820
821         Reviewed by Mark Lam.
822
823         Add test for URL::dump.
824
825         * TestWebKitAPI/Tests/WTF/URL.cpp:
826         (TestWebKitAPI::TEST_F):
827
828 2020-06-21  Philippe Normand  <pnormand@igalia.com>
829
830         [Flatpak] Nightly runner fails to extract zip files
831         https://bugs.webkit.org/show_bug.cgi?id=213445
832
833         Reviewed by Darin Adler.
834
835         * Scripts/webkit-flatpak-run-nightly: Ensure the buffered zip data is written to disk before
836         extraction.
837
838 2020-06-21  Jer Noble  <jer.noble@apple.com>
839
840         WebKit fails to leave audio routing arbitration during navigation, closing.
841         https://bugs.webkit.org/show_bug.cgi?id=213426
842         <rdar://problem/64395051>
843
844         Reviewed by Eric Carlson.
845
846         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
847         * TestWebKitAPI/Tests/WebKitCocoa/AudioRoutingArbitration.mm: Added.
848         (AudioRoutingArbitration::statusShouldBecomeEqualTo):
849         (TEST_F):
850
851 2020-06-20  Jer Noble  <jer.noble@apple.com>
852
853         REGRESSION(r259219): Sleep assertion remains active if WKWebView is closed or WebContent process crashes
854         https://bugs.webkit.org/show_bug.cgi?id=213434
855         <rdar://problem/57541662>
856
857         Reviewed by Eric Carlson.
858
859         * TestWebKitAPI/Tests/WebKit/SleepDisabler.mm:
860         (SleepDisabler::loadPlayingPage):
861         (SleepDisabler::hasSleepDisablerShouldBecomeEqualTo):
862         (TEST_F):
863
864 2020-06-20  Jonathan Bedard  <jbedard@apple.com>
865
866         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix x2)
867         https://bugs.webkit.org/show_bug.cgi?id=213402
868         <rdar://problem/64542588>
869
870         Unreviewed test fix.
871
872         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Native Macs never
873         use 32 bit tool binaries.
874
875 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
876
877         Bring up watchOS/tvOS on build.webkit.org (Follow-up fix)
878         https://bugs.webkit.org/show_bug.cgi?id=213402
879         <rdar://problem/64542588>
880
881         Unreviewed build-fix.
882
883         * BuildSlaveSupport/build.webkit.org-config/config.json: Use arm64_32 to build watchOS device.
884         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
885         (WebKitBuildbot): watchOS device should be considered 32 bit.
886         * Scripts/configure-xcode-for-embedded-development: Force-copy MediaAccessibility.framework.
887         * Scripts/webkitdirs.pm:
888         (extractNonMacOSHostConfiguration): Native Macs never use 32 bit tool binaries.
889
890 2020-06-19  Aakash Jain  <aakash_jain@apple.com>
891
892         Delete dead code for old ews api tests
893         https://bugs.webkit.org/show_bug.cgi?id=213421
894
895         Rubber-stamped by Alexey Proskuryakov.
896
897         * Scripts/webkitpy/common/config/ports.py:
898         (DeprecatedPort.run_api_tests_command): Deleted.
899         * Scripts/webkitpy/common/net/apitestresults.py: Removed.
900         * Scripts/webkitpy/common/net/apitestresults_unittest.py: Removed.
901         * Scripts/webkitpy/port/base.py:
902         (Port.bindings_results_directory):
903         (Port.api_results_directory): Deleted.
904         * Scripts/webkitpy/tool/bot/apitestresultsreader.py: Removed.
905         * Scripts/webkitpy/tool/steps/runtests.py:
906         (RunTests._run_api_tests): Deleted.
907         * Scripts/webkitpy/tool/steps/steps_unittest.py:
908         (test_runtests_api_debug): Deleted.
909
910 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
911
912         Bring up watchOS/tvOS on build.webkit.org
913         https://bugs.webkit.org/show_bug.cgi?id=213402
914         <rdar://problem/64542588>
915
916         Unreviewed infrastructure fix.
917
918         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
919         (_should_file_trigger_build): Add tvOS and watchOS.
920         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
921         (ShouldBuildTest):
922         (ShouldBuildTest.test_should_build):
923
924 2020-06-19  Jiewen Tan  <jiewen_tan@apple.com>
925
926         [WebAuthn] Provide a _WKWebAuthenticationPanelUpdatePINInvalid update to UI clients if the returned PIN from the client is not valid
927         https://bugs.webkit.org/show_bug.cgi?id=213404
928         <rdar://problem/64543894>
929
930         Reviewed by Brent Fulgham.
931
932         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
933         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
934         (TestWebKitAPI::TEST):
935         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-hid-pin-get-pin-token-fake-pin-invalid-error-retry.html: Added.
936
937 2020-06-19  Jonathan Bedard  <jbedard@apple.com>
938
939         Bring up watchOS/tvOS on build.webkit.org
940         https://bugs.webkit.org/show_bug.cgi?id=213402
941         <rdar://problem/64542588>
942
943         Reviewed by Aakash Jain.
944
945         * BuildSlaveSupport/build.webkit.org-config/config.json: Add AppleTV and watchOS builders.
946         * BuildSlaveSupport/build.webkit.org-config/factories.py:
947         (BuildFactory.__init__): Support AppleTV and watchOS.
948         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13.png: Added.
949         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13@2x.png: Added.
950         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13Simulator.png: Added.
951         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/TvOS13Simulator@2x.png: Added.
952         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOS6.png: Added.
953         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOS6@2x.png: Added.
954         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOSSimulator6.png: Added.
955         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WatchOSSimulator6@2x.png: Added.
956         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
957         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
958         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
959         * BuildSlaveSupport/build.webkit.org-config/steps.py:
960         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
961
962 2020-06-19  Saam Barati  <sbarati@apple.com>
963
964         Have a memory monitor thread in jsc shell when running tests using --memory-limited
965         https://bugs.webkit.org/show_bug.cgi?id=213389
966
967         Reviewed by Mark Lam.
968
969         * Scripts/run-jsc-stress-tests:
970         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
971         * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
972
973 2020-06-19  Chris Fleizach  <cfleizach@apple.com>
974
975         AX: Make isolated tree enablement status dependent on client preference
976         https://bugs.webkit.org/show_bug.cgi?id=213355
977         <rdar://problem/64506577>
978
979         Reviewed by Zalan Bujtas.
980
981         * MiniBrowser/mac/AppDelegate.m:
982         (-[BrowserAppDelegate defaultConfiguration]):
983
984 2020-06-19  Aakash Jain  <aakash_jain@apple.com>
985
986         Improve handling of trac downtime by commit-queue
987         https://bugs.webkit.org/show_bug.cgi?id=213377
988
989         Reviewed by Jonathan Bedard.
990
991         * BuildSlaveSupport/ews-build/steps.py: Load contributors.json from disk when loading from trac fails.
992         (ValidateCommiterAndReviewer.load_contributors_from_disk):
993         (ValidateCommiterAndReviewer.load_contributors_from_trac):
994         (ValidateCommiterAndReviewer.load_contributors):
995         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test
996
997 2020-06-19  Lauro Moura  <lmoura@igalia.com>
998
999         [WPE] Warn potential issues when creating WindowViewBackend
1000         https://bugs.webkit.org/show_bug.cgi?id=213326
1001
1002         Reviewed by Philippe Normand.
1003
1004         Make it easier to debug eventual GL issues when starting up MiniBrowser in
1005         windowed mode.
1006
1007         * wpe/backends/WindowViewBackend.cpp:
1008         (WPEToolingBackends::WaylandEGLConnection::singleton):
1009         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
1010
1011 2020-06-19  Lauro Moura  <lmoura@igalia.com>
1012
1013         [webkitpy][WPE] Default to headless if _display_server is xfvb
1014         https://bugs.webkit.org/show_bug.cgi?id=213327
1015
1016         Reviewed by Philippe Normand.
1017
1018         Xvfb is used as the default display server for some scripts, and the
1019         equivalent for WPE is the headless one.
1020
1021         WTR and the API tests already create only HeadlessViewBackends, but the
1022         WebDriver tests create them through MiniBrowser, which requires the
1023         '--headless' parameter.
1024
1025         * Scripts/run-webdriver-tests: Do not override _display_server
1026         * Scripts/webkitpy/port/base.py:
1027         (Port.__init__): Define _display_server for all ports to avoid
1028         eventually needing to override it.
1029         * Scripts/webkitpy/port/wpe.py:
1030         (WPEPort.__init__): Default to 'headless' if _display_server is 'xvfb'
1031         * Scripts/webkitpy/w3c/wpt_runner.py:
1032         (main): Dot not override _display_server
1033
1034 2020-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1035
1036         Add support for fetching registrable domains with resource load statistics
1037         https://bugs.webkit.org/show_bug.cgi?id=213291
1038
1039         Reviewed by Adrian Perez de Castro.
1040
1041         Update GLib ITP unit test to check also fetch and remove.
1042
1043         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1044         (testWebsiteDataITP):
1045
1046 2020-06-19  Tomoki Imai  <Tomoki.Imai@sony.com>
1047
1048         Change my (Tomoki Imai's) status to committer
1049
1050         Unreviewed, just updating contributors.json for myself.
1051
1052         * Scripts/webkitpy/common/config/contributors.json:
1053
1054 2020-06-18  Jonathan Bedard  <jbedard@apple.com>
1055
1056         Add SPI to preconnect to a server (Follow-up fix)
1057         https://bugs.webkit.org/show_bug.cgi?id=213109
1058         <rdar://problem/64184412>
1059
1060         Unreviewed build-fix.
1061
1062         * TestWebKitAPI/Tests/WebKitCocoa/Preconnect.mm: HTTPServer does not exist if HAVE(NETWORK_FRAMEWORK) is false.
1063
1064 2020-06-18  Jonathan Bedard  <jbedard@apple.com>
1065
1066         [iOS] Two KeyboardInputTests are failing on recent iOS SDK versions (build-fix)
1067         https://bugs.webkit.org/show_bug.cgi?id=213183
1068         <rdar://problem/64273483>
1069
1070         Unreviewed build fix.
1071
1072         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1073         (webViewWithAutofocusedInput): bool may not be the same type as BOOL.
1074
1075 2020-06-18  Saam Barati  <sbarati@apple.com>
1076
1077         call skip when skipping JetStream2 wasm test
1078         https://bugs.webkit.org/show_bug.cgi?id=213354
1079
1080         Reviewed by Yusuke Suzuki.
1081
1082         So we can see the logging that we're skipping.
1083
1084         * Scripts/run-jsc-stress-tests:
1085
1086 2020-06-18  Joonghun Park  <jh718.park@samsung.com>
1087
1088     Unreviewed. Remove the build warning below since r262971.
1089     warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare]
1090
1091         * WebKitTestRunner/TestController.cpp:
1092         (WTR::getAllStorageAccessEntriesCallback):
1093
1094 2020-06-18  Ross Kirsling  <ross.kirsling@sony.com>
1095
1096         [Intl] Enable RelativeTimeFormat and Locale by default
1097         https://bugs.webkit.org/show_bug.cgi?id=213324
1098
1099         Reviewed by Yusuke Suzuki.
1100
1101         * Scripts/run-jsc-stress-tests:
1102         Remove feature flags.
1103
1104 2020-06-18  Andy Estes  <aestes@apple.com>
1105
1106         Unreviewed build fix after r263194
1107
1108         * WebKitTestRunner/ios/TestControllerIOS.mm:
1109         (WTR::TestController::platformResetStateToConsistentValues): Guarded code that mentions
1110         UIContextMenuInteraction with USE(UICONTEXTMENU).
1111
1112 2020-06-18  Ryan Haddad  <ryanhaddad@apple.com>
1113
1114         Unreviewed infrastructure fix, temporarily remove ews116 due to hardware failure tracked with rdar://64424245
1115
1116         * BuildSlaveSupport/ews-build/config.json:
1117
1118 2020-06-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1119
1120         [GTK][WPE] Add API to configure and handle service worker registrations to WebKitWebsiteDataManager
1121         https://bugs.webkit.org/show_bug.cgi?id=213290
1122
1123         Reviewed by Michael Catanzaro.
1124
1125         Handle new website data in MiniBrowser and add a unit test.
1126
1127         * MiniBrowser/gtk/main.c:
1128         (gotWebsiteDataCallback):
1129         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1130         (serverCallback):
1131         (testWebsiteDataConfiguration):
1132         (testWebsiteDataEphemeral):
1133         (testWebsiteDataITP):
1134         (testWebsiteDataServiceWorkerRegistrations):
1135         (beforeAll):
1136         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1137         (Test::Test):
1138
1139 2020-06-17  Fujii Hironori  <Hironori.Fujii@sony.com>
1140
1141         RebaselineServer: "Rebaseline queue" button is placed behind the footer
1142         https://bugs.webkit.org/show_bug.cgi?id=213258
1143
1144         Reviewed by Zalan Bujtas.
1145
1146         * Scripts/webkitpy/tool/servers/data/rebaselineserver/index.html: Moved 'log' and 'queue' elements after 'footer' element.
1147         * Scripts/webkitpy/tool/servers/data/rebaselineserver/main.css:
1148         (#queue): Changed 'bottom' property from 3em to 4em.
1149
1150 2020-06-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1151
1152         [macOS] Shift-tab in a bullet list in Mail Compose jumps back to Subject field
1153         https://bugs.webkit.org/show_bug.cgi?id=213320
1154         <rdar://problem/63831962>
1155
1156         Reviewed by Tim Horton.
1157
1158         Add a new API test to verify that preventing the "keypress" event for shift+tab in an SPI-editable web view
1159         causes us to avoid relinquishing focus.
1160
1161         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1162
1163 2020-06-17  Andy Estes  <aestes@apple.com>
1164
1165         REGRESSION (r258092): fast/forms/ios/file-upload-panel.html fails when HAVE(UICONTEXTMENU_LOCATION)
1166         https://bugs.webkit.org/show_bug.cgi?id=213314
1167         <rdar://problem/60339129>
1168
1169         Reviewed by Maciej Stachowiak.
1170
1171         fast/forms/ios/file-upload-panel.html sets the shouldHandleRunOpenPanel and
1172         shouldPresentPopovers test options to false so that WKTR will (a) not register a
1173         runOpenPanel UI delegate callback, causing WebKit to create a WKFileUploadPanel instead, and
1174         (b) swizzle two UIKit view controller presentation methods to prevent the document picker
1175         menu from being presented. The test merely wants the WKFileUploadPanel instance to exist in
1176         order to query its available actions, not for it to show UI.
1177
1178         In r258092, WKFileUploadPanel now sometimes uses a UIContextMenuInteraction instance to
1179         present the document picker menu, but -[UIContextMenuInteraction _presentMenuAtLocation:]
1180         fails due to WKTR's above-mentioned swizzling. When this failure occurs,
1181         UIContextMenuInteraction calls -contextMenuInteraction:willEndForConfiguration:animator: on
1182         its delegate (the WKFileUploadPanel), which dismisses the open panel before the test has had
1183         a chance to query the available actions.
1184
1185         Fixed this by swizzling -[UIContextMenuInteraction _presentMenuAtLocation:] when the
1186         shouldPresentPopovers test option is false.
1187
1188         * WebKitTestRunner/ios/TestControllerIOS.mm:
1189         (overridePresentMenuOrPopoverOrViewController): Renamed from
1190         overridePresentViewControllerOrPopover.
1191         (WTR::TestController::platformResetStateToConsistentValues): Swizzled
1192         -[UIContextMenuInteraction _presentMenuAtLocation:] with
1193         overridePresentMenuOrPopoverOrViewController when the shouldPresentPopovers test option is
1194         false.
1195         (overridePresentViewControllerOrPopover): Renamed to
1196         overridePresentMenuOrPopoverOrViewController.
1197
1198 2020-06-17  Sihui Liu  <sihui_liu@apple.com>
1199
1200         REGRESSION (r263044): [macOS] TestWebKitAPI.TextManipulation.InsertingContentIntoAlreadyManipulatedContentCreatesTextManipulationItem is a flaky failure
1201         https://bugs.webkit.org/show_bug.cgi?id=213311
1202         <rdar://problem/64456413>
1203
1204         Reviewed by Wenson Hsieh.
1205
1206         TextManipulation.InsertingContentIntoAlreadyManipulatedContentCreatesTextManipulationItem does not wait long 
1207         enough to make sure TextManipulationController gets notified about the insertion and starts observing.
1208
1209         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1210         (TestWebKitAPI::TEST):
1211
1212 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1213
1214         Delete code for old ews bindings queue
1215         https://bugs.webkit.org/show_bug.cgi?id=213315
1216
1217         Rubber-stamped by Alexey Proskuryakov.
1218
1219         * Scripts/webkitpy/common/config/ews.json:
1220         * Scripts/webkitpy/common/config/ports.py:
1221         (DeprecatedPort.run_bindings_tests_command): Deleted.
1222         (WinPort.run_bindings_tests_command): Deleted.
1223         * Scripts/webkitpy/common/config/ports_mock.py:
1224         (MockPort.run_bindings_tests_command): Deleted.
1225         * Scripts/webkitpy/common/net/generictestresults.py: Removed.
1226         * Scripts/webkitpy/common/net/generictestresults_unittest.py: Removed.
1227         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Removed.
1228         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1229         (PatchAnalysisTask._retry_bindings_tests): Deleted.
1230         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py:
1231         (MockBindingsEarlyWarningSystem): Deleted.
1232         (MockBindingsEarlyWarningSystem.__init__): Deleted.
1233         (MockBindingsEarlyWarningSystem.test_results): Deleted.
1234         (BindingsEarlyWarningSystemTest): Deleted.
1235         (BindingsEarlyWarningSystemTest._results_indicate_all_passed): Deleted.
1236         (BindingsEarlyWarningSystemTest._create_task): Deleted.
1237         (BindingsEarlyWarningSystemTest.test_success_case): Deleted.
1238         (BindingsEarlyWarningSystemTest.test_test_failure): Deleted.
1239         (BindingsEarlyWarningSystemTest.test_fix): Deleted.
1240         (BindingsEarlyWarningSystemTest.test_ineffective_patch): Deleted.
1241         (BindingsEarlyWarningSystemTest.test_partially_effective_patch): Deleted.
1242         (BindingsEarlyWarningSystemTest.test_different_test_failures_in_patch_and_tree): Deleted.
1243         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1244         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1245         (TestBindingsEWS): Deleted.
1246         (AbstractEarlyWarningSystemTest.test_failing_bindings_tests_message): Deleted.
1247         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1248         * Scripts/webkitpy/tool/steps/runtests.py:
1249         (RunTests._run_bindings_tests): Deleted.
1250         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1251         (test_patch_relevant_bindings): Deleted.
1252         (test_runtests_api): Deleted.
1253
1254 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1255
1256         Delete code for old ews style queue
1257         https://bugs.webkit.org/show_bug.cgi?id=213297
1258
1259         Rubber-stamped by Alexey Proskuryakov.
1260
1261         * Scripts/webkitpy/tool/bot/stylequeuetask.py: Removed.
1262         * Scripts/webkitpy/tool/commands/queues.py:
1263         (StyleQueue): Deleted.
1264         (StyleQueue.__init__): Deleted.
1265         (StyleQueue.review_patch): Deleted.
1266         (StyleQueue.run_command): Deleted.
1267         (StyleQueue.expected_failures): Deleted.
1268         (StyleQueue.refetch_patch): Deleted.
1269         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1270         (TestReviewQueue): Deleted.
1271
1272 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1273
1274         Delete code for old ews webkitpy queue
1275         https://bugs.webkit.org/show_bug.cgi?id=213299
1276
1277         Reviewed by Jonathan Bedard.
1278
1279         * Scripts/webkitpy/common/config/ews.json:
1280         * Scripts/webkitpy/common/net/generictestresults.py:
1281         (WebkitpyTestResults): Deleted.
1282         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1283         * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Removed.
1284         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1285         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1286         (TestWebkitpyEWS): Deleted.
1287         (AbstractEarlyWarningSystemTest.test_failing_webkitpy_tests_message): Deleted.
1288         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1289         * Scripts/webkitpy/tool/steps/runtests.py:
1290         (RunTests._run_webkitpy_tests): Deleted.
1291         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1292         (test_runtests_webkitpy): Deleted.
1293         (test_patch_not_relevant_bindings): Deleted.
1294         (test_runtests_api_debug): Deleted.
1295
1296 2020-06-17  Keith Miller  <keith_miller@apple.com>
1297
1298         WebKitTestRunner should not crash on alert with invalid utf16 strings
1299         https://bugs.webkit.org/show_bug.cgi?id=213269
1300
1301         Reviewed by Simon Fraser.
1302
1303         * WebKitTestRunner/StringFunctions.h:
1304         (WTR::toWTFString):
1305
1306 2020-06-17  Aakash Jain  <aakash_jain@apple.com>
1307
1308         Delete old ews client side code - part 2
1309         https://bugs.webkit.org/show_bug.cgi?id=213262
1310
1311         Reviewed by Alexey Proskuryakov.
1312
1313         * Scripts/webkitpy/common/net/bugzilla/attachment.py:
1314         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
1315         (PatchAnalysisTaskDelegate.command_passed): Deleted.
1316         (PatchAnalysisTaskDelegate.command_failed): Deleted.
1317         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1318         (AbstractEarlyWarningSystem.command_passed): Deleted.
1319         (AbstractEarlyWarningSystem.command_failed): Deleted.
1320         * Scripts/webkitpy/tool/commands/perfalizer.py:
1321         (PerfalizerTask.command_passed): Deleted.
1322         (PerfalizerTask.command_failed): Deleted.
1323         * Scripts/webkitpy/tool/commands/perfalizer_unittest.py:
1324         * Scripts/webkitpy/tool/commands/queues.py:
1325         (AbstractPatchQueue._next_patch): Deleted.
1326         (AbstractPatchQueue._did_error): Deleted.
1327         (AbstractPatchQueue._did_skip): Deleted.
1328         (AbstractPatchQueue._unlock_patch): Deleted.
1329         (StyleQueue.command_passed): Deleted.
1330         (StyleQueue.command_failed): Deleted.
1331
1332 2020-06-17  Paulo Matos  <pmatos@igalia.com>
1333
1334         Add new Igalia EWS workers for ARM/MIPS
1335         https://bugs.webkit.org/show_bug.cgi?id=212803
1336
1337         Reviewed by Aakash Jain.
1338
1339         * BuildSlaveSupport/ews-build/config.json:
1340
1341 2020-06-16  Mark Lam  <mark.lam@apple.com>
1342
1343         TestWebKitAPI.WebCore.WildcardStringMatching needs to initialize Options before accessing them.
1344         https://bugs.webkit.org/show_bug.cgi?id=213270
1345         <rdar://problem/64427499>
1346
1347         Reviewed by Yusuke Suzuki.
1348
1349         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm:
1350         (TestWebKitAPI::TEST):
1351
1352 2020-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1353
1354         Text manipulation should not re-extract elements whose children have been manipulated
1355         https://bugs.webkit.org/show_bug.cgi?id=213276
1356         <rdar://problem/64193446>
1357
1358         Reviewed by Tim Horton.
1359
1360         Add a new API test where we start and complete text manipulation, and then hide and show the manipulated
1361         element. This test verifies that the new item callbacks are *not* called after element is shown again.
1362
1363         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1364         (TestWebKitAPI::TEST):
1365
1366 2020-06-16  Saam Barati  <sbarati@apple.com>
1367
1368         Fix two typos "signifcant" and "signficance". Should be "significant" and "significance"
1369
1370         * Scripts/compare-results:
1371         (displayStr):
1372         (computeMultipleHypothesesSignificance):
1373         (dumpBreakdowns):
1374         (writeCSV):
1375         (computeMultipleHypothesesSignficance): Deleted.
1376
1377 2020-06-16  Andres Gonzalez  <andresg_22@apple.com>
1378
1379         Fix for accessibility/textarea-selected-text-range.html in isolated tree mode.
1380         https://bugs.webkit.org/show_bug.cgi?id=213257
1381
1382         Reviewed by Chris Fleizach.
1383
1384         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1385         (WTR::setAttributeValue):
1386         (WTR::AccessibilityUIElement::selectedTextRange): Dispatch call into
1387         WebAccessibilityWrapper onto AX secondary thread to simulate isolated
1388         tree mode.
1389
1390 2020-06-16  Saam Barati  <sbarati@apple.com>
1391
1392         Multiple hypothesis testing should use False Discovery Rate instead of Bonferroni
1393         https://bugs.webkit.org/show_bug.cgi?id=213219
1394
1395         Reviewed by Mark Lam.
1396
1397         My previous patch here used Bonferroni to do multiple hypotheses correction.
1398         Bonferroni does a good job at reducing false positive rate (type I error,
1399         saying something is significant when it's not, e.g, rejecting the null
1400         hypothesis when we shouldn't), but at the expense of also having a high
1401         false negative rate (type II error, saying something is not significant when
1402         it is, e.g, not rejecting the null hypothesis when we should).
1403         
1404         After doing a bit more reading, it seems like using a technique called False
1405         Discovery Rate (FDR) is better. It still does a good job at controlling type
1406         I error rate, but without sacrificing a high type II error rate. FDR is based
1407         on a technique for "estimating the proportion of wrongly rejected null hypotheses" [2].
1408         
1409         This patch uses Benjamini and Hochberg estimation of FDR, which relies
1410         on hypotheses being independent. We know subtests in a benchmark aren't
1411         fully independent variables, but it's a good enough approximation.
1412         
1413         You can read more about FDR:
1414         1. https://www.stat.berkeley.edu/~mgoldman/Section0402.pdf
1415         2. https://besjournals.onlinelibrary.wiley.com/doi/10.1111/j.2041-210X.2010.00061.x
1416         3. https://en.wikipedia.org/wiki/False_discovery_rate
1417
1418         * Scripts/compare-results:
1419         (displayStr):
1420         (computeMultipleHypothesesSignficance):
1421         (dumpBreakdowns):
1422         (writeCSV):
1423
1424 2020-06-16  David Kilzer  <ddkilzer@apple.com>
1425
1426         REGRESSION (r262994): Web Inspector is killed when context-clicking anywhere
1427         <https://webkit.org/b/213224>
1428         <rdar://problem/64383320>
1429
1430         Reviewed by Darin Adler.
1431
1432         * TestWebKitAPI/CMakeLists.txt:
1433         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1434         - Add ContextMenuAction.cpp to build systems.
1435         * TestWebKitAPI/Tests/WebCore/ContextMenuAction.cpp: Add.
1436         (TestWebKitAPI::TEST):
1437         - Add TestWebKitAPI.WebCore.ContextMenuAction_IsValidEnum.
1438
1439 2020-06-16  Fujii Hironori  <Hironori.Fujii@sony.com>
1440
1441         [Win] Mouse dragging tests are failing because WebKitTestRunner dispatches WM_MOUSELEAVE to the hidden WebView
1442         https://bugs.webkit.org/show_bug.cgi?id=213239
1443
1444         Reviewed by Don Olmstead.
1445
1446         There are two problems:
1447         1. Windows EventSenderProxy::mouseMoveTo doesn't set WPARAM of WM_MOUSEMOVE
1448         2. Unexpected WM_MOUSELEAVE discontinues the mouse dragging events
1449
1450         WPARAM of WM_MOUSEMOVE should represent pressed mouse buttons while dragging.
1451
1452         WM_MOUSELEAVE is unexpectedly dispatched because the mouse cursor
1453         is always out of the hidden WebView. The unexpected WM_MOUSELEAVE
1454         discontinues dragging events. WM_MOUSELEAVE shouldn't be
1455         dispatched in WebKitTestRunner. Ignore it.
1456
1457         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
1458         (WTR::EventSenderProxy::mouseDown):
1459         (WTR::EventSenderProxy::mouseUp):
1460         (WTR::EventSenderProxy::mouseMoveTo): Set MK_LBUTTON to WPARAM of
1461         WM_MOUSEMOVE while dragging.
1462         * WebKitTestRunner/win/TestControllerWin.cpp:
1463         (WTR::runRunLoopUntil): Ignore WM_MOUSELEAVE.
1464
1465 2020-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1466
1467         Text manipulation should handle nested item boundary elements
1468         https://bugs.webkit.org/show_bug.cgi?id=213251
1469         <rdar://problem/63371514>
1470
1471         Reviewed by Sihui Liu.
1472
1473         Add a new API test to exercise this scenario.
1474
1475         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1476
1477 2020-06-16  Charlie Turner  <cturner@igalia.com>
1478
1479         [GTK] Disable video autoplay
1480         https://bugs.webkit.org/show_bug.cgi?id=184845
1481
1482         Reviewed by Carlos Garcia Campos.
1483
1484         Update the various callsites for constructing a view to take into
1485         account the default policies. I chose the default as autoplay
1486         allow without sound, which is in keeping with WebCore's choice.
1487
1488         * MiniBrowser/gtk/BrowserWindow.c:
1489         (webViewDecidePolicy):
1490         (newTabCallback):
1491         (openPrivateWindow):
1492         (browser_window_get_or_create_web_view_for_automation):
1493         (browser_window_create_web_view_in_new_tab_for_automation):
1494         * MiniBrowser/gtk/main.c:
1495         (createBrowserTab):
1496         (main):
1497         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Add
1498         autoplay policy tests, and use modern class initializers.
1499         (testAutoplayPolicy):
1500         (beforeAll):
1501
1502 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1503
1504         [Flatpak SDK] Subversion perl bindings unusable
1505         https://bugs.webkit.org/show_bug.cgi?id=213241
1506
1507         Reviewed by Sergio Villar Senin.
1508
1509         * buildstream/elements/sdk/subversion.bst: The svn swig perl library wasn't correctly
1510         installed, leading to undefined symbols when importing it from the bindings. A new
1511         integration command now tests this.
1512
1513 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1514
1515         [Flatpak SDK] Update to Qt 5.15
1516         https://bugs.webkit.org/show_bug.cgi?id=213192
1517
1518         Reviewed by Sergio Villar Senin.
1519
1520         The new patch comes from the upstream KDE SDK: https://github.com/KDE/flatpak-kde-runtime/tree/qt5.15lts/patch
1521         
1522         * buildstream/elements/qt5/qtbase.bst:
1523         * buildstream/elements/qt5/qtdeclarative.bst:
1524         * buildstream/elements/qt5/qtquickcontrols.bst:
1525         * buildstream/elements/qt5/qtquickcontrols2.bst:
1526         * buildstream/elements/qt5/qtwayland.bst:
1527         * buildstream/elements/qt5/qtx11extras.bst:
1528         * buildstream/patches/qtbase-make-sure-to-correctly-construct-base-platform-theme.patch: Added.
1529         * buildstream/patches/qtwayland-use-gnome-platform-theme-on-gnome-based-desktops.patch: Removed.
1530         * buildstream/project.conf:
1531
1532 2020-06-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1533
1534         [GTK][WPE] Add API to configure and enable resource load statistics
1535         https://bugs.webkit.org/show_bug.cgi?id=177943
1536
1537         Reviewed by Michael Catanzaro.
1538
1539         Add --enable-itp command line version to MiniBrowser and unit tests to check the new API.
1540
1541         * MiniBrowser/gtk/main.c:
1542         (gotWebsiteDataCallback):
1543         (activate):
1544         * MiniBrowser/wpe/main.cpp:
1545         (main):
1546         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1547         (serverCallback):
1548         (testWebsiteDataConfiguration):
1549         (testWebsiteDataEphemeral):
1550         (testWebsiteDataITP):
1551         (beforeAll):
1552         * TestWebKitAPI/glib/TestExpectations.json:
1553         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1554         (Test::Test):
1555         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1556         (directoryChangedCallback):
1557         (WebViewTest::waitUntilFileChanged):
1558         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1559
1560 2020-06-16  Philippe Normand  <pnormand@igalia.com>
1561
1562         REGRESSION(r263029): [Flatpak SDK] Broke initial SDK installation
1563
1564         Rubber-stamped by Žan Doberšek.
1565
1566         * flatpak/flatpakutils.py:
1567         (FlatpakObject.version): Gracefully return an empty version when the flatpak info command
1568         fails. This usually means the app has not been installed yet.
1569
1570 2020-06-15  Megan Gardner  <megan_gardner@apple.com>
1571
1572         Text form controls can scroll by 1px when value is the same length as size. No scrolling should happen.
1573         https://bugs.webkit.org/show_bug.cgi?id=212856
1574         <rdar://problem/63541707>
1575
1576         Reviewed by Zalan Bujtas.
1577
1578         Rebased to reflect new sizes.
1579
1580         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1581         (TEST):
1582         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1583         (TestWebKitAPI::TEST):
1584
1585 2020-06-15  Jonathan Bedard  <jbedard@apple.com>
1586
1587         Follow-up fix: Make API tests tolerant of our relatively new use of WebPageProxy::preconnectTo
1588         https://bugs.webkit.org/show_bug.cgi?id=213144
1589         <rdar://problem/64316743>
1590
1591         Unreviewed build fix.
1592
1593         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: Guard didFinishNavigation declaration with HAVE(NETWORK_FRAMEWORK).
1594
1595 2020-06-15  Alex Christensen  <achristensen@webkit.org>
1596
1597         Provide alternatively-named SPI for user style sheets and scripts
1598         https://bugs.webkit.org/show_bug.cgi?id=213206
1599
1600         Reviewed by Brady Eidson.
1601
1602         * DumpRenderTree/mac/DumpRenderTree.mm:
1603         (fontAllowList):
1604         (createWebViewAndOffscreenWindow):
1605         (resetWebViewToConsistentStateBeforeTesting):
1606         (fontWhitelist): Deleted.
1607         * DumpRenderTree/mac/TestRunnerMac.mm:
1608         (TestRunner::addOriginAccessWhitelistEntry):
1609         (TestRunner::removeOriginAccessWhitelistEntry):
1610         (TestRunner::addUserScript):
1611         (TestRunner::addUserStyleSheet):
1612         * TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
1613         (TEST):
1614         * TestWebKitAPI/Tests/WebKitCocoa/UserContentWorld.mm:
1615         (TEST):
1616         * WebKitTestRunner/mac/TestControllerMac.mm:
1617         (WTR::generateFontAllowList):
1618         (WTR::TestController::platformInitializeContext):
1619         (WTR::generateWhitelist): Deleted.
1620
1621 2020-06-15  Alex Christensen  <achristensen@webkit.org>
1622
1623         Add SPI to preconnect to a server
1624         https://bugs.webkit.org/show_bug.cgi?id=213109
1625         <rdar://problem/64184412>
1626
1627         Reviewed by Geoff Garen.
1628
1629         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1630
1631 2020-06-15  Keith Miller  <keith_miller@apple.com>
1632
1633         Signal handlers should have a two phase installation.
1634         https://bugs.webkit.org/show_bug.cgi?id=213160
1635
1636         Reviewed by Mark Lam.
1637
1638         * TestWebKitAPI/Tests/WTF/Signals.cpp:
1639         (TEST):
1640
1641 2020-06-15  Sihui Liu  <sihui_liu@apple.com>
1642
1643         Text manipulation does not observe newly displayed element inside previously observed content
1644         https://bugs.webkit.org/show_bug.cgi?id=213156
1645
1646         Reviewed by Darin Adler.
1647
1648         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
1649         (TestWebKitAPI::TEST):
1650
1651 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1652
1653         [Flatpak SDK] Bump Subversion and enable Perl bindings
1654         https://bugs.webkit.org/show_bug.cgi?id=213189
1655
1656         Reviewed by Žan Doberšek.
1657
1658         * buildstream/elements/sdk-build-depends/swig.bst: Added.
1659         * buildstream/elements/sdk/subversion.bst: Enable Perl bindings so that git svn can be used within the sandbox.
1660
1661 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1662
1663         [Flatpak SDK] flatpak update still not displayed
1664         https://bugs.webkit.org/show_bug.cgi?id=213180
1665
1666         Reviewed by Žan Doberšek.
1667
1668         Added a new --version option to the script. We no longer gather the flatpak update command
1669         output to know if something was updated or not. Instead we get the version of the SDK prior
1670         to the update operation and compare that with the version after the update.
1671
1672         * flatpak/flatpakutils.py:
1673         (FlatpakObject.version):
1674         (WebkitFlatpak.load_from_args):
1675         (WebkitFlatpak.main):
1676
1677 2020-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1678
1679         [GTK][WPE] Add API to expose UIClient::requestStorageAccessConfirm
1680         https://bugs.webkit.org/show_bug.cgi?id=210422
1681
1682         Reviewed by Michael Catanzaro.
1683
1684         Handle WebKitWebsiteDataAccessPermissionRequest in MiniBrowser.
1685
1686         * MiniBrowser/gtk/BrowserTab.c:
1687         (decidePermissionRequest):
1688
1689 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1690
1691         [Flatpak SDK] Add libavif
1692         https://bugs.webkit.org/show_bug.cgi?id=212964
1693         <rdar://problem/64291035>
1694
1695         Reviewed by Žan Doberšek.
1696
1697         Because of the ABI bump of dav1d, which ffmpeg depends on, ffmpeg needs to be rebuilt. So
1698         this is a good opportunity to include it in the SDK and not rely on the ffmpeg-full
1699         extension anymore, because it doesn't provide debug symbols.
1700
1701         * buildstream/elements/flatpak/platform.bst:
1702         * buildstream/elements/flatpak/sdk.bst:
1703         * buildstream/elements/freedesktop-sdk.bst:
1704         * buildstream/elements/sdk-platform.bst:
1705         * buildstream/elements/sdk/ffmpeg.bst: Added.
1706         * buildstream/elements/sdk/gst-libav.bst:
1707         * buildstream/elements/sdk/libavif.bst: Added.
1708         * buildstream/elements/sdk/ruby-highline.bst: Remove the spec source, un-needed.
1709         * buildstream/patches/fdo/0001-dav1d-Bump-to-0.7.0.patch: Added.
1710         * buildstream/patches/fdo/0001-ffmpeg-Add-MS-MPEG-DivX-variants.patch: Removed.
1711         * buildstream/patches/fdo/0002-ffmpeg-Add-VP6-and-Sorenson-Spark-video-codecs.patch: Removed.
1712         * buildstream/patches/fdo/0003-ffmpeg-Add-Intel-Indeo-and-Cinepak-video-support.patch: Removed.
1713         * buildstream/patches/fdo/0004-ffmpeg-Add-MPEG-2-video-decoder.patch: Removed.
1714         * buildstream/patches/fdo/0005-ffmpeg-Add-msmpeg4v3-support.patch: Removed.
1715         * buildstream/project.conf:
1716         * flatpak/flatpakutils.py:
1717         (WebkitFlatpak._get_packages):
1718
1719 2020-06-15  Philippe Normand  <pnormand@igalia.com>
1720
1721         [Flatpak SDK] Remove webkit-build-directory dependency from flatpakutils
1722         https://bugs.webkit.org/show_bug.cgi?id=213179
1723
1724         Reviewed by Žan Doberšek.
1725
1726         This makes webkit-flatpak usable without installing additional perl modules (version) on the host OS.
1727
1728         * flatpak/flatpakutils.py:
1729         (WebkitFlatpak.load_from_args): Make --release and --debug mutually exclusive, and default to Release builds.
1730         (WebkitFlatpak.__init__):
1731         (WebkitFlatpak.clean_args): No need to pull in webkitpy which pulls webkitdirs.pm only to
1732         determine the default configuration. Assume we use Release by default.
1733
1734 2020-06-15  Paulo Matos  <pmatos@igalia.com>
1735
1736         Properly propagate TZ to the remote test devices
1737         https://bugs.webkit.org/show_bug.cgi?id=212816
1738
1739         Reviewed by Philippe Normand.
1740
1741         * Scripts/run-jsc-stress-tests:
1742
1743 2020-06-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1744
1745         [iOS] Two KeyboardInputTests are failing on recent iOS SDK versions
1746         https://bugs.webkit.org/show_bug.cgi?id=213183
1747         <rdar://problem/64273483>
1748
1749         Reviewed by Tim Horton.
1750
1751         On recent versions of the iOS SDK, iOS simulators that are not shown on-screen are treated as if the hardware
1752         keyboard is not available (that is, `+[UIIKeyboard isInHardwareKeyboardMode]` returns `NO`). When running API
1753         tests while `Simulator.app` is already launched, an iOS simulator is presented on-screen, whereas the simulator
1754         is not visible when running API tests without launching `Simulator.app` beforehand.
1755
1756         This discrepancy causes two iOS API tests to fail (i.e. `CaretSelectionRectAfterRestoringFirstResponder` and
1757         `RangedSelectionRectAfterRestoringFirstResponder`), due to the fact that `-[WKWebView becomeFirstResponder]` no
1758         longer causes an input session to begin.
1759
1760         Interestingly, these tests already attempt to circumvent this by using `webViewWithAutofocusedInput()`, which
1761         creates and loads a `WKWebView` with a single autofocusing input element, with a `_WKInputDelegate` that
1762         unconditionally allows input sessions to begin. However, this doesn't work as intended in these tests, because
1763         nothing keeps the delegate (a `TestInputDelegate`) alive past the scope of the call to
1764         `webViewWithAutofocusedInput()`. Since `[WKWebView _inputDelegate]` is a weak property, the input delegate
1765         simply disappears after we finish waiting for the load to finish (and the autofocused input element begins its
1766         input session). This causes us to erroneously fall back to default behavior (i.e.
1767         `_WKFocusStartsInputSessionPolicyAuto`) for subsequent calls to show the keyboard for the focused element, as is
1768         the case when these two API tests call `-becomeFirstResponder`. The end result is that the keyboard doesn't
1769         appear and text selection views are not created and laid out, but only when API tests are run without having
1770         launched the Simulator app beforehand.
1771
1772         To fix this, refactor `webViewWithAutofocusedInput()` into `webViewAndInputDelegateWithAutofocusedInput()`,
1773         which returns both the new `WKWebView` as well as the `TestInputDelegate` of the web view. The call site is then
1774         responsible for keeping the input delegate around for as long as it needs.
1775
1776         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1777         (webViewWithAutofocusedInput):
1778
1779         Drive-by fix: fix a potential stack smasher by using an Objective-C block when setting the input delegate's
1780         policy handler, and by using `__block` for the `doneWaiting` boolean flag. This is now a problem becuase this
1781         block may be invoked multiple times.
1782
1783         (webViewAndInputDelegateWithAutofocusedInput):
1784
1785 2020-06-13  Saam Barati  <sbarati@apple.com>
1786
1787         compare-results should have an option to print a breakdown and to save the breakdown as csv file
1788         https://bugs.webkit.org/show_bug.cgi?id=213140
1789
1790         Reviewed by Filip Pizlo.
1791
1792         In this patch, compare-results has a new --breakdown feature which will
1793         break down the results for -a and -b per subtest. It will also show you
1794         p values with a significance threshold determined using the Bonferroni
1795         correction for testing multiple hypotheses:
1796         https://en.wikipedia.org/wiki/Bonferroni_correction
1797         
1798         And there is also now a --csv option to generate a csv file containing
1799         the same per subtest breakdown.
1800         
1801         --breakdown will print out results like:
1802         
1803         ------------------------------------------------------------------------------------------------------------
1804         |               subtest                |     ms       |     ms       |  b / a   | pValue, alpha = 0.003125 |
1805         ------------------------------------------------------------------------------------------------------------
1806         | Elm-TodoMVC                          |616.625000    |583.625000    |0.946483  | 0.065002                 |
1807         | VueJS-TodoMVC                        |89.425000     |83.225000     |0.930668  | 0.039102                 |
1808         | EmberJS-TodoMVC                      |695.875000    |664.000000    |0.954194  | 0.088901                 |
1809         | Flight-TodoMVC                       |263.600000    |257.600000    |0.977238  | 0.249259                 |
1810         | BackboneJS-TodoMVC                   |213.025000    |201.550000    |0.946133  | 0.000636 (significant)   |
1811         | Preact-TodoMVC                       |48.800000     |47.550000     |0.974385  | 0.502768                 |
1812         | AngularJS-TodoMVC                    |745.300000    |704.275000    |0.944955  | 0.011779                 |
1813         | Inferno-TodoMVC                      |607.900000    |354.800000    |0.583649  | 0.000000 (significant)   |
1814         | Vanilla-ES2015-TodoMVC               |214.950000    |200.575000    |0.933124  | 0.005018                 |
1815         | Angular2-TypeScript-TodoMVC          |191.575000    |187.025000    |0.976250  | 0.542229                 |
1816         | VanillaJS-TodoMVC                    |162.075000    |160.375000    |0.989511  | 0.747186                 |
1817         | jQuery-TodoMVC                       |855.275000    |833.825000    |0.974920  | 0.103439                 |
1818         | EmberJS-Debug-TodoMVC                |2056.250000   |1952.050000   |0.949325  | 0.000003 (significant)   |
1819         | React-TodoMVC                        |475.225000    |428.950000    |0.902625  | 0.007566                 |
1820         | React-Redux-TodoMVC                  |791.100000    |736.675000    |0.931203  | 0.066091                 |
1821         | Vanilla-ES2015-Babel-Webpack-TodoMVC |208.050000    |202.000000    |0.970920  | 0.152470                 |
1822         ------------------------------------------------------------------------------------------------------------
1823
1824         * Scripts/compare-results:
1825         (readJSONFile):
1826         (speedometer2Breakdown):
1827         (jetStream2Breakdown):
1828         (motionMarkBreakdown):
1829         (plt5Breakdown):
1830         (displayStr):
1831         (dumpBreakdowns):
1832         (writeCSV):
1833         (detectMotionMark1_1):
1834         (detectMotionMark1_1_1):
1835         (motionMarkResults):
1836         (detectBenchmark):
1837         (getOptions):
1838         (main):
1839         (motionMark1_1Results): Deleted.
1840
1841 2020-06-13  Sam Weinig  <weinig@apple.com>
1842
1843         Extended Color: Experiment with strongly typed ColorComponents
1844         https://bugs.webkit.org/show_bug.cgi?id=212396
1845
1846         Reviewed by Darin Adler.
1847
1848         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
1849         (TestWebKitAPI::TEST):
1850         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
1851         (TestWebKitAPI::TEST):
1852         Update for changed names (e.g. toSRGBAComponentsLossy() -> toSRGBALossy())
1853         and use of explicit types.
1854
1855 2020-06-13  Diego Pino Garcia  <dpino@igalia.com>
1856
1857         Unreviewed, fix configuration setting of WPE Debug (Tests JS) bot
1858         https://bugs.webkit.org/show_bug.cgi?id=213164
1859
1860         The bot was meant to run as Debug.
1861
1862         * BuildSlaveSupport/build.webkit.org-config/config.json:
1863
1864 2020-06-12  Keith Miller  <keith_miller@apple.com>
1865
1866         Tests expecting a crash should use a signal handler in the JSC CLI process
1867         https://bugs.webkit.org/show_bug.cgi?id=212479
1868
1869         Reviewed by Yusuke Suzuki.
1870
1871         Crashing tests should now exit with status zero.
1872
1873         * Scripts/run-jsc-stress-tests:
1874         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
1875         * Scripts/webkitruby/jsc-stress-test-writer-playstation.rb:
1876         * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
1877
1878 2020-06-12  Alex Christensen  <achristensen@webkit.org>
1879
1880         Make API tests tolerant of our relatively new use of WebPageProxy::preconnectTo
1881         https://bugs.webkit.org/show_bug.cgi?id=213144
1882
1883         Reviewed by Geofferey Garen.
1884
1885         Most changes are straightforward moving to HTTPServer, which is more tolerant of different numbers of connections except these two:
1886
1887         The ResourceLoadDelegate.Challenge API test was checking the output of _WKResourceLoadDelegate.didReceiveChallenge
1888         by using a server trust challenge.  Now that preconnecting happens, the server trust evaluation would happen with a
1889         PreconnectTask, not the main resource load.  The WKNavigationDelegate still gets the challenge and there is no problem
1890         here, but in order to continue to test _WKResourceLoadDelegate.didReceiveChallenge I use a basic authentication challenge
1891         instead of a server trust evaluation.
1892
1893         The WebKit.FastServerTrust API test now has two failed attempts (one from the preconnect attempt, one from the main resource load attempt),
1894         but only when _strictTrustEvaluate is not available.
1895
1896         * TestWebKitAPI/TCPServer.cpp:
1897         (TestWebKitAPI::TCPServer::TCPServer):
1898         * TestWebKitAPI/TCPServer.h:
1899         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
1900         (TEST):
1901         (TestWebKitAPI::TEST):
1902         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadDelegate.mm:
1903         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1904         * TestWebKitAPI/cocoa/HTTPServer.h:
1905         * TestWebKitAPI/cocoa/HTTPServer.mm:
1906         (TestWebKitAPI::HTTPServer::respondWithChallengeThenOK):
1907
1908 2020-06-12  Diego Pino Garcia  <dpino@igalia.com>
1909
1910         [buildbot] [GTK][WPE] Move WebDriver test to own bot
1911         https://bugs.webkit.org/show_bug.cgi?id=212527
1912
1913         Reviewed by Carlos Alberto Lopez Perez.
1914
1915         Move 'webdriver-test' step from GTK Release and GTK Debug test bots
1916         to separated bots.
1917
1918         For bots that require a Wayland display (WPE and GTK Wayland),
1919         'webdriver-test' step is run on the corresponding general test bot,
1920         since it's not possible at the moment to run tests that require a 
1921         Wayland display in a bot set as a container.
1922
1923         * BuildSlaveSupport/build.webkit.org-config/config.json:
1924         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1925         (TestFactory.__init__):
1926         (TestWebDriverFactory):
1927         (TestWebDriverFactory.__init__):
1928         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1929
1930 2020-06-12  Takashi Komori  <Takashi.Komori@sony.com>
1931
1932         [Curl] Implement functions to use ResourceLoadStatistics.
1933         https://bugs.webkit.org/show_bug.cgi?id=207692
1934
1935         Reviewed by Don Olmstead.
1936
1937         Implement functions which are required to implement ResourceLoadStatistics for Curl port.
1938
1939         Tests: http/tests/resourceLoadStatistics/
1940
1941         * WebKitTestRunner/TestController.cpp:
1942         (WTR::GetAllStorageAccessEntriesCallbackContext::GetAllStorageAccessEntriesCallbackContext):
1943         (WTR::getAllStorageAccessEntriesCallback):
1944         (WTR::TestController::getAllStorageAccessEntries):
1945
1946 2020-06-12  Jonathan Bedard  <jbedard@apple.com>
1947
1948         Support building test runners for watchOS and tvOS
1949         https://bugs.webkit.org/show_bug.cgi?id=213128
1950         <rdar://problem/64298006>
1951
1952         Reviewed by Tim Horton.
1953
1954         * DumpRenderTree/mac/Configurations/Base.xcconfig: Link against framework stubs.
1955         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Apply iOS rules to all embedded sdks.
1956         * WebKitTestRunner/Configurations/Base.xcconfig: Link against framework stubs.
1957         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig: Apply iOS rules to all embedded sdks.
1958         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Use watchOS entitlements for tvOS.
1959
1960 2020-06-12  Jonathan Bedard  <jbedard@apple.com>
1961
1962         TestWebKitAPI: Build for watchOS and tvOS
1963         https://bugs.webkit.org/show_bug.cgi?id=213127
1964         <rdar://problem/64297979>
1965
1966         Reviewed by Tim Horton.
1967
1968         * TestWebKitAPI/Configurations/Base.xcconfig: Link against framework stubs.
1969         * TestWebKitAPI/Configurations/InjectedBundle.xcconfig: Apply iOS rules to all embedded sdks.
1970         * TestWebKitAPI/Configurations/TestWTF.xcconfig: Ditto.
1971         * TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig: Link against framework stubs.
1972         * TestWebKitAPI/Configurations/WebProcessPlugIn.xcconfig: Apply iOS rules to all embedded sdks.
1973         * TestWebKitAPI/config.h: WatchOS uses SSL.
1974
1975 2020-06-12  Commit Queue  <commit-queue@webkit.org>
1976
1977         Unreviewed, reverting r262942.
1978         https://bugs.webkit.org/show_bug.cgi?id=213132
1979
1980         Broke gst-libav due to dav1d ABI bump
1981
1982         Reverted changeset:
1983
1984         "[Flatpak SDK] Add libavif"
1985         https://bugs.webkit.org/show_bug.cgi?id=212964
1986         https://trac.webkit.org/changeset/262942
1987
1988 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1989
1990         Unreviewed. Fix GTK WebDriver tests after r262938
1991
1992         Ensure a valid title for backforward items in MiniBrowser, using the URL when the title is empty.
1993
1994         * MiniBrowser/gtk/BrowserWindow.c:
1995         (browserWindowCreateBackForwardMenu):
1996
1997 2020-06-12  Philippe Normand  <pnormand@igalia.com>
1998
1999         [Flatpak SDK] Update GTK4 to 3.98.5
2000
2001         Rubber-stamped by Carlos Alberto Lopez Perez.
2002
2003         * buildstream/elements/sdk/gtk.bst:
2004
2005 2020-06-12  Philippe Normand  <pnormand@igalia.com>
2006
2007         [Flatpak SDK] Add libavif
2008         https://bugs.webkit.org/show_bug.cgi?id=212964
2009
2010         Reviewed by Carlos Alberto Lopez Perez.
2011
2012         * buildstream/elements/freedesktop-sdk.bst:
2013         * buildstream/elements/sdk-platform.bst:
2014         * buildstream/elements/sdk/libavif.bst: Added.
2015         * buildstream/patches/fdo/0001-dav1d-Bump-to-0.7.0.patch: Added.
2016
2017 2020-06-12  Philippe Normand  <pnormand@igalia.com>
2018
2019         [Flatpak SDK] Add libkate
2020         https://bugs.webkit.org/show_bug.cgi?id=212865
2021
2022         Reviewed by Carlos Alberto Lopez Perez.
2023
2024         The GStreamer kate decoder is required for some media/track tests being re-enabled in bug
2025         120665.
2026
2027         * buildstream/elements/sdk-platform.bst:
2028         * buildstream/elements/sdk/gst-plugins-bad.bst:
2029         * buildstream/elements/sdk/libkate.bst: Added.
2030
2031 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2032
2033         [GTK4] Get MiniBrowser ready for GTK4
2034         https://bugs.webkit.org/show_bug.cgi?id=210276
2035
2036         Reviewed by Adrian Perez de Castro.
2037
2038         Port MiniBrowser to GTK4. BrowserSearchBar has been renamed as BrowserSearchBox, because in GTK GtkSearchBar is
2039         final class, so we derive from GtkBox and to be used as contents of a GtkSearchBar.
2040
2041         * MiniBrowser/gtk/BrowserCellRendererVariant.c:
2042         (browserCellRendererVariantCellRendererSnapshot):
2043         (browser_cell_renderer_variant_class_init):
2044         * MiniBrowser/gtk/BrowserCellRendererVariant.h:
2045         * MiniBrowser/gtk/BrowserSearchBar.c: Removed.
2046         * MiniBrowser/gtk/BrowserSearchBox.c: Added.
2047         (setFailedStyleForEntry):
2048         (doSearch):
2049         (searchNext):
2050         (searchPrevious):
2051         (searchEntryMenuIconPressedCallback):
2052         (searchEntryClearIconReleasedCallback):
2053         (searchEntryChangedCallback):
2054         (searchEntryActivatedCallback):
2055         (searchPreviousButtonCallback):
2056         (searchNextButtonCallback):
2057         (searchMenuCheckButtonToggledCallback):
2058         (findControllerFailedToFindTextCallback):
2059         (findControllerFoundTextCallback):
2060         (browserSearchBoxFinalize):
2061         (browserSearchBoxDispose):
2062         (browserSearchBoxSizeAllocate):
2063         (browser_search_box_class_init):
2064         (browser_search_box_new):
2065         (browser_search_box_get_entry):
2066         * MiniBrowser/gtk/BrowserSearchBox.h: Renamed from Tools/MiniBrowser/gtk/BrowserSearchBar.h.
2067         * MiniBrowser/gtk/BrowserSettingsDialog.c:
2068         (browser_settings_dialog_init):
2069         (browser_settings_dialog_new):
2070         * MiniBrowser/gtk/BrowserSettingsDialog.h:
2071         * MiniBrowser/gtk/BrowserTab.c:
2072         (loadChanged):
2073         (createInfoBarQuestionMessage):
2074         (tlsErrorsDialogResponse):
2075         (loadFailedWithTLSerrors):
2076         (permissionRequestDialogResponse):
2077         (decidePermissionRequest):
2078         (colorChooserRequestFinished):
2079         (runColorChooserCallback):
2080         (tabCloseClicked):
2081         (browserTabConstructed):
2082         (browserTabIsSearchBarOpen):
2083         (browser_tab_start_search):
2084         (browser_tab_stop_search):
2085         (browser_tab_enter_fullscreen):
2086         (browser_tab_leave_fullscreen):
2087         * MiniBrowser/gtk/BrowserWindow.c:
2088         (settingsCallback):
2089         (resetEntryProgress):
2090         (webViewLoadProgressChanged):
2091         (browserWindowCreateBackForwardMenu):
2092         (browserWindowUpdateNavigationMenu):
2093         (navigationButtonPressed):
2094         (navigationButtonPressCallback):
2095         (scrollEventCallback):
2096         (webViewIsLoadingChanged):
2097         (searchCallback):
2098         (insertImageDialogResponse):
2099         (insertImageCommandCallback):
2100         (insertLinkDialogResponse):
2101         (insertLinkCommandCallback):
2102         (typingAttributesChanged):
2103         (browserWindowSaveSession):
2104         (browserWindowFinalize):
2105         (browserWindowDispose):
2106         (addToolbarButton):
2107         (browserWindowSwitchTab):
2108         (browserWindowTabAddedOrRemoved):
2109         (browserWindowBuildPopoverMenu):
2110         (browserWindowCloseRequest):
2111         (browserWindowDeleteEvent):
2112         (browser_window_class_init):
2113         (browser_window_append_view):
2114         (browser_window_set_background_color):
2115         * MiniBrowser/gtk/CMakeLists.txt:
2116
2117 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2118
2119         [GTK] MiniBrowser: stop using GtkToolbar
2120         https://bugs.webkit.org/show_bug.cgi?id=212898
2121
2122         Reviewed by Adrian Perez de Castro.
2123
2124         GtkToolbar iss no longer available in GTK4, use a GtkBox with buttons instead. Also use symbolic icons and move
2125         some of the actions to a gear menu.
2126
2127         * MiniBrowser/gtk/BrowserWindow.c:
2128         (browserWindowHistoryItemActivated):
2129         (browserWindowCreateBackForwardMenu):
2130         (browserWindowUpdateNavigationMenu):
2131         (navigationButtonPressCallback):
2132         (browserWindowCanZoomDefault):
2133         (browserWindowUpdateZoomActions):
2134         (webViewIsLoadingChanged):
2135         (addToolbarButton):
2136         (browserWindowBuildPopoverMenu):
2137         (resetStatusText): Deleted.
2138         (browserWindowHistoryItemSelected): Deleted.
2139         (browserWindowSetupEditorToolbarItem): Deleted.
2140
2141 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2142
2143         [GTK] MiniBrowser: stop using GtkToolbar for the search bar
2144         https://bugs.webkit.org/show_bug.cgi?id=212817
2145
2146         Reviewed by Adrian Perez de Castro.
2147
2148         Use a GtkSearchBar instead, because GtkToolbar is no longer available in GTK4. Also use a GtkPopover for the
2149         options menu instead of the GtkMenu.
2150
2151         * MiniBrowser/gtk/BrowserSearchBar.c:
2152         (setFailedStyleForEntry):
2153         (doSearch):
2154         (searchEntryMenuIconPressedCallback):
2155         (searchEntryChangedCallback):
2156         (searchMenuCheckButtonToggledCallback):
2157         (browserSearchBarFinalize):
2158         (browser_search_bar_new):
2159         (browser_search_bar_open):
2160         (browser_search_bar_close):
2161         (browser_search_bar_is_open):
2162         (searchCloseButtonClickedCallback): Deleted.
2163         (searchEntryClearIconReleasedCallback): Deleted.
2164         * MiniBrowser/gtk/BrowserSearchBar.h:
2165         * MiniBrowser/gtk/BrowserTab.c:
2166         (browser_tab_start_search):
2167         (browser_tab_stop_search):
2168
2169 2020-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2170
2171         [GTK4] Make WebDriver work
2172         https://bugs.webkit.org/show_bug.cgi?id=212316
2173
2174         Reviewed by Adrian Perez de Castro.
2175
2176         Stop connecting to WebKitWebView::close signal twice for newaly created windows.
2177
2178         * MiniBrowser/gtk/BrowserWindow.c:
2179         (webViewCreate):
2180
2181 2020-06-11  Saam Barati  <sbarati@apple.com>
2182
2183         Skip wasm-js2 test on memory limited devices
2184         https://bugs.webkit.org/show_bug.cgi?id=213099
2185
2186         Reviewed by Yusuke Suzuki.
2187
2188         * Scripts/run-jsc-stress-tests:
2189
2190 2020-06-11  Alex Christensen  <achristensen@webkit.org>
2191
2192         Re-enable download resume tests
2193         https://bugs.webkit.org/show_bug.cgi?id=213098
2194         <rdar://problem/63512518>
2195
2196         Reviewed by Geoffrey Garen.
2197
2198         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2199
2200 2020-06-11  Commit Queue  <commit-queue@webkit.org>
2201
2202         Unreviewed, reverting r262696.
2203         https://bugs.webkit.org/show_bug.cgi?id=213097
2204
2205         It broke running JSC tests on watchOS
2206
2207         Reverted changeset:
2208
2209         "Allow run-jsc-stress-tests still run if some of the remote
2210         hosts are not available"
2211         https://bugs.webkit.org/show_bug.cgi?id=201426
2212         https://trac.webkit.org/changeset/262696
2213
2214 2020-06-11  Sihui Liu  <sihui_liu@apple.com>
2215
2216         REGRESSION (r262879): 3 TestWebKitAPI.TextManipulation tests are failing
2217         https://bugs.webkit.org/show_bug.cgi?id=213079
2218         <rdar://problem/64256870>
2219
2220         Reviewed by Wenson Hsieh.
2221
2222         Update a few tests after behavior change in r262879. From r262879, we no longer use visible positions of element
2223         to calculate range to observe. Instead, we use the first and end position in the element to decide the range. In
2224         previous implementation, the range can be extended to outside of the element, like some visible positon before 
2225         or after the element.
2226
2227         TextManipulation.StartTextManipulationFindNewlyDisplayedParagraph: Different elements would make separate ranges 
2228         because we create range with the boundaries of element. We can consider merging adjacent ranges later.
2229         TextManipulation.StartTextManipulationFindSameParagraphWithNewContent: The newly observing range only includes
2230         the newly inserted element now.
2231         TextManipulation.InsertingContentIntoAlreadyManipulatedContentDoesNotCreateTextManipulationItem: The p element
2232         is not manipulated as it is the common ancestor of manipulated elements. And we want to make sure the newly
2233         inserted element is child of a manipulated element.
2234
2235         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2236         (TestWebKitAPI::TEST):
2237
2238 2020-06-11  Andy Estes  <aestes@apple.com>
2239
2240         [iOS] nullptr deref in FileInputType::iconLoaded when the input's type attribute is modified by a change event listener
2241         https://bugs.webkit.org/show_bug.cgi?id=208244
2242         <rdar://problem/41855350>
2243
2244         Reviewed by Wenson Hsieh.
2245
2246         * DumpRenderTree/TestRunner.cpp:
2247         (SetOpenPanelFilesMediaIconCallback):
2248         (TestRunner::staticFunctions):
2249         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2250         (WTR::TestRunner::setOpenPanelFilesMediaIcon):
2251
2252 2020-06-11  Sergio Villar Senin  <svillar@igalia.com>
2253
2254         Unreviewed, updated libsoup dependency in jhbuild.
2255
2256         * wpe/jhbuild.modules:
2257
2258 2020-06-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
2259
2260         [macOS]: The File Picker of the <input> file element should show the selection filter
2261         https://bugs.webkit.org/show_bug.cgi?id=212485
2262
2263         Reviewed by Darin Adler.
2264
2265         Create a view with an NSPopupButton for the file extensions filter. Set
2266         this view as the AccessoryView of the OpenPanel. Create a customized target
2267         for the NSPopupButton to respond to changing its selection.
2268
2269         * MiniBrowser/mac/WK2BrowserWindowController.m:
2270         (-[FileExtensionsPopupTarget initWithOpenPanel:allowedFileExtensions:]):
2271         (-[FileExtensionsPopupTarget popupAction:]):
2272         (-[FileExtensionsPopupTarget dealloc]):
2273         (-[WK2BrowserWindowController dealloc]):
2274         (-[WK2BrowserWindowController createFilterView:popupTarget:]):
2275         (-[WK2BrowserWindowController webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
2276
2277 2020-06-10  Jonathan Bedard  <jbedard@apple.com>
2278
2279         Generalize configure-xcode-for-ios-development (Part 2)
2280         https://bugs.webkit.org/show_bug.cgi?id=207043
2281         <rdar://problem/63946933>
2282
2283         Reviewed by Darin Adler.
2284
2285         * EWSTools/start-queue-mac.sh: Use configure-xcode-for-embedded-development over configure-xcode-for-ios-development.
2286         * Scripts/configure-xcode-for-ios-development: Removed.
2287
2288 2020-06-10  Sihui Liu  <sihui_liu@apple.com>
2289
2290         Text manipulation does not observe inserted elements that are invisible
2291         https://bugs.webkit.org/show_bug.cgi?id=213057
2292         <rdar://problem/63768253>
2293
2294         Reviewed by Wenson Hsieh.
2295
2296         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2297         (TestWebKitAPI::TEST):
2298
2299 2020-06-10  Geoffrey Garen  <ggaren@apple.com>
2300
2301         Some style improvements to main thread code
2302         https://bugs.webkit.org/show_bug.cgi?id=213051
2303
2304         Reviewed by Darin Adler.
2305
2306         Updated for rename.
2307         
2308         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2309         (TestWebKitAPI::TEST):
2310         * TestWebKitAPI/Tests/WTF/RunLoop.cpp:
2311         (TestWebKitAPI::TEST):
2312         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
2313         (TestWebKitAPI::TEST):
2314         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
2315         (ApplicationManifestParserTest::SetUp):
2316         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
2317         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
2318         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2319         (TestWebKitAPI::ContentExtensionTest::SetUp):
2320         * TestWebKitAPI/Tests/WebCore/DNS.cpp:
2321         (TestWebKitAPI::TEST):
2322         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2323         (TestWebKitAPI::TEST_F):
2324         * TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:
2325         (initializeInAppBrowserPrivacyTestSettings):
2326         * WebKitTestRunner/TestController.cpp:
2327         (WTR::TestController::initialize):
2328
2329 2020-06-10  Jonathan Bedard  <jbedard@apple.com>
2330
2331         results.webkit.org: Health check should access redis and Cassandra
2332         https://bugs.webkit.org/show_bug.cgi?id=212899
2333         <rdar://problem/64118077>
2334
2335         Reviewed by Stephanie Lewis.
2336
2337         * resultsdbpy/resultsdbpy/example/main.py:
2338         (health): Check the health status of the model.
2339         * resultsdbpy/resultsdbpy/model/model.py:
2340         (Model.HealthTable):
2341         (Model.__init__): Construct a Cassandra table used to check the health of our Cassandra connection.
2342         (Model.healthy): Make both a read and write connection to our two database dependencies so that if
2343         our connection to those databases fails, an instance will be forced to restart.
2344         * resultsdbpy/resultsdbpy/model/model_unittest.py: Added.
2345         (ModelTest):
2346         (ModelTest.init_database):
2347         (ModelTest.test_health):
2348
2349 2020-06-10  Keith Miller  <keith_miller@apple.com>
2350
2351         run-jsc-stress-tests should skip tests marked as slow in quick mode.
2352         https://bugs.webkit.org/show_bug.cgi?id=213042
2353
2354         Reviewed by Yusuke Suzuki.
2355
2356         * Scripts/run-jsc-stress-tests:
2357
2358 2020-06-10  Antoine Quint  <graouts@webkit.org>
2359
2360         Subframes should not autosize independently
2361         https://bugs.webkit.org/show_bug.cgi?id=212984
2362         <rdar://problem/64175493>
2363
2364         Reviewed by Simon Fraser.
2365
2366         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
2367         (TEST): Added test for <object>.
2368
2369 2020-06-09  Ryan Haddad  <ryanhaddad@apple.com>
2370
2371         [Mojave] Flaky API Test: TestWebKitAPI.WebKitLegacy.CrossPartitionFileSchemeAccess
2372         https://bugs.webkit.org/show_bug.cgi?id=206956
2373
2374         Unreviewed test gardening.
2375
2376         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Disable this test for Mojave.
2377
2378 2020-06-10  Alex Christensen  <achristensen@webkit.org>
2379
2380         Revert r259770
2381         https://bugs.webkit.org/show_bug.cgi?id=210097
2382         <rdar://problem/64175992>
2383
2384         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2385         (TEST):
2386
2387 2020-06-10  Commit Queue  <commit-queue@webkit.org>
2388
2389         Unreviewed, reverting r262807.
2390         https://bugs.webkit.org/show_bug.cgi?id=213019
2391
2392         It is breaking JSC queues (Requested by caiolima on #webkit).
2393
2394         Reverted changeset:
2395
2396         "Add a timeout monitor for JSC stress test"
2397         https://bugs.webkit.org/show_bug.cgi?id=211978
2398         https://trac.webkit.org/changeset/262807
2399
2400 2020-06-09  Fujii Hironori  <Hironori.Fujii@sony.com>
2401
2402         Unreviewed, reverting r262791.
2403
2404         WinCairo WebKit1 is crashing.
2405
2406         Reverted changeset:
2407
2408         "[Curl] Implement functions to use ResourceLoadStatistics."
2409         https://bugs.webkit.org/show_bug.cgi?id=207692
2410         https://trac.webkit.org/changeset/262791
2411
2412 2020-06-09  Zhifei Fang  <zhifei_fang@apple.com>
2413
2414         Add a timeout monitor for JSC stress test
2415         https://bugs.webkit.org/show_bug.cgi?id=211978
2416
2417         Reviewed by Jonathan Bedard.
2418
2419         * Scripts/webkitruby/jsc-stress-test-writer-default.rb: Add timeout monitor inside the jsc stress test runner, it will kill the process in case of jsc timeout handler not working
2420
2421 2020-06-09  Tim Horton  <timothy_horton@apple.com>
2422
2423         WebKit.ShrinkToFit is failing on some bots
2424         https://bugs.webkit.org/show_bug.cgi?id=212932
2425         <rdar://problem/60972407>
2426
2427         Reviewed by Simon Fraser.
2428
2429         TestWebKitAPI was failing to stabilize the overlay scrollbar preference,
2430         because the only stabilization attempt was in the injected bundle 
2431         initialization code, and most tests (including ShrinkToFit) do not have
2432         an injected bundle.
2433
2434         Because this preference is manually propagated to the Web Content process,
2435         we can set the default in the volatile domain in the UI process at startup.
2436
2437         We can't move other preferences yet, because they are not manually propagated,
2438         and WebKit's NSUserDefault synchronization mechanism ignores defaults in the
2439         volatile domain (and the initial preference load reads from disk, not
2440         from the UI process, so it wouldn't find them anyway).
2441
2442         * TestWebKitAPI/Tests/WebKitCocoa/ShrinkToFit.mm:
2443         (TEST):
2444         Explain why the final value of the test is different than the starting value.
2445
2446         * TestWebKitAPI/mac/InjectedBundleControllerMac.mm:
2447         (TestWebKitAPI::InjectedBundleController::platformInitialize):
2448         Leave a FIXME for future generations.
2449
2450         * TestWebKitAPI/mac/mainMac.mm:
2451         (main):
2452         Override overlay scrollbar preferences in the UI process, so it affects all tests.
2453
2454         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
2455         This test is also affected by using non-overlay scrollbars; we now have less space, so take up more pages.
2456
2457 2020-06-09  Youenn Fablet  <youenn@apple.com>
2458
2459         BaseAudioSharedUnit should unmute its clients in case of suspension even if not having any audio unit
2460         https://bugs.webkit.org/show_bug.cgi?id=212970
2461
2462         Reviewed by Eric Carlson.
2463
2464         Add an option to capture in UI process so that the same test can run on both MacOS and iOS.
2465         This eases the testing infra to be able to get audio capture unit state in WebProcess as is the case in iOS.
2466
2467         * WebKitTestRunner/TestController.cpp:
2468         (WTR::TestController::resetPreferencesToConsistentValues):
2469         (WTR::updateTestOptionsFromTestHeader):
2470         * WebKitTestRunner/TestOptions.h:
2471         (WTR::TestOptions::hasSameInitializationOptions const):
2472
2473 2020-06-09  Takashi Komori  <Takashi.Komori@sony.com>
2474
2475         [Curl] Implement functions to use ResourceLoadStatistics.
2476         https://bugs.webkit.org/show_bug.cgi?id=207692
2477
2478         Implement functions which are required to implement ResourceLoadStatistics for Curl port.
2479
2480         Tests: http/tests/resourceLoadStatistics/
2481
2482         Reviewed by Don Olmstead.
2483
2484         * WebKitTestRunner/TestController.cpp:
2485         (WTR::GetAllStorageAccessEntriesCallbackContext::GetAllStorageAccessEntriesCallbackContext):
2486         (WTR::getAllStorageAccessEntriesCallback):
2487         (WTR::TestController::getAllStorageAccessEntries):
2488
2489 2020-06-09  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2490
2491         [Flatpak][GStreamer] enhance GST_ environment variable passing
2492         https://bugs.webkit.org/show_bug.cgi?id=212905
2493
2494         Reviewed by Philippe Normand.
2495
2496         Handle the passing of several GST environment variables,
2497         particularly GST_DEBUG, which, when using * symbol, python adds
2498         quotes, but they break the parsing in GStreamer.
2499
2500         Also the variables are handled by gst-env.py when using
2501         GST_BUILD_PATH, so they are filtered out when it's exported,
2502         avoiding duplication. But it GST_BUILD_PATH is not defined, the
2503         variables are passed to flatpak.
2504
2505         * flatpak/flatpakutils.py:
2506         (WebkitFlatpak.setup_gstbuild):
2507         (WebkitFlatpak.run_in_sandbox):
2508
2509 2020-06-09  Sihui Liu  <sihui_liu@apple.com>
2510
2511         TextManipulationController range of paragraph may be wrong after r262601
2512         https://bugs.webkit.org/show_bug.cgi?id=212874
2513
2514         Reviewed by Wenson Hsieh.
2515
2516         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2517         (TestWebKitAPI::TEST):
2518
2519 2020-06-08  Sihui Liu  <sihui_liu@apple.com>
2520
2521         TextManipulation should only convert text from Node's text content to tokens
2522         https://bugs.webkit.org/show_bug.cgi?id=212928
2523
2524         Reviewed by Wenson Hsieh.
2525
2526         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2527         (TestWebKitAPI::TEST):
2528
2529 2020-06-08  Diego Pino Garcia  <dpino@igalia.com>
2530
2531         [webkitpy] Check 'bug-search' returns a non null result before parsing
2532         https://bugs.webkit.org/show_bug.cgi?id=212906
2533
2534         Reviewed by Jonathan Bedard.
2535
2536         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2537         (BugzillaQueries._parse_result_count): Check quick-search query
2538         response is non-null and a non-empty text.
2539
2540 2020-06-08  Sam Weinig  <weinig@apple.com>
2541
2542         Extended Color: Rename Color::lighten() and Color::darken() to Color::lightened() and Color::darkened()
2543         https://bugs.webkit.org/show_bug.cgi?id=212917
2544
2545         Reviewed by Darin Adler.
2546
2547         Addresses feedback from Darin.
2548
2549         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2550         (TestWebKitAPI::TEST):
2551
2552 2020-06-08  Sam Weinig  <weinig@apple.com>
2553
2554         Fix test results after r262733.
2555
2556         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2557         (TestWebKitAPI::TEST):
2558
2559 2020-06-08  David Kilzer  <ddkilzer@apple.com>
2560
2561         [IPC] Adopt enum class for DragOperation
2562         <https://webkit.org/b/212870>
2563         <rdar://problem/64069940>
2564
2565         Reviewed by Darin Adler.
2566
2567         * Scripts/do-webcore-rename:
2568         - Do DragOperation renames.
2569
2570 2020-06-08  Commit Queue  <commit-queue@webkit.org>
2571
2572         Unreviewed, reverting r262685.
2573         https://bugs.webkit.org/show_bug.cgi?id=212914
2574
2575         caused flakey crashes in an iOS test
2576
2577         Reverted changeset:
2578
2579         "Clear WebPageProxy event state between tests"
2580         https://bugs.webkit.org/show_bug.cgi?id=212864
2581         https://trac.webkit.org/changeset/262685
2582
2583 2020-06-08  Sam Weinig  <weinig@apple.com>
2584
2585         Extended Color: Unify rounding / clamping conversions between 0-1 float components and 0-255 byte components
2586         https://bugs.webkit.org/show_bug.cgi?id=212871
2587
2588         Reviewed by Simon Fraser.
2589
2590         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2591         (TestWebKitAPI::TEST):
2592         Switch to using makeSimpleColor(hslToSRGB(...)) directly.
2593
2594 2020-06-08  Sam Weinig  <weinig@apple.com>
2595
2596         Extended Color: Replace uses of differenceSquared() with luminance based computations
2597         https://bugs.webkit.org/show_bug.cgi?id=212872
2598
2599         Reviewed by Darin Adler.
2600
2601         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
2602         (TestWebKitAPI::TEST):
2603         Add basic tests for Color::luminance(), ensuring white == 1, black == 0, and 
2604         darken() and lighten() creat colors with less than / greater than luminance.
2605
2606 2020-06-08  Per Arne Vollan  <pvollan@apple.com>
2607
2608         [Cocoa] CFPrefs synchronization does not always work for global preference changes
2609         https://bugs.webkit.org/show_bug.cgi?id=212783
2610
2611         Reviewed by Tim Horton.
2612
2613         Add API test, and add some synchronization to avoid flakiness.
2614
2615         * TestWebKitAPI/Tests/WebKit/PreferenceChanges.mm:
2616         (-[WKTestPreferenceObserver preferenceDidChange:key:encodedValue:]):
2617         (TEST):
2618         (sharedInstanceMethodOverride):
2619
2620 2020-06-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2621
2622         [iOS] Hit-testing on icloud.com is offset after closing a tab
2623         https://bugs.webkit.org/show_bug.cgi?id=212890
2624         <rdar://problem/58775297>
2625
2626         Reviewed by Simon Fraser.
2627
2628         Add a new API test to verify that the scroll position doesn't get stuck at -30px after shifting both the top
2629         content inset and top obscured inset by 30px. See WebKit ChangeLog for more details.
2630
2631         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2632         * TestWebKitAPI/Tests/WebKitCocoa/overflow-hidden.html: Added.
2633         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
2634         (-[ScrollViewDelegate scrollViewDidScroll:]):
2635         (TestWebKitAPI::TEST):
2636         * TestWebKitAPI/ios/UIKitSPI.h:
2637
2638 2020-06-08  Philippe Normand  <pnormand@igalia.com>
2639
2640         [Flatpak SDK] Add flatpak-run-nightly
2641         https://bugs.webkit.org/show_bug.cgi?id=212882
2642
2643         Reviewed by Carlos Alberto Lopez Perez.
2644
2645         This new script is able to download WPE and GTK builds from the Igalia servers and run the
2646         corresponding binaries (like MiniBrowser, jsc) within the Flatpak SDK.
2647
2648         Unzipped builds will be saved in /tmp and can be reused in further runs (by providing the
2649         path with the -p argument).
2650
2651         Example:
2652         $ webkit-flatpak-run-nightly --wpe MiniBrowser https://webkit.org
2653         <SDK installs to ~/.cache/wk-nightly>
2654         Downloading build release_r262699_b33885.zip from https://wpewebkit-release.igalia.com/built-products/
2655         Extracting build to /tmp/wpewebkit-release-b33885
2656         <MiniBrowser starts>
2657
2658         $ webkit-flatpak-run-nightly --wpe -p /tmp/wpewebkit-release-b33885 jsc
2659         Looking for updates…
2660         Nothing to do.
2661         >>> 2+2
2662         4
2663
2664         * Scripts/webkit-flatpak-run-nightly: Added.
2665
2666 2020-06-08  Diego Pino Garcia  <dpino@igalia.com>
2667
2668         [webkitpy] Make 'webkit-path rebaseline' to not update expectations file by default
2669         https://bugs.webkit.org/show_bug.cgi?id=212835
2670
2671         Reviewed by Carlos Alberto Lopez Perez.
2672
2673         `webkit-patch rebaseline` let us add or update a test baseline
2674         from a test bot. By default, the command also updates the
2675         corresponding expectations file. This update is actually a brand-new
2676         generation of an expectations file based on the results of the bot,
2677         which in most cases messes up the current contents of the file.
2678
2679         This patch makes the default to not update the expectations file and
2680         adds a new option '--update-expectations' to explicitly request an
2681         update.
2682
2683         * Scripts/webkitpy/tool/commands/rebaseline.py:
2684         (AbstractRebaseliningCommand):
2685         (RebaselineTest.__init__):
2686         (RebaselineTest._rebaseline_tests):
2687         (RebaselineTest.execute):
2688         (AbstractParallelRebaselineCommand._rebaseline_commands):
2689         (RebaselineExpectations.__init__):
2690         (RebaselineExpectations.execute):
2691         (Rebaseline.__init__):
2692         (RebaselineTest._rebaseline_test_and_update_expectations): Deleted.
2693         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
2694         (TestRebaselineTest.setUp):
2695
2696 2020-06-08  Youenn Fablet  <youenn@apple.com>
2697
2698         File URLs with hostnames are misleading
2699         https://bugs.webkit.org/show_bug.cgi?id=212739
2700         <rdar://problem/63754917>
2701
2702         Reviewed by Alex Christensen.
2703
2704         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2705         * TestWebKitAPI/Tests/WebKit/open-window-with-file-url-with-host.html: Added.
2706         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
2707         (TEST):
2708
2709 2020-06-07  Caio Lima  <ticaiolima@gmail.com>
2710
2711         Allow run-jsc-stress-tests still run if some of the remote hosts are not available
2712         https://bugs.webkit.org/show_bug.cgi?id=201426
2713
2714         Reviewed by Saam Barati.
2715
2716         This patch allows run-jsc-stress-tests to keep on running if some of
2717         the remote hosts are not available. To do this, we created a new
2718         function `checkAndPrepareRemoteHosts` that is responsible to check the
2719         connection and read/write permissions of given remote hosts list. It
2720         filters out every unavailable remote host.
2721         These checks and filter happen in the beginning of the script and is
2722         excuted only once, in the beggining of the script. It means that if
2723         some remote device becomes unavailable after the check and preparation
2724         is done, the script execution will be interupted.
2725
2726         * Scripts/run-jsc-stress-tests:
2727
2728 2020-06-07  Philippe Normand  <pnormand@igalia.com>
2729
2730         Remove ENABLE_VIDEO_TRACK ifdef guards
2731         https://bugs.webkit.org/show_bug.cgi?id=212568
2732
2733         Reviewed by Youenn Fablet.
2734
2735         * Scripts/webkitperl/FeatureList.pm:
2736         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2737
2738 2020-06-06  Simon Fraser  <simon.fraser@apple.com>
2739
2740         Clear WebPageProxy event state between tests
2741         https://bugs.webkit.org/show_bug.cgi?id=212864
2742
2743         Reviewed by Anders Carlsson.
2744
2745         Make sure that event state doesn't leak between tests via events queued in WebPageProxy.
2746
2747         * WebKitTestRunner/TestController.cpp:
2748         (WTR::TestController::resetStateToConsistentValues):
2749
2750 2020-06-06  Peng Liu  <peng.liu6@apple.com>
2751
2752         REGRESSION (r262456): [iOS Debug] TestWebKitAPI.WKWebViewCloseAllMediaPresentations.PictureInPicture is frequently timing out
2753         https://bugs.webkit.org/show_bug.cgi?id=212777
2754
2755         Unreviewed test gardening.
2756
2757         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
2758         Disable the PictureInPicture test for old iOS devices.
2759
2760 2020-06-05  Ryan Haddad  <ryanhaddad@apple.com>
2761
2762         [iOS] TestWebKitAPI.WKWebsiteDataStore.RemoveAndFetchData is failing
2763         https://bugs.webkit.org/show_bug.cgi?id=208451
2764
2765         Unreviewed test gardening.
2766
2767         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Disable this test again because it is still failing on certain bots.
2768
2769 2020-06-05  Daniel Bates  <dabates@apple.com>
2770
2771         -_focusTextInputContext should reposition the caret if called for an already focused text input context
2772         https://bugs.webkit.org/show_bug.cgi?id=212830
2773         <rdar://problem/64032956>
2774
2775         Reviewed by Wenson Hsieh.
2776
2777         Re-purpose some existing tests to check for the new behavior.
2778
2779         In TextInteraction_FocusingAssistedElementShouldScrollToReveal, keep in mind that the caret position is
2780         changing: on iOS, calling input.focus() places the caret at the end of the field's content.
2781
2782         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
2783         (TestWebKitAPI::TEST):
2784
2785 2020-06-05  Jonathan Bedard  <jbedard@apple.com>
2786
2787         Generalize configure-xcode-for-ios-development (Part 1)
2788         https://bugs.webkit.org/show_bug.cgi?id=207043
2789
2790         Rubber-stamped by David Kilzer.
2791
2792         Patch by Keith Rollin and Jonathan Bedard.
2793
2794         Replace configure-xcode-for-ios-development with a Python script that works for iOS,
2795         watchOS and tvOS.
2796
2797         * Scripts/configure-xcode-for-embedded-development: Added.
2798
2799 2020-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2800
2801         Text manipulation should exclude characters outside of the unicode private use area
2802         https://bugs.webkit.org/show_bug.cgi?id=212800
2803         <rdar://problem/63736417>
2804
2805         Reviewed by Sihui Liu.
2806
2807         Add a new API test to verify the new behavior when extracting PUA characters.
2808
2809         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2810         (TestWebKitAPI::TEST):
2811
2812 2020-06-05  Dean Jackson  <dino@apple.com>
2813
2814         REGRESSION (r262366): [ Mac wk1 ] webgl/webgl-backing-store-size-update.html is failing
2815         https://bugs.webkit.org/show_bug.cgi?id=212647
2816         <rdar://problem/63882960>
2817
2818         Reviewed by Eric Carlson.
2819
2820         Drive-by comment from Simon. Remove some useless braces.
2821
2822         * TestWebKitAPI/Tests/WebKitLegacy/ios/WebGLPrepareDisplayOnWebThread.mm:
2823
2824 2020-06-05  Saam Barati  <sbarati@apple.com>
2825
2826         Try to reduce jetsams further on iOS devices running jsc stress tests
2827         https://bugs.webkit.org/show_bug.cgi?id=212786
2828
2829         Reviewed by Mark Lam.
2830
2831         * Scripts/run-jsc-stress-tests:
2832
2833 2020-06-05  Peng Liu  <peng.liu6@apple.com>
2834
2835         REGRESSION (r262456?): [macOS] media/picture-in-picture/picture-in-picture-api tests are flaky timeouts
2836         https://bugs.webkit.org/show_bug.cgi?id=212762
2837
2838         Reviewed by Eric Carlson.
2839
2840         Skip the Picture-in-Picture test if Picture-in-Picture is not supported and add playsinline attribute
2841         to the video element.
2842
2843         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
2844         (TEST):
2845
2846 2020-06-05  Andy Estes  <aestes@apple.com>
2847
2848         [Apple Pay] Remove conditionals for ENABLE_APPLE_PAY_SESSION_V(3|4)
2849         https://bugs.webkit.org/show_bug.cgi?id=212541
2850         <rdar://problem/63781452>
2851
2852         Reviewed by Darin Adler.
2853
2854         APPLE_PAY_SESSION_V(3|4) is now enabled whenever APPLE_PAY itself is enabled.
2855
2856         * Scripts/webkitperl/FeatureList.pm:
2857         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2858
2859 2020-06-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2860
2861         [GTK] MiniBrowser: use GAction API for actions and shortcuts in preparation for GTK4
2862         https://bugs.webkit.org/show_bug.cgi?id=212740
2863
2864         Reviewed by Adrian Perez de Castro.
2865
2866         Make MiniBrowser a GtkApplication and BrowserWindow a GtkApplicationWindow to easily install actions and shortcuts.
2867
2868         * MiniBrowser/gtk/BrowserMain.c: Removed.
2869         * MiniBrowser/gtk/BrowserMain.h: Removed.
2870         * MiniBrowser/gtk/BrowserSearchBar.c:
2871         (searchPreviousButtonCallback):
2872         (searchNextButtonCallback):
2873         * MiniBrowser/gtk/BrowserSearchBar.h:
2874         * MiniBrowser/gtk/BrowserTab.c:
2875         * MiniBrowser/gtk/BrowserTab.h:
2876         * MiniBrowser/gtk/BrowserWindow.c:
2877         (reloadOrStopCallback):
2878         (goBackCallback):
2879         (goForwardCallback):
2880         (settingsCallback):
2881         (browserWindowUpdateNavigationMenu):
2882         (browserWindowTryCloseCurrentWebView):
2883         (browserWindowTryClose):
2884         (webViewCreate):
2885         (browserWindowUpdateZoomActions):
2886         (webViewZoomLevelChanged):
2887         (zoomInCallback):
2888         (zoomOutCallback):
2889         (defaultZoomCallback):
2890         (searchCallback):
2891         (newTabCallback):
2892         (toggleWebInspector):
2893         (openPrivateWindow):
2894         (focusLocationBar):
2895         (reloadPage):
2896         (reloadPageIgnoringCache):
2897         (stopPageLoad):
2898         (loadHomePage):
2899         (toggleFullScreen):
2900         (printPage):
2901         (editingActionCallback):
2902         (typingAttributesChanged):
2903         (browserWindowFinalize):
2904         (browserWindowSetupEditorToolbarItem):
2905         (browserWindowSetupToolbarItem):
2906         (browserWindowDeleteEvent):
2907         (browser_window_new):
2908         (browser_window_append_view):
2909         (browser_window_get_or_create_web_view_for_automation):
2910         (browser_window_create_web_view_in_new_tab_for_automation):
2911         * MiniBrowser/gtk/BrowserWindow.h:
2912         * MiniBrowser/gtk/CMakeLists.txt:
2913         * MiniBrowser/gtk/main.c:
2914         (createWebViewForAutomationInWindowCallback):
2915         (createWebViewForAutomationInTabCallback):
2916         (automationStartedCallback):
2917         (startup):
2918         (activate):
2919         (main):
2920
2921 2020-06-04  Sihui Liu  <sihui_liu@apple.com>
2922
2923         Text manipulation: first and last unit in a paragraph should not contain only excluded tokens
2924         https://bugs.webkit.org/show_bug.cgi?id=212759
2925
2926         Reviewed by Wenson Hsieh.
2927
2928         Modify existing test for changed behavior that leading and trailing excluded units are not included in paragraph
2929         now.
2930
2931         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2932         (TestWebKitAPI::TEST):
2933
2934 2020-06-04  Chris Dumez  <cdumez@apple.com>
2935
2936         UIProcess may crash after its prewarmed WebProcess gets terminated
2937         https://bugs.webkit.org/show_bug.cgi?id=212790
2938         <rdar://problem/63696191>
2939
2940         Reviewed by Geoffrey Garen.
2941
2942         Add API test coverage.
2943
2944         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2945         (TEST):
2946
2947 2020-06-04  Sihui Liu  <sihui_liu@apple.com>
2948
2949         REGRESSION: (r262398) Text manipulation crashes when content is added
2950         https://bugs.webkit.org/show_bug.cgi?id=212785
2951
2952         Reviewed by Ryosuke Niwa.
2953
2954         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
2955         (TestWebKitAPI::TEST):
2956
2957 2020-06-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2958
2959         Improve watchlist logic for comments on patches touching imported WPT tests.
2960         https://bugs.webkit.org/show_bug.cgi?id=212597
2961
2962         Reviewed by Youenn Fablet.
2963
2964         On r262295 I added a watchlist comment for patches touching the imported WPT tests.
2965         However, this is commenting on patches that are importing WPT tests.
2966
2967         To avoid this situations, this patch adds a new rule to detect if the changes modify
2968         any of the w3c-import.log files, and then changes the logic to make the comment only
2969         for patches that modify the WPT imported tests but not the w3c-import.log files.
2970
2971         In order to support this new logic, watchlist rule parsing is improved to support
2972         the "and" and "not" operators. Previously it only supported the "or" operator.
2973
2974         * Scripts/webkitpy/common/config/watchlist:
2975         * Scripts/webkitpy/common/watchlist/watchlistparser.py:
2976         (WatchListParser._rule_definitions_as_set):
2977         * Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:
2978         (WatchListParserTest.test_cc_rule_with_undefined_defintion_with_suggestion):
2979         (WatchListParserTest):
2980         (WatchListParserTest.test_cc_rule_with_complex_logic):
2981         * Scripts/webkitpy/common/watchlist/watchlistrule.py:
2982         (WatchListRule.__init__):
2983         (WatchListRule._match_test_definitions):
2984         (WatchListRule.match):
2985         * Scripts/webkitpy/common/watchlist/watchlistrule_unittest.py:
2986         (WatchListRuleTest.test_complex_definition_or):
2987         (WatchListRuleTest):
2988         (WatchListRuleTest.test_complex_definition_and):
2989         (WatchListRuleTest.test_complex_definition_not):
2990         (WatchListRuleTest.test_complex_definition_combined):
2991
2992 2020-06-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2993
2994         svn-apply command is too slow with big patches
2995         https://bugs.webkit.org/show_bug.cgi?id=212766
2996
2997         Reviewed by Darin Adler.
2998
2999         The script svn-apply was calling a "git add" or "svn add" command
3000         after adding each new file. This caused the git or svn command to
3001         re-check the internal SCM database each time they were called, and
3002         this was really slow when lot of new files are added.
3003         Instead of doing this, we queue the list of new files in memory,
3004         and at the end we call "git add" or "svn add" once (or a few times).
3005
3006         On top of that, another optimization is added for the case of git,
3007         to avoid calling scmKnowsOfFile() inside addDirectoriesIfNeeded(),
3008         which is a slow operation and gets called a lot (once per file).
3009         Doing that for git is totally unneeded, as the only thing we have
3010         to take care about, is of ensuring that the directory is created.
3011         See: https://wkb.ug/86973
3012
3013         This reduces the time spent in the large test patch that caused
3014         this issue (see bug):
3015          - Git: 8 hours (before) -> 8 minutes (now).
3016          - SVN: 25 minutes (before) -> 5 minutes (now).
3017
3018         * Scripts/svn-apply:
3019         (addDirectoriesIfNeeded):
3020         (handleBinaryChange):
3021         (handleGitBinaryChange):
3022         (patch):
3023         (scmRemove):
3024         (scmAddQueued):
3025         (scmCommitQueueAdded):
3026         (scmToggleExecutableBitQueued):
3027         (scmCommitQueueToggledExecutableBit):
3028
3029 2020-06-04  Jonathan Bedard  <jbedard@apple.com>
3030
3031         Add watchOS and tvOS to build-webkit
3032         https://bugs.webkit.org/show_bug.cgi?id=212719
3033         <rdar://problem/63951600>
3034
3035         Reviewed by Tim Horton.
3036
3037         * Scripts/build-webkit: Add tvOS and watchOS flags, generalize embedded if statements.
3038         * Scripts/webkitdirs.pm:
3039         (determineArchitecture): Add tvOS and watchOS architectures.
3040         (argumentsForConfiguration): Add tvOS and watchOS flags.
3041         (extractNonMacOSHostConfiguration): Ditto.
3042
3043 2020-06-04  Tim Horton  <timothy_horton@apple.com>
3044
3045         Work around broken system version macro
3046         https://bugs.webkit.org/show_bug.cgi?id=212726
3047
3048         Reviewed by Dan Bernstein.
3049
3050         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
3051         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
3052         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
3053         * MiniBrowser/Configurations/DebugRelease.xcconfig:
3054         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
3055         * WebEditingTester/Configurations/DebugRelease.xcconfig:
3056         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
3057         * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig:
3058
3059 2020-06-04  Andy Estes  <aestes@apple.com>
3060
3061         [watchOS] Re-enable content filtering in the simulator build
3062         https://bugs.webkit.org/show_bug.cgi?id=212711
3063         <rdar://problem/63938350>
3064
3065         Reviewed by Wenson Hsieh.
3066
3067         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3068
3069 2020-06-04  Philippe Normand  <pnormand@igalia.com>
3070
3071         [Flatpak SDK] Update definitions
3072         https://bugs.webkit.org/show_bug.cgi?id=212698
3073
3074         Reviewed by Žan Doberšek.
3075
3076         * buildstream/elements/freedesktop-sdk.bst: Update to FDO 19.08.11
3077         * buildstream/elements/sdk/gtk.bst: Update GTK4
3078         * buildstream/patches/fdo/0001-Pango-Bump-to-1.45-master.patch: Added. Needed for GTK4
3079         * buildstream/patches/fdo/0001-Add-Jack.patch: Removed. This will be used when we update to the 20.08 FDO SDK.
3080         * buildstream/patches/fdo/0001-components-xdg-desktop-portal.bst-Update-to-1.6.0.patch: Removed. Ditto.
3081         * buildstream/patches/fdo/0002-Update-PipeWire-to-0.3.1.patch: Removed. Ditto.
3082
3083 2020-06-03  Tadeu Zagallo  <tzagallo@apple.com>
3084
3085         Disable B3 hoistLoopInvariantValues by default
3086         https://bugs.webkit.org/show_bug.cgi?id=212511
3087         <rdar://problem/63813245>
3088
3089         Reviewed by Mark Lam.
3090
3091         Enable the B3 hoistLoopInvariantValues pass in one of our existing configurations to
3092         avoid bit rot since we'd like to re-enable it eventually.
3093
3094         * Scripts/run-jsc-stress-tests:
3095
3096 2020-06-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3097
3098         [Text manipulation] Extract the value attribute in inputs of type "text" and "search"
3099         https://bugs.webkit.org/show_bug.cgi?id=212706
3100         <rdar://problem/63876969>
3101
3102         Reviewed by Tim Horton.
3103
3104         Add a new test case (similar to the existing test `StartTextManipulationExtractsValuesFromButtonInputs`) to
3105         verify that we extract text from the `value` of inputs of type "text" and "search".
3106
3107         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3108         (TestWebKitAPI::TEST):
3109
3110 2020-06-03  Michael Saboff  <msaboff@apple.com>
3111
3112         [iOS] TestWTF.WTF_Lock.ContendedShortSection is consistently timing out on debug simulator builds
3113         https://bugs.webkit.org/show_bug.cgi?id=211650
3114
3115         Reviewed by Saam Barati.
3116
3117         The prior change to disable this test for Debug actually enabled it
3118         only for Debug IOS builds of any type, simulator or real HW.
3119
3120         This test has intermittently failed or timed out on Debug simulator
3121         builds for for almost a year.  We want to test Release builds as well as
3122         hardware builds. Therefore we should disable Debug simulator builds,
3123         and test all other variants.
3124
3125         * TestWebKitAPI/Tests/WTF/Lock.cpp:
3126
3127 2020-06-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3128
3129         dataTransfer.types is empty when handling the "dragstart" event
3130         https://bugs.webkit.org/show_bug.cgi?id=212685
3131         <rdar://problem/61368402>
3132
3133         Reviewed by Andy Estes.
3134
3135         Adds new API tests and test infrastructure to verify that DataTransfer types and data are accessible during
3136         the "dragstart" event. See below for more details.
3137
3138         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3139         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
3140         (-[TestWKWebView selectElementWithID:]):
3141         (-[DragAndDropSimulator dragFromElementWithID:to:]):
3142
3143         Add a few (very specialized) helper methods to assist with simulating drags over the various elements in the new
3144         drag and drop test harness page below (dragstart-data.html).
3145
3146         (runDragStartDataTestCase):
3147
3148         Test the following scenarios (split between three API tests) by dumping the resulting DataTransfer types and
3149         their data strings, and observing the results:
3150
3151         - Dragging a normal text selection.
3152         - Dragging a normal text selection, and then adding a URL string.
3153         - Dragging a normal text selection, and then adding a custom pasteboard type.
3154         - Dragging a normal text selection, but then replacing the data with just a URL string.
3155         - Dragging a normal text selection, but then replacing the data with just a custom data type.
3156         - Dragging an image element.
3157         - Dragging an image element, and then overriding the plain text data.
3158         - Dragging a link (anchor element).
3159         - Dragging a link, and then adding a custom type.
3160
3161         * TestWebKitAPI/Tests/WebKitCocoa/dragstart-data.html: Added.
3162
3163         Add a new test harness to help test DataTransfer types when starting a drag. This test page can also be used as
3164         a manual test harness, by simply opening the test page, starting drags on the various elements and observing the
3165         output in the textarea.
3166
3167         * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html:
3168
3169         Tweak this test page to replace the DataTransfer with custom data (rather than simply append it) by calling
3170         `DataTransfer.clearData()` prior to writing the custom types.
3171
3172         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3173         * TestWebKitAPI/cocoa/TestWKWebView.h:
3174         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3175         (-[TestWKWebViewHostWindow initWithWebView:contentRect:styleMask:backing:defer:]):
3176
3177         Add a `__weak` reference on TestWKWebViewHostWindow back to the TestWKWebView, so that we can consult
3178         `-eventTimestamp` when synthesizing mouse events on macOS during API tests.
3179
3180         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:clickCount:]):
3181         (-[TestWKWebViewHostWindow _mouseUpAtPoint:clickCount:]):
3182         (-[TestWKWebViewHostWindow initWithWebView:frame:]):
3183         (-[TestWKWebView _setUpTestWindow:]):
3184         (-[TestWKWebView setEventTimestampOffset:]):
3185         (-[TestWKWebView eventTimestamp]):
3186
3187         Add a mechanism to offset synthetic event timestamps by a given time interval (i.e. the event timestamp offset).
3188
3189         (-[TestWKWebView mouseMoveToPoint:withFlags:]):
3190         (-[TestWKWebView _mouseEventWithType:atLocation:]):
3191         (-[TestWKWebView typeCharacter:]):
3192         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
3193         (-[DragAndDropSimulator runFrom:to:]):
3194
3195         While simulating drag and drop on macOS, use `-setEventTimestampOffset:` to "leap forward" in time, so that the
3196         150 millisecond delay when dragging a text selection doesn't prevent drags from beginning.
3197
3198 2020-06-03  Sihui Liu  <sihui_liu@apple.com>
3199
3200         Text manipulation sometimes fails to replace text in attributes
3201         https://bugs.webkit.org/show_bug.cgi?id=212701
3202
3203         Reviewed by Wenson Hsieh.
3204
3205         Modify TextManipulation.CompleteTextManipulationShouldReplaceTextContentWithMultipleTokens to cover text 
3206         manipulation for attributes.
3207
3208         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3209         (TestWebKitAPI::TEST):
3210
3211 2020-06-03  Diego Pino Garcia  <dpino@igalia.com>
3212
3213         [WPE] lint-test-expectations doesn't work when platform is WPE
3214         https://bugs.webkit.org/show_bug.cgi?id=212700
3215
3216         Reviewed by Carlos Alberto Lopez Perez.
3217
3218         When passing arguments '--wpe' or '--platform=wpe*',
3219         lint-test-expectations does nothing for WPE, despite currently 
3220         there are many lint errors in WPE's TestExpectations file.
3221
3222         As a side-effect of this patch, now `Tools/Scripts/webkit-path
3223         rebaseline` lists the WPE Release and Debug bots.
3224
3225         * Scripts/webkitpy/port/builders.py: Add WPE to the list of
3226         exact_matches and fuzzy_matches.
3227         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
3228
3229 2020-06-03  Jonathan Bedard  <jbedard@apple.com>
3230
3231         Allow using web processes for service workers even though they loaded about URLs (Follow-up fix)
3232         https://bugs.webkit.org/show_bug.cgi?id=212464
3233
3234         Unreviewed build fix.
3235
3236         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: didFinishNavigation is now used unconditionally.
3237
3238 2020-06-02  Keith Rollin  <krollin@apple.com>
3239
3240         Revert FEATURES_DEFINES related changes
3241         https://bugs.webkit.org/show_bug.cgi?id=212664
3242         <rdar://problem/63893033>
3243
3244         Reviewed by Andy Estes.
3245
3246         Bug 262310, Bug 262311, Bug 262318, and Bug 262331 involve changes to
3247         FEATURE_DEFINES and how the values there relate to those found in the
3248         Platform*.h files. Those changes break XCBuild (by removing the
3249         .xcfilelist related to UnifiedSources and the process for generating
3250         them), and so are being reverted.
3251
3252         * Scripts/webkitperl/FeatureList.pm:
3253         * Scripts/webkitpy/generate_xcfilelists_lib/generators.py:
3254         (WebCoreGenerator):
3255         (WebCoreGenerator._get_generate_unified_sources_script):
3256         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3257
3258 2020-06-02  Peng Liu  <peng.liu6@apple.com>
3259
3260         Stressing webkitSetPresentationMode leads to wrong inline video dimensions
3261         https://bugs.webkit.org/show_bug.cgi?id=202425
3262
3263         Reviewed by Eric Carlson.
3264
3265         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
3266         (TEST):
3267
3268 2020-06-02  Youenn Fablet  <youenn@apple.com>
3269
3270         Allow using web processes for service workers even though they loaded about URLs
3271         https://bugs.webkit.org/show_bug.cgi?id=212464
3272
3273         Reviewed by Chris Dumez.
3274
3275         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
3276
3277 2020-06-02  Diego Pino Garcia  <dpino@igalia.com>
3278
3279         [buildbot] [GTK][WPE] Move JavaScript related tests to own bot
3280         https://bugs.webkit.org/show_bug.cgi?id=212481
3281
3282         Reviewed by Carlos Alberto Lopez Perez.
3283
3284         Currently GTK and WPE tests bots run too many tests. This makes
3285         the total running time for each build very long.
3286
3287         This patch moves JavaScript related tests (jscore-test and
3288         test262-test) to a separated bot which will be triggered by the
3289         corresponding build bot of each platform.
3290
3291         * BuildSlaveSupport/build.webkit.org-config/config.json:
3292         * BuildSlaveSupport/build.webkit.org-config/factories.py:
3293         (TestFactory.__init__):
3294         (TestJSFactory):
3295         (TestJSFactory.__init__):
3296         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
3297
3298 2020-06-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3299
3300         [GTK4] Make popup menus work
3301         https://bugs.webkit.org/show_bug.cgi?id=211178
3302
3303         Reviewed by Adrian Perez de Castro.
3304
3305         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3306         (WTR::PlatformWebView::dismissAllPopupMenus):
3307
3308 2020-06-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3309
3310         [GTK4] Make it possible to run layout tests
3311         https://bugs.webkit.org/show_bug.cgi?id=212328
3312
3313         Reviewed by Carlos Alberto Lopez Perez.
3314
3315         Build WTR with GTK4.
3316
3317         * PlatformGTK.cmake:
3318         * Scripts/webkitdirs.pm:
3319         (builtDylibPathForName): Try with both 4 and 5 API versions.
3320         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3321         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
3322         (WTR::PlatformWebView::PlatformWebView):
3323         (WTR::PlatformWebView::~PlatformWebView):
3324         (WTR::PlatformWebView::setWindowIsKey):
3325         (WTR::PlatformWebView::windowFrame):
3326         (WTR::PlatformWebView::setWindowFrame):
3327         (WTR::PlatformWebView::addToWindow):
3328         (WTR::PlatformWebView::removeFromWindow):
3329         (WTR::PlatformWebView::windowSnapshotImage):
3330         (WTR::PlatformWebView::dismissAllPopupMenus):
3331         * WebKitTestRunner/gtk/UIScriptControllerGtk.cpp:
3332         (WTR::UIScriptControllerGtk::copyText):
3333
3334 2020-06-01  Noam Rosenthal  <noam@webkit.org>
3335
3336         Make unicode-bidi:isolate the default for an element with a dir attribute (instead of unicode-bidi:embed)
3337         https://bugs.webkit.org/show_bug.cgi?id=134630
3338
3339         Reviewed by Simon Fraser.
3340
3341         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
3342         (TEST):
3343                 Test was expecting unicode-bidi:embed, changed expectation.
3344
3345 2020-06-01  Sihui Liu  <sihui_liu@apple.com>
3346
3347         TextManipulationController should put one Node in only one paragraph
3348         https://bugs.webkit.org/show_bug.cgi?id=212548
3349
3350         Reviewed by Wenson Hsieh.
3351
3352         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
3353         (TestWebKitAPI::TEST):
3354
3355 2020-06-01  Alex Christensen  <achristensen@webkit.org>
3356
3357         Make CustomDisplayName and DefaultDisplayName API tests fail instead of timing out when something changes
3358         https://bugs.webkit.org/show_bug.cgi?id=212480
3359
3360         This saves time when debugging and running all the tests.
3361
3362         * TestWebKitAPI/Tests/WebKitCocoa/DisplayName.mm:
3363         (TestWebKitAPI::checkUntilDisplayNameIs):
3364
3365 2020-06-01  Philippe Normand  <pnormand@igalia.com>
3366
3367         [Flatpak SDK] Install and update don't provide any terminal output
3368         https://bugs.webkit.org/show_bug.cgi?id=212579
3369
3370         Reviewed by Žan Doberšek.
3371
3372         The `show_output` option was removed from the process execution routines. We now assume the
3373         output will be displayed, unless the call-site asks `gather_output`. This change makes
3374         webkit-flatpak more chatty, which is nice during install/update operations.
3375
3376         * flatpak/flatpakutils.py:
3377         (run_sanitized):
3378         (FlatpakObject.flatpak):
3379         (FlatpakPackage.install):
3380         (FlatpakPackage.update):
3381         (WebkitFlatpak.setup_builddir):
3382         (WebkitFlatpak.run_in_sandbox):
3383
3384 2020-06-01  Chris Dumez  <cdumez@apple.com>
3385
3386         ASSERTION FAILURE (r220931): !m_function in ~CompletionHandler() after switch tabs
3387         https://bugs.webkit.org/show_bug.cgi?id=212537
3388         <rdar://problem/63766838>
3389
3390         Reviewed by Alex Christensen.
3391
3392         Add API test coverage.
3393
3394         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3395         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspension.mm: Added.
3396         (TEST):
3397
3398 2020-06-01  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3399
3400         [EWS] Add a special case for running the layout test step without aborting in case of many failures for WPT tests
3401         https://bugs.webkit.org/show_bug.cgi?id=212381
3402
3403         Reviewed by Jonathan Bedard.
3404
3405         Add a special case for patches uploaded by the bugzilla user that would be used
3406         for prototyping a bot that helps automating the import of WPT tests. For patches
3407         uploaded by this user don't pass the parameters that make the step abort early in
3408         case of many errors, and only run the layout tests inside the WPT import directory.
3409
3410         * BuildSlaveSupport/ews-build/steps.py:
3411         (RunWebKitTests):
3412         (RunWebKitTests.start):
3413         * BuildSlaveSupport/ews-build/steps_unittest.py:
3414         (test_success):
3415         (test_warnings):
3416         (test_parse_results_json_regression):
3417         (test_parse_results_json_flakes):
3418         (test_parse_results_json_flakes_and_regressions):
3419         (test_parse_results_json_with_newlines):
3420         (test_unexpected_error):
3421         (test_failure):
3422         (test_success_wpt_import_bot):
3423         (TestRunWebKitTestsWithoutPatch.test_success):
3424         (TestRunWebKitTestsWithoutPatch.test_failure):
3425         (TestRunWebKit1Tests.test_success):
3426         (TestRunWebKit1Tests.test_failure):
3427
3428 2020-06-01  Sam Weinig  <weinig@apple.com>
3429
3430         Extended Color: Replace Color constructors taking numeric values with type specific factory functions
3431         https://bugs.webkit.org/show_bug.cgi?id=212576
3432
3433         Reviewed by Tim Horton.
3434
3435         Replaces all remaining implicit and explicit uses of the Color constructors taking numeric
3436         values with explicit calls to makeSimpleColor/makeSimpleColorFromFloats/makeExtendedColor,
3437         giving us a consistent way to create colors. Also addes use constexpr SimpleColors where possible.
3438
3439         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
3440         (TestWebKitAPI::TEST):
3441         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3442         (TestWebKitAPI::TEST):
3443         (TestWebKitAPI::makeColor):
3444         * TestWebKitAPI/Tests/WebKitCocoa/PDFSnapshot.mm:
3445         (TestWebKitAPI::TEST):
3446         * TestWebKitAPI/cocoa/TestPDFDocument.mm:
3447         (TestWebKitAPI::TestPDFPage::colorAtPoint const):
3448
3449 2020-05-31  Dean Jackson  <dino@apple.com>
3450
3451         AutoTrader crashed while browsing search results
3452         https://bugs.webkit.org/show_bug.cgi?id=212461
3453         rdar://60733185
3454
3455         Reviewed by Sam Weinig.
3456
3457         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3458         * TestWebKitAPI/Tests/WebKitLegacy/ios/WebGLPrepareDisplayOnWebThread.mm: Added.
3459         (-[WebGLPrepareDisplayOnWebThreadDelegate webViewDidFinishLoad:]):
3460         (-[WebGLPrepareDisplayOnWebThreadDelegate webView:shouldStartLoadWithRequest:navigationType:]):
3461         (TestWebKitAPI::TEST):
3462         * TestWebKitAPI/Tests/WebKitLegacy/ios/webgl.html: Added.
3463
3464 2020-05-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3465
3466         Unreviewed. Fix GTK4 build with current GTK
3467
3468         * MiniBrowser/gtk/BrowserTab.c:
3469         (audioMutedChanged):
3470
3471 2020-05-30  Sam Weinig  <weinig@apple.com>
3472
3473         Extended Color: Additional color cleanups
3474         https://bugs.webkit.org/show_bug.cgi?id=212567
3475
3476         Reviewed by Simon Fraser.
3477
3478         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3479         (TestWebKitAPI::TEST):
3480         Update for rename from ExtendedColor::channels() to ExtendedColor::components()
3481
3482 2020-05-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3483
3484         [GTK] WebDriver: stop using GdkEvent API in preparation for GTK4
3485         https://bugs.webkit.org/show_bug.cgi?id=212465
3486
3487         Reviewed by Adrian Perez de Castro.
3488
3489         Update to the new webkitWebViewBaseSynthesizeKeyEvent() API.
3490
3491         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3492         (WTR::EventSenderProxy::keyDown):
3493
3494 2020-05-29  Alex Christensen  <achristensen@webkit.org>
3495
3496         Use correct encoding when converting a WTF::URL to CFURLRef
3497         https://bugs.webkit.org/show_bug.cgi?id=212486
3498
3499         Reviewed by Darin Adler.
3500
3501         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
3502         (TestWebKitAPI::TEST):
3503
3504 2020-05-29  Andy Estes  <aestes@apple.com>
3505
3506         [Apple Pay] Remove conditionals for ENABLE_APPLE_PAY_SESSION_V(3|4)
3507         https://bugs.webkit.org/show_bug.cgi?id=212541
3508
3509         Reviewed by Darin Adler.
3510
3511         APPLE_PAY_SESSION_V(3|4) is now enabled whenever APPLE_PAY itself is enabled.
3512
3513         * Scripts/webkitperl/FeatureList.pm:
3514         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3515
3516 2020-05-29  Jan-Michael Brummer  <jan.brummer@tabos.org>
3517
3518         [GTK][WPE] API for WebView audio mute support
3519         https://bugs.webkit.org/show_bug.cgi?id=176119
3520
3521         Reviewed by Michael Catanzaro.
3522
3523         * MiniBrowser/gtk/BrowserTab.c:
3524         (audioClicked):
3525         (audioMutedChanged):
3526         (browserTabConstructed):
3527         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
3528         (testWebViewIsAudioMuted):
3529         (beforeAll):
3530
3531 2020-05-29  Darin Adler  <darin@apple.com>
3532
3533         Remove things from FeatureDefines.xcconfig that are covered by PlatformEnableCocoa.h
3534         https://bugs.webkit.org/show_bug.cgi?id=212418
3535
3536         Rubber-stamped by Simon Fraser.
3537
3538         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Add back ENABLE_CSS_CONIC_GRADIENTS,
3539         removed by accident.
3540
3541 2020-05-29  Pavel  <pavel.feldman@gmail.com>
3542
3543         [Win] Allow compiling with the TOUCH_EVENTS enabled
3544         https://bugs.webkit.org/show_bug.cgi?id=212528
3545
3546         Reviewed by Fujii Hironori.
3547
3548         Aligning Win with GTK, adding missing EventSenderProxy stubs.
3549         This allows compiling Win with TOUCH_EVENTS and unlocks event
3550         injection / processing by the automation drivers
3551
3552         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
3553         (WTR::EventSenderProxy::addTouchPoint):
3554         (WTR::EventSenderProxy::updateTouchPoint):
3555         (WTR::EventSenderProxy::setTouchModifier):
3556         (WTR::EventSenderProxy::setTouchPointRadius):
3557         (WTR::EventSenderProxy::touchStart):
3558         (WTR::EventSenderProxy::touchMove):
3559         (WTR::EventSenderProxy::touchEnd):
3560         (WTR::EventSenderProxy::touchCancel):
3561         (WTR::EventSenderProxy::clearTouchPoints):
3562         (WTR::EventSenderProxy::releaseTouchPoint):
3563         (WTR::EventSenderProxy::cancelTouchPoint):
3564
3565 2020-05-27  Darin Adler  <darin@apple.com>
3566
3567         Remove things from FeatureDefines.xcconfig that are covered by PlatformEnableCocoa.h
3568         https://bugs.webkit.org/show_bug.cgi?id=212418
3569
3570         Reviewed by Andy Estes.
3571
3572         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Removed 83 of the 119 things
3573         defined in this file. There are 36 more that are slightly more complex that we can
3574         remove carefully later.
3575
3576 2020-05-29  Darin Adler  <darin@apple.com>
3577
3578         Make generate-unified-sources.sh not depend on features being listed in FEATURE_DEFINES environment variable
3579         https://bugs.webkit.org/show_bug.cgi?id=212420
3580
3581         Reviewed by Andy Estes.
3582
3583         * Scripts/webkitpy/generate_xcfilelists_lib/generators.py:
3584         (WebCoreGenerator._get_generate_derived_sources_script): Removed the code
3585         to generate UnifiedSources-output.xcfilelist.
3586
3587 2020-05-29  Keith Rollin  <krollin@apple.com>
3588
3589         Revert switch to XCBuild
3590         https://bugs.webkit.org/show_bug.cgi?id=212530
3591         <rdar://problem/63764632>
3592
3593         Unreviewed build fix.
3594
3595         Bug 209890 enabled the use of XCBuild by default. Since then, some
3596         build issues have shown up. While addressing them, temporarily turn
3597         off the use of XCBuild by default.
3598
3599         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3600         * Scripts/build-webkit:
3601         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3602
3603 2020-05-29  Philippe Normand  <pnormand@igalia.com>
3604
3605         [Flatpak][GStreamer] all commands, except webkit-build, fails if GST_BUILD_PATH is set
3606         https://bugs.webkit.org/show_bug.cgi?id=212408
3607
3608         Reviewed by Žan Doberšek.
3609
3610         Don't run gst-env.py in the sandbox because that can lead to command-line options clashing
3611         with build-webkit and other WebKit scripts. So instead we now parse the output of the
3612         environment variables gst-build requires and we forward those to the sandbox.
3613
3614         * flatpak/flatpakutils.py:
3615         (run_sanitized):
3616         (check_flatpak):
3617         (FlatpakObject.flatpak):
3618         (WebkitFlatpak.execute_command):
3619         (WebkitFlatpak.setup_gstbuild):
3620         (WebkitFlatpak.run_in_sandbox):
3621         (flatpak_run_sanitized): Deleted.
3622
3623 2020-05-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3624
3625         Add watchlist comment for patches touching imported WPT tests.
3626         https://bugs.webkit.org/show_bug.cgi?id=212362
3627
3628         Reviewed by Youenn Fablet.
3629
3630         Add a watchlist trigger to comment on patches touching imported WPT tests
3631         with a link to documentation about the export process.
3632
3633         * Scripts/webkitpy/common/config/watchlist:
3634
3635 2020-05-29  Lauro Moura  <lmoura@igalia.com>
3636
3637         [Flatpak] Fix os.system return code for better signal handling.
3638
3639         Rubber-stamped by Philippe Normand.
3640
3641         The previous fix in r262270 correctly fixed the return code issue
3642         but made signal handling pass through python. For example, when you
3643         ctlr+C running MiniBrowser, you'd get a python stacktrace deep inside
3644         subprocess.call.
3645
3646         So, revert back to os.system but fixing the return code.
3647
3648         * flatpak/webkit-bwrap:
3649
3650 2020-05-29  Philippe Normand  <pnormand@igalia.com>
3651
3652         [Flatpak SDK] Update OpenXR
3653         https://bugs.webkit.org/show_bug.cgi?id=212518
3654
3655         Reviewed by Žan Doberšek.
3656
3657         Upstream now builds fine with GCC 9.3.0. Removing downstream patch.
3658         
3659         * buildstream/elements/sdk/openxr.bst:
3660         * buildstream/patches/openxr-0001-cmake-Check-for-C-17-and-conditionally-enable-it.patch: Removed.
3661
3662 2020-05-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3663
3664         REGRESSION (r261812): editing/async-clipboard/clipboard-item-get-type-basic.html is flaky
3665         https://bugs.webkit.org/show_bug.cgi?id=212281
3666         <rdar://problem/63554912>
3667
3668         Reviewed by Tim Horton.
3669
3670         On some shipping versions of iOS, returning `NO` from `-supportsImagePaste` still results in UIKit keyboard
3671         code pinning temporary items to the general pasteboard, which increments the change count of the pasteboard.
3672         If this happens in the middle of an attempt to read from the pasteboard, we end up falsely denying access to the
3673         contents of the pasteboard, since we believe that the contents of the pasteboard have changed.
3674
3675         This has the potential to affect any test that attempts to read from the pasteboard on iOS, though the titular
3676         layout test seems to trigger the bug more frequently than other tests.
3677
3678         This item pinning was added in support of being able to insert Memojis from the software keyboard, and works by
3679         pretending to copy a temporary PNG image, asking the delegate whether it `-canPerformAction:withSender:`, and
3680         then restoring the items previously on the pasteboard. To work around this in the test runner, we can simply
3681         swizzle out `-[UIKeyboardImpl delegateSupportsImagePaste]` to always return `NO`, which has the same effect as
3682         disabling the Memoji keyboard.
3683
3684         * WebKitTestRunner/TestController.h:
3685         * WebKitTestRunner/ios/TestControllerIOS.mm:
3686         (overrideKeyboardDelegateSupportsImagePaste):
3687         (WTR::TestController::platformResetStateToConsistentValues):
3688
3689 2020-05-28  Myles C. Maxfield  <mmaxfield@apple.com>
3690
3691         Make fast/text/user-installed-fonts/extended-character.html more robust
3692         https://bugs.webkit.org/show_bug.cgi?id=212487
3693         <rdar://problem/63235370>
3694
3695         Unreviewed.
3696
3697         Update the font to use the new character.
3698
3699         * WebKitTestRunner/fonts/FakeHelvetica-SingleExtendedCharacter.ttf:
3700
3701 2020-05-28  Lauro Moura  <lmoura@igalia.com>
3702
3703         [Flatpak] Use subprocess.call instead of os.system to forward the return code correctly.
3704
3705         os.system reports error codes from the child process like wait(),
3706         which seems to not be playing well with flatpak/bwrap.
3707
3708         This was causing flatpak to return 0 to some failed commands (like
3709         build-webkit), making failures show as successes in the bots.
3710
3711         Unreviewed build fix.
3712
3713         * flatpak/webkit-bwrap:
3714
3715 2020-05-28  Tim Horton  <timothy_horton@apple.com>
3716
3717         makeValueRefForValue should be robust against the type encoding of a NSNumber backed by a boolean
3718         https://bugs.webkit.org/show_bug.cgi?id=212456
3719
3720         Reviewed by Anders Carlsson.
3721
3722         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
3723         (WTR::makeValueRefForValue):
3724         Apply the fix from r260515 to this second copy of the code too.
3725
3726 2020-05-27  Saam Barati  <sbarati@apple.com>
3727
3728         revert logging for detecting failures in run-jsc-stress-tests
3729         https://bugs.webkit.org/show_bug.cgi?id=212447
3730
3731         Reviewed by Alexey Proskuryakov.
3732
3733         * Scripts/run-jsc-stress-tests:
3734
3735 2020-05-27  Tim Horton  <timothy_horton@apple.com>
3736
3737         REGRESSION (PSON): Resizing WKWebView during cross-site navigation results in the page laying out at the wrong size
3738         https://bugs.webkit.org/show_bug.cgi?id=212434
3739         <rdar://problem/51621621>
3740
3741         Reviewed by Chris Dumez.
3742
3743         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3744         Add a test ensuring that we correctly update the view size if it changes
3745         during the provisional phase of the navigation.
3746
3747 2020-05-27  Lauro Moura  <lmoura@igalia.com>
3748
3749         Unreviewed. A couple transformations missing from r262214.
3750
3751         Was making fast/events/touch/tap-highlight-color.html to fail.
3752
3753         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3754         (WTR::EventSenderProxy::keyDown):
3755         (WTR::EventSenderProxy::addTouchPoint):
3756
3757 2020-05-27  Kenneth Russell  <kbr@chromium.org>
3758
3759         Update MobileMiniBrowser project settings to current Xcode
3760         https://bugs.webkit.org/show_bug.cgi?id=212428
3761
3762         Reviewed by Dean Jackson.
3763
3764         Apply suggestions from Dean to automatically switch between the
3765         internal and public SDKs.
3766
3767         * MobileMiniBrowser/Configurations/Base.xcconfig:
3768
3769 2020-05-27  Lauro Moura  <lmoura@igalia.com>
3770
3771         [WPE] Avoid possible WTR event timing going back in time and fix conversion from s to ms
3772         https://bugs.webkit.org/show_bug.cgi?id=212338
3773
3774         Reviewed by Michael Catanzaro.
3775
3776         Make sure we cast the double m_time timestamp from seconds to uint32_t
3777         milliseconds expected by WPE input events.
3778
3779         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
3780         (WTR::secToMsTimestamp):
3781         (WTR::EventSenderProxy::EventSenderProxy): Use monotonic time instead
3782         of zero as the time origin. This is used only in a relative manner,
3783         and we need monotonic behavior so conversion to DOM event timestamps
3784         makes sense.
3785         (WTR::EventSenderProxy::mouseDown):
3786         (WTR::EventSenderProxy::mouseUp):
3787         (WTR::EventSenderProxy::mouseMoveTo):
3788         (WTR::EventSenderProxy::mouseScrollBy):
3789         (WTR::EventSenderProxy::updateTouchPoint):
3790         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
3791         (WTR::EventSenderProxy::releaseTouchPoint):
3792
3793 2020-05-27  Kate Cheney  <katherine_cheney@apple.com>
3794
3795         Make sure bundle identifier testing override is set in the network process
3796         https://bugs.webkit.org/show_bug.cgi?id=212288
3797         <rdar://problem/63539061>
3798
3799         Reviewed by Chris Dumez.
3800
3801         Set the bundle identifier in the network process if a layout test
3802         updates it. This value usually only gets updated when a new network
3803         process is initialized, which does not happen for every test. So it
3804         should be set/cleared as needed.
3805
3806         * WebKitTestRunner/TestController.cpp:
3807         (WTR::TestController::createWebViewWithOptions):
3808         (WTR::TestController::updateBundleIdentifierInNetworkProcess):
3809         * WebKitTestRunner/TestController.h:
3810
3811 2020-05-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3812
3813         [Clipboard API] Support reading "image/png" on ClipboardItem
3814         https://bugs.webkit.org/show_bug.cgi?id=212339
3815         <rdar://problem/63588957>
3816
3817         Reviewed by Tim Horton.
3818
3819         Add a new API test to verify that TIFF images on the system pasteboard on macOS are automatically converted to
3820         PNG data, and is accessible through `ClipboardItem` through the "image/png" type.
3821
3822         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm:
3823
3824 2020-05-27  Per Arne Vollan  <pvollan@apple.com>
3825
3826         Unreviewed, reverting r260840.
3827
3828         This patch is no longer needed after preferences root cause
3829         has been fixed.
3830
3831         Reverted changeset:
3832
3833         "[Cocoa] Global preferences are not accessible in the
3834         WebContent process when CFPrefs direct mode is enabled"
3835         https://bugs.webkit.org/show_bug.cgi?id=211075
3836         https://trac.webkit.org/changeset/260840
3837
3838 2020-05-27  Devin Rousso  <drousso@apple.com>
3839
3840         Web Inspector: replace `featureGuard` and `availability` with a combined `condition` that accepts any macro
3841         https://bugs.webkit.org/show_bug.cgi?id=210014
3842
3843         Reviewed by Brian Burg.
3844
3845         Previously, the generated InspectorBackendCommands.js would include code for things that the
3846         backend doesn't actually support. By using actual macros and preprocessing that file, we can
3847         ensure that the frontend doesn't incorrectly think that something is supported by the page
3848         being inspected:
3849          - the `Canvas` commands and events related to shader programs/pipelines should only exist
3850            when the corresponding context type exists, namely `ENABLE(WEBGL)` and `ENABLE(WEBGPU)`.
3851          - iOS doesn't support showing rulers, so create a variant of `DOM.setInspectModeEnabled`
3852            that only exists for `PLATFORM(IOS_FAMILY)` that doesn't have the `showRulers` optional
3853            parameter, as well as removing `Page.setShowRulers` entirely.
3854          - setting the forced appearance should only be possible if dark mode is supported.
3855          - web archives only exist if CF is used.
3856
3857         * Configurations/FeatureDefines.xcconfig:
3858         Add `ENABLE_WEB_ARCHIVE` since it's always enabled in wtf/PlatformEnableCocoa.h.
3859
3860         * Scripts/webkitpy/inspector/main.py:
3861         (InspectorGeneratorTests.generate_from_json):
3862         (InspectorGeneratorTests.run_tests):
3863         (InspectorGeneratorTests.main):
3864
3865 2020-05-27  Philippe Normand  <pnormand@igalia.com>
3866
3867         [Flatpak SDK] Update openxr recipe
3868         https://bugs.webkit.org/show_bug.cgi?id=212403
3869
3870         Reviewed by Sergio Villar Senin.
3871
3872         * buildstream/elements/sdk/openxr.bst: Explicitely list dependencies and bump to latest git master.
3873
3874 2020-05-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3875
3876         [GTK][WTR] EventSender: stop using GdkEvent API in preparation for GTK4
3877         https://bugs.webkit.org/show_bug.cgi?id=212298
3878
3879         Reviewed by Adrian Perez de Castro.
3880
3881         Use WebKitWebViewBase internal API to synthesize events instead of GdkEvents. The touch events support has been
3882         removed because we are no longer testing touch events, since they need an actual touchscreen.
3883
3884         * WebKitTestRunner/EventSenderProxy.h:
3885         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3886         (WTR::getGDKKeySymForKeyRef):
3887         (WTR::toWebKitGLibAPI):
3888         (WTR::EventSenderProxy::keyDown):
3889         (WTR::EventSenderProxy::mouseDown):
3890         (WTR::EventSenderProxy::mouseUp):
3891         (WTR::EventSenderProxy::mouseMoveTo):
3892         (WTR::EventSenderProxy::mouseScrollBy):
3893         (WTR::EventSenderProxy::continuousMouseScrollBy):
3894         (WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
3895         (WTR::EventSenderProxy::leapForward):
3896         (WTR::EventSenderProxy::addTouchPoint):
3897         (WTR::EventSenderProxy::updateTouchPoint):
3898         (WTR::EventSenderProxy::touchStart):
3899         (WTR::EventSenderProxy::touchMove):
3900         (WTR::EventSenderProxy::touchEnd):
3901         (WTR::EventSenderProxy::touchCancel):
3902         (WTR::EventSenderProxy::clearTouchPoints):
3903         (WTR::EventSenderProxy::releaseTouchPoint):
3904         (WTR::EventSenderProxy::cancelTouchPoint):
3905         (WTR::EventSenderProxy::setTouchPointRadius):
3906         (WTR::EventSenderProxy::setTouchModifier):
3907
3908 2020-05-26  Alex Christensen  <achristensen@webkit.org>
3909
3910         UTF-8 encode strings of invalid URLs when converting WTF::URL to NSURL instead of truncating the UTF-16 encoding
3911         https://bugs.webkit.org/show_bug.cgi?id=212393
3912         <rdar://problem/63095503>
3913
3914         Reviewed by Tim Horton.
3915
3916         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
3917         (TestWebKitAPI::TEST):
3918
3919 2020-05-26  Mark Lam  <mark.lam@apple.com>
3920
3921         Enhance Bitmap::setEachNthBit() to also take an end index.
3922         https://bugs.webkit.org/show_bug.cgi?id=212386
3923         <rdar://problem/63643324>
3924
3925         Reviewed by Robin Morisset.
3926
3927         * TestWebKitAPI/Tests/WTF/Bitmap.cpp:
3928         (TestWebKitAPI::testBitmapSetEachNthBitImpl):
3929
3930 2020-05-26  Fujii Hironori  <Hironori.Fujii@sony.com>
3931
3932         [WinCairo][WK2] Use GraphicsLayerTextureMapper for Accelerated Compositing mode
3933         https://bugs.webkit.org/show_bug.cgi?id=211883
3934
3935         Reviewed by Don Olmstead.
3936
3937         * MiniBrowser/win/WebKitBrowserWindow.cpp:
3938         (WebKitBrowserWindow::setPreference): Call WKPreferencesSet* for
3939         menu items IDM_ACC_COMPOSITING, IDM_COMPOSITING_BORDERS and
3940         IDM_DEBUG_INFO_LAYER.
3941
3942 2020-05-26  Sam Weinig  <weinig@apple.com>
3943
3944         Extended Color Cleanup: Remove red()/green()/blue() accessors from ExtendedColor in preperation for supporting non-RGB based ColorSpaces
3945         https://bugs.webkit.org/show_bug.cgi?id=212366
3946
3947         Reviewed by Simon Fraser.
3948
3949         * TestWebKitAPI/Tests/WebCore/ExtendedColorTests.cpp:
3950         (TestWebKitAPI::TEST):
3951         Update tests to pull values from the channels rather than from the red()/green()/blue() accessors.
3952
3953 2020-05-26  Peng Liu  <peng.liu6@apple.com>
3954
3955         ASSERTION FAILED: m_clientCounts.contains(contextId) - WebKit::VideoFullscreenManagerProxy::removeClientForContext()
3956         https://bugs.webkit.org/show_bug.cgi?id=212308
3957
3958         Disable TestWebKitAPI.PictureInPicture.ExitPiPOnSuspendVideoElement for old iOS versions
3959         due to an issue of AVKit.
3960
3961         In addition, don't run the test if Picture-in-Picture is not supported.
3962
3963         Reviewed by Jer Noble.
3964
3965         * TestWebKitAPI/Tests/WebKitCocoa/ExitPiPOnSuspendVideoElement.mm:
3966         (TestWebKitAPI::TEST):
3967
3968 2020-05-26  Keith Rollin  <krollin@apple.com>
3969
3970         Enable the use of XCBuild by default in Apple builds
3971         https://bugs.webkit.org/show_bug.cgi?id=209890
3972         <rdar://problem/44182078>
3973
3974         Reviewed by Darin Adler.
3975
3976         Switch from the "legacy" Xcode build system to the "new" build system
3977         (also known as "XCBuild"). Switching to the new system speeds up
3978         builds by a small percentage, better validates projects for
3979         build-related issues (such as dependency cycles), lets WebKit benefit
3980         from future improvements in XCBuild such as those coming from the
3981         underlying llbuild open source project, and prepares us for any other
3982         tools built for this new ecosystem.
3983
3984         Specific changes:
3985
3986         - Remove Xcode project and workspace settings that selected the Build
3987           system, allowing the default to take hold (which is currently the
3988           New build system).
3989         - Updated webkitdirs.pm with a terser check for Xcode version.
3990         - Update build-webkit and Makefile.shared to be explicit when using
3991           the old build system (no longer treat it as a default or fall-back
3992           configuration).
3993         - Update various xcconfig files similarly to treat the default as
3994           using the new build system.
3995         - Update various post-processing build steps to check for Xcode 11.4
3996           and to no longer treat the default as using the old build system.
3997
3998         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3999         * Scripts/build-webkit:
4000         * Scripts/webkitdirs.pm:
4001         (canUseXCBuild):
4002         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
4003
4004 2020-05-26  Jonathan Bedard  <jbedard@apple.com>
4005
4006         webkitpy: simctl list may have stderr logging
4007         https://bugs.webkit.org/show_bug.cgi?id=212376
4008         <rdar://problem/63517635>
4009
4010         Unreviewed infrastructure fix.
4011
4012         * Scripts/webkitpy/xcode/simulated_device.py:
4013         (SimulatedDeviceManager.populate_available_devices): Only parse stdout, log error when
4014         json decoding fails.
4015         (SimulatedDevice.is_usable): Only parse stdout.
4016         (SimulatedDevice.launch_app): Ditto.
4017
4018 2020-05-25  Wenson Hsieh  <wenson_hsieh@apple.com>
4019
4020         [iOS] ActionSheetTests.DataDetectorsLinkIsNotPresentedAsALink is failing consistently
4021         https://bugs.webkit.org/show_bug.cgi?id=212363
4022         <rdar://problem/63508866>
4023
4024         Reviewed by Tim Horton.
4025
4026         This test began to consistently throw an exception after <https://trac.webkit.org/r261157>, due to how
4027         UserInterfaceSwizzler always instantiates the shared UIApplication. This apparently causes -[WKContentView
4028         resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets:] to return `nil` instead of a replica view. As a
4029         result, we crash under `createFallbackTargetedPreview` as we're attempting to assemble a targeted preview for
4030         the context menu interaction.
4031
4032         Since this seems to only affect this particular API test, work around it by swizzling out
4033         `-resizableSnapshotViewFromRect:afterScreenUpdates:withCapInsets:` in this API test to return a non-null UIView.
4034
4035         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
4036         (TestWebKitAPI::swizzledResizableSnapshotViewFromRect):
4037         (TestWebKitAPI::TEST):
4038
4039 2020-05-24  Sam Weinig  <weinig@apple.com>
4040
4041         Extended Color Cleanup: Use the name SimpleColor consistently
4042         https://bugs.webkit.org/show_bug.cgi?id=212337
4043
4044         Reviewed by Anders Carlsson.
4045
4046         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
4047         (TestWebKitAPI::TEST):
4048         Update test for rename of makeRGBAFromHSLA to makeSimpleColorFromHSLA.
4049
4050 2020-05-25  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
4051
4052         [Flatpak][GStreamer] compilation fails when GST_BUILD_PATH is defined
4053         https://bugs.webkit.org/show_bug.cgi?id=212343
4054
4055         Reviewed by Philippe Normand.
4056
4057         Flatpak's command has to be expressed before gst-env declaration.
4058
4059         * flatpak/flatpakutils.py:
4060         (WebkitFlatpak.run_in_sandbox):
4061
4062 2020-05-25  Adrian Perez de Castro  <aperez@igalia.com>
4063
4064         [WPE][WKTR] Fix typo in EventSenderProxyWPE
4065         https://bugs.webkit.org/show_bug.cgi?id=212340
4066
4067         Reviewed by Carlos Garcia Campos.
4068
4069         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
4070         (WTR::wpeKeySymForKeyRef): Fix typo rightArror -> rightArrow.
4071
4072 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4073
4074         REGRESSION(r262057): [Flatpak SDK] sccache-dist server no longer starting
4075         https://bugs.webkit.org/show_bug.cgi?id=212326
4076
4077         Reviewed by Žan Doberšek.
4078
4079         A few mount points were missing in the sandbox created by
4080         `flatpak run` preventing the sccache-dist server to start and keep running.
4081
4082         * flatpak/flatpakutils.py:
4083         (WebkitFlatpak.run_in_sandbox):
4084         * flatpak/webkit-bwrap:
4085
4086 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4087
4088         [Flatpak SDK] Fixup icecc support
4089         https://bugs.webkit.org/show_bug.cgi?id=212301
4090
4091         Reviewed by Žan Doberšek.
4092
4093         * flatpak/flatpakutils.py:
4094         (WebkitFlatpak.run_in_sandbox): Allow homedir access from the
4095         sandbox, this is needed because the icecc toolchains paths refer
4096         to the host environment, not the sandbox.
4097         (WebkitFlatpak.pack_toolchain): Fix byte-string formatting issue, happening in Python3.
4098
4099 2020-05-25  Philippe Normand  <pnormand@igalia.com>
4100
4101         [GTK4] SDK contains too old GTK4
4102         https://bugs.webkit.org/show_bug.cgi?id=212334
4103
4104         Reviewed by Adrian Perez de Castro.
4105
4106         * buildstream/elements/sdk/gtk.bst: Update GTK4 to 3.98.4.
4107
4108 2020-05-24  Sam Weinig  <weinig@apple.com>
4109
4110         Extended Color Cleanup: Stop allowing direct access to the underlying SimpleColor (it is almost always incorrect with respect to extended colors)
4111         https://bugs.webkit.org/show_bug.cgi?id=212184
4112
4113         Reviewed by Dean Jackson.
4114
4115         * TestWebKitAPI/Tests/WebCore/ColorTests.cpp:
4116         (TestWebKitAPI::TEST):
4117         Use toSRGBASimpleColorLossy() to get access to color components.
4118
4119 2020-05-22  Alex Christensen  <achristensen@webkit.org>
4120
4121         Make download resume workaround forgiving of changes in CFNetwork
4122         https://bugs.webkit.org/show_bug.cgi?id=212273
4123
4124         Reviewed by Geoffrey Garen.
4125
4126         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4127
4128 2020-05-22  Paulo Matos  <pmatos@igalia.com>
4129
4130         Add support for [no-]use-ccache option in build-jsc
4131         https://bugs.webkit.org/show_bug.cgi?id=212259
4132
4133         Reviewed by Mark Lam.
4134
4135         * Scripts/build-jsc:
4136
4137 2020-05-22  Alex Christensen  <achristensen@webkit.org>
4138
4139         Add SPI to unblock third party cookies from WKWebViews with ResourceLoadStatistics turned on
4140         https://bugs.webkit.org/show_bug.cgi?id=212058
4141         <rdar://problem/60595539>
4142
4143         Reviewed by John Wilander.
4144
4145         I also add _test_waitForAlert to make tests less verbose.
4146
4147         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4148         (TEST):
4149         * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
4150         (TEST):
4151         * TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
4152         (TestWebKitAPI::TEST):
4153         * TestWebKitAPI/cocoa/HTTPServer.h:
4154         (TestWebKitAPI::Connection::Connection):
4155         * TestWebKitAPI/cocoa/HTTPServer.mm:
4156         (TestWebKitAPI::HTTPServer::HTTPServer):
4157         (TestWebKitAPI::dataFromString):
4158         (TestWebKitAPI::nullTerminatedRequest):
4159         (TestWebKitAPI::HTTPServer::request const):
4160         (TestWebKitAPI::Connection::receive const):
4161         (TestWebKitAPI::Connection::send const):
4162         * TestWebKitAPI/cocoa/TestUIDelegate.h:
4163         * TestWebKitAPI/cocoa/TestUIDelegate.mm:
4164         (-[WKWebView _test_waitForAlert]):
4165
4166 2020-05-22  Chris Dumez  <cdumez@apple.com>
4167
4168         [WKTR] Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank
4169         https://bugs.webkit.org/show_bug.cgi?id=212268
4170         <rdar://problem/63493074>
4171
4172         Reviewed by Geoffrey Garen.
4173
4174         Make TestController::resetStateToConsistentValues() more robust against failures to navigate to about:blank.
4175
4176         In <rdar://problem/63493074>, we have evidence that TestController::resetStateToConsistentValues() sometimes
4177         fails to load about:blank, likely due to an unresponsive WebProcess. When this happens, WebKitTestRunner
4178         reports the test as timing out and logs this on stderr:
4179         """
4180         <unknown> - TestController::run - Failed to reset state to consistent values
4181         #PROCESS UNRESPONSIVE - com.apple.WebKit.WebContent.Development (pid 57421)
4182         """
4183
4184         This is unfortunate because this does not indicate that anything is particularly wrong with the test in
4185         question. Rather, it indicates that the WebProcess is unresponsive (likely due to a hang caused by a
4186         previous test), which prevents WebKitTestRunner to reset the state in order to run the test.
4187
4188         I propose that if we fail to load about:blank once, we log an error message to stderr but then terminate
4189         the WebProcess and try once again, to make WebKitTestRunner more robust.
4190         I have verified the change locally, by injecting a script in resetStateToConsistentValues() that causes
4191         a WebProcess hang. Before my change, the test would time out and the same logging as in
4192         <rdar://problem/63493074> would show. After my change though, the test would pass successfully despite the
4193         WebProcess hang.
4194
4195         * WebKitTestRunner/TestController.cpp:
4196         (WTR::TestController::resetStateToConsistentValues):
4197
4198 2020-05-22  ChangSeok Oh  <changseok@webkit.org>
4199
4200         [GTK] jhbuild is broken with GCC 10.0
4201         https://bugs.webkit.org/show_bug.cgi?id=212256
4202
4203         Reviewed by Carlos Alberto Lopez Perez.
4204
4205         GCC 10.0 enables -fno-common as default, so many 'multiple definitions' failures occur
4206         in building dependencies via jhbuild. This patch addresses them by back-porting patches
4207         from corresponding source repositories.
4208
4209         * gstreamer/jhbuild.modules:
4210         * gstreamer/patches/libsrtp-Fix-building-with-gcc-10.patch: Added.
4211         * gstreamer/patches/orc-satisfy-fno-common-under-gcc10.patch: Added.
4212         * gtk/jhbuild.modules:
4213         * gtk/patches/at-spi2-atk-tests-Replace-common-variable-with-usual-external.patch: Added.
4214         * gtk/patches/at-spi2-atk-tests-fix-child_pid-reference.patch: Added.
4215         * gtk/patches/mesa-gallium-build-fix-to-make-gcc-10-happy.patch: Added.
4216         * gtk/patches/xserver-Fix-building-with-fno-common.patch: Added.
4217
4218 2020-05-22  Philippe Normand  <pnormand@igalia.com>
4219
4220         [Flatpak SDK] Add bubblewrap ... wrapper
4221         https://bugs.webkit.org/show_bug.cgi?id=212077
4222
4223         Reviewed by Carlos Alberto Lopez Perez.
4224
4225         The bind-mounts are now handled through webkit-bwrap.
4226
4227         * flatpak/flatpakutils.py:
4228         (WebkitFlatpak.execute_command):
4229         (WebkitFlatpak.run_in_sandbox):
4230         * flatpak/webkit-bwrap: Added.
4231
4232 2020-05-22  Javier Fernandez  <jfernandez@igalia.com>
4233
4234         [Flatpak SDK] CCACHE_ env vars are not forwarded to the sandbox environment
4235         https://bugs.webkit.org/show_bug.cgi?id=212257
4236
4237         Reviewed by Philippe Normand.
4238
4239         Added the "CCACHE" prefix to the ones the SDK should keep from the
4240         user's environment, and forwarded to the Flatpak sandbox.
4241
4242         * flatpak/flatpakutils.py:
4243         (WebkitFlatpak.run_in_sandbox):
4244
4245 2020-05-22  Tim Horton  <timothy_horton@apple.com>
4246
4247         iOS: Pressing tab in the Mail subject field moves focus to the body, but pressing shift tab doesn't move it back
4248         https://bugs.webkit.org/show_bug.cgi?id=212243
4249         <rdar://problem/59127764>
4250
4251         Reviewed by Wenson Hsieh.
4252
4253         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
4254         (-[FocusDelegate _webView:takeFocus:]):
4255         (-[FocusDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
4256         (TEST):
4257
4258 2020-05-21  Wenson Hsieh  <wenson_hsieh@apple.com>
4259
4260         DataTransfer.files contains multiple files when pasting a single image with multiple representations
4261         https://bugs.webkit.org/show_bug.cgi?id=212245
4262         <rdar://problem/60240436>
4263
4264         Reviewed by Tim Horton.
4265
4266         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
4267         (-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
4268         (-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):
4269         (-[LocalPasteboard writeObjects:]):
4270         (-[LocalPasteboard pasteboardItems]):
4271
4272         Adjust DumpRenderTree's LocalPasteboard so that it lazily populates the pasteboard when constructing
4273         NSPasteboardItems. To do this, we need to make a few adjustments:
4274
4275         1.      When reifying NSPasteboardItems from LocalPasteboard, ask the owner (WebHTMLView) to provide pasteboard
4276                 data for each pasteboard type that was promised by WebKit, but was not eagerly written to the pasteboard.
4277
4278         2.      Cache pasteboard items that were created, so that we don't repeatedly ask WebHTMLView to provide
4279                 pasteboard data. WebHTMLView doesn't currently support this, and suffers from a bug where TIFF data may
4280                 only be provided once. This was fixed for WebKit2, but not for WebKit1.
4281
4282         3.      Maintain a separate hash list of original pasteboard types (which may not be UTIs) that were handed to
4283                 LocalPasteboard by WebKit. We use these original types in step (1).
4284
4285         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
4286
4287         Add a new API test to verify that one file is exposed via the DataTranfer when the pasteboard contains a single
4288         image with two image representations, but two files are exposed when the pasteboard contains two images, each
4289         with a single representation.
4290
4291         (writeImageDataToPasteboard):
4292
4293         Overload this helper method with two additional variants: one that takes a dictionary of pasteboard types to
4294         data, and another that takes an array of dictionaries, each representing a single item's types and data.
4295
4296 2020-05-21  Robin Morisset  <rmorisset@apple.com>
4297
4298         Various compile-time boolean flags could/should be marked constexpr
4299         https://bugs.webkit.org/show_bug.cgi?id=212244
4300
4301         Reviewed by Mark Lam.
4302
43