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