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