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