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