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