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