test262/Runner.pm: minor fixes
[WebKit-https.git] / Tools / ChangeLog
1 2018-05-03  Valerie R Young  <valerie@bocoup.com>
2
3         test262/Runner.pm: minor fixes
4         https://bugs.webkit.org/show_bug.cgi?id=185250
5
6         Reviewed by Michael Saboff.
7
8         Add comments, change output and fix bug: unintended interpolation
9         of filename when running jsc.
10
11         * Scripts/test262/Runner.pm:
12         (processCLI):
13         (main):
14         (runTest):
15
16 2018-05-03  Chris Dumez  <cdumez@apple.com>
17
18         Load hangs if the WebProcess fails to launch
19         https://bugs.webkit.org/show_bug.cgi?id=185225
20         <rdar://problem/38249058>
21
22         Reviewed by Geoff Garen.
23
24         Add API test coverage.
25
26         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
27         * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm: Added.
28         (-[CrashOnStartNavigationDelegate _webView:webContentProcessDidTerminateWithReason:]):
29         (-[CrashOnStartNavigationDelegate webView:didFinishNavigation:]):
30         (-[CrashRecoveryScriptMessageHandler userContentController:didReceiveScriptMessage:]):
31         (TEST):
32
33 2018-05-03  Don Olmstead  <don.olmstead@sony.com>
34
35         [WinCairo] Add JSC test bots
36         https://bugs.webkit.org/show_bug.cgi?id=185234
37
38         Reviewed by Per Arne Vollan.
39
40         * BuildSlaveSupport/build.webkit.org-config/config.json:
41         * BuildSlaveSupport/build.webkit.org-config/steps.py:
42         (RunJavaScriptCoreTests.start):
43
44 2018-05-03  Michael Catanzaro  <mcatanzaro@igalia.com>
45
46         WebKit should send fake macOS user agent to docs.google.com
47         https://bugs.webkit.org/show_bug.cgi?id=185165
48
49         Reviewed by Carlos Garcia Campos.
50
51         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
52         (TestWebKitAPI::TEST):
53
54 2018-05-03  Valerie R Young  <valerie@bocoup.com>
55
56         test262/Runner.pm: performance improvements
57         https://bugs.webkit.org/show_bug.cgi?id=185202
58
59         Reviewed by Michael Saboff.
60
61         Batch the tests by the number of processes, and give each process
62         a file to save results to to avoid threading. Do not parallelize
63         when running small sets of tests.
64
65         * Scripts/test262/Runner.pm:
66         (processCLI):
67         (main):
68         (processFile):
69         (processResult):
70
71 2018-05-03  Ryan Haddad  <ryanhaddad@apple.com>
72
73         Unreviewed, rolling out r231253.
74
75         The API test added with this change is crashing on the bots.
76
77         Reverted changeset:
78
79         "Web Inspector: opt out of process swap on navigation if a Web
80         Inspector frontend is connected"
81         https://bugs.webkit.org/show_bug.cgi?id=184861
82         https://trac.webkit.org/changeset/231253
83
84 2018-05-03  Carlos Garcia Campos  <cgarcia@igalia.com>
85
86         REGRESSION(r222772): [GTK][WPE] WebProcess from WebKitGtk+ 2.19.9x SIGSEVs in WebKit::WebProcess::ensureNetworkProcessConnection() at Source/WebKit/WebProcess/WebProcess.cpp:1127
87         https://bugs.webkit.org/show_bug.cgi?id=183348
88
89         Reviewed by Michael Catanzaro.
90
91         Add a test case to reproduce the crash.
92
93         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
94         (testWebViewCloseQuickly):
95         (beforeAll):
96
97 2018-05-02  Aditya Keerthi  <akeerthi@apple.com>
98
99         Can't copy and paste URLs that have no title into Mail (macOS)
100         https://bugs.webkit.org/show_bug.cgi?id=185205
101         <rdar://problem/36352406>
102
103         Reviewed by Tim Horton.
104
105         Added test to verify behavior when copying and pasting a URL without a title.
106
107         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.html:
108         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
109         (TestWebKitAPI::TEST):
110
111 2018-05-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
112
113         [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org (follow-up fix)
114         https://bugs.webkit.org/show_bug.cgi?id=184699
115
116         Unreviewed follow-up fix after r231230.
117
118         * Scripts/generate-jsc-bundle:
119         (generate_wrapper_script): Quote the arguments passed to jsc.
120
121 2018-05-02  Brian Burg  <bburg@apple.com>
122
123         Web Inspector: opt out of process swap on navigation if a Web Inspector frontend is connected
124         https://bugs.webkit.org/show_bug.cgi?id=184861
125         <rdar://problem/39153768>
126
127         Reviewed by Ryosuke Niwa.
128
129         Add a new test that checks whether a new process is used for navigation when
130         an Inspector is shown. Also check that the behavior reverts to normal after
131         the Inspector has been closed.
132
133         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
134
135 2018-05-02  Valerie R Young  <valerie@bocoup.com>
136
137         test262/Runner.pm: save summary to file
138         https://bugs.webkit.org/show_bug.cgi?id=185200
139
140         Reviewed by Michael Saboff.
141
142         * Scripts/test262/Runner.pm:
143         (processCLI):
144         (main):
145         (summarizeResults):
146
147 2018-05-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
148
149         [GTK] Generate a JSC bundle on the 64 and 32 bit release bots and upload it to webkitgtk.org
150         https://bugs.webkit.org/show_bug.cgi?id=184699
151
152         Reviewed by Gustavo Noronha Silva.
153
154         This adds a new step for the GTK 64-bit release build bot and the
155         GTK 32-bit release build&test bot.
156
157         This step will be run as one of the lasts ones (after the product
158         is built) and will execute the script generate-jsc-bundle.
159         This script will take care of creating a JSC bundle and uploading
160         it to a server defined on a configuration file that has to be
161         deployed on the bots with the required server data and credentials
162         for this upload.
163
164         In this case, the built products should then be accessible at
165         <https://webkitgtk.org/jsc-built-products>. But the implementation
166         is not tied to any specific server. All the details about where
167         to upload the file is done in configuration file that is kept
168         private on each bot outside of the WebKit source tree.
169
170         The script also supports generating a JSC bundle locally and not
171         uploading it anywhere. This is the default mode of running.
172         The remote upload will only be activated if a --remote-config-file
173         parameter is passed (which is done from the buildbot config)
174
175         * BuildSlaveSupport/build.webkit.org-config/config.json:
176         * BuildSlaveSupport/build.webkit.org-config/factories.py:
177         (BuildFactory):
178         (BuildFactory.__init__):
179         (TestFactory):
180         (TestFactory.__init__):
181         (BuildAndGenerateJSCBundleFactory):
182         (BuildAndNonLayoutTestAndGenerateJSCBundleFactory):
183         * BuildSlaveSupport/build.webkit.org-config/steps.py:
184         (GenerateJSCBundle):
185         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
186         * Scripts/generate-jsc-bundle: Added.
187         (ldd_get_libs_and_interpreter):
188         (generate_readme):
189         (generate_wrapper_script):
190         (copy_and_remove_rpath):
191         (createJSCBundle):
192         (sha256sum):
193         (uploadJSCBundle):
194         (main):
195
196 2018-05-01  Ryosuke Niwa  <rniwa@webkit.org>
197
198         PSON: Make WebKitTestRunner work with process swap on navigation turned on
199         https://bugs.webkit.org/show_bug.cgi?id=185111
200
201         Reviewed by Chris Dumez.
202
203         Add the basic support for running layout tests with process-swap-on-navigation turned on.
204
205         First, move m_whatToDump, m_dumpPixels, m_waitToDump, and m_dumpFrameLoadCallbacks from WebContent process
206         to UI process so that calls to waitUntilDone, dumpAsText, etc... persist across process swaps.
207
208         In addition, initialize the injected bundle inside a new WebContent process when the first page is created.
209         This instantiates objects such as TestRunner, GCController, etc... in the new process. The initialization
210         can't be done in InjectedBundle::beginTesting because some steps in InjectedBundle::initialize require
211         the current PageGroup and Page objects. We avoid clearing databases and app cache in this case.
212
213         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
214         (WTR::InjectedBundle::didCreatePage): Send "Initialization" message to UI process. This message returns
215         all the dictionary values usually present in "BeginTest" message from UI process as well as "ResumeTesting"
216         boolean which is set when this process was created as a result of a process swap on navgation. Invoke
217         beginTesting with BegingTestingMode::Resume when this boolean is set.
218         (WTR::InjectedBundle::didReceiveMessageToPage):
219         (WTR::InjectedBundle::beginTesting): Don't clear database, app cache, etc... when initializing an injected
220         bundle after a process swap on navigation.
221         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
222         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
223         (WTR::InjectedBundlePage::dump):
224         (WTR::InjectedBundlePage::frameDidChangeLocation):
225         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
226         (WTR::TestRunner::TestRunner):
227         (WTR::TestRunner::shouldDumpPixels const): Added.
228         (WTR::TestRunner::setDumpPixels): Added.
229         (WTR::TestRunner::dumpAsText):
230         (WTR::TestRunner::whatToDump const): Added.
231         (WTR::TestRunner::setWhatToDump): Added.
232         (WTR::TestRunner::waitUntilDone):
233         (WTR::TestRunner::setWaitUntilDone): Added.
234         (WTR::TestRunner::shouldWaitUntilDone): Added.
235         (WTR::TestRunner::notifyDone):
236         (WTR::TestRunner::forceImmediateCompletion):
237         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Added.
238         (WTR::TestRunner::shouldDumpFrameLoadCallbacks): Added.
239         (WTR::TestRunner::setAudioResult):
240         * WebKitTestRunner/InjectedBundle/TestRunner.h:
241         (WTR::TestRunner::dumpChildFramesAsText):
242         (WTR::TestRunner::dumpDOMAsWebArchive):
243         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks): Moved to cpp.
244         (WTR::TestRunner::whatToDump const): Moved to cpp.
245         (WTR::TestRunner::shouldDumpMainFrameScrollPosition const):
246         (WTR::TestRunner::shouldDumpPixels const): Moved to cpp.
247         (WTR::TestRunner::shouldDumpFrameLoadCallbacks const): Moved to cpp.
248         (WTR::TestRunner::waitToDump const): Renamed to shouldWaitUntilDone and moved to cpp.
249         * WebKitTestRunner/TestInvocation.cpp:
250         (WTR::TestInvocation::TestInvocation): Initialize m_dumpFrameLoadCallbacks here.
251         (WTR::TestInvocation::shouldLogFrameLoadDelegates const): Deleted.
252         (WTR::TestInvocation::createTestSettingsDictionary): Extracted from invoke().
253         (WTR::TestInvocation::invoke): Sets m_startedTesting to true immediately afte sending "BeginTest" message.
254         m_startedTesting is later used in didReceiveSynchronousMessageFromInjectedBundle to detect whether a given
255         "Initialization" message is sent from a regular WebContent process (m_startedTesting is false) or the one
256         started as a result of a process swap on navigation (m_startedTesting is true).
257         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle): Added a bunch of new messgaes to
258         support initializing the injected bundle in a process swapped after navigation and set/get messages for
259         the states which must persist across process swaps within a test.
260         * WebKitTestRunner/TestInvocation.h:
261         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
262         * Tools/WebKitTestRunner/WhatToDump.h:
263         (WTR::WhatToDump): Added.
264
265 2018-05-01  Leo Balter  <leonardo.balter@gmail.com>
266
267         Auto save the results for Test262
268         https://bugs.webkit.org/show_bug.cgi?id=184926
269
270         Reviewed by Michael Saboff.
271
272         * Scripts/test262/Runner.pm:
273         (processCLI):
274         (main):
275         (parseError):
276         (processResult):
277         (summarizeResults):
278         * Scripts/test262/config.yaml: Renamed from Tools/Scripts/test262/test262-config.yaml.
279
280 2018-05-01  Jonathan Bedard  <jbedard@apple.com>
281
282         webkitpy: SIGKILL right after SIGTERM causes orphaned processes with 'xcrun simctl spawn'
283         https://bugs.webkit.org/show_bug.cgi?id=185164
284
285         Reviewed by David Kilzer.
286
287         * Scripts/webkitpy/common/system/executive.py:
288         (Executive.kill_process): First attempt will always send a SIGTERM, all subsequent attempts will
289         send a SIGKILL. A SIGKILL with not be sent if the process is not running to avoid orphaning childen.
290
291 2018-05-01  Chris Dumez  <cdumez@apple.com>
292
293         REGRESSION (r230919): API test WebKit.AutoLayoutIntegration is a flaky failure
294         https://bugs.webkit.org/show_bug.cgi?id=184918
295         <rdar://problem/39705516>
296
297         Reviewed by Wenson Hsieh.
298
299         Make sure provisional load has started before calling beginLayoutAtMinimumWidth
300         on the AutoLayoutWKWebView to restore pre-r230919 behavior. The load now starts
301         asynchronously because we ask the client if it is OK to do the load and the policy
302         delegates are asynchronous nowadays.
303
304         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
305         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]):
306         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
307         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
308         (-[TestNavigationDelegate webView:didStartProvisionalNavigation:]):
309         (-[TestNavigationDelegate waitForDidStartProvisionalNavigation]):
310         (-[WKWebView _test_waitForDidStartProvisionalNavigation]):
311
312 2018-05-01  Ross Kirsling  <ross.kirsling@sony.com>
313
314         [WinCairo] Align buildbot test stages with AppleWin.
315         https://bugs.webkit.org/show_bug.cgi?id=185094
316
317         Reviewed by Brent Fulgham.
318
319         * BuildSlaveSupport/build.webkit.org-config/factories.py:
320         (TestFactory.__init__):
321         Do run API tests, don't run dashboard tests.
322
323         * BuildSlaveSupport/build.webkit.org-config/steps.py:
324         (RunUnitTests):
325         Call run-api-tests with Python, not Perl (bugfix for r230998).
326
327         * Scripts/webkitpy/port/win.py:
328         (WinPort.environment_for_api_tests):
329         Retrieve necessary Windows environment variables.
330
331 2018-05-01  Eric Carlson  <eric.carlson@apple.com>
332
333         [MediaStream] remove WK1 support
334         https://bugs.webkit.org/show_bug.cgi?id=185136
335
336         Reviewed by Youenn Fablet.
337
338         * DumpRenderTree/mac/UIDelegate.mm:
339         (-[UIDelegate webView:decidePolicyForUserMediaRequestFromOrigin:listener:]): Deleted.
340
341 2018-05-01  Chris Dumez  <cdumez@apple.com>
342
343         [WKTR] Move navigation policy for response decision from InjectedBundle to UIProcess
344         https://bugs.webkit.org/show_bug.cgi?id=185157
345
346         Reviewed by Geoffrey Garen.
347
348         Move navigation policy for response decision from InjectedBundle to UIProcess. This is a more
349         common configuration and should therefore be the configuration we test by default.
350
351         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
352         (WTR::InjectedBundlePage::decidePolicyForResponse):
353
354 2018-05-01  Oleksandr Skachkov  <gskachkov@gmail.com>
355
356         WebAssembly: add support for stream APIs - JavaScript API
357         https://bugs.webkit.org/show_bug.cgi?id=183442
358
359         Reviewed by Yusuke Suzuki and JF Bastien.
360
361         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
362
363 2018-04-30  Mark Lam  <mark.lam@apple.com>
364
365         Apply PtrTags to the MetaAllocator and friends.
366         https://bugs.webkit.org/show_bug.cgi?id=185110
367         <rdar://problem/39533895>
368
369         Reviewed by Saam Barati.
370
371         Update the test to match MetaAllocator changes in WTF.
372
373         * TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
374         (TestWebKitAPI::TEST_F):
375         (WTF::tagForPtr):
376         (WTF::ptrTagName):
377
378 2018-04-30  Alex Christensen  <achristensen@webkit.org>
379
380         Add WKUIDelegatePrivate equivalent of WKPageContextMenuClient getContextMenuFromProposedMenuAsync
381         https://bugs.webkit.org/show_bug.cgi?id=180955
382
383         Reviewed by Andy Estes.
384
385         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm:
386         (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
387         (-[ContextMenuImgWithVideoDelegate _webView:getContextMenuFromProposedMenu:forElement:userInfo:completionHandler:]):
388
389 2018-04-30  JF Bastien  <jfbastien@apple.com>
390
391         Use some C++17 features
392         https://bugs.webkit.org/show_bug.cgi?id=185135
393
394         Reviewed by Alex Christensen.
395
396         * DumpRenderTree/PlatformMac.cmake:
397         * gtk/ycm_extra_conf.py:
398         (FlagsForFile):
399
400 2018-04-30  Yusuke Suzuki  <utatane.tea@gmail.com>
401
402         Use WordLock instead of std::mutex for Threading
403         https://bugs.webkit.org/show_bug.cgi?id=185121
404
405         Reviewed by Geoffrey Garen.
406
407         * TestWebKitAPI/Tests/WTF/Signals.cpp:
408         (TEST):
409
410 2018-04-30  Michael Catanzaro  <mcatanzaro@igalia.com>
411
412         [GTK] Webkit should spoof as Safari on a Mac when on Chase.com
413         https://bugs.webkit.org/show_bug.cgi?id=185103
414
415         Reviewed by Carlos Garcia Campos.
416
417         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
418         (TestWebKitAPI::TEST):
419
420 2018-04-28  Sihui Liu  <sihui_liu@apple.com>
421
422         [Cocoa] Set HTTPOnly flag when converting Cookie to NSHTTPCookie
423         https://bugs.webkit.org/show_bug.cgi?id=185052
424
425         Reviewed by Geoffrey Garen.
426
427         Modified API test to provide correct test cases for HTTPOnly flag.
428
429         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
430         (TEST):
431
432 2018-04-28  Rick Waldron  <waldron.rick@gmail.com>
433
434         Token misspelled "tocken" in error message string
435         https://bugs.webkit.org/show_bug.cgi?id=185030
436
437         Reviewed by Saam Barati.
438
439         * Scripts/test262/test262-expectations.yaml: Fix typo "tocken" => "token"
440
441 2018-04-27  Stephan Szabo  <stephan.szabo@sony.com>
442
443         [WinCairo] Support --no-copy for jsc tests in wincairo tests, add copying of dlls for copy case
444         https://bugs.webkit.org/show_bug.cgi?id=185049
445
446         Reviewed by Keith Miller.
447
448         * Scripts/run-javascriptcore-tests:
449         (runJSCStressTests):
450         * Scripts/run-jsc-stress-tests:
451
452 2018-04-26  Ryosuke Niwa  <rniwa@webkit.org>
453
454         PSON: Triggering a navigation to an invalid URL creates a new WebContent process
455         https://bugs.webkit.org/show_bug.cgi?id=185066
456
457         Reviewed by Youenn Fablet.
458
459         Added a new test case (ProcessSwap.NavigateToInvalidURL) for navigating to an invalid URL.
460         WebKit should not swap WebContent process in this case.
461
462         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
463         (-[PSONNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
464         (-[PSONUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
465
466 2018-04-27  Nan Wang  <n_wang@apple.com>
467
468         AX: Accessibility needs to know which part of the content view is visible on iOS
469         https://bugs.webkit.org/show_bug.cgi?id=185085
470         <rdar://problem/39801363>
471
472         Reviewed by Chris Fleizach.
473
474         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
475         (WTR::AccessibilityUIElement::stringAttributeValue):
476
477 2018-04-27  Wenson Hsieh  <wenson_hsieh@apple.com>
478
479         [Extra zoom mode] Add a mechanism to override default viewport behaviors in extra zoom mode
480         https://bugs.webkit.org/show_bug.cgi?id=185050
481         <rdar://problem/39624038>
482
483         Reviewed by Tim Horton.
484
485         Remove a test that's no longer useful, now that the SPI it was testing is gone. This functionality is now
486         tested by the layout test added in this patch.
487
488         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
489         * TestWebKitAPI/Tests/ios/ViewportSizingTests.mm: Removed.
490
491 2018-04-26  Ryan Haddad  <ryanhaddad@apple.com>
492
493         REGRESSION (r231039): RunUnitTests step reports disabled tests as failures
494         https://bugs.webkit.org/show_bug.cgi?id=185061
495
496         Reviewed by Aakash Jain.
497
498         * BuildSlaveSupport/build.webkit.org-config/steps.py:
499         (RunUnitTests.countFailures): Return the difference between the total number of tests run and the number that passed.
500         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add a test.
501
502 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
503
504         Add release bots for WinCairo.
505         https://bugs.webkit.org/show_bug.cgi?id=185042
506
507         Reviewed by Lucas Forschler.
508
509         * BuildSlaveSupport/build.webkit.org-config/config.json:
510         Add a release build bot and two test bots, replacing the outdated WinCairo release bots.
511
512 2018-04-26  Sihui Liu  <sihui_liu@apple.com>
513
514         -[WKHTTPCookieStore deleteCookie:completionHandler:] doesn't delete cookies
515         https://bugs.webkit.org/show_bug.cgi?id=184938
516         <rdar://problem/34737395>
517
518         Reviewed by Geoffrey Garen.
519
520         Add API test coverage.
521
522         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
523         (TEST):
524
525 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
526
527         WinCairo test bots should run JSC tests with options for Windows command prompt.
528         https://bugs.webkit.org/show_bug.cgi?id=185019
529
530         Reviewed by Per Arne Vollan.
531
532         * BuildSlaveSupport/build.webkit.org-config/steps.py:
533         (RunJavaScriptCoreTests.start):
534
535 2018-04-26  Ross Kirsling  <ross.kirsling@sony.com>
536
537         WinCairo WKL Debug Test bot is not using DRT.
538         https://bugs.webkit.org/show_bug.cgi?id=185009
539
540         Reviewed by Per Arne Vollan.
541
542         * BuildSlaveSupport/build.webkit.org-config/config.json:
543
544 2018-04-26  Per Arne Vollan  <pvollan@apple.com>
545
546         Disable content filtering in minimal simulator mode
547         https://bugs.webkit.org/show_bug.cgi?id=185027
548         <rdar://problem/39736091>
549
550         Reviewed by Jer Noble.
551
552         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
553
554 2018-04-26  Brady Eidson  <beidson@apple.com>
555
556         Add a setting for keeping around all processes and always reusing them per-origin.
557         <rdar://problem/39695798> and https://bugs.webkit.org/show_bug.cgi?id=185020
558
559         Reviewed by Andy Estes.
560
561         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
562
563 2018-04-26  Andy VanWagoner  <thetalecrafter@gmail.com>
564
565         [INTL] Implement Intl.PluralRules
566         https://bugs.webkit.org/show_bug.cgi?id=184312
567
568         Reviewed by JF Bastien.
569
570         Added Intl.PluralRules feature flag.
571
572         * Scripts/webkitperl/FeatureList.pm:
573         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
574
575 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
576
577         [WPE] Build and link against latest WPEBackend and WPEBackend-fdo
578         https://bugs.webkit.org/show_bug.cgi?id=184643
579
580         Reviewed by Žan Doberšek.
581
582         Add missing INCLUDE_DIRS in many places.
583
584         Adapt to single-header WPE includes.
585
586         Null-initialize padding to silence -Wmissing-field-initializers. (Yuck.)
587
588         * TestWebKitAPI/PlatformWPE.cmake:
589         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
590         (testWebViewWebBackend):
591         * TestWebKitAPI/glib/PlatformWPE.cmake:
592         * WebKitTestRunner/EventSenderProxy.h:
593         * WebKitTestRunner/PlatformWPE.cmake:
594         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
595         * wpe/HeadlessViewBackend/CMakeLists.txt:
596         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
597         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
598         * wpe/jhbuild.modules:
599
600 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
601
602         REGRESSION (r230998): Bot watcher's dashboard doesn't display number of API test failures
603         https://bugs.webkit.org/show_bug.cgi?id=184982
604
605         Rubber-stamped by Aakash Jain.
606
607         Correctly count the number of API test failures.
608
609         * BuildSlaveSupport/build.webkit.org-config/steps.py:
610         (RunUnitTests.countFailures): Count the number of test failures for the new run-api-tests.
611         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
612         * Scripts/webkitpy/api_tests/manager.py:
613         (Manager.run): Disabled tests are not run.
614
615 2018-04-25  Jiewen Tan  <jiewen_tan@apple.com>
616
617         Remove access to keychain from the WebContent process
618         https://bugs.webkit.org/show_bug.cgi?id=184428
619         <rdar://problem/13150903>
620
621         Reviewed by Brent Fulgham.
622
623         This patch does the followings:
624         1. Added an API test for this patch.
625         2. Instrument DumpRenderTree and WebKitTestRunner to take advantages of new SPIs.
626
627         * DumpRenderTree/mac/UIDelegate.mm:
628         (-[UIDelegate signedPublicKeyAndChallengeStringForWebView:]):
629         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
630         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm: Added.
631         (TestWebKitAPI::SSLKeyGeneratorTest::SetUp):
632         (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
633         (TestWebKitAPI::TEST_F):
634         * WebKitTestRunner/TestController.cpp:
635         (WTR::copySignedPublicKeyAndChallengeString):
636         (WTR::TestController::createOtherPage):
637         (WTR::TestController::createWebViewWithOptions):
638
639 2018-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
640
641         [Extra zoom mode] The search field on www.bing.com is missing label text
642         https://bugs.webkit.org/show_bug.cgi?id=184975
643         <rdar://problem/39723081>
644
645         Reviewed by Tim Horton.
646
647         Adds UIScriptController.formInputLabel, which asynchronously requests the input label text for the currently
648         focused element in extra zoom mode.
649
650         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
651         (WTR::UIScriptController::formInputLabel const):
652         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
653         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
654         (WTR::UIScriptController::formInputLabel const):
655         * TestRunnerShared/UIScriptContext/UIScriptController.h:
656         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
657         (WTR::UIScriptController::formInputLabel const):
658
659 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
660
661         [WPE] Should load injected bundle from builddir in developer builds
662         https://bugs.webkit.org/show_bug.cgi?id=184983
663
664         Reviewed by Carlos Alberto Lopez Perez.
665
666         Set WEBKIT_INJECTED_BUNDLE_PATH when running WPE MiniBrowser.
667
668         * Scripts/run-minibrowser:
669
670 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
671
672         [WPE] libgstggtk.so broken in jhbuild environment
673         https://bugs.webkit.org/show_bug.cgi?id=184984
674
675         Reviewed by Carlos Alberto Lopez Perez.
676
677         Don't pass --enable-glx=no when building libepoxy, to ensure it's compatible with
678         gst-plugins-good.
679
680         * wpe/jhbuild.modules:
681
682 2018-04-25  Ryosuke Niwa  <rniwa@webkit.org>
683
684         PSON: Don't create a new process when navigating to a blob URL, data URL, and about:blank
685         https://bugs.webkit.org/show_bug.cgi?id=184962
686
687         Reviewed by Youenn Fablet.
688
689         Added four test cases for navigating to a blob URL, data URL, and about:blank with process-swap-on-navigation turned on.
690
691         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
692         (ProcessSwap.SameOriginBlobNavigation): Added.
693         (ProcessSwap.CrossOriginBlobNavigation): Added.
694         (ProcessSwap.NavigateToAboutBlank): Added.
695         (ProcessSwap.NavigateToDataURL): Added.
696
697 2018-04-25  Michael Catanzaro  <mcatanzaro@igalia.com>
698
699         [WPE] Remove deprecated functions and properties from the API
700         https://bugs.webkit.org/show_bug.cgi?id=179295
701
702         Reviewed by Žan Doberšek.
703
704         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
705         (testWebViewAuthenticationStorage): Disable this test for now. It will require some effort
706         to rewrite LoadTrackingTest to not require the web view at construction time.
707         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
708         (testWebKitSettings): Don't test private browsing setting, which is gone.
709         * TestWebKitAPI/glib/CMakeLists.txt: Disable TestCookieManager for now.
710
711 2018-04-25  Andy Estes  <aestes@apple.com>
712
713         [Mac] Number of drop items is always 0 when performing a DHTML drag
714         https://bugs.webkit.org/show_bug.cgi?id=184943
715
716         Reviewed by Ryosuke Niwa.
717
718         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
719         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
720         (-[DragInfo numberOfValidItemsForDrop]):
721         (-[DragInfo setNumberOfValidItemsForDrop:]):
722         (TestWebKitAPI::TEST):
723         * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Added.
724
725 2018-04-25  Jonathan Bedard  <jbedard@apple.com>
726
727         API test harness should be Python
728         https://bugs.webkit.org/show_bug.cgi?id=181043
729         <rdar://problem/36164410>
730
731         Reviewed by David Kilzer.
732
733         Run API tests from a Python script rather than Perl. The Python API tests have
734         the same structure as the layout tests.
735
736         * Scripts/run-api-tests: Changed from Perl to Python.
737         * Scripts/webkitpy/api_tests: Added.
738         * Scripts/webkitpy/api_tests/__init__.py: Added.
739         * Scripts/webkitpy/api_tests/manager.py: Added.
740         (Manager):
741         (Manager.__init__):
742         (Manager._test_list_from_output): Construct a list of tests from the output of
743         TestWTF and TestWebKitAPI.
744         (Manager._find_test_subset): Given a list of all possible tests and command line
745         arguments, return a list of tests which match the provided arguments.
746         (Manager._collect_tests): Run TestWTF and TestWebKitAPI with --gtest_list_tests
747         to determine which tests will be run.
748         (Manager._print_test_result): Formatted print of a test with it's output.
749         (Manager._print_tests_result_with_status): Print all tests and output for tests
750         which ran with a specified exit status.
751         (Manager.run): Collect all tests, run them and then print results from the run.
752         * Scripts/webkitpy/api_tests/run_api_tests.py: Added.
753         (main): Parse arguments, construct a port, early exit for illegal ports and
754         then run tests.
755         (run): Setup logging and printing before using the Manager to run tests.
756         (parse_args): Use argparse to define all options used by run-api-tests.
757         * Scripts/webkitpy/api_tests/runner.py: Added.
758         (Runner):
759         (Runner.__init__):
760         (Runner._shard_tests): Split tests so that each suite runs together.
761         (Runner.command_for_port): Run a command on the device specified by the given
762         port object. Once <https://bugs.webkit.org/show_bug.cgi?id=175204> is completed,
763         this function would be entirely replaced by the server_process factory owned
764         by the port object.
765         (Runner.run): Run all shards in the message_pool.
766         (Runner.handle): Handle reports from child processes.
767         (Runner.result_map_by_status): Return a mapping of tests to output for tests
768         which exit with a specific status.
769         (_Worker):
770         (_Worker.__init__):
771         (_Worker._filter_noisy_output): Filter out objc warnings since these polite the log.
772         (_Worker._run_single_test): Runs a single test in a single child process.
773         (_Worker._run_shard_with_binary): Attempts to run a group of tests in the same
774         child process. If this technique fails, the remaining tests are run singly.
775         (_Worker.handle): Run the specified shard.
776         * Scripts/webkitpy/port/base.py:
777         (Port):
778         (Port.check_api_test_build): Check if TestWTF and TestWebKitAPI are built.
779         (Port.environment_for_api_tests): Return the environment needed to run
780         the TestWebKitAPI binary.
781         (Port. path_to_api_test_binaries): Return a list of the path to all binaries
782         used when running API tests.
783         (Port._build_api_tests): Build TestWTF and TestWebKitAPI if required.
784         * Scripts/webkitpy/port/mac.py:
785         (MacPort.environment_for_api_tests): Enable GuardMalloc for API tests.
786         * Scripts/webkitpy/port/server_process.py: 
787         (ServerProcess.pop_all_buffered_stdout):
788
789 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
790
791         Incorrect number of WebDriver test failures shown in the bots
792         https://bugs.webkit.org/show_bug.cgi?id=184959
793
794         Reviewed by Michael Catanzaro.
795
796         The regular expression we are using to get the number of failures from the log is matching a particular test
797         error output. Improve the regular expression to avoid matching other strings in the log. Ensure that only
798         matches at the beginning of lines and add spaces after Unexpected and before the (<failures>).
799
800         * BuildSlaveSupport/build.webkit.org-config/steps.py:
801         (RunWebDriverTests.commandComplete):
802
803 2018-04-25  Carlos Garcia Campos  <cgarcia@igalia.com>
804
805         [GTK] Implement MouseEvent.buttons
806         https://bugs.webkit.org/show_bug.cgi?id=184913
807
808         Reviewed by Žan Doberšek.
809
810         Include the mouse buttons state in WTR synthesized events.
811
812         * WebKitTestRunner/EventSenderProxy.h:
813         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
814         (WTR::EventSenderProxy::EventSenderProxy):
815         (WTR::EventSenderProxy::createMouseButtonEvent):
816         (WTR::EventSenderProxy::mouseDown):
817         (WTR::EventSenderProxy::mouseUp):
818         (WTR::EventSenderProxy::mouseMoveTo):
819
820 2018-04-24  Pablo Saavedra  <psaavedra@igalia.com>
821
822         [GTK][WPE] Fix triggered bot name on the WPE Debug Build bot
823         https://bugs.webkit.org/show_bug.cgi?id=184954
824
825         Reviewed by Michael Catanzaro.
826
827         * BuildSlaveSupport/build.webkit.org-config/config.json:
828
829 2018-04-24  Saam Barati  <sbarati@apple.com>
830
831         Keep around a pre-warmed process when doing process swap on navigation
832         https://bugs.webkit.org/show_bug.cgi?id=184765
833         <rdar://problem/39685099>
834
835         Reviewed by Ryosuke Niwa and Brady Eidson.
836
837         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
838
839 2018-04-24  Aakash Jain  <aakash_jain@apple.com>
840
841         [build.webkit.org] unit-tests fail when passwords.json is missing
842         https://bugs.webkit.org/show_bug.cgi?id=180390
843
844         Reviewed by Carlos Alberto Lopez Perez.
845
846         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
847         (loadBuilderConfig): Add support for test_mode. Load mock passwords in test_mode.
848         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
849         (BuildBotConfigLoader._add_dependant_modules_to_sys_modules): Call _add_webkitpy_to_sys_path as well.
850         (BuildBotConfigLoader._mock_open): Deleted.
851         (BuildBotConfigLoader.load_config): Deleted.
852
853 2018-04-24  John Wilander  <wilander@apple.com>
854
855         From-Origin: Support for 'same' and 'same-site' response header, nested frame origin check
856         https://bugs.webkit.org/show_bug.cgi?id=184560
857         <rdar://problem/38901344>
858
859         Reviewed by Youenn Fablet and Daniel Bates.
860
861         This patch implements significant parts of https://github.com/whatwg/fetch/issues/687.
862         We consume the From-Origin response header and only load the resource if:
863         - The header is non-existent, empty, or invalid.
864         - The header specifies 'same' and the resource's origin matches the originating
865           document's origin and the origins up the frame tree.
866         - The header specifies 'same-site' and the resource's eTLD+1 matches the originating
867           document's eTLD+1 and the eTLD+1 of the documents up the frame tree.
868
869         This feature is experimental and off by default.
870
871         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
872         * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp: Added.
873         (TestWebKitAPI::TEST):
874             Tests for From-Origin header parsing.
875
876 2018-04-24  Carlos Garcia Campos  <cgarcia@igalia.com>
877
878         Unreviewed. Update W3C WebDriver imported tests.
879
880         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
881         (WebDriverW3CExecutor.__init__):
882
883 2018-04-24  Zan Dobersek  <zdobersek@igalia.com>
884
885         [WPE] Remove libgbm dependency
886         https://bugs.webkit.org/show_bug.cgi?id=184906
887
888         Reviewed by Carlos Garcia Campos.
889
890         Stop searching for libgbm, using its compiler flags for the
891         HeadlessViewBackend compilation and linking against the .so object.
892         This is not necessary anymore after r230562 switched to a different
893         backend implementation for testing.
894
895         * wpe/HeadlessViewBackend/CMakeLists.txt:
896         * wpe/install-dependencies:
897
898 2018-04-23  Carlos Garcia Campos  <cgarcia@igalia.com>
899
900         [GLIB] Make it possible to use a different timeout for slow test cases in GLib tests
901         https://bugs.webkit.org/show_bug.cgi?id=184816
902
903         Reviewed by Michael Catanzaro.
904
905         Pass a function from api test runner to glib test runner to check if a test is slow and use the given slow
906         timeout.
907
908         * TestWebKitAPI/glib/TestExpectations.json:
909         * glib/api_test_runner.py:
910         (TestRunner._run_test_glib.is_slow_test):
911         (TestRunner._run_test_glib):
912         * glib/glib_test_runner.py:
913         (GLibTestRunner.__init__):
914         (GLibTestRunner._stop_timeout):
915         (GLibTestRunner._subtest_start):
916         (GLibTestRunner._subtest_end):
917
918 2018-04-23  Wenson Hsieh  <wenson_hsieh@apple.com>
919
920         [Extra zoom mode] REGRESSION(230860) Unable to change time input values using UI
921         https://bugs.webkit.org/show_bug.cgi?id=184901
922         <rdar://problem/39664797>
923
924         Reviewed by Tim Horton.
925
926         Introduce a new UIScriptController method to set the value of a currently focused input of type time, by
927         interacting with the UI. See WebKit ChangeLogs for more detail.
928
929         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
930         (WTR::UIScriptController::setTimePickerValue):
931         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
932         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
933         (WTR::UIScriptController::setTimePickerValue):
934         * TestRunnerShared/UIScriptContext/UIScriptController.h:
935         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
936         (WTR::UIScriptController::setTimePickerValue):
937
938 2018-04-23  Zalan Bujtas  <zalan@apple.com>
939
940         [LayoutFormattingContext] Initial commit.
941         https://bugs.webkit.org/show_bug.cgi?id=184896
942
943         Reviewed by Antti Koivisto.
944
945         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
946
947 2018-04-23  Chris Dumez  <cdumez@apple.com>
948
949         [WKTR] Move navigation policy decision from the injected bundle to the UIProcess
950         https://bugs.webkit.org/show_bug.cgi?id=184801
951
952         Reviewed by Geoffrey Garen.
953
954         Move navigation policy decision from the injected bundle to the UIProcess in WebKitTestRunner.
955         This is a more common configuration and therefore should be the default testing configuration.
956
957         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
958         (WTR::InjectedBundlePage::decidePolicyForNavigationAction):
959         Always respond with 'PassThrough' in the InjectedBundle so the UIProcess
960         is now asked for the policy decision.
961
962 2018-04-23  Pablo Saavedra  <psaavedra@igalia.com>
963
964         [GTK][WPE] Add Debug bots (build and tests) for WPE
965         https://bugs.webkit.org/show_bug.cgi?id=184887
966
967         Reviewed by Carlos Alberto Lopez Perez.
968
969         Deployed 2 new bots for WPE Debug: wpe-linux-bot-3 and
970         wpe-linux-bot-4
971
972         Both bots have already the credentials ready to authenticated against
973         build.webkit.org. They provides the bots for the "debug" configuration over
974         the "WPE" platform and building for the "x86_64" architecture:
975         WPE Linux 64-bit Debug (Build) and WPE Linux 64-bit Debug (Tests) 
976
977         * BuildSlaveSupport/build.webkit.org-config/config.json:
978         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
979
980 2018-04-23  Chris Dumez  <cdumez@apple.com>
981
982         HTML String load cannot be prevented by responding 'Cancel' asynchronously in decidePolicyForNavigationAction
983         https://bugs.webkit.org/show_bug.cgi?id=184848
984         <rdar://problem/39145306>
985
986         Reviewed by Brady Eidson.
987
988         Add API test coverage.
989
990         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
991         (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
992         (TEST):
993
994 2018-04-23  Michael Catanzaro  <mcatanzaro@igalia.com>
995
996         [GTK][WPE] TestSSL fails due to additional TLS errors returned
997         https://bugs.webkit.org/show_bug.cgi?id=184860
998
999         Reviewed by Carlos Garcia Campos.
1000
1001         Add script and config file for regenerating the test certificate.
1002         Regenerate it. TestSSL no longer fails on my machine.
1003
1004         I do see a ton of network process crashes and JavaScript errors, none of
1005         which prevent the test from passing, but this commit only claims to fix
1006         the certificate validation portion of the test.
1007
1008         * TestWebKitAPI/Tests/WebKitGLib/resources/generate-test-cert.sh: Added.
1009         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.conf: Added.
1010         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem:
1011
1012 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1013
1014         [GLIB] ERROR: Thread was unable to be detached when running /jsc/vm test in debug
1015         https://bugs.webkit.org/show_bug.cgi?id=184815
1016
1017         Reviewed by Michael Catanzaro.
1018
1019         This is because in the test we are calling both join and detach. We should only call join.
1020
1021         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1022         (testsJSCVirtualMachine):
1023
1024 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1025
1026         [GLIB] Test /jsc/prototypes crashes in debug
1027         https://bugs.webkit.org/show_bug.cgi?id=184814
1028
1029         Reviewed by Michael Catanzaro.
1030
1031         We should also call the constructor/destructor of Bar struct to ensure Foo is constructed.
1032
1033         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1034         (barCreate):
1035         (barFree):
1036
1037 2018-04-20  Michael Catanzaro  <mcatanzaro@igalia.com>
1038
1039         REGRESSION(r228088): [SOUP] Check TLS errors for WebSockets on GTlsConnection::accept-certificate
1040         https://bugs.webkit.org/show_bug.cgi?id=184804
1041
1042         Reviewed by Carlos Garcia Campos.
1043
1044         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
1045         (WebSocketTest::WebSocketTest):
1046         (WebSocketTest::~WebSocketTest):
1047         (WebSocketTest::serverWebSocketCallback):
1048         (WebSocketTest::webSocketTestResultCallback):
1049         (WebSocketTest::connectToServerAndWaitForEvents):
1050         (testWebSocketTLSErrors):
1051         (beforeAll):
1052
1053 2018-04-20  Chris Dumez  <cdumez@apple.com>
1054
1055         Unreviewed, update 2 more API tests after r230876.
1056
1057         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
1058         (TEST):
1059         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
1060         (TestWebKitAPI::TEST):
1061
1062 2018-04-20  Tim Horton  <timothy_horton@apple.com>
1063
1064         Adjust geolocation feature flag
1065         https://bugs.webkit.org/show_bug.cgi?id=184856
1066
1067         Reviewed by Wenson Hsieh.
1068
1069         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1070
1071 2018-04-20  Chris Dumez  <cdumez@apple.com>
1072
1073         REGRESSION (r229828): web view doesn’t update or respond to resizing until client calls policy decision handler
1074         https://bugs.webkit.org/show_bug.cgi?id=184210
1075         <rdar://problem/39072354>
1076
1077         Reviewed by Wenson Hsieh.
1078
1079         * TestWebKitAPI/Tests/WebKit/large-red-square-image.html:
1080         * TestWebKitAPI/Tests/WebKitCocoa/dragstart-change-selection-offscreen.html:
1081         Add viewport meta tags.
1082
1083         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
1084         (-[WKWebView _test_waitForDidFinishNavigation]):
1085         Update _test_waitForDidFinishNavigation to wait for the next presentation update
1086         to make iOS API tests happy without having to modify each of them.
1087
1088 2018-04-20  Timothy Hatcher  <timothy@apple.com>
1089
1090         REGRESSION: API test WebKit.BackgroundColorSystemColor is failing
1091
1092         https://bugs.webkit.org/show_bug.cgi?id=184849
1093         rdar://problem/39386405
1094
1095         Reviewed by Brian Burg.
1096
1097         * TestWebKitAPI/Tests/mac/BackgroundColor.mm:
1098         (TestWebKitAPI::TEST): Use CGColorEqualToColor since we might get a different
1099         CGColor pointer from NSColor each time.
1100
1101 2018-04-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1102
1103         [Extra zoom mode] Injected bundle form client should be notified when editing text fields
1104         https://bugs.webkit.org/show_bug.cgi?id=184822
1105         <rdar://problem/38807319>
1106
1107         Reviewed by Tim Horton.
1108
1109         Add WebKitTestRunner support for listening to form editing SPI hooks in the injected bundle. The new layout test
1110         installs callbacks that listen for "begin editing", "end editing", and "text changed" calls to injected bundle
1111         SPI. See other ChangeLogs for more detail.
1112
1113         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1114         (WTR::UIScriptController::enterText):
1115         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1116
1117         Add UIScriptController support for simulating text entry in the currently focused element.
1118
1119         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1120         (WTR::UIScriptController::enterText):
1121         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1122         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1123
1124         Add TestRunner bindings for registering injected bundle form client callbacks.
1125
1126         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1127         (WTR::handleTextDidChangeInTextField):
1128         (WTR::handleTextFieldDidBeginEditing):
1129         (WTR::handleTextFieldDidEndEditing):
1130         (WTR::InjectedBundle::didCreatePage):
1131
1132         Set the injected bundle form editor client.
1133
1134         (WTR::InjectedBundle::setUpInjectedBundleClients):
1135         (WTR::InjectedBundle::textDidChangeInTextField):
1136         (WTR::InjectedBundle::textFieldDidBeginEditing):
1137         (WTR::InjectedBundle::textFieldDidEndEditing):
1138         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1139         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1140         (WTR::TestRunner::installTextDidChangeInTextFieldCallback):
1141         (WTR::TestRunner::textDidChangeInTextFieldCallback):
1142         (WTR::TestRunner::installTextFieldDidBeginEditingCallback):
1143         (WTR::TestRunner::textFieldDidBeginEditingCallback):
1144         (WTR::TestRunner::installTextFieldDidEndEditingCallback):
1145         (WTR::TestRunner::textFieldDidEndEditingCallback):
1146         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1147         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1148         (WTR::UIScriptController::enterText):
1149
1150 2018-04-20  Youenn Fablet  <youenn@apple.com>
1151
1152         WebPage sometimes incorrectly rules out PDF as a mime type that can be showed
1153         https://bugs.webkit.org/show_bug.cgi?id=184369
1154
1155         Reviewed by Chris Dumez.
1156
1157         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1158         (TEST):
1159
1160 2018-04-20  Daniel Bates  <dabates@apple.com>
1161
1162         Remove Strong Password decoration when text field type changes
1163         https://bugs.webkit.org/show_bug.cgi?id=184795
1164         <rdar://problem/38325108>
1165
1166         Reviewed by Antti Koivisto.
1167
1168         Add a unit test to ensure the injected bundle API and WebKit UI delegate SPI is invoked
1169         when the field has the Strong Password button and its type changes.
1170
1171         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1172         * TestWebKitAPI/Tests/WebKitCocoa/DidResignInputElementStrongPasswordAppearance.mm: Added.
1173         (didResignInputElementStrongPasswordAppearance):
1174         (-[DidResignInputElementStrongPasswordAppearance webProcessPlugIn:didCreateBrowserContextController:]):
1175         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1176         (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]):
1177         (-[DidResignInputElementStrongPasswordAppearanceDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1178         (TEST):
1179
1180 2018-04-20  Brady Eidson  <beidson@apple.com>
1181
1182         Add a test to verify load/unload/pageshow/pagehide all work with process swapping.
1183         https://bugs.webkit.org/show_bug.cgi?id=184807
1184
1185         Reviewed by Chris Dumez.
1186
1187         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1188         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
1189
1190 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1191
1192         Unreviewed. Mark TestJSC as slow in debug.
1193
1194         Only /jsc/vm is slow, but GLib API test runner only checks the test binary for GLib tests.
1195
1196         * TestWebKitAPI/glib/TestExpectations.json:
1197
1198 2018-04-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1199
1200         [GTK] Local cross references are broken in API documentation
1201         https://bugs.webkit.org/show_bug.cgi?id=184771
1202
1203         Reviewed by Michael Catanzaro.
1204
1205         The problem is that gtkdoc-fixxref expects the links to be in the form html/modulename (like the installed
1206         ones), but we generate the documentation as modulename/html. So, links to WebKitDOM or JSC are generated as
1207         ../html/Foo. The rebase command considers html to be the module name in this case, creating broken links in all
1208         the cases.
1209
1210         * gtk/gtkdoc.py:
1211         (GTKDoc._copy_doc_files_to_output_dir): We don't have any html dir in the source tree so, we are not copying
1212         anything here.
1213         (GTKDoc._run_gtkdoc_mkhtml): Create the html dir here using html/modulename instead now.
1214         (GTKDoc._run_gtkdoc_fixxref): Pass the new directory as module dir to gtkdoc-fixxref and fix several links for
1215         which gtkdoc-fixxref always uses absolute paths.
1216         * gtk/manifest.txt.in: Update the documentation html paths and include the JSC GLib API in the tarball too.
1217
1218 2018-04-19  Brady Eidson  <beidson@apple.com>
1219
1220         Make back forward cache work with process swapping.
1221         <rdar://problem/38676604> and https://bugs.webkit.org/show_bug.cgi?id=184793
1222
1223         Reviewed by Chris Dumez.
1224
1225         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1226
1227 2018-04-19  David Kilzer  <ddkilzer@apple.com>
1228
1229         Enable Objective-C weak references
1230         <https://webkit.org/b/184789>
1231         <rdar://problem/39571716>
1232
1233         Reviewed by Dan Bernstein.
1234
1235         * ContentExtensionTester/Configurations/Base.xcconfig:
1236         (CLANG_ENABLE_OBJC_WEAK): Enable.
1237         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1238         (CLANG_ENABLE_OBJC_WEAK): Enable.
1239         * ImageDiff/cg/Configurations/Base.xcconfig:
1240         (CLANG_ENABLE_OBJC_WEAK): Enable.
1241         * MiniBrowser/Configurations/Base.xcconfig:
1242         (CLANG_ENABLE_OBJC_WEAK): Enable.
1243         * TestWebKitAPI/Configurations/Base.xcconfig:
1244         (CLANG_ENABLE_OBJC_WEAK): Enable.
1245         * WebEditingTester/Configurations/Base.xcconfig:
1246         (CLANG_ENABLE_OBJC_ARC): Re-order.
1247         * WebKitLauncher/Configurations/Base.xcconfig: Add newline at
1248         end of file.
1249         (CLANG_ENABLE_OBJC_WEAK): Enable.
1250         * WebKitTestRunner/Configurations/Base.xcconfig:
1251         (CLANG_ENABLE_OBJC_WEAK): Enable.
1252
1253 2018-04-19  Chris Dumez  <cdumez@apple.com>
1254
1255         REGRESSION (r229133): decidePolicyForNavigationAction not called for loading an HTML string
1256         https://bugs.webkit.org/show_bug.cgi?id=184209
1257         <rdar://problem/39145306>
1258
1259         Reviewed by Ryosuke Niwa.
1260
1261         Add API test coverage.
1262
1263         * TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
1264         (TEST):
1265
1266 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1267
1268         [WinCairo][EWS] Build bot should clean user temp directory each time.
1269         https://bugs.webkit.org/show_bug.cgi?id=184761
1270
1271         Reviewed by Lucas Forschler.
1272
1273         * EWSTools/Start-Queue.ps1:
1274         Clean user's temp directory before each build, so that Windows git doesn't fill it up over time.
1275
1276 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1277
1278         Buildbots using Python zipfile should enable compression
1279         https://bugs.webkit.org/show_bug.cgi?id=184759
1280
1281         Reviewed by Lucas Forschler.
1282
1283         * BuildSlaveSupport/built-product-archive:
1284         (createZipManually):
1285         Default is to archive without compressing, so tell it to compress as well. 
1286
1287 2018-04-18  Nan Wang  <n_wang@apple.com>
1288
1289         AX: [macOS] WebKit hangs when triggering an alert from an AOM increment event
1290         https://bugs.webkit.org/show_bug.cgi?id=184742
1291
1292         Reviewed by Chris Fleizach.
1293
1294         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1295         (AccessibilityUIElement::increment):
1296         (AccessibilityUIElement::decrement):
1297         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1298         (WTR::AccessibilityUIElement::asyncIncrement):
1299         (WTR::AccessibilityUIElement::asyncDecrement):
1300         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1301         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1302         (WTR::AccessibilityUIElement::increment):
1303         (WTR::AccessibilityUIElement::decrement):
1304         (WTR::AccessibilityUIElement::asyncIncrement):
1305         (WTR::AccessibilityUIElement::asyncDecrement):
1306
1307 2018-04-18  Ross Kirsling  <ross.kirsling@sony.com>
1308
1309         Fix archive step for WinCairo build bot.
1310         https://bugs.webkit.org/show_bug.cgi?id=184715
1311
1312         Reviewed by Lucas Forschler.
1313
1314         * BuildSlaveSupport/built-product-archive:
1315         (archiveBuiltProduct):
1316         (extractBuiltProduct):
1317
1318 2018-04-18  Sihui Liu  <sihui_liu@apple.com>
1319
1320         REGRESSION: Using the reload button while offline pushes identical pages onto the back/forward list
1321         https://bugs.webkit.org/show_bug.cgi?id=184570
1322         <rdar://problem/34807323>
1323
1324         Reviewed by Chris Dumez.
1325
1326         Add API test coverage.
1327
1328         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
1329         (TEST):
1330
1331 2018-04-18  Chris Dumez  <cdumez@apple.com>
1332
1333         Add support for converting a local window to a remote window
1334         https://bugs.webkit.org/show_bug.cgi?id=184515
1335         <rdar://problem/39011318>
1336
1337         Reviewed by Ryosuke Niwa.
1338
1339         * MiniBrowser/mac/AppDelegate.m:
1340         (defaultConfiguration):
1341         * MiniBrowser/mac/SettingsController.h:
1342         * MiniBrowser/mac/SettingsController.m:
1343         (-[SettingsController _populateMenu]):
1344         (-[SettingsController validateMenuItem:]):
1345         (-[SettingsController processSwapOnWindowOpenWithOpenerEnabled]):
1346         (-[SettingsController toggleProcessSwapOnWindowOpenWithOpener:]):
1347         Add menu entry in minibrowser to turn on process swap on cross-origin window.open().
1348
1349         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1350         Turn on process swap on cross-origin window.open() for corresponding test and update
1351         test to expect that a new WebProcess is created.
1352
1353         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1354         (WTR::InjectedBundlePage::decidePolicyForResponse):
1355         Add null checks for injectedBundle.testRunner(). When we swap process on navigation,
1356         the InjectedBundlePage::decidePolicyForResponse() gets called in the new process.
1357         In this new process, we have constructed a InjectedBundlePage for the page but we
1358         have not initialized the InjectedBundle members such as testRunner.
1359
1360         * WebKitTestRunner/TestController.cpp:
1361         (WTR::TestController::createWebViewWithOptions):
1362         (WTR::updateTestOptionsFromTestHeader):
1363         * WebKitTestRunner/TestOptions.h:
1364         (WTR::TestOptions::hasSameInitializationOptions const):
1365         Add a way for layout tests to turn on process swap on navigation via a test header.
1366
1367 2018-04-18  Yusuke Suzuki  <utatane.tea@gmail.com>
1368
1369         Unreviewed, reland r230697, r230720, and r230724.
1370         https://bugs.webkit.org/show_bug.cgi?id=184600
1371
1372         * Scripts/run-jsc-stress-tests:
1373
1374 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1375
1376         [GLIB] Make it possible to handle JSCClass external properties not added to the prototype
1377         https://bugs.webkit.org/show_bug.cgi?id=184687
1378
1379         Reviewed by Michael Catanzaro.
1380
1381         Add test cases for the new API.
1382
1383         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1384         (fooCreate):
1385         (fooFree):
1386         (fooGetProperty):
1387         (fooSetProperty):
1388         (testJSCPromises):
1389         (testJSCGarbageCollector):
1390         (testsJSCVirtualMachine):
1391         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
1392         (windowObjectClearedCallback):
1393
1394 2018-04-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1395
1396         [Extra zoom mode] Programmatically changing focus when an element already has focus is a confusing experience
1397         https://bugs.webkit.org/show_bug.cgi?id=184635
1398         <rdar://problem/39440642>
1399
1400         Reviewed by Tim Horton.
1401
1402         Add plumbing to support invoking `didHideKeyboardCallback` and `didShowKeyboardCallback` when (respectively)
1403         dismissing or presenting fullscreen input view controllers in extra zoom mode.
1404
1405         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1406         (-[TestRunnerWKWebView initWithFrame:configuration:]):
1407         (-[TestRunnerWKWebView dealloc]):
1408         (-[TestRunnerWKWebView _invokeShowKeyboardCallbackIfNecessary]):
1409         (-[TestRunnerWKWebView _invokeHideKeyboardCallbackIfNecessary]):
1410         (-[TestRunnerWKWebView _keyboardDidShow:]):
1411         (-[TestRunnerWKWebView _keyboardDidHide:]):
1412         (-[TestRunnerWKWebView _webView:didPresentFocusedElementViewController:]):
1413         (-[TestRunnerWKWebView _webView:didDismissFocusedElementViewController:]):
1414
1415 2018-04-17  Michael Catanzaro  <mcatanzaro@igalia.com>
1416
1417         [GTK] Webkit should spoof as Safari on a Mac for Outlook.com
1418         https://bugs.webkit.org/show_bug.cgi?id=184573
1419
1420         Reviewed by Carlos Alberto Lopez Perez.
1421
1422         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1423         (TestWebKitAPI::TEST):
1424
1425 2018-04-17  Fujii Hironori  <Hironori.Fujii@sony.com>
1426
1427         [WinCairo][TestWebKitAPI] Implement PlatformWebView for TestWebKit
1428         https://bugs.webkit.org/show_bug.cgi?id=184524
1429
1430         Reviewed by Alex Christensen.
1431
1432         Resurrect PlatformWebView for Windows port which was removed in Bug 104607.
1433
1434         * TestWebKitAPI/PlatformWebView.h:
1435         * TestWebKitAPI/PlatformWin.cmake:
1436         * TestWebKitAPI/win/InjectedBundleControllerWin.cpp: Added.
1437         (TestWebKitAPI::InjectedBundleController::platformInitialize):
1438         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp: Added.
1439         (TestWebKitAPI::Util::moduleDirectory):
1440         (TestWebKitAPI::Util::createInjectedBundlePath):
1441         (TestWebKitAPI::Util::createURLForResource):
1442         (TestWebKitAPI::Util::URLForNonExistentResource):
1443         (TestWebKitAPI::Util::isKeyDown):
1444         * TestWebKitAPI/win/PlatformWebViewWin.cpp: Added.
1445         (TestWebKitAPI::PlatformWebView::registerWindowClass):
1446         (TestWebKitAPI::PlatformWebView::PlatformWebView):
1447         (TestWebKitAPI::PlatformWebView::initialize):
1448         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
1449         (TestWebKitAPI::PlatformWebView::page const):
1450         (TestWebKitAPI::PlatformWebView::resizeTo):
1451         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
1452         (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
1453         (TestWebKitAPI::PlatformWebView::simulateRightClick):
1454         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
1455         (TestWebKitAPI::PlatformWebView::wndProc):
1456         * TestWebKitAPI/win/UtilitiesWin.cpp: Added.
1457         (TestWebKitAPI::Util::run):
1458         (TestWebKitAPI::Util::spinRunLoop):
1459         (TestWebKitAPI::Util::sleep):
1460
1461 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
1462
1463         Fix hasher tests for system with 32 bit longs
1464         https://bugs.webkit.org/show_bug.cgi?id=184708
1465         <rdar://problem/39459977>
1466
1467         Reviewed by Mark Lam.
1468
1469         Some systems have 32 bit longs. The Hasher WTF tests should handle this case.
1470
1471         * TestWebKitAPI/Tests/WTF/Hasher.cpp:
1472         (TestWebKitAPI::TEST):
1473
1474 2018-04-17  Commit Queue  <commit-queue@webkit.org>
1475
1476         Unreviewed, rolling out r230697, r230720, and r230724.
1477         https://bugs.webkit.org/show_bug.cgi?id=184717
1478
1479         These caused multiple failures on the Test262 testers.
1480         (Requested by mlewis13 on #webkit).
1481
1482         Reverted changesets:
1483
1484         "[WebAssembly][Modules] Prototype wasm import"
1485         https://bugs.webkit.org/show_bug.cgi?id=184600
1486         https://trac.webkit.org/changeset/230697
1487
1488         "[WebAssembly][Modules] Implement function import from wasm
1489         modules"
1490         https://bugs.webkit.org/show_bug.cgi?id=184689
1491         https://trac.webkit.org/changeset/230720
1492
1493         "[JSC] Rename runWebAssembly to runWebAssemblySuite"
1494         https://bugs.webkit.org/show_bug.cgi?id=184703
1495         https://trac.webkit.org/changeset/230724
1496
1497 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
1498
1499         Unreviewed rollout of r230632. Regression in memory usage.
1500
1501         That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
1502
1503         * DumpRenderTree/TestOptions.h:
1504         * DumpRenderTree/mac/DumpRenderTree.mm:
1505         (runTest):
1506         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference): Deleted.
1507         * WebKitTestRunner/TestController.cpp:
1508         (WTR::TestController::resetPreferencesToConsistentValues):
1509         * WebKitTestRunner/TestOptions.cpp:
1510         (WTR::TestOptions::TestOptions):
1511         (WTR::isLegacyAnimationEngineTestPath): Deleted.
1512         * WebKitTestRunner/TestOptions.h:
1513
1514 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1515
1516         [JSC] Rename runWebAssembly to runWebAssemblySuite
1517         https://bugs.webkit.org/show_bug.cgi?id=184703
1518
1519         Reviewed by JF Bastien.
1520
1521         * Scripts/run-jsc-stress-tests:
1522
1523 2018-04-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1524
1525         [WebAssembly][Modules] Implement function import from wasm modules
1526         https://bugs.webkit.org/show_bug.cgi?id=184689
1527
1528         Reviewed by JF Bastien.
1529
1530         Add runWebAssemblyDirect, which runs wasm file directly.
1531
1532         * Scripts/run-jsc-stress-tests:
1533
1534 2018-04-17  Saam Barati  <sbarati@apple.com>
1535
1536         Add system trace points for process launch and for initializeWebProcess
1537         https://bugs.webkit.org/show_bug.cgi?id=184669
1538
1539         Reviewed by Simon Fraser.
1540
1541         * Tracing/SystemTracePoints.plist:
1542
1543 2018-04-17  Ross Kirsling  <ross.kirsling@sony.com>
1544
1545         Add debug bots for WinCairo.
1546         https://bugs.webkit.org/show_bug.cgi?id=184663
1547
1548         Reviewed by Lucas Forschler.
1549
1550         * BuildSlaveSupport/build.webkit.org-config/config.json:
1551         Add a debug build bot and two debug test bots.
1552
1553         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
1554         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
1555         Add a WinCairo category to build.webkit.org.
1556
1557 2018-04-17  Zalan Bujtas  <zalan@apple.com>
1558
1559         [LayoutReloaded] Set inline-block box position.
1560         https://bugs.webkit.org/show_bug.cgi?id=184690
1561
1562         Reviewed by Antti Koivisto.
1563
1564         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1565         (InlineFormattingContext.prototype._handleInlineBlock):
1566         * LayoutReloaded/Utils.js:
1567         (Utils._dumpBox):
1568         * LayoutReloaded/test/inline-block-with-fixed-width-height.html:
1569
1570 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1571
1572         [GLIB] Add API to clear JSCContext uncaught exception
1573         https://bugs.webkit.org/show_bug.cgi?id=184685
1574
1575         Reviewed by Žan Doberšek.
1576
1577         Add test cases for the new API.
1578
1579         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1580         (testJSCExceptions):
1581
1582 2018-04-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1583
1584         [GLIB] Add API to query, delete and enumerate properties
1585         https://bugs.webkit.org/show_bug.cgi?id=184647
1586
1587         Reviewed by Michael Catanzaro.
1588
1589         Add test cases for the new API.
1590
1591         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
1592         (testJSCObject):
1593         (testJSCClass):
1594         (testJSCPrototypes):
1595
1596 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1597
1598         [LayoutReloaded] Add support for replaced box.
1599         https://bugs.webkit.org/show_bug.cgi?id=184680
1600
1601         Reviewed by Antti Koivisto.
1602
1603         Basic support for inline replaced.
1604
1605         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1606         (InlineFormattingContext.prototype._handleInlineBox):
1607         (InlineFormattingContext.prototype._handleInlineBlock):
1608         (InlineFormattingContext.prototype._handleReplaced):
1609         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
1610         (Line.prototype.lastLineBox):
1611         (Line.prototype.addInlineBox):
1612         (Line.prototype.addInlineContainerBox): Deleted.
1613         * LayoutReloaded/TreeBuilder.js:
1614         (TreeBuilder.prototype._createAndAttachBox):
1615         * LayoutReloaded/Utils.js:
1616         (Utils._dumpBox):
1617         * LayoutReloaded/test/index.html:
1618         * LayoutReloaded/test/inline-simple-replaced.html: Added.
1619
1620 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1621
1622         [LayoutReloaded] Minor InlineFormattingContext::layout() cleanup.
1623         https://bugs.webkit.org/show_bug.cgi?id=184679
1624
1625         Reviewed by Antti Koivisto.
1626
1627         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1628         (InlineFormattingContext):
1629         (InlineFormattingContext.prototype.layout):
1630         (InlineFormattingContext.prototype._handleInlineContainer):
1631         (InlineFormattingContext.prototype._handleInlineContent):
1632         (InlineFormattingContext.prototype._handleInlineBlock):
1633         (InlineFormattingContext.prototype._handleReplacedBox):
1634         (InlineFormattingContext.prototype._clearNeedsLayoutAndMoveToNextSibling):
1635         (InlineFormattingContext.prototype._handleInlineBlockContainer): Deleted.
1636         (InlineFormattingContext.prototype._clearAndMoveToNext): Deleted.
1637
1638 2018-04-16  Zalan Bujtas  <zalan@apple.com>
1639
1640         [LayoutReloaded] Introduce fragmentation state/context.
1641         https://bugs.webkit.org/show_bug.cgi?id=184677
1642
1643         Reviewed by Antti Koivisto.
1644
1645         State/context for fragmented content (multicol, regions, pagination etc).
1646
1647         * LayoutReloaded/FormattingContext/FragmentationContext.js: Added.
1648         (FragmentationContext):
1649         * LayoutReloaded/FormattingState/FragmentationState.js: Added.
1650         (FragmentationState):
1651         (FragmentationState.prototype.formattingState):
1652
1653 2018-04-16  Andy Estes  <aestes@apple.com>
1654
1655         [iOS] Enable WKPDFView by default
1656         https://bugs.webkit.org/show_bug.cgi?id=184675
1657         <rdar://problem/27885452>
1658
1659         Reviewed by Darin Adler.
1660
1661         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
1662
1663 2018-04-16  Leo Balter  <leonardo.balter@gmail.com>
1664
1665         Perl-based Test262 runner
1666         https://bugs.webkit.org/show_bug.cgi?id=183343
1667
1668         Reviewed by Michael Saboff.
1669
1670         * Scripts/test262-helpers/README.md: Added.
1671         * Scripts/test262-helpers/agent.js: Added.
1672         (262.getGlobal):
1673         (262.setGlobal):
1674         (262.destroy):
1675         (262.IsHTMLDDA):
1676         * Scripts/test262-helpers/cpanfile: Added.
1677         * Scripts/test262-helpers/cpanfile.snapshot: Added.
1678         * Scripts/test262-helpers/test262-runner.pl: Added.
1679         (main):
1680         (processFile):
1681         (getScenarios):
1682         (addScenario):
1683         (compileTest):
1684         (runTest):
1685         (processResult):
1686         (getTempFile):
1687         (getContents):
1688         (parseData):
1689         (getHarness):
1690         * Scripts/test262-helpers/tests.log: Added.
1691
1692 2018-04-15  Andy Estes  <aestes@apple.com>
1693
1694         [iOS] Add API tests for PDF find-in-page
1695         https://bugs.webkit.org/show_bug.cgi?id=184634
1696
1697         Reviewed by Dan Bernstein.
1698
1699         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1700         * TestWebKitAPI/Tests/WebKit/find.pdf: Added.
1701         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
1702         (-[TestFindDelegate findString]):
1703         (-[TestFindDelegate _webView:didCountMatches:forString:]):
1704         (-[TestFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
1705         (-[TestFindDelegate _webView:didFailToFindString:]):
1706         (loadWebView):
1707         (TEST):
1708
1709 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1710
1711         [LayoutReloaded] Update class documentation
1712         https://bugs.webkit.org/show_bug.cgi?id=184625
1713
1714         Reviewed by Antti Koivisto.
1715
1716         * LayoutReloaded/DisplayTree/Box.js:
1717         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
1718         * LayoutReloaded/FormattingContext/BlockFormatting/BlockMarginCollapse.js:
1719         * LayoutReloaded/FormattingContext/FloatingContext.js:
1720         * LayoutReloaded/FormattingContext/FormattingContext.js:
1721         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1722         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
1723         * LayoutReloaded/FormattingState/BlockFormattingState.js:
1724         * LayoutReloaded/FormattingState/FloatingState.js:
1725         * LayoutReloaded/FormattingState/FormattingState.js:
1726         * LayoutReloaded/FormattingState/InlineFormattingState.js:
1727         * LayoutReloaded/LayoutState.js:
1728         * LayoutReloaded/LayoutTree/BlockContainer.js:
1729         * LayoutReloaded/LayoutTree/Box.js:
1730         * LayoutReloaded/LayoutTree/Container.js:
1731         * LayoutReloaded/LayoutTree/InlineBox.js:
1732         * LayoutReloaded/LayoutTree/InlineContainer.js:
1733         * LayoutReloaded/LayoutTree/Text.js:
1734         * LayoutReloaded/misc/headers/BlockContainer.h: Removed.
1735         * LayoutReloaded/misc/headers/BlockFormattingContext.h: Removed.
1736         * LayoutReloaded/misc/headers/BlockMarginCollapse.h: Removed.
1737         * LayoutReloaded/misc/headers/Box.h: Removed.
1738         * LayoutReloaded/misc/headers/Container.h: Removed.
1739         * LayoutReloaded/misc/headers/FloatingContext.h: Removed.
1740         * LayoutReloaded/misc/headers/FormattingContext.h: Removed.
1741         * LayoutReloaded/misc/headers/InitialBlockContainer.h: Removed.
1742         * LayoutReloaded/misc/headers/InlineBox.h: Removed.
1743         * LayoutReloaded/misc/headers/LayoutContext.h: Removed.
1744         * LayoutReloaded/misc/headers/Line.h: Removed.
1745         * LayoutReloaded/misc/headers/Text.h: Removed.
1746
1747 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1748
1749         [LayoutReloaded] Add simple implementation for FormattingState::markNeedsLayout()
1750         https://bugs.webkit.org/show_bug.cgi?id=184621
1751
1752         Reviewed by Antti Koivisto.
1753
1754         This is just a simple, mark ancestors dirty implementation.
1755
1756         * LayoutReloaded/FormattingState/FormattingState.js:
1757         (FormattingState.prototype.markNeedsLayout):
1758         * LayoutReloaded/LayoutState.js:
1759         (LayoutState.prototype.markNeedsLayout):
1760         (LayoutState.prototype.setNeedsLayoutById): Deleted.
1761         (LayoutState.prototype.setNeedsLayout): Deleted.
1762         * LayoutReloaded/TreeBuilder.js:
1763         (TreeBuilder.prototype._createAndAttachBox):
1764         (TreeBuilder.prototype._findBox): Deleted.
1765         * LayoutReloaded/Utils.js:
1766         (Utils.layoutBoxById):
1767         * LayoutReloaded/test/index.html:
1768         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html:
1769
1770 2018-04-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1771
1772         [WPE] [webkitpy] The driver requirements should be checked before starting the tests
1773         https://bugs.webkit.org/show_bug.cgi?id=184595
1774
1775         Reviewed by Michael Catanzaro.
1776
1777         Ensure Driver.check_driver() is checked at check_sys_deps() time.
1778
1779         * Scripts/webkitpy/port/wpe.py:
1780         (WPEPort.check_sys_deps):
1781
1782 2018-04-13  Zalan Bujtas  <zalan@apple.com>
1783
1784         Rebaseline LayoutReloaded patch file (collectRenderersWithNeedsLayout).
1785
1786         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
1787
1788 2018-04-13  Jonathan Bedard  <jbedard@apple.com>
1789
1790         Boot fewer simulators in CI/EWS machines
1791         https://bugs.webkit.org/show_bug.cgi?id=184594
1792         <rdar://problem/39188082>
1793
1794         Reviewed by Alexey Proskuryakov.
1795
1796         This is a temporary workaround fro <rdar://problem/39393590>.
1797
1798         * Scripts/webkitpy/xcode/simulated_device.py:
1799         (SimulatedDeviceManager): Treat simulators as taking 6 gigs instead of 2.
1800
1801 2018-04-13  Brady Eidson  <beidson@apple.com>
1802
1803         Introduce SuspendedPageProxy to keep old web processes around after their WebPageProxy has been swapped to a new one.
1804         https://bugs.webkit.org/show_bug.cgi?id=184559
1805
1806         Reviewed by Alex Christensen.
1807
1808         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1809
1810 2018-04-13  Chris Dumez  <cdumez@apple.com>
1811
1812         input.webkitEntries does not work as expected when folder contains accented chars
1813         https://bugs.webkit.org/show_bug.cgi?id=184517
1814         <rdar://problem/39265537>
1815
1816         Reviewed by Alex Christensen.
1817
1818         Add API test coverage.
1819
1820         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
1821         (TestWebKitAPI::TEST_F):
1822
1823 2018-04-13  Thibault Saunier  <tsaunier@igalia.com>
1824
1825         Update my emails ordering in contributors.json
1826         https://bugs.webkit.org/show_bug.cgi?id=184587
1827
1828         Rubber-stamped by Philippe Normand.
1829
1830         Bugzilla seems to pick up tsaunier@igalia.com which is not the one I use there.
1831
1832         * Scripts/webkitpy/common/config/contributors.json:
1833
1834 2018-04-13  Michael Catanzaro  <mcatanzaro@igalia.com>
1835
1836         [WPE] xkbcommon: ERROR: failed to add default include path /home/mcatanzaro/Projects/WebKit/WebKitBuild/DependenciesWPE/Root/share/X11/xkb
1837         https://bugs.webkit.org/show_bug.cgi?id=184388
1838
1839         Reviewed by Carlos Alberto Lopez Perez.
1840
1841         Remove libxkbcommon from the JHBuild environment. We could alternatively add
1842         xkeyboard-config, but there doesn't seem to be any need to build libxkbcommon because I do
1843         not believe it depends on anything else in the JHBuild environment.
1844
1845         * wpe/install-dependencies:
1846         * wpe/jhbuild.modules:
1847
1848 2018-04-12  Antoine Quint  <graouts@apple.com>
1849
1850         [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
1851         https://bugs.webkit.org/show_bug.cgi?id=184569
1852         <rdar://problem/38671301>
1853
1854         Reviewed by Jon Lee.
1855
1856         We set the default value for the CSS Animations and CSS Transitions as Web Animations flag to true
1857         but override it to be false always in the LayoutTests/legacy-animation-engine directory.
1858
1859         * DumpRenderTree/TestOptions.h:
1860         * DumpRenderTree/mac/DumpRenderTree.mm:
1861         (shouldOverrideAndDisableCSSAnimationsAndCSSTransitionsBackedByWebAnimationsPreference):
1862         (runTest):
1863         * WebKitTestRunner/TestController.cpp:
1864         (WTR::TestController::resetPreferencesToConsistentValues):
1865         * WebKitTestRunner/TestOptions.cpp:
1866         (WTR::isLegacyAnimationEngineTestPath):
1867         (WTR::TestOptions::TestOptions):
1868         * WebKitTestRunner/TestOptions.h:
1869
1870 2018-04-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1871
1872         [GLIB] Tests WTF_RefPtr.ReleaseInNonMainThread and WTF_RefPtr.ReleaseInNonMainThreadDestroyInMainThread are crashing since they were added
1873         https://bugs.webkit.org/show_bug.cgi?id=184531
1874
1875         Reviewed by Michael Catanzaro.
1876
1877         It's not a bug in WebKit, but in the tests. The problem is that those tests are using RunLoop::main() but main
1878         run loop hasn't been initialized. ReleaseInNonMainThread doesn't really need to initialize the main run loop if
1879         we change Util::run() to always use RunLop::current() instead of RunLoop::main(). But
1880         ReleaseInNonMainThreadDestroyInMainThread ends up scheduling a task to the main thread, and the generic
1881         implementation fo that uses RunLoop::main(), so we need to initialize the main loop in this case.
1882
1883         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
1884         (TestWebKitAPI::TEST): Call RunLoop::initializeMainRunLoop().
1885         * TestWebKitAPI/glib/UtilitiesGLib.cpp:
1886         (TestWebKitAPI::Util::run): Use RunLop::current() to stop the current run loop.
1887         (TestWebKitAPI::Util::sleep): Ditto.
1888
1889 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1890
1891         [LayoutReloaded] Add support for incremental layout
1892         https://bugs.webkit.org/show_bug.cgi?id=184578
1893
1894         Reviewed by Antti Koivisto.
1895
1896         * LayoutReloaded/Layout.js:
1897         (layout):
1898         * LayoutReloaded/LayoutState.js:
1899         (LayoutState.prototype.rootContainer):
1900         (LayoutState.prototype.setNeedsLayoutById):
1901         * LayoutReloaded/Utils.js:
1902         (Utils.layoutTreeDump):
1903         * LayoutReloaded/test/TestHarness.js:
1904         (verifyLayout):
1905         (runLayout):
1906         (verifyLayoutTreeDump): Deleted.
1907         * LayoutReloaded/test/index.html:
1908         * LayoutReloaded/test/simple-incremental-layout-with-static-content.html: Added.
1909
1910 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1911
1912         [LayoutReloaded] Move root container ownership to layout state
1913         https://bugs.webkit.org/show_bug.cgi?id=184575
1914
1915         Reviewed by Antti Koivisto.
1916
1917         Now the root container is on the associated layout state (ICB only at this point though).
1918
1919         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
1920         (BlockFormattingContext.prototype.layout):
1921         * LayoutReloaded/FormattingContext/FormattingContext.js:
1922         (FormattingContext.prototype._layoutOutOfFlowDescendants):
1923         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
1924         (InlineFormattingContext.prototype._handleInlineBlockContainer):
1925         (InlineFormattingContext.prototype._handleFloatingBox):
1926         * LayoutReloaded/Layout.js:
1927         (layout):
1928         * LayoutReloaded/LayoutState.js:
1929         (LayoutState):
1930         (LayoutState.prototype.formattingContext):
1931         (LayoutState.prototype.establishedFormattingState):
1932         (LayoutState.prototype.formattingStateForBox):
1933         (LayoutState.prototype.needsLayout):
1934         (LayoutState.prototype.displayBox):
1935         (LayoutState.prototype._formattingContext):
1936         (LayoutState.prototype.layout): Deleted.
1937         (LayoutState.prototype.formattingStates): Deleted.
1938         (LayoutState.prototype.initialDisplayBox): Deleted.
1939         * LayoutReloaded/Utils.js:
1940         (Utils._dumpBox):
1941         (Utils._findDisplayBox): Deleted.
1942
1943 2018-04-12  Jonathan Bedard  <jbedard@apple.com>
1944
1945         Fix --build-directory flag for run-webkit-tests
1946         https://bugs.webkit.org/show_bug.cgi?id=184545
1947         <rdar://problem/39385080>
1948
1949         Rubber-stamped by Aakash Jain.
1950
1951         The --build-directory path does not work with iOS-Simulator.
1952
1953         * Scripts/webkitpy/port/base.py:
1954         (Port._build_path): Use the port configuration to calculate the root directory.
1955         * Scripts/webkitpy/port/base_unittest.py:
1956         (PortTest.test_build_path): Test build directories for embedded configurations.
1957
1958 2018-04-12  Ross Kirsling  <ross.kirsling@sony.com>
1959
1960         pemfile.py should not assume POSIX line endings
1961         https://bugs.webkit.org/show_bug.cgi?id=184507
1962
1963         Reviewed by Daniel Bates.
1964
1965         * Scripts/webkitpy/common/system/pemfile.py:
1966         (_parse_pem_format):
1967         * Scripts/webkitpy/common/system/pemfile_unittest.py:
1968         (PemFileTest.test_parse_crlf):
1969         (PemFileTest.test_parse_cr):
1970
1971 2018-04-12  Zalan Bujtas  <zalan@apple.com>
1972
1973         [LayoutReloaded] Minor cleanup in LayoutSate
1974         https://bugs.webkit.org/show_bug.cgi?id=184546
1975
1976         Reviewed by Antti Koivisto.
1977
1978         * LayoutReloaded/FormattingContext/FormattingContext.js:
1979         (FormattingContext.isInFormattingContext):
1980         * LayoutReloaded/FormattingState/FormattingState.js:
1981         (FormattingState.prototype.displayBoxes):
1982         (FormattingState.prototype.displayBox):
1983         (FormattingState.prototype._markSubTreeNeedsLayout):
1984         (FormattingState):
1985         (FormattingState.prototype.displayBoxMap): Deleted.
1986         * LayoutReloaded/LayoutState.js:
1987         (LayoutState.prototype.formattingStateForBox):
1988         (LayoutState.prototype.needsLayout):
1989         (LayoutState.prototype.displayBox):
1990         (LayoutState.prototype._createFormattingState):
1991         (LayoutState):
1992         * LayoutReloaded/LayoutTree/Box.js:
1993         (Layout.Box.prototype.isFormattingContextDescendant): Deleted.
1994         * LayoutReloaded/LayoutTree/Container.js:
1995         (Layout.Container.prototype.isContainingBlockDescendant): Deleted.
1996         * LayoutReloaded/Utils.js:
1997         (Utils._findDisplayBox):
1998
1999 2018-04-12  Zalan Bujtas  <zalan@apple.com>
2000
2001         [LayoutReloaded] Introduce needsLayout to InlineFormattingContext
2002         https://bugs.webkit.org/show_bug.cgi?id=184538
2003
2004         Reviewed by Antti Koivisto.
2005
2006         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2007         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
2008         (BlockFormattingContext):
2009         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout): Deleted.
2010         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout): Deleted.
2011         * LayoutReloaded/FormattingContext/FormattingContext.js:
2012         (FormattingContext.prototype._firstInFlowChildWithNeedsLayout):
2013         (FormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
2014         (FormattingContext):
2015         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2016         (InlineFormattingContext.prototype.layout):
2017         (InlineFormattingContext.prototype._handleInlineContainer):
2018         (InlineFormattingContext.prototype._handleInlineBlockContainer):
2019         (InlineFormattingContext.prototype._handleInlineContent):
2020         (InlineFormattingContext.prototype._clearAndMoveToNext):
2021         (InlineFormattingContext):
2022
2023 2018-04-12  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2024
2025         [GStreamer] Speed up GStreamer dependency build by removing examples compilation
2026         https://bugs.webkit.org/show_bug.cgi?id=184528
2027
2028         Reviewed by Philippe Normand.
2029
2030         * gstreamer/jhbuild.modules: Added --disable-examples for GStreamer package.
2031
2032 2018-04-12  Zan Dobersek  <zdobersek@igalia.com>
2033
2034         [WPE] Switch testing process to using WPEBackend-fdo
2035         https://bugs.webkit.org/show_bug.cgi?id=184357
2036
2037         Reviewed by Carlos Alberto Lopez Perez.
2038
2039         Switch WPE testing to using the WPEBackend-fdo implementation that
2040         depends on the WL_bind_wayland_display EGL extension, as defined under
2041         the freedesktop.org project.
2042         https://cgit.freedesktop.org/mesa/mesa/tree/docs/specs/WL_bind_wayland_display.spec
2043
2044         HeadlessViewBackend is refactored to use the WPEBackend-fdo API, but
2045         otherwise is not changed in functionality.
2046
2047         Unit tests now have to unconditionally use HeadlessViewBackend as a
2048         wpe_view_backend provider, since WPEBackend-fdo does not provide a
2049         default wpe_view_backend implementation. Unit tests covering that are
2050         adjusted to instead use a mock wpe_view_backend interface.
2051
2052         * Scripts/webkitdirs.pm:
2053         (builtDylibPathForName): Fix the libWPEWebKit.so name to also include
2054         the API version that was added in r230449.
2055         * Scripts/webkitpy/port/waylanddriver.py:
2056         (WaylandDriver._setup_environ_for_test): Export EGL_PLATFORM=wayland.
2057         * Scripts/webkitpy/port/wpe.py:
2058         (WPEPort._driver_class): Use WaylandDriver by default.
2059         * TestWebKitAPI/PlatformWebView.h:
2060         (): Deleted.
2061         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2062         (testWebViewWebBackend):
2063         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2064         (Test::createWebViewBackend):
2065         * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
2066         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
2067         (TestWebKitAPI::PlatformWebView::initialize):
2068         * wpe/HeadlessViewBackend/CMakeLists.txt:
2069         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:
2070         (getEGLDisplay):
2071         (HeadlessViewBackend::HeadlessViewBackend):
2072         (HeadlessViewBackend::~HeadlessViewBackend):
2073         (HeadlessViewBackend::backend const):
2074         (HeadlessViewBackend::createSnapshot):
2075         (HeadlessViewBackend::performUpdate):
2076         (HeadlessViewBackend::makeCurrent): Deleted.
2077         * wpe/HeadlessViewBackend/HeadlessViewBackend.h:
2078         * wpe/jhbuild.modules: Module name cleanup. Dyz version is bumped.
2079
2080 2018-04-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2081
2082         [GTK] Switch to use always complex text code path
2083         https://bugs.webkit.org/show_bug.cgi?id=183285
2084
2085         Reviewed by Michael Catanzaro.
2086
2087         Keep the auto mode for the layout tests to avoid having to rebaseline a lot of tests.
2088
2089         * WebKitTestRunner/gtk/main.cpp:
2090         (main): Set WEBKIT_FORCE_COMPLEX_TEXT to 0 unless it's already present in the environment.
2091
2092 2018-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2093
2094         [GLIB] Handle strings containing null characters
2095         https://bugs.webkit.org/show_bug.cgi?id=184450
2096
2097         Reviewed by Michael Catanzaro.
2098
2099         Add test case for strings with null characters and update all calls to evaluate to pass the script length.
2100
2101         * TestWebKitAPI/PlatformGTK.cmake:
2102         * TestWebKitAPI/PlatformWPE.cmake:
2103         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
2104         (testJSCBasic):
2105         (testJSCFunction):
2106         (testJSCObject):
2107         (testJSCClass):
2108         (testJSCPrototypes):
2109         (testJSCExceptions):
2110         (testJSCPromises):
2111         (testJSCGarbageCollector):
2112         (testJSCWeakValue):
2113         (testsJSCVirtualMachine):
2114         (testsJSCAutocleanups):
2115         * TestWebKitAPI/Tests/JavaScriptCore/glib/script.js: Added.
2116         * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp:
2117         (DOMElementTest::testAutoFill):
2118         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
2119         (WebKitWebEditorTest::testSelectionChanged):
2120         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
2121         (WebKitFrameTest::testJavaScriptValues):
2122         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
2123         (consoleMessageSentCallback):
2124         (methodCallCallback):
2125
2126 2018-04-11  Zan Dobersek  <zdobersek@igalia.com>
2127
2128         [WPE] Make WebKitWebViewBackend object mandatory for webkit_web_view_new*() constructors
2129         https://bugs.webkit.org/show_bug.cgi?id=184513
2130
2131         Reviewed by Michael Catanzaro.
2132
2133         Update the WPE-specific testWebViewWebBackend() test case, removing the
2134         test that passes a null WebKitWebViewBackend object to the
2135         webkit_web_view_new() call.
2136
2137         Helper createWebViewBackend() that's called via Test::createWebView()
2138         variations is updated to, in case of not using the headless backend,
2139         return a WebKitWebViewBackend instance that wraps around a
2140         default wpe_view_backend object.
2141
2142         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2143         (testWebViewWebBackend):
2144         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2145         (Test::createWebViewBackend):
2146
2147 2018-04-11  Zalan Bujtas  <zalan@apple.com>
2148
2149         [LayoutReloaded] Introduce needsLayout flag
2150         https://bugs.webkit.org/show_bug.cgi?id=184527
2151
2152         Reviewed by Antti Koivisto.
2153
2154         Use the formatting state to mark boxes dirty.
2155
2156         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2157         (BlockFormattingContext.prototype.layout):
2158         (BlockFormattingContext.prototype._firstInFlowChildWithNeedsLayout):
2159         (BlockFormattingContext.prototype._nextInFlowSiblingWithNeedsLayout):
2160         (BlockFormattingContext):
2161         * LayoutReloaded/FormattingContext/FormattingContext.js:
2162         (FormattingContext.prototype._layoutOutOfFlowDescendants):
2163         * LayoutReloaded/FormattingState/FormattingState.js:
2164         (FormattingState):
2165         (FormattingState.prototype.markNeedsLayout):
2166         (FormattingState.prototype.clearNeedsLayout):
2167         (FormattingState.prototype.needsLayout):
2168         (FormattingState.prototype.layoutNeeded):
2169         (FormattingState.prototype._markSubTreeNeedsLayout):
2170         * LayoutReloaded/LayoutState.js:
2171         (LayoutState.prototype.formattingStateForBox):
2172         (LayoutState.prototype.setNeedsLayout):
2173         (LayoutState.prototype.needsLayout):
2174         * LayoutReloaded/LayoutTree/Box.js:
2175         (Layout.Box.prototype.isFormattingContextDescendant):
2176         * LayoutReloaded/LayoutTree/Container.js:
2177         (Layout.Container.prototype.isContainingBlockDescendant):
2178
2179 2018-04-11  Jonathan Bedard  <jbedard@apple.com>
2180
2181         Fix TestInvocation class for newer versions of clang.
2182         https://bugs.webkit.org/show_bug.cgi?id=184508
2183         <rdar://problem/39328648>
2184
2185         Reviewed by Alexey Proskuryakov.
2186
2187         Declare TestInvocation to be final so it does not require a virtual destructor.
2188
2189         * WebKitTestRunner/TestInvocation.h:
2190
2191 2018-04-10  Alex Christensen  <achristensen@webkit.org>
2192
2193         IDN spoofing with Hebrew combining characters
2194         https://bugs.webkit.org/show_bug.cgi?id=184472
2195         <rdar://problem/39148687>
2196
2197         Reviewed by Brent Fulgham.
2198
2199         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
2200         (TestWebKitAPI::TEST):
2201
2202 2018-04-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2203
2204         [Extra zoom mode] Missing label when focusing a <select> with a title attribute but no associated <label>
2205         https://bugs.webkit.org/show_bug.cgi?id=184352
2206         <rdar://problem/39237683>
2207
2208         Reviewed by Andy Estes.
2209
2210         Add support for UIScriptController::selectFormPopoverTitle, which returns the title of the current select
2211         popover's UITableViewController (for testing purposes).
2212
2213         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2214         (WTR::UIScriptController::selectFormPopoverTitle const):
2215         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2216         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2217         (WTR::UIScriptController::selectFormPopoverTitle const):
2218         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2219         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2220         (WTR::UIScriptController::selectFormPopoverTitle const):
2221
2222 2018-04-10  Nan Wang  <n_wang@apple.com>
2223
2224         AX: Expose strong password fields on iOS
2225         https://bugs.webkit.org/show_bug.cgi?id=184465
2226         <rdar://problem/39325104>
2227
2228         Reviewed by Chris Fleizach.
2229
2230         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2231         (AccessibilityUIElement::boolAttributeValue):
2232         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2233         (WTR::AccessibilityUIElement::boolAttributeValue):
2234
2235 2018-04-10  Zalan Bujtas  <zalan@apple.com>
2236
2237         [LayoutReloaded] Add support for out-of-flow descendants in inline formatting context.
2238         https://bugs.webkit.org/show_bug.cgi?id=184454
2239
2240         Reviewed by Antti Koivisto.
2241
2242         When the containing block of an out-of-flow positioned element establishes an inline formatting context.
2243         This is mostly about moving out-of-flow logic from BlockFormattingContext to the base class.
2244
2245         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2246         (BlockFormattingContext.prototype._adjustBottomWithFIXME):
2247         (BlockFormattingContext):
2248         (BlockFormattingContext.prototype._layoutOutOfFlowDescendants): Deleted.
2249         (BlockFormattingContext.prototype._computeOutOfFlowWidth): Deleted.
2250         (BlockFormattingContext.prototype._computeInFlowWidth): Deleted.
2251         (BlockFormattingContext.prototype._computeOutOfFlowHeight): Deleted.
2252         (BlockFormattingContext.prototype._computeOutOfFlowPosition): Deleted.
2253         (BlockFormattingContext.prototype._shrinkToFitWidth): Deleted.
2254         * LayoutReloaded/FormattingContext/FormattingContext.js:
2255         (FormattingContext.prototype._placeInFlowPositionedChildren):
2256         (FormattingContext.prototype._computeInFlowWidth):
2257         (FormattingContext.prototype._layoutOutOfFlowDescendants):
2258         (FormattingContext.prototype._computeOutOfFlowWidth):
2259         (FormattingContext.prototype._computeOutOfFlowHeight):
2260         (FormattingContext.prototype._computeOutOfFlowPosition):
2261         (FormattingContext.prototype._shrinkToFitWidth):
2262         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2263         (InlineFormattingContext.prototype.layout):
2264         (InlineFormattingContext.prototype._handleInlineContainer):
2265         (InlineFormattingContext.prototype._handleInlineBlockContainer):
2266         (InlineFormattingContext.prototype._placeOutOfFlowDescendants): Deleted.
2267         * LayoutReloaded/test/index.html:
2268         * LayoutReloaded/test/inline-with-out-of-flow-descendant.html: Added.
2269
2270 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
2271
2272         WKTR: Enable DOM cache, SW registration directory cleanup on non-Cocoa platforms
2273         https://bugs.webkit.org/show_bug.cgi?id=184414
2274
2275         Reviewed by Michael Catanzaro.
2276
2277         Enable clearServiceWorkerRegistrations(), clearDOMCache() and
2278         clearDOMCaches() implementations in WebKitTestRunner's TestController
2279         class for non-Cocoa platforms. Implementations depend on the generic
2280         WK2 C API that other ports can leverage as well.
2281
2282         The clearDOMCache() and clearDOMCaches() calls are now operational for
2283         tests that invoke them. clearServiceWorkerRegistrations() and
2284         clearDOMCaches() are also called between each test, cleaning up relevant
2285         resources.
2286
2287         The TestController::getAllStorageAccessEntries() stub for non-Cocoa
2288         platforms is moved into the main !PLATFORM(COCOA) block.
2289
2290         * WebKitTestRunner/TestController.cpp:
2291         (WTR::TestController::getAllStorageAccessEntries):
2292         (WTR::clearServiceWorkerRegistrationsCallback):
2293         (WTR::TestController::clearServiceWorkerRegistrations):
2294         (WTR::clearDOMCacheCallback):
2295         (WTR::TestController::clearDOMCache):
2296         (WTR::TestController::clearDOMCaches):
2297
2298 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2299
2300         [LayoutReloaded] Add support for relatively positioned containers in inline formatting context.
2301         https://bugs.webkit.org/show_bug.cgi?id=184439
2302
2303         Reviewed by Antti Koivisto.
2304
2305         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2306         (BlockFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
2307         (BlockFormattingContext.prototype._computeInFlowPositionedPosition): Deleted.
2308         * LayoutReloaded/FormattingContext/FormattingContext.js:
2309         (FormattingContext.prototype._computeInFlowPositionedPosition):
2310         (FormattingContext.prototype._placeInFlowPositionedChildren):
2311         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2312         (InlineFormattingContext.prototype._placeInFlowPositionedChildren): Deleted.
2313         * LayoutReloaded/Utils.js:
2314         (Utils._dumpBox):
2315         (Utils._dumpLines.):
2316         (Utils._dumpLines):
2317         (Utils.precisionRoundWithDecimals):
2318         (Utils.precisionRound):
2319         (Utils):
2320         * LayoutReloaded/test/index.html:
2321         * LayoutReloaded/test/inline-with-relative-positioning.html: Added.
2322
2323 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2324
2325         [LayoutReloaded] Remove Layout.InitialContainingBlock class
2326         https://bugs.webkit.org/show_bug.cgi?id=184436
2327
2328         Reviewed by Antti Koivisto.
2329
2330         * LayoutReloaded/LayoutTree/Box.js:
2331         (Layout.Box.prototype.establishesBlockFormattingContext):
2332         * LayoutReloaded/LayoutTree/InitialBlockContainer.js: Removed.
2333         * LayoutReloaded/TreeBuilder.js:
2334         (TreeBuilder.prototype.createTree):
2335         * LayoutReloaded/test/index.html:
2336
2337 2018-04-09  Zalan Bujtas  <zalan@apple.com>
2338
2339         [LayoutReloaded] Add support for inline-block.
2340         https://bugs.webkit.org/show_bug.cgi?id=184434
2341
2342         Reviewed by Antti Koivisto.
2343
2344         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2345         (InlineFormattingContext):
2346         (InlineFormattingContext.prototype.layout):
2347         (InlineFormattingContext.prototype._handleInlineContainer):
2348         (InlineFormattingContext.prototype._handleInlineBlockContainer):
2349         (InlineFormattingContext.prototype._handleInlineContent):
2350         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2351         (Line.prototype.addInlineContainerBox):
2352         (Line.prototype.addTextLineBox):
2353         (Line):
2354         * LayoutReloaded/LayoutTree/Box.js:
2355         (Layout.Box.prototype.isInlineBlockBox):
2356         * LayoutReloaded/Utils.js:
2357         (LayoutRect.prototype.growHorizontally):
2358         (Utils.isBlockContainerElement):
2359         (Utils.isInlineBlockElement):
2360         (Utils._dumpLines.):
2361         (Utils._dumpLines):
2362         * LayoutReloaded/test/index.html:
2363         * LayoutReloaded/test/inline-block-with-fixed-width-height.html: Added.
2364
2365 2018-04-09  Timothy Hatcher  <timothy@apple.com>
2366
2367         Add support for setting a background color on WKWebView and WKView
2368         https://bugs.webkit.org/show_bug.cgi?id=184426
2369
2370         Reviewed by Wenson Hsieh.
2371
2372         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2373         * TestWebKitAPI/Tests/mac/BackgroundColor.mm: Added.
2374
2375 2018-04-09  Charlie Turner  <cturner@igalia.com>
2376
2377         [WPE] Add some missing install dependencies
2378         https://bugs.webkit.org/show_bug.cgi?id=184383
2379
2380         Reviewed by Michael Catanzaro.
2381
2382         * wpe/install-dependencies:
2383
2384 2018-04-09  Sihui Liu  <sihui_liu@apple.com>
2385
2386         REGRESSION(r229929): localStorage is broken for WebInspector
2387         https://bugs.webkit.org/show_bug.cgi?id=184382
2388         <rdar://problem/39257355>
2389
2390         Reviewed by Chris Dumez.
2391
2392         * TestWebKitAPI/Tests/WebKitCocoa/LocalStoragePersistence.mm:
2393         (TEST):
2394         * TestWebKitAPI/Tests/WebKitCocoa/localstorage-empty-string-value.html:
2395
2396 2018-04-09  Zan Dobersek  <zdobersek@igalia.com>
2397
2398         Unreviewed follow-up to r230389.
2399
2400         * WebKitTestRunner/TestController.cpp:
2401         (WTR::TestController::platformAdjustContext): Use the 'ServiceWorkers'
2402         subdirectory for the temporary testing-purpose SW registration directory
2403         like it's used in Cocoa's TestController, addressing the review comment
2404         that I forgot about.
2405
2406 2018-04-08  Zan Dobersek  <zdobersek@igalia.com>
2407
2408         Non-Cocoa ports use default directory for ServiceWorker data during testing
2409         https://bugs.webkit.org/show_bug.cgi?id=183784
2410
2411         Reviewed by Youenn Fablet.
2412
2413         * WebKitTestRunner/TestController.cpp:
2414         (WTR::TestController::platformAdjustContext): Set the service worker registration
2415         directory through the new WKWebsiteDataStore API for non-Cocoa ports.
2416
2417 2018-04-08  Zalan Bujtas  <zalan@apple.com>
2418
2419         [LayoutReloaded] Adjust line with inline container's margin border and padding
2420         https://bugs.webkit.org/show_bug.cgi?id=184409
2421
2422         Reviewed by Antti Koivisto.
2423
2424         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2425         (InlineFormattingContext.prototype.layout):
2426         (InlineFormattingContext.prototype._handleFloatingBox):
2427         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
2428         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
2429         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2430         (Line.prototype.shrink):
2431         (Line.prototype.adjustWithOffset):
2432         (Line.prototype.moveContentHorizontally):
2433         (Line.prototype.addTextLineBox):
2434         (Line):
2435         (Line.prototype.addFloatingBox): Deleted.
2436         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2437         * LayoutReloaded/test/index.html:
2438         * LayoutReloaded/test/inline-with-padding-border-margin-offsets.html: Added.
2439
2440 2018-04-07  Zalan Bujtas  <zalan@apple.com>
2441
2442         [LayoutReloaded] Add support for InlineContainer
2443         https://bugs.webkit.org/show_bug.cgi?id=184394
2444
2445         Reviewed by Antti Koivisto.
2446
2447         * LayoutReloaded/FormattingContext/FormattingContext.js:
2448         (FormattingContext.prototype._addToLayoutQueue):
2449         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2450         (InlineFormattingContext.prototype.layout):
2451         (InlineFormattingContext.prototype._handleInlineContent):
2452         (InlineFormattingContext.prototype._handleFloatingBox):
2453         (InlineFormattingContext.prototype._adjustLineForInlineContainerStart):
2454         (InlineFormattingContext.prototype._adjustLineForInlineContainerEnd):
2455         (InlineFormattingContext.prototype._placeInFlowPositionedChildren):
2456         (InlineFormattingContext.prototype._placeOutOfFlowDescendants):
2457         (InlineFormattingContext.prototype._createNewLine):
2458         (InlineFormattingContext.prototype._handleContent): Deleted.
2459         * LayoutReloaded/LayoutState.js:
2460         (LayoutState.prototype._createFormattingState):
2461         * LayoutReloaded/LayoutTree/Box.js:
2462         (Layout.Box.prototype.isContainer):
2463         (Layout.Box.prototype.isInlineContainer):
2464         (Layout.Box.prototype.isInlineBox):
2465         * LayoutReloaded/LayoutTree/Container.js:
2466         (Layout.Container.prototype.isContainer): Deleted.
2467         * LayoutReloaded/LayoutTree/InlineContainer.js: Added.
2468         (Layout.InlineContainer):
2469         * LayoutReloaded/TreeBuilder.js:
2470         (TreeBuilder.prototype._createAndAttachBox):
2471         * LayoutReloaded/Utils.js:
2472         (Utils._dumpBox):
2473         (Utils.precisionRound):
2474         (Utils):
2475         * LayoutReloaded/test/index.html:
2476         * LayoutReloaded/test/inline-content-simple2.html: Added.
2477         * LayoutReloaded/test/inline-floating1.html: Added.
2478         * LayoutReloaded/test/inline-formatting-context-floats1.html: Added.
2479         * LayoutReloaded/test/inline-formatting-context-floats2.html: Added.
2480
2481 2018-04-07  Timothy Hatcher  <timothy@apple.com>
2482
2483         Use the system's link color when system appearance is desired for a WebView.
2484
2485         https://bugs.webkit.org/show_bug.cgi?id=184353
2486         rdar://problem/9420053
2487
2488         Reviewed by Wenson Hsieh.
2489
2490         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2491         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm: Added.
2492         (TestWebKitAPI::WebKit::LinkColor):
2493         (TestWebKitAPI::WebKit::LinkColorWithSystemAppearance):
2494
2495 2018-04-06  Zalan Bujtas  <zalan@apple.com>
2496
2497         Rebaseline LayoutReloaded patch file.
2498
2499         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2500
2501 2018-04-06  Fujii Hironori  <Hironori.Fujii@sony.com>
2502
2503         [Win][WebCore] Expose a constant for scrollbar pixels per line (cScrollbarPixelsPerLine)
2504         https://bugs.webkit.org/show_bug.cgi?id=184296
2505
2506         Reviewed by Alex Christensen.
2507
2508         * DumpRenderTree/win/EventSender.cpp:
2509         (mouseScrollBy): Removed the duplicated cScrollbarPixelsPerLine
2510         definition. Use WebCore::cScrollbarPixelsPerLine.
2511
2512 2018-04-06  Zalan Bujtas  <zalan@apple.com>
2513
2514         Rebaseline LayoutReloaded patch file.
2515
2516         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
2517
2518 2018-04-05  Youenn Fablet  <youenn@apple.com>
2519
2520         Test expectation updater should handle Win bot results
2521         https://bugs.webkit.org/show_bug.cgi?id=184274
2522
2523         Reviewed by Ryosuke Niwa.
2524
2525         Add processing of win bot results.
2526         They will update platform/win results.
2527
2528         Updated the script so that if there is no mac-wk2 results, it will still process specific results.
2529
2530         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py:
2531         (TestExpectationUpdater.__init__):
2532         (TestExpectationUpdater._bot_type):
2533         (TestExpectationUpdater.do_update):
2534         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py:
2535         (MockAttachment):
2536         (MockAttachment.__init__):
2537         (MockAttachment.contents):
2538         (MockBugzilla):
2539         (MockBugzilla.__init__):
2540         (MockBugzilla.fetch_bug):
2541         (MockBugzilla.attachments):
2542         (MockZip):
2543         (MockZip.__init__):
2544         (MockZip.unzip):
2545         (MockZip.read):
2546         (TestExpectationUpdaterTest.test_update_test_expectations):
2547         (TestExpectationUpdaterTest):
2548         (TestExpectationUpdaterTest.test_update_win_future_test_expectations):
2549
2550 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2551
2552         [LayoutReloaded] Fix static position for floating boxes when they don't fit the current line
2553         https://bugs.webkit.org/show_bug.cgi?id=184354
2554
2555         Reviewed by Antti Koivisto.
2556
2557         Do not shrink the current line with the floating box unless it is on the current line.
2558
2559         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2560         (InlineFormattingContext.prototype._handleFloatingBox):
2561         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2562         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2563         (Line.prototype.addFloatingBox):
2564         (Line):
2565         * LayoutReloaded/test/index.html:
2566         * LayoutReloaded/test/inline-with-right-floats3.html: Added.
2567
2568 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2569
2570         [LayoutReloaded] Add support for right floating boxes in inline formatting context
2571         https://bugs.webkit.org/show_bug.cgi?id=184351
2572
2573         Reviewed by Antti Koivisto.
2574
2575         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2576         (InlineFormattingContext.prototype._handleFloatingBox):
2577         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2578         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2579         (Line.prototype.addFloatingBox):
2580         (Line):
2581         * LayoutReloaded/test/index.html:
2582         * LayoutReloaded/test/inline-with-right-float-simple.html: Added.
2583         * LayoutReloaded/test/inline-with-right-floats2.html: Added.
2584
2585 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2586
2587         [LayoutReloaded] Move floating box to the next line when needed
2588         https://bugs.webkit.org/show_bug.cgi?id=184349
2589
2590         Reviewed by Antti Koivisto.
2591
2592         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2593         (InlineFormattingContext.prototype.layout):
2594         (InlineFormattingContext.prototype._handleContent):
2595         (InlineFormattingContext.prototype._handleText):
2596         (InlineFormattingContext.prototype._handleFloatingBox):
2597         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
2598         (InlineFormattingContext):
2599         (InlineFormattingContext.prototype._handleFloatingBoxes): Deleted.
2600         (InlineFormattingContext.prototype._floatingBoxes): Deleted.
2601         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2602         (Line.prototype.addTextLineBox):
2603         (Line.prototype.addFloatingBox):
2604         (Line):
2605         * LayoutReloaded/Utils.js:
2606         (LayoutRect.prototype.moveHorizontally):
2607         (LayoutRect.prototype.moveVertically):
2608         * LayoutReloaded/test/index.html:
2609         * LayoutReloaded/test/inline-with-floats-when-they-dont-fit.html: Added.
2610
2611 2018-04-05  Brady Eidson  <beidson@apple.com>
2612
2613         Process Swap on Navigation causes many webpages to hang due to attempted process swap for iframe navigations.
2614         <rdar://problem/39162236> and https://bugs.webkit.org/show_bug.cgi?id=184318
2615
2616         Reviewed by Andy Estes.
2617
2618         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2619         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
2620         (-[PSONScheme addMappingFromURLString:toData:]):
2621         (-[PSONScheme webView:startURLSchemeTask:]):
2622
2623 2018-04-05  Yusuke Suzuki  <utatane.tea@gmail.com>
2624
2625         [WTF] Remove StaticLock
2626         https://bugs.webkit.org/show_bug.cgi?id=184332
2627
2628         Reviewed by Mark Lam.
2629
2630         * DumpRenderTree/JavaScriptThreading.cpp:
2631
2632 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2633
2634         [LayoutReloaded] Find the correct left edge for a line when floating boxes are in parent formatting context.
2635         https://bugs.webkit.org/show_bug.cgi?id=184330
2636
2637         Reviewed by Antti Koivisto.
2638
2639         In inline formatting context, the floating boxes can come from the parent (block) formatting context. Let's
2640         take them into account when computing the line edges.
2641
2642         * LayoutReloaded/FormattingContext/FloatingContext.js:
2643         (FloatingContext.prototype.left):
2644         (FloatingContext.prototype.right):
2645         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2646         (InlineFormattingContext.prototype._createNewLine):
2647         (InlineFormattingContext.prototype._mapFloatingVerticalPosition):
2648         (InlineFormattingContext.prototype._mapFloatingHorizontalPosition):
2649         (InlineFormattingContext.prototype._mapFloatingPosition): Deleted.
2650         * LayoutReloaded/test/index.html:
2651         * LayoutReloaded/test/multiple-left-floats-on-line-from-parent-formatting-context.html: Added.
2652
2653 2018-04-05  Zalan Bujtas  <zalan@apple.com>
2654
2655         [LayoutReloaded] Collect floating boxes in inline formatting context and layout them first.
2656         https://bugs.webkit.org/show_bug.cgi?id=184329
2657
2658         Reviewed by Antti Koivisto.
2659
2660         Let's do this for now. There might be some cases where this violates layout.
2661
2662         * LayoutReloaded/FormattingContext/FormattingContext.js:
2663         (FormattingContext.prototype._outOfFlowDescendants):
2664         (FormattingContext):
2665         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2666         (InlineFormattingContext.prototype.layout):
2667         (InlineFormattingContext.prototype._handleFloatingBoxes):
2668         (InlineFormattingContext.prototype._handleFloatingBox):
2669         (InlineFormattingContext.prototype._floatingBoxes):
2670         (InlineFormattingContext):
2671         * LayoutReloaded/test/index.html:
2672         * LayoutReloaded/test/multiple-left-floats-on-line-simple.html: Added.
2673
2674 2018-04-04  Youenn Fablet  <youenn@apple.com>
2675
2676         WebRTC data channel only applications require capture permissions for direct connections
2677         https://bugs.webkit.org/show_bug.cgi?id=174500
2678         <rdar://problem/34134281>
2679
2680         Reviewed by Eric Carlson.
2681
2682         Adding options to enable MDNS ICE candidates.
2683
2684         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2685         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2686         (WTR::TestRunner::setMediaDevicesEnabled):
2687         (WTR::TestRunner::setMDNSICECandidatesEnabled):
2688         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2689         * WebKitTestRunner/TestController.cpp:
2690         (WTR::TestController::resetPreferencesToConsistentValues):
2691
2692 2018-04-04  Ryan Haddad  <ryanhaddad@apple.com>
2693
2694         Disable failing WKWebViewAutofillTests
2695         https://bugs.webkit.org/show_bug.cgi?id=184196
2696
2697         Unreviewed test gardening.
2698
2699         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2700         (TestWebKitAPI::TEST):
2701
2702 2018-04-04  Youenn Fablet  <youenn@apple.com>
2703
2704         Introduce a ThreadSafeRefCounted parameter to ensure being destroyed on the main thread
2705         https://bugs.webkit.org/show_bug.cgi?id=183988
2706
2707         Reviewed by Darin Adler.
2708
2709         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2710         (TestWebKitAPI::ThreadSafeRefCountedObject::create):
2711         (TestWebKitAPI::ThreadSafeRefCountedObject::~ThreadSafeRefCountedObject):
2712         (TestWebKitAPI::MainThreadSafeRefCountedObject::create):
2713         (TestWebKitAPI::MainThreadSafeRefCountedObject::~MainThreadSafeRefCountedObject):
2714         (TestWebKitAPI::TEST):
2715
2716 2018-04-04  Ms2ger  <Ms2ger@igalia.com>
2717
2718         Test gardening for GTK.
2719         https://bugs.webkit.org/show_bug.cgi?id=184298
2720
2721         Unreviewed test gardening.
2722
2723         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: Add pointer to
2724         https://bugs.webkit.org/show_bug.cgi?id=184295.
2725
2726 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2727
2728         ASSERTION FAILED: !m_mainFrame->coreFrame()->loader().frameHasLoaded() || !m_pendingNavigationID when reloading page while a page is loading
2729         https://bugs.webkit.org/show_bug.cgi?id=153210
2730
2731         Reviewed by Alex Christensen.
2732
2733         Add unit tests to WebKit C API and WebKitGLib.
2734
2735         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
2736         (TestWebKitAPI::TEST):
2737         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
2738         (LoadTwiceAndReloadTest::reloadOnFinishLoad):
2739         (LoadTwiceAndReloadTest::LoadTwiceAndReloadTest):
2740         (LoadTwiceAndReloadTest::~LoadTwiceAndReloadTest):
2741         (LoadTwiceAndReloadTest::waitUntilFinished):
2742         (testWebViewLoadTwiceAndReload):
2743         (beforeAll):
2744
2745 2018-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2746
2747         [GTK] Test /webkit/WebKitWebPage/context-menu is failing since r229831
2748         https://bugs.webkit.org/show_bug.cgi?id=184260
2749
2750         Reviewed by Michael Catanzaro.
2751
2752         This is not a regression introduced in r229831, though, it's a bug in the test itself revealed by r229831. We
2753         should wait for the load to complete before trying to show the context menu.
2754
2755         * TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
2756         (testContextMenuWebExtensionMenu):
2757
2758 2018-04-03  Zalan Bujtas  <zalan@apple.com>
2759
2760         [LayoutReloaded] Introduce floating to InlineFormattingContext
2761         https://bugs.webkit.org/show_bug.cgi?id=184288
2762
2763         Reviewed by Antti Koivisto.
2764
2765         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
2766         (BlockFormattingContext.prototype._computeFloatingWidth): Deleted.
2767         (BlockFormattingContext.prototype._computeFloatingHeight): Deleted.
2768         * LayoutReloaded/FormattingContext/FormattingContext.js:
2769         (FormattingContext.prototype._computeFloatingWidth):
2770         (FormattingContext.prototype._computeFloatingHeight):
2771         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
2772         (InlineFormattingContext.prototype.layout):
2773         (InlineFormattingContext.prototype._handleFloatingBox):
2774         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
2775         (Line.prototype.addFloatingBox):
2776         (Line):
2777         * LayoutReloaded/test/float-is-inside-inline-formatting-context-simple.html: Added.
2778         * LayoutReloaded/test/index.html:
2779
2780 2018-04-03  Youenn Fablet  <youenn@apple.com>
2781
2782         NetworkResourceLoader does not need to expose all redirect response headers
2783         https://bugs.webkit.org/show_bug.cgi?id=184114
2784         <rdar://problem/39010557>
2785
2786         Reviewed by Ryosuke Niwa.
2787
2788         Add an option to dump the number of headers in a response.
2789         This allows validating that filtering does happen or not.
2790
2791         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2792         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2793         (WTR::dumpResponseDescriptionSuitableForTestResult):
2794         (WTR::InjectedBundlePage::responseHeaderCount):
2795         (WTR::InjectedBundlePage::willSendRequestForFrame):
2796         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
2797         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2798         (WTR::TestRunner::dumpAllHTTPRedirectedResponseHeaders):
2799         (WTR::TestRunner::shouldDumpAllHTTPRedirectedResponseHeaders const):
2800         * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
2801         (WTR::InjectedBundlePage::responseHeaderCount):
2802         * WebKitTestRunner/TestController.cpp:
2803         (WTR::TestController::resetPreferencesToConsistentValues):
2804
2805 2018-04-03  Andy Estes  <aestes@apple.com>
2806
2807         [Mac] Prioritize file promises over filenames during drag and drop
2808         https://bugs.webkit.org/show_bug.cgi?id=184237
2809         <rdar://problem/38278076>
2810
2811         Reviewed by Wenson Hsieh.
2812
2813         * DumpRenderTree/mac/EventSendingController.mm:
2814         (-[EventSendingController beginDragWithFilePromises:]):
2815
2816 2018-04-03  Brady Eidson  <beidson@apple.com>
2817
2818         Make SessionStorage work with process swapping.
2819         https://bugs.webkit.org/show_bug.cgi?id=184270
2820
2821         Reviewed by Andy Estes.
2822
2823         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2824         (-[PSONMessageHandler userContentController:didReceiveScriptMessage:]):
2825
2826 2018-04-03  Chris Dumez  <cdumez@apple.com>
2827
2828         Drop MainFrame class
2829         https://bugs.webkit.org/show_bug.cgi?id=184191
2830
2831         Reviewed by Darin Adler.
2832
2833         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
2834
2835 2018-04-03  Charlie Turner  <cturner@igalia.com>
2836
2837         [WPE] Add WPE port to garden-o-matic
2838         https://bugs.webkit.org/show_bug.cgi?id=182998
2839
2840         Reviewed by Michael Catanzaro.
2841
2842         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
2843         Add WPE as a port to check.
2844         (config.kPlatforms.string_appeared_here._builderApplies): Use less
2845         surprising equality operator.
2846         (config.kPlatforms.string_appeared_here.resultsDirectoryNameFromBuilderName):
2847         Ditto.
2848         (config.kPlatforms.string_appeared_here.resultsDirectoryForBuildNumber):
2849         Ditto.
2850
2851 2018-04-03  Adrian Perez de Castro  <aperez@igalia.com>
2852
2853         [GTK][JHBuild] Tools/gtk/install-dependencies: Replace libxfont with libxfont2 in Arch Linux
2854         https://bugs.webkit.org/show_bug.cgi?id=184258
2855
2856         Reviewed by Carlos Alberto Lopez Perez.
2857
2858         * gtk/install-dependencies: Use libxfont2 on Arch Linux as well.
2859
2860 2018-04-02  Brady Eidson  <beidson@apple.com>
2861
2862         Process swapping on navigation needs to handle server redirects.
2863         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
2864
2865         Reviewed by Alex Christensen.
2866
2867         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2868         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
2869         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2870         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
2871         (-[PSONScheme addRedirectFromURLString:toURLString:]):
2872         (-[PSONScheme webView:startURLSchemeTask:]):
2873
2874 2018-04-02  Daniel Bates  <dabates@apple.com>
2875
2876         Add infrastructure to relax SSL for allowed hosts in DumpRenderTree and WebKitTestRunner
2877         https://bugs.webkit.org/show_bug.cgi?id=184239
2878
2879         Reviewed by Alexey Proskuryakov.
2880
2881         Adds a new optional command line option --allow-any-certificate-for-allowed-hosts (defaults to disabled)
2882         to allow the allowed hosts to accept any HTTPS certificate. You can specify an allowed host
2883         by using the existing command line option --allowed-host.
2884
2885         Currently both DumpRenderTree and WebKitTestRunner relax SSL certificate validation
2886         for 127.0.0.1 and localhost so that we can run HTTPS tests from these hosts using
2887         a self-signed certificate. They do not relax these restrictions for any allowed host,
2888         specified using the optional command line option --allowed-host. For testing purposes
2889         it is useful to be able to run a local HTTPS server with a self-signed certificate and
2890         mimic a non-localhost hostname (by adding an alias(es) for 127.0.0.1 to /etc/hosts).
2891         We should support relaxing SSL restrictions for such testing purposes.
2892
2893         For example, to allow host example.test to present any HTTPS certificate when running
2894         tests you would invoke:
2895
2896             run-webkit-tests --allowed-host example.test --additional-drt-flag '--allow-any-certificate-for-allowed-hosts'
2897
2898         * DumpRenderTree/mac/DumpRenderTree.mm:
2899         (initializeGlobalsFromCommandLineOptions): Parse the command line option --allow-any-certificate-for-allowed-hosts.
2900         (dumpRenderTree): Allow any HTTPS certificate from each allowed host.
2901         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2902         (WTR::InjectedBundle::didReceiveMessageToPage): Clear out the existing list of allowed hosts
2903         before appending entries to it to avoid growing the list of allowed hosts without bound. Call
2904         platformAllowAnyHTTPSCertificateForAllowedHosts() to apply SSL relaxation for each allowed host.
2905         * WebKitTestRunner/Options.cpp:
2906         (WTR::handleOptionAllowAnyHTTPSCertificateForAllowedHosts): Added.
2907         (WTR::handleOptionAllowedHost): Update code as needed now that Options::allowedHosts is a std::set.
2908         (WTR::OptionsHandler::OptionsHandler):
2909         * WebKitTestRunner/Options.h: Change the data type of allowedHosts from a std::vector to a std::set
2910         so that we can make use of the convenience functon std::set::find() in TestController::canAuthenticateAgainstProtectionSpace().
2911         * WebKitTestRunner/TestController.cpp:
2912         (WTR::TestController::initialize):
2913         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Allow any HTTPS certificate from each allowed host.
2914         * WebKitTestRunner/TestController.h:
2915
2916 2018-04-02  Ryan Haddad  <ryanhaddad@apple.com>
2917
2918         Unreviewed, rolling out r230174.
2919
2920         Caused LayoutTests to exit early with assertion failures.
2921
2922         Reverted changeset:
2923
2924         "Process swapping on navigation needs to handle server
2925         redirects."
2926         https://bugs.webkit.org/show_bug.cgi?id=184142
2927         https://trac.webkit.org/changeset/230174
2928
2929 2018-04-02  Daniel Bates  <dabates@apple.com>
2930
2931         Remove pre-Network Session code path for allowing any HTTPS certificate on Mac and iOS
2932         https://bugs.webkit.org/show_bug.cgi?id=184242
2933
2934         Reviewed by Alexey Proskuryakov.
2935
2936         Following r227364 we use the Network Session (NSURLSession) code path by default in
2937         modern WebKit on Mac and iOS. That is, we no longer use {CF, NS}URLConnection in modern
2938         WebKit on these platforms. So, we can remove code that used NSURLRequest SPI to allow
2939         any HTTPS certificate from localhost and 127.0.0.1 when using {CF, NS}URLConnection.
2940         The equivalent functionality is implemented in TestController::canAuthenticateAgainstProtectionSpace().
2941
2942         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
2943         (WTR::InjectedBundle::platformInitialize):
2944         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
2945         (WTR::InjectedBundle::platformInitialize):
2946
2947 2018-04-02  Brady Eidson  <beidson@apple.com>
2948
2949         Process swapping on navigation needs to handle server redirects.
2950         <rdar://problem/38690465> and https://bugs.webkit.org/show_bug.cgi?id=184142
2951
2952         Reviewed by Alex Christensen.
2953
2954         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2955         (-[PSONNavigationDelegate webView:didFinishNavigation:]):
2956         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2957         (-[PSONNavigationDelegate webView:didReceiveServerRedirectForProvisionalNavigation:]):
2958         (-[PSONScheme addRedirectFromURLString:toURLString:]):
2959         (-[PSONScheme webView:startURLSchemeTask:]):
2960
2961 2018-04-02  Thibault Saunier  <tsaunier@igalia.com>
2962
2963         webkitpy: Use current environment value for GST_DEBUG(_FILE) and DOT_DIR env vars
2964         https://bugs.webkit.org/show_bug.cgi?id=184036
2965
2966         Reviewed by Philippe Normand.
2967
2968         Those variables are for debug purpose and should not change the behaviour
2969         itself, and developers expect them to have effect.
2970
2971         * Scripts/webkitpy/port/gtk.py:
2972         (GtkPort.setup_environ_for_server):
2973
2974 2018-04-02  Daniel Bates  <dabates@apple.com>
2975
2976         Remove Options constructor and use internal linkage for option handlers
2977         https://bugs.webkit.org/show_bug.cgi?id=184229
2978
2979         Reviewed by Andy Estes.
2980
2981         Use C++11 default initializer syntax to remove the need to explicitly have a constructor
2982         for the struct Options. Use internal linkage for option handler functions as these
2983         are never invoked outside the translation unit they are defined in.
2984
2985         * WebKitTestRunner/Options.cpp:
2986         (WTR::handleOptionNoTimeout):
2987         (WTR::handleOptionVerbose):
2988         (WTR::handleOptionGcBetweenTests):
2989         (WTR::handleOptionPixelTests):
2990         (WTR::handleOptionPrintSupportedFeatures):
2991         (WTR::handleOptionComplexText):
2992         (WTR::handleOptionAcceleratedDrawing):
2993         (WTR::handleOptionRemoteLayerTree):
2994         (WTR::handleOptionShowWebView):
2995         (WTR::handleOptionShowTouches):
2996         (WTR::handleOptionAllowedHost):
2997         (WTR::handleOptionUnmatched):
2998         (WTR::Options::Options): Deleted.
2999         * WebKitTestRunner/Options.h:
3000
3001 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
3002
3003         Unreviewed GTK port dependencies fix after r230152.
3004
3005         Add alsa library dependency for gtk.
3006
3007         * gtk/install-dependencies:
3008
3009 2018-04-02  Alejandro G. Castro  <alex@igalia.com>
3010
3011         [GTK] Make libwebrtc backend buildable for GTK  port
3012         https://bugs.webkit.org/show_bug.cgi?id=178860
3013
3014         Reviewed by Youenn Fablet.
3015
3016         * gstreamer/jhbuild.modules: Modified the libvpx module for the
3017         libwebrtc compilation.
3018         * gtk/install-dependencies: Add libevent as a system requirement.
3019         * Scripts/webkitpy/style/checker.py: Added libwebrtc to the list of third
3020         party libraries with reduced style checks.
3021
3022 2018-04-01  Zalan Bujtas  <zalan@apple.com>
3023
3024         [LayoutReloaded] Use containing block's contentBox left edge when the float is to the right.
3025         https://bugs.webkit.org/show_bug.cgi?id=184230
3026
3027         Reviewed by Antti Koivisto.
3028
3029         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3030         (InlineFormattingContext.prototype._mapFloatingPosition):
3031         (InlineFormattingContext):
3032         * LayoutReloaded/test/index.html:
3033         * LayoutReloaded/test/inline-formatting-context-with-floats2.html: Added.
3034
3035 2018-04-01  Zalan Bujtas  <zalan@apple.com>
3036
3037         [LayoutReloaded] Right floating box reduces available line width.
3038         https://bugs.webkit.org/show_bug.cgi?id=184226
3039
3040         Reviewed by Antti Koivisto.
3041
3042         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3043         (InlineFormattingContext.prototype._createNewLine):
3044         * LayoutReloaded/test/index.html:
3045         * LayoutReloaded/test/inline-with-floats-right-left-simple.html: Added.
3046
3047 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3048
3049         [LayoutReloaded] Floating box reduces line with in inline formatting context
3050         https://bugs.webkit.org/show_bug.cgi?id=184223
3051
3052         Reviewed by Antti Koivisto.
3053
3054         * LayoutReloaded/FormattingContext/FloatingContext.js:
3055         (FloatingContext.prototype.left):
3056         (FloatingContext.prototype.right):
3057         (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
3058         (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
3059         (FloatingContext.prototype._mapContentBoxToFormattingRoot):
3060         (FloatingContext.prototype.formattingRoot):
3061         (FloatingContext.prototype._floatingState):
3062         (FloatingContext.prototype._formattingRoot): Deleted.
3063         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3064         (InlineFormattingContext.prototype._createNewLine):
3065         (InlineFormattingContext.prototype._mapFloatingPosition):
3066         (InlineFormattingContext):
3067         * LayoutReloaded/FormattingState/FormattingState.js:
3068         (FormattingState.prototype.displayBox):
3069         (FormattingState):
3070         * LayoutReloaded/test/index.html:
3071         * LayoutReloaded/test/inline-formatting-context-with-floats.html: Added.
3072
3073 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3074
3075         [LayoutReloaded] InlineFormattingState should inherit the floating state from its parent formatting state
3076         https://bugs.webkit.org/show_bug.cgi?id=184220
3077
3078         Reviewed by Antti Koivisto.
3079
3080         If the block container box that initiates an inline formatting context also establishes a block context,
3081         create a new float state, otherwise use the existing one.
3082
3083         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3084         (BlockFormattingContext.prototype._contentHeight):
3085         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3086         (InlineFormattingState):
3087         * LayoutReloaded/LayoutState.js:
3088         (LayoutState.prototype.establishedFormattingState):
3089         (LayoutState.prototype.formattingStateForBox):
3090         (LayoutState.prototype.formattingState): Deleted.
3091         * LayoutReloaded/Utils.js:
3092
3093 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3094
3095         [LayoutReloaded] FloatingContext does not need a parent formatting context.
3096         https://bugs.webkit.org/show_bug.cgi?id=184219
3097
3098         Reviewed by Antti Koivisto.
3099
3100         We don't need the formatting context in the FloatingContext now that margins are moved over to Display.Box.
3101         This is in preparation for being able to create a FloatingContext for an inline formatting context,
3102         when the inline context actually inherits the floating state from its formatting root.
3103
3104         * LayoutReloaded/FormattingContext/FloatingContext.js:
3105         (FloatingContext):
3106         (FloatingContext.prototype._availableSpace):
3107         (FloatingContext.prototype._adjustedFloatingPosition):
3108         (FloatingContext.prototype._addFloatingBox):
3109         (FloatingContext.prototype._formattingContext): Deleted.
3110         * LayoutReloaded/FormattingContext/FormattingContext.js:
3111         (FormattingContext):
3112
3113 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3114
3115         [LayoutReloaded] Do not clone Display.Box for FloatingState stacks.
3116         https://bugs.webkit.org/show_bug.cgi?id=184218
3117
3118         Reviewed by Antti Koivisto.
3119
3120         Now that Display.Box is in a tree context, we can't just clone it for the purpose of caching its absolute position.
3121
3122         * LayoutReloaded/DisplayTree/Box.js:
3123         (Display.Box.prototype.clone): Deleted.
3124         * LayoutReloaded/FormattingContext/FloatingContext.js:
3125         (FloatingContext.prototype._positionForFloating):
3126         (FloatingContext.prototype._moveToNextVerticalPosition):
3127         (FloatingContext.prototype._availableSpace):
3128         (FloatingContext.prototype._findFloatingAtVerticalPosition):
3129         (FloatingContext.prototype._adjustedFloatingPosition):
3130         (FloatingContext.prototype._bottom):
3131         (FloatingContext.prototype._addFloatingBox):
3132         (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
3133         (FloatingContext.prototype._mapDisplayMarginBoxToFormattingRoot):
3134         * LayoutReloaded/FormattingState/FloatingState.js:
3135         (FloatingState.prototype.addFloating):
3136
3137 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3138
3139         [LayoutReloaded] Remove all FormattingContext::absolute*Box functions.
3140         https://bugs.webkit.org/show_bug.cgi?id=184215
3141
3142         Reviewed by Antti Koivisto.
3143
3144         Use Display.Box instead.
3145
3146         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3147         (BlockFormattingContext.prototype._computeOutOfFlowPosition):
3148         * LayoutReloaded/FormattingContext/FloatingContext.js:
3149         (FloatingContext.prototype._availableSpace):
3150         (FloatingContext.prototype._adjustedFloatingPosition):
3151         (FloatingContext.prototype._mapBorderBoxToFormattingRoot):
3152         (FloatingContext.prototype._mapContentBoxToFormattingRoot):
3153         * LayoutReloaded/FormattingContext/FormattingContext.js:
3154         (FormattingContext.prototype.absoluteBorderBox): Deleted.
3155         (FormattingContext.prototype.absolutePaddingBox): Deleted.
3156         (FormattingContext.prototype.absoluteContentBox): Deleted.
3157         (FormattingContext.prototype._toAbsolutePosition): Deleted.
3158         (FormattingContext.prototype._toRootAbsolutePosition): Deleted.
3159         * LayoutReloaded/Utils.js:
3160         (Utils.mapPosition):
3161         (Utils.marginBox):
3162         (Utils.borderBox):
3163         (Utils.contentBox):
3164
3165 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3166
3167         [LayoutReloaded] Remove FormattingContext::absoluteMarginBox
3168         https://bugs.webkit.org/show_bug.cgi?id=184213
3169
3170         Reviewed by Antti Koivisto.
3171
3172         Display.Box already has the margin values.
3173
3174         * LayoutReloaded/FormattingContext/FloatingContext.js:
3175         (FloatingContext.prototype._positionForFloating):
3176         (FloatingContext.prototype._addFloatingBox):
3177         (FloatingContext.prototype._mapMarginBoxToFormattingRoot):
3178         (FloatingContext.prototype._formattingRoot):
3179         * LayoutReloaded/FormattingContext/FormattingContext.js:
3180         (FormattingContext.prototype.absoluteMarginBox): Deleted.
3181         * LayoutReloaded/Utils.js:
3182         (Utils.marginBox):
3183
3184 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3185
3186         [layoutReloaded] Introduce margin to Display.Box
3187         https://bugs.webkit.org/show_bug.cgi?id=184212
3188
3189         Reviewed by Antti Koivisto.
3190
3191         This is in preparation for moving margin box out of formatting context to Display.Box.
3192
3193         * LayoutReloaded/DisplayTree/Box.js:
3194         (Display.Box):
3195         (Display.Box.prototype.setRect):
3196         (Display.Box.prototype.setTopLeft):
3197         (Display.Box.prototype.setTop):
3198         (Display.Box.prototype.setLeft):
3199         (Display.Box.prototype.setSize):
3200         (Display.Box.prototype.setWidth):
3201         (Display.Box.prototype.setHeight):
3202         (Display.Box.prototype.width):
3203         (Display.Box.prototype.setMarginTop):
3204         (Display.Box.prototype.setMarginLeft):
3205         (Display.Box.prototype.setMarginBottom):
3206         (Display.Box.prototype.setMarginRight):
3207         (Display.Box.prototype.marginTop):
3208         (Display.Box.prototype.marginLeft):
3209         (Display.Box.prototype.marginBottom):
3210         (Display.Box.prototype.marginRight):
3211         (Display.Box.prototype.marginBox):
3212         * LayoutReloaded/FormattingContext/FormattingContext.js:
3213         (FormattingContext.prototype.absoluteMarginBox):
3214         (FormattingContext.prototype._addToLayoutQueue):
3215         * LayoutReloaded/FormattingState/FormattingState.js:
3216         (FormattingState.prototype.createDisplayBox):
3217
3218 2018-03-31  Zalan Bujtas  <zalan@apple.com>
3219
3220         [LayoutReloaded] Add tree context to Display.Box
3221         https://bugs.webkit.org/show_bug.cgi?id=184211
3222
3223         Reviewed by Antti Koivisto.
3224
3225         This is preparation for using the Display.Box tree to resolve absolute coordinates.
3226
3227         * LayoutReloaded/DisplayTree/Box.js:
3228         (Display.Box):
3229         (Display.Box.prototype.setParent):
3230         (Display.Box.prototype.setNextSibling):
3231         (Display.Box.prototype.setPreviousSibling):
3232         (Display.Box.prototype.setFirstChild):
3233         (Display.Box.prototype.setLastChild):
3234         (Display.Box.prototype.parent):
3235         (Display.Box.prototype.nextSibling):
3236         (Display.Box.prototype.previousSibling):
3237         (Display.Box.prototype.firstChild):
3238         (Display.Box.prototype.lastChild):
3239         * LayoutReloaded/FormattingState/FormattingState.js:
3240         (FormattingState.prototype.createDisplayBox):
3241
3242 2018-03-30  Ryosuke Niwa  <rniwa@webkit.org>
3243
3244         Copying a list from Microsoft Word to TinyMCE fails when mso-list is the first property
3245         https://bugs.webkit.org/show_bug.cgi?id=182938
3246         <rdar://problem/37683007>
3247
3248         Reviewed by Wenson Hsieh.
3249
3250         Added more assertions to PasteHTML.PreservesMSOList for preserving an inline style which starts with mso-list
3251         or the one which line-breaks right before it.
3252
3253         * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
3254         * TestWebKitAPI/Tests/WebKitCocoa/mso-list.html:
3255
3256 2018-03-29  Ryosuke Niwa  <rniwa@webkit.org>
3257
3258         Copying a list from Microsoft Word to TinyMCE fails when mso-list is on tags other than P
3259         https://bugs.webkit.org/show_bug.cgi?id=182954
3260         <rdar://problem/37713141>
3261
3262         Reviewed by Wenson Hsieh.
3263
3264         Added a test case for a HTML generated by Microsoft Word which sets mso-list on h4.
3265
3266         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3267         * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
3268         * TestWebKitAPI/Tests/WebKitCocoa/mso-list-compat-mode.html: Fixed the file path.
3269         * TestWebKitAPI/Tests/WebKitCocoa/mso-list-on-h4.html: Added.
3270
3271 2018-03-29  Ross Kirsling  <ross.kirsling@sony.com>
3272
3273         run-jsc-benchmarks should recognize Windows-style build directory structure.
3274         https://bugs.webkit.org/show_bug.cgi?id=184117
3275
3276         Reviewed by Yusuke Suzuki.
3277
3278         * Scripts/run-jsc-benchmarks:
3279         Allow not only bin/jsc but also bin64/jsc.exe.
3280
3281 2018-03-29  Zalan Bujtas  <zalan@apple.com>
3282
3283         [LayoutReloaded] Decouple formatting state and context lifetime.
3284         https://bugs.webkit.org/show_bug.cgi?id=184136
3285
3286         Reviewed by Antti Koivisto.
3287
3288         FormattingContext is about the layout logic. We don't need to hold on to it.
3289
3290         * LayoutReloaded/FormattingContext/FloatingContext.js:
3291         (FloatingContext):
3292         (FloatingContext.prototype.computePosition):
3293         (FloatingContext.prototype._positionForClear):
3294         (FloatingContext.prototype._computePositionToAvoidIntrudingFloats):
3295         (FloatingContext.prototype._addFloatingBox):
3296         (FloatingContext.prototype._formattingContext):
3297         (FloatingContext.prototype._formattingState):
3298         * LayoutReloaded/FormattingContext/FormattingContext.js:
3299         (FormattingContext):
3300         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3301         (BlockFormattingState):
3302         * LayoutReloaded/FormattingState/FloatingState.js:
3303         (FloatingState):
3304         (FloatingState.prototype.addFloating):
3305         (FloatingState.prototype.formattingState):
3306         (FloatingState.prototype.formattingContext): Deleted.
3307         * LayoutReloaded/FormattingState/FormattingState.js:
3308         (FormattingState):
3309         (FormattingState.prototype.formattingContext): Deleted.
3310         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3311         (InlineFormattingState):
3312         * LayoutReloaded/LayoutState.js:
3313         (LayoutState.prototype.layout):
3314         (LayoutState.prototype.formattingContext):
3315
3316 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3317
3318         [LayoutReloaded] Introduce FloatingState.
3319         https://bugs.webkit.org/show_bug.cgi?id=184126
3320
3321         Reviewed by Antti Koivisto.
3322
3323         It holds the floating state (left/right floating stack) for a given formatting state (Block or Inline).
3324         (FormattingState -> FloatingState/FormattingContext -> FloatingContext)
3325
3326         * LayoutReloaded/FormattingContext/BlockFormatting/BlockFormattingContext.js:
3327         (BlockFormattingContext):
3328         * LayoutReloaded/FormattingContext/FloatingContext.js:
3329         (FloatingContext):
3330         (FloatingContext.prototype.computePosition):
3331         (FloatingContext.prototype.bottom):
3332         (FloatingContext.prototype._positionForFloating):
3333         (FloatingContext.prototype._positionForClear):
3334         (FloatingContext.prototype._findInnerMostLeftAndRight):
3335         (FloatingContext.prototype._isEmpty):
3336         (FloatingContext.prototype._floatingState):
3337         (FloatingContext.prototype._formattingContext):
3338         (FloatingContext.prototype._lastFloating):
3339         (FloatingContext.prototype._leftFloatingStack):
3340         (FloatingContext.prototype._rightFloatingStack):
3341         (FloatingContext.prototype._addFloating): Deleted.
3342         * LayoutReloaded/FormattingContext/FormattingContext.js:
3343         (FormattingContext):
3344         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3345         (InlineFormattingContext):
3346         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3347         (BlockFormattingState):
3348         * LayoutReloaded/FormattingState/FloatingState.js: Copied from Tools/LayoutReloaded/FormattingState/InlineFormattingState.js.
3349         (FloatingState):
3350         (FloatingState.prototype.addFloating):
3351         (FloatingState.prototype.leftFloatingStack):
3352         (FloatingState.prototype.rightFloatingStack):
3353         (FloatingState.prototype.lastFloating):
3354         (FloatingState.prototype.formattingContext):
3355         * LayoutReloaded/FormattingState/FormattingState.js:
3356         (FormattingState):
3357         (FormattingState.prototype.floatingState):
3358         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3359         (InlineFormattingState):
3360         * LayoutReloaded/test/index.html:
3361
3362 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3363
3364         [LayoutReloaded] Convert floating left/right stack display boxes absolute to the formatting context's root.
3365         https://bugs.webkit.org/show_bug.cgi?id=184123
3366
3367         Reviewed by Antti Koivisto.
3368
3369         1. The left/right floating array should hold the Display.Box (and not the Layout.Box)
3370         2. Clone the Display.Box and convert its rect absolute to the formatting context's root so that we
3371         don't have to keep converting the coordinates while computing the positions. 
3372
3373         * LayoutReloaded/DisplayTree/Box.js:
3374         (Display.Box.prototype.clone):
3375         (Display.Box.prototype.setRect):
3376         * LayoutReloaded/FormattingContext/FloatingContext.js:
3377         (FloatingContext.prototype.computePosition):
3378         (FloatingContext.prototype._positionForFloating):
3379         (FloatingContext.prototype._addFloating):
3380         (FloatingContext.prototype._moveToNextVerticalPosition):
3381         (FloatingContext.prototype._availableSpace):
3382         (FloatingContext.prototype._findFloatingAtVerticalPosition):
3383         (FloatingContext.prototype._adjustedFloatingPosition):
3384         (FloatingContext.prototype._bottom):
3385
3386 2018-03-28  Chris Dumez  <cdumez@apple.com>
3387
3388         Unreviewed iOS build fix after r230060.
3389
3390         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3391
3392 2018-03-28  Chris Dumez  <cdumez@apple.com>
3393
3394         Unreviewed, disable new window.open() API tests introduced in r230051 on iOS.
3395
3396         I will investigate if this is testable on iOS.
3397
3398         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3399
3400 2018-03-28  Chris Dumez  <cdumez@apple.com>
3401
3402         Do process swap when opening a cross-origin URL via window.open(url, '_blank', 'noopener')
3403         https://bugs.webkit.org/show_bug.cgi?id=183962
3404         <rdar://problem/38817833>
3405
3406         Reviewed by Brady Eidson.
3407
3408         Add API test coverage.
3409
3410         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3411         (-[PSONUIDelegate initWithNavigationDelegate:]):
3412         (-[PSONUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
3413
3414 2018-03-28  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
3415
3416         Add Carlos Eduardo Ramalho as contributor
3417         https://bugs.webkit.org/show_bug.cgi?id=184082
3418
3419         Reviewed by Carlos Alberto Lopez Perez.
3420
3421         * Scripts/webkitpy/common/config/contributors.json:
3422
3423 2018-03-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3424
3425         [Extra zoom mode] Make boosted text autosizing values switchable at runtime
3426         https://bugs.webkit.org/show_bug.cgi?id=184092
3427         <rdar://problem/38939917>
3428
3429         Reviewed by Tim Horton.
3430
3431         Add an API test to check that toggling the boosted text autosizing preference causes text to lay out larger than
3432         it would with normal text autosizing.
3433
3434         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3435         * TestWebKitAPI/Tests/ios/TextAutosizingBoost.mm: Added.
3436         (TEST):
3437
3438 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3439
3440         [LayoutReloaded] InlineFormattingContext::_handleText should support runs on multiple lines
3441         https://bugs.webkit.org/show_bug.cgi?id=184101
3442
3443         Reviewed by Antti Koivisto.
3444
3445         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3446         (InlineFormattingContext):
3447         (InlineFormattingContext.prototype.layout):
3448         (InlineFormattingContext.prototype._handleText):
3449         (InlineFormattingContext.prototype._createNewLine):
3450         * LayoutReloaded/test/index.html:
3451         * LayoutReloaded/test/simple-multiline-text.html: Added.
3452
3453 2018-03-28  Zalan Bujtas  <zalan@apple.com>
3454
3455         [LayoutReloaded] Add InlineTextBreaker::skipLeadingWhitespaceIfNeeded
3456         https://bugs.webkit.org/show_bug.cgi?id=184099
3457
3458         Reviewed by Antti Koivisto.
3459
3460         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3461
3462 2018-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3463
3464         [GLIB] Add JSCWeakValue to JavaScriptCore GLib API
3465         https://bugs.webkit.org/show_bug.cgi?id=184041
3466
3467         Reviewed by Michael Catanzaro.
3468
3469         Add test case for JSCWeakValue.
3470
3471         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3472         (weakValueClearedCallback):
3473         (testJSCWeakValue):
3474         (main):
3475
3476 2018-03-27  Zalan Bujtas  <zalan@apple.com>
3477
3478         [LayoutReloaded] Start using window.collectTextRuns() to layout text lines in inline formatting context
3479         https://bugs.webkit.org/show_bug.cgi?id=184070
3480
3481         Reviewed by Antti Koivisto.
3482
3483         * LayoutReloaded/FormattingContext/InlineFormatting/InlineFormattingContext.js:
3484         (InlineFormattingContext.prototype._handleText):
3485         (InlineFormattingContext.prototype._commitLine):
3486         * LayoutReloaded/FormattingContext/InlineFormatting/Line.js:
3487         (Line.prototype.addTextLineBox):
3488         (Line):
3489         (Line.prototype.addLineBox): Deleted.
3490         * LayoutReloaded/FormattingState/BlockFormattingState.js:
3491         (BlockFormattingState):
3492         * LayoutReloaded/FormattingState/FormattingState.js:
3493         (FormattingState.prototype.displayBox):
3494         (FormattingState):
3495         (FormattingState.prototype._setFormattingContext): Deleted.
3496         * LayoutReloaded/FormattingState/InlineFormattingState.js:
3497         (InlineFormattingState):
3498         * LayoutReloaded/LayoutTree/Text.js:
3499         (Text.prototype.content):
3500         * LayoutReloaded/Utils.js:
3501         (Utils.textRuns):
3502         (Utils.textRunsForLine):
3503         (Utils._dumpLines.):
3504         (Utils._dumpLines):
3505         * LayoutReloaded/test/simple-inline-text.html:
3506
3507 2018-03-27  Eric Carlson  <eric.carlson@apple.com>
3508
3509         https://bugs.webkit.org/show_bug.cgi?id=183876
3510         <rdar://problem/38726459>
3511         
3512         Unreviewed, fix for the test added in r229995 in the iOS simulator.
3513
3514         * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm:
3515         (TestWebKitAPI::AVFoundationPref::testWithPreference):
3516
3517 2018-03-27  Jiewen Tan  <jiewen_tan@apple.com>
3518
3519         [WebAuthN] Implement authenticatorGetAssertion
3520         https://bugs.webkit.org/show_bug.cgi?id=183881
3521         <rdar://problem/37258628>
3522
3523         Reviewed by Brent Fulgham.
3524
3525         * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm:
3526         (TestWebKitAPI::getTestKey):
3527         (TestWebKitAPI::addTestKeyToKeychain):
3528         (TestWebKitAPI::LAEvaluatePolicyFailedSwizzler::evaluatePolicyFailed):
3529         (TestWebKitAPI::LAEvaluatePolicyPassedSwizzler::evaluatePolicyPassed):
3530         (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::LAEvaluateAccessControlFailedSwizzler):
3531         (TestWebKitAPI::LAEvaluateAccessControlFailedSwizzler::evaluateAccessControlFailed):
3532         (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::LAEvaluateAccessControlPassedSwizzler):
3533         (TestWebKitAPI::LAEvaluateAccessControlPassedSwizzler::evaluateAccessControlPassed):
3534         (TestWebKitAPI::TEST):
3535
3536 2018-03-27  Brian Burg  <bburg@apple.com>
3537
3538         REGRESSION(r229937): WebDriver tests no longer run, test runner hangs when launching wpt web server
3539         https://bugs.webkit.org/show_bug.cgi?id=184056
3540         <rdar://problem/38925058>
3541
3542         Reviewed by Timothy Hatcher and Youenn Fablet.
3543
3544         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
3545         (WebDriverW3CWebServer.start):
3546         The config key used in upstream WPT has changed from 'host' to 'browser_host'.
3547
3548 2018-03-27  Timothy Hatcher  <timothy@hatcher.name>
3549
3550         Update my email address in contributors.json and scripts
3551         https://bugs.webkit.org/show_bug.cgi?id=184054
3552
3553         * Scripts/validate-committer-lists:
3554         (CommitterListFromGit):
3555         * Scripts/webkitpy/common/config/contributors.json:
3556
3557 2018-03-27  Eric Carlson  <eric.carlson@apple.com>
3558
3559         Make AVFoundationEnabled preference available on iOS
3560         https://bugs.webkit.org/show_bug.cgi?id=183876
3561         <rdar://problem/38726459>
3562
3563         Reviewed by Youenn Fablet.
3564
3565         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3566         * TestWebKitAPI/Tests/WebKit/video.html: Added.
3567         * TestWebKitAPI/Tests/WebKitCocoa/AVFoundationPreference.mm: Added.
3568         (-[PreferenceTestMessageHandler userContentController:didReceiveScriptMessage:]):
3569         (TestWebKitAPI::AVFoundationPref::SetUp):
3570         (TestWebKitAPI::AVFoundationPref::testWithPreference):
3571         (TestWebKitAPI::TEST_F):
3572
3573 2018-03-26  Brent Fulgham  <bfulgham@apple.com>
3574
3575         Warn against cookie access in the WebContent process using ProcessPrivilege assertions
3576         https://bugs.webkit.org/show_bug.cgi?id=183911
3577         <rdar://problem/38762306>
3578
3579         Reviewed by Youenn Fablet.
3580
3581         Add a set of ProcessPrivilege assertions to enforce the rule that the WebContent process
3582         should never call Cookie API directly. That should only happen in the Networking or
3583         UIProcess. 
3584
3585         * DumpRenderTree/mac/DumpRenderTree.mm:
3586         (DumpRenderTreeMain):
3587         * TestWebKitAPI/TestsController.cpp:
3588         (TestWebKitAPI::TestsController::TestsController):
3589         * WebKitTestRunner/TestController.cpp:
3590         (WTR::TestController::initialize):
3591
3592 2018-03-26  Zalan Bujtas  <zalan@apple.com>
3593
3594         [LayoutReloaded] Add InlineText DOM interface and dependencies
3595         https://bugs.webkit.org/show_bug.cgi?id=184010
3596
3597         Reviewed by Antti Koivisto.
3598
3599         to help inline text layout.
3600
3601         * LayoutReloaded/misc/LayoutReloadedWebKit.patch:
3602
3603 2018-03-25  Carlos Garcia Campos  <cgarcia@igalia.com>
3604
3605         [GTK][WPE] Add API to convert between DOM and JSCValue
3606         https://bugs.webkit.org/show_bug.cgi?id=183448
3607
3608         Reviewed by Michael Catanzaro.
3609
3610         Add unit tests for non-deprecated DOM API and switch existing tests to use non-deprecated API except for the
3611         ones that test the deprecated API.
3612
3613         * TestWebKitAPI/Tests/WebKitGLib/DOMElementTest.cpp: Added.
3614         (DOMElementTest::create):
3615         (DOMElementTest::testAutoFill):
3616         (registerTests):
3617         * TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp: Added.
3618         (WebKitWebEditorTest::create):
3619         (WebKitWebEditorTest::selectionChangedCallback):
3620         (WebKitWebEditorTest::testSelectionchanged):
3621         (registerTests):
3622         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
3623         (WebKitFrameTest::testJavaScriptValues):
3624         (registerTests):
3625         * TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp: Renamed from Source/WebKit/WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMObjectPrivate.h.
3626         (testWebKitDOMElementAutoFill):
3627         (beforeAll):
3628         (afterAll):
3629         * TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKitGtk/TestEditor.cpp.
3630         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
3631         (testWebKitFrameJavaScriptValues):
3632         (beforeAll):
3633         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
3634         (inputElementIsUserEdited):
3635         (testWebExtensionInputElementIsUserEdited):
3636         (testWebExtensionFormSubmissionSteps):
3637         (beforeAll):
3638         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3639         (documentLoadedCallback):
3640         (serializeNode):
3641         (contextMenuCallback):
3642         (consoleMessageSentCallback):
3643         (formControlsAssociatedCallback):
3644         (willSubmitFormCallback):
3645         (pageCreatedCallback):
3646         (methodCallCallback):
3647         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
3648         (checkLeaks):
3649         (webProcessTestRunnerFinalize):
3650         (checkLeaksAtExit):
3651         * TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp: