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