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