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