[WebKitLegacy] Media playback pauses on scroll
[WebKit-https.git] / Tools / ChangeLog
1 2019-01-04  Jer Noble  <jer.noble@apple.com>
2
3         [WebKitLegacy] Media playback pauses on scroll
4         https://bugs.webkit.org/show_bug.cgi?id=192829
5
6         Reviewed by Eric Carlson.
7
8         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9         * TestWebKitAPI/Tests/WebKitCocoa/StopSuspendResumeAllMedia.mm: Added.
10         (TestWebKitAPI::TEST):
11         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm: Added.
12         (-[ScrollingDoesNotPauseMediaDelegate webViewDidFinishLoad:]):
13         (-[ScrollingDoesNotPauseMediaDelegate uiWebView:didCommitLoadForFrame:]):
14         (-[ScrollingDoesNotPauseMediaDelegate handleEvent:]):
15         (TestWebKitAPI::TEST):
16
17 2019-01-04  Chris Dumez  <cdumez@apple.com>
18
19         Add support for toggling device orientation API support per site
20         https://bugs.webkit.org/show_bug.cgi?id=193143
21         <rdar://problem/46605724>
22
23         Reviewed by Alex Christensen.
24
25         Add API test coverage.
26
27         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
28         (-[DataMappingSchemeHandler setTaskHandler:]):
29         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
30         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationEventEnabled:]):
31         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
32         (-[WebsitePoliciesDeviceOrientationDelegate webView:didFinishNavigation:]):
33
34 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
35
36         [ews-build] use svn-apply script to apply the patches
37         https://bugs.webkit.org/show_bug.cgi?id=193138
38
39         Reviewed by Lucas Forschler.
40
41         * BuildSlaveSupport/ews-build/factories.py:
42         (Factory.__init__): Add the ApplyPatch step.
43         * BuildSlaveSupport/ews-build/steps.py:
44         (CheckOutSource): Added step name.
45         (CheckOutSource.__init__): Used alwaysUseLatest so that it doesn't apply patch.
46         (ApplyPatch): Build step to apply patch using svn-apply script.
47         (UnApplyPatchIfRequired):
48         (UnApplyPatchIfRequired.__init__): Deleted, since the alwaysUseLatest parameter is now in base class.
49
50 2019-01-04  Alex Christensen  <achristensen@webkit.org>
51
52         Deprecate WKContextCreate
53         https://bugs.webkit.org/show_bug.cgi?id=193118
54
55         Reviewed by Brady Eidson.
56
57         * MiniBrowser/win/WebKitBrowserWindow.cpp:
58         (WebKitBrowserWindow::WebKitBrowserWindow):
59         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
60         (TestWebKitAPI::TEST):
61         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
62         (TestWebKitAPI::TEST):
63         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
64         (TestWebKitAPI::TEST):
65         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
66         (TestWebKitAPI::TEST):
67         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
68         (TestWebKitAPI::TEST):
69         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
70         (TestWebKitAPI::TEST):
71         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
72         (TestWebKitAPI::TEST):
73         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
74         (TestWebKitAPI::TEST):
75         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
76         (TestWebKitAPI::TEST):
77         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
78         (TestWebKitAPI::TEST):
79         * TestWebKitAPI/Tests/WebKit/Find.cpp:
80         (TestWebKitAPI::TEST):
81         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
82         (TestWebKitAPI::TEST):
83         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
84         (TestWebKitAPI::TEST):
85         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
86         (TestWebKitAPI::TEST):
87         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
88         (TestWebKitAPI::TEST):
89         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
90         (TestWebKitAPI::TEST):
91         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
92         (TestWebKitAPI::TEST):
93         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
94         (TestWebKitAPI::TEST):
95         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
96         (TestWebKitAPI::loadAlternateHTMLString):
97         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
98         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
99         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
100         (TestWebKitAPI::buildAndPerformTest):
101         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
102         (TestWebKitAPI::TEST):
103         * TestWebKitAPI/Tests/WebKit/NavigationClientDefaultCrypto.cpp:
104         (TestWebKitAPI::TEST):
105         * TestWebKitAPI/Tests/WebKit/PageGroup.cpp:
106         (TestWebKitAPI::TEST):
107         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
108         (TestWebKitAPI::TEST):
109         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
110         (TestWebKitAPI::TEST):
111         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
112         (TestWebKitAPI::TEST):
113         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
114         (TestWebKitAPI::TEST):
115         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
116         (TestWebKitAPI::TEST):
117         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
118         (TestWebKitAPI::TEST):
119         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
120         (TestWebKitAPI::TEST):
121         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
122         (TestWebKitAPI::TEST):
123         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
124         (TestWebKitAPI::TEST):
125         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
126         (TestWebKitAPI::TEST):
127         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
128         (TestWebKitAPI::TEST):
129         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
130         (TestWebKitAPI::TEST):
131         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
132         (TestWebKitAPI::TEST):
133         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
134         (TestWebKitAPI::TEST):
135         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
136         (TestWebKitAPI::TEST):
137         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
138         (TestWebKitAPI::TEST):
139         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
140         (TestWebKitAPI::TEST):
141         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
142         (TestWebKitAPI::TEST):
143         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
144         (TestWebKitAPI::TEST):
145         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
146         (TestWebKitAPI::TEST):
147         * TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp:
148         (TestWebKitAPI::TEST):
149         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
150         (TestWebKitAPI::TEST):
151         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
152         (TestWebKitAPI::TEST):
153         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
154         (WebKit2_CommandBackForwardTestWKView::SetUp):
155         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
156         (TestWebKitAPI::TEST):
157         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
158         (TestWebKitAPI::TEST):
159         * TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm:
160         (TestWebKitAPI::TEST):
161         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
162         (TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
163
164 2019-01-03  Matt Rajca  <mrajca@apple.com>
165
166         Make DidPlayMediaPreventedFromPlaying autoplay event more generic.
167         https://bugs.webkit.org/show_bug.cgi?id=193128
168         rdar://34554231
169
170         Reviewed by Jer Noble.
171
172         Today, the "DidPlayMediaPreventedFromPlaying" autoplay event is only sent for
173         media prevented from autoplaying. It could be generalized to a "DidPlayMediaWithUserGesture"
174         event along with a flag that indicates whether or not autoplay was actually prevented.
175
176         Tests: existing API tests were updated to reflect the new names. New API tests
177         were added for the new case in which the "DidPlayMediaWithUserGesture" event is sent.
178
179         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
180         * TestWebKitAPI/Tests/WebKit/long-test.mp4: Added.
181         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
182         (TEST):
183         * TestWebKitAPI/Tests/WebKitCocoa/audio-with-play-button.html: Added.
184         * TestWebKitAPI/Tests/WebKitCocoa/video-with-play-button.html: Added.
185
186 2019-01-04  Chris Dumez  <cdumez@apple.com>
187
188         [PSON] Calling history.back() from inside the load event handler prevents process-swapping
189         https://bugs.webkit.org/show_bug.cgi?id=193120
190
191         Reviewed by Alex Christensen.
192
193         Add API test coverage.
194
195         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
196
197 2019-01-04  Chris Dumez  <cdumez@apple.com>
198
199         Crash under WebProcessPool::addSuspendedPage()
200         https://bugs.webkit.org/show_bug.cgi?id=193110
201
202         Reviewed by Youenn Fablet.
203
204         Add API test coverage.
205
206         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
207
208 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
209
210         [ews-build] Check patch relevance before applying the patch
211         https://bugs.webkit.org/show_bug.cgi?id=193102
212
213         Reviewed by Lucas Forschler.
214
215         * BuildSlaveSupport/ews-build/factories.py:
216         (Factory.__init__): Moved CheckPatchRelevance step to base class.
217
218 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
219
220         [ews-build] Check patch relevance step should print patch id
221         https://bugs.webkit.org/show_bug.cgi?id=193137
222
223         Reviewed by Lucas Forschler.
224
225         * BuildSlaveSupport/ews-build/steps.py:
226         (CheckPatchRelevance.start): Update the status to include patch id.
227
228 2019-01-04  Jonathan Bedard  <jbedard@apple.com>
229
230         webkitpy: Increase simulator teardown timeout
231         https://bugs.webkit.org/show_bug.cgi?id=193141
232         <rdar://problem/46174217>
233
234         Rubber-stamped by Aakash Jain.
235
236         * Scripts/webkitpy/xcode/simulated_device.py:
237         (SimulatedDeviceManager.tear_down): Use SIMULATOR_BOOT_TIMEOUT.
238
239 2019-01-03  Ross Kirsling  <ross.kirsling@sony.com>
240
241         test262-runner misbehaves when test file YAML has a trailing space
242         https://bugs.webkit.org/show_bug.cgi?id=193053
243
244         Reviewed by Yusuke Suzuki.
245
246         * Scripts/test262/Runner.pm:
247         (parseData):
248         Accept trailing space when parsing a test file's YAML block.
249
250 2019-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
251
252         UserMedia test should use WKPageNavigationClient
253         https://bugs.webkit.org/show_bug.cgi?id=192913
254
255         Reviewed by Youenn Fablet.
256
257         The test currently uses the deprecated WKPageLoaderClient. It should use
258         WKPageNavigationClient instead, which provides the same callback under a similar name.
259
260         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
261         (TestWebKitAPI::TEST):
262
263 2019-01-02  Alex Christensen  <achristensen@webkit.org>
264
265         Homograph with LATIN SMALL LETTER R WITH FISHHOOK
266         https://bugs.webkit.org/show_bug.cgi?id=192944
267
268         Reviewed by Tim Horton.
269
270         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
271         (TestWebKitAPI::TEST):
272
273 2019-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
274
275         Add support for using the current text selection as the find string on iOS
276         https://bugs.webkit.org/show_bug.cgi?id=193034
277         <rdar://problem/45138739>
278
279         Reviewed by Tim Horton.
280
281         Add a new API test to verify that the new WebKit SPI (_stringForFind, _takeFindStringFromSelection:, and
282         _setStringForFind) works as expected.
283
284         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
285         * TestWebKitAPI/Tests/WebKitCocoa/UseSelectionAsFindString.mm: Added.
286
287 2019-01-02  Aakash Jain  <aakash_jain@apple.com>
288
289         [ews-build] Use git on OpenSource EWS bots
290         https://bugs.webkit.org/show_bug.cgi?id=193092
291
292         Reviewed by Lucas Forschler.
293
294         * BuildSlaveSupport/ews-build/steps.py:
295         (CheckOutSource): Use git instead of svn.
296         (CheckOutSource.__init__): Use timeout of 2 hours since the initial checkout might take a long time.
297
298 2019-01-02  Daniel Bates  <dabates@apple.com>
299
300         [lldb-webkit] Remove broken code to print WTF::OptionSet::m_storage
301         https://bugs.webkit.org/show_bug.cgi?id=193023
302
303         Reviewed by Simon Fraser.
304
305         The code to print WTF::OptionSet::m_storage as an item in the set never worked and does
306         not seem meaningful to fix because WTF::OptionSet::m_storage is just the sum of the printed
307         enumerator values. We should just remove this code.
308
309         * lldb/lldb_webkit.py:
310         (WTFOptionSetProvider.has_children):
311         (WTFOptionSetProvider.num_children):
312         (WTFOptionSetProvider.get_child_index):
313         (WTFOptionSetProvider.get_child_at_index):
314
315 2018-12-29  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
316
317         .ycm_extra_conf.py should handle XXXInlines.h
318         https://bugs.webkit.org/show_bug.cgi?id=193055
319
320         Reviewed by Carlos Garcia Campos.
321
322         compile_commands.json database only records flags and options for cpp source files.
323         So, when we open headers, this database does not have any information for that.
324         Our .ycm_extra_conf.py alleviates this by using XXX.cpp's configuration for XXX.h.
325         But this mitigation does not handle XXXInlines.h well since we do not have XXXInlines.cpp.
326         This patch adds support for XXXInlines.h in .ycm_extra_conf.py. When XXXInlines.h is queried,
327         we attempt to find XXX.cpp and use the configuration if it exists.
328
329         * gtk/ycm_extra_conf.py:
330         (getImplementationFilename):
331         (FlagsForFile):
332
333 2018-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
334
335         Unreviewed. Support PHP 7.3 in Debian.
336
337         Add 7.3 to the list of php versions supported in Debian.
338
339         * Scripts/webkitpy/port/base.py:
340         (Port._debian_php_version):
341
342 2018-12-27  Alex Christensen  <achristensen@webkit.org>
343
344         Resurrect Mac CMake build
345         https://bugs.webkit.org/show_bug.cgi?id=192658
346
347         Reviewed by Yusuke Suzuki.
348
349         * DumpRenderTree/PlatformMac.cmake:
350         * MiniBrowser/mac/CMakeLists.txt:
351         * TestWebKitAPI/PlatformMac.cmake:
352
353 2018-12-26  Adrian Perez de Castro  <aperez@igalia.com>
354
355         [Tools] Remove references to Bison and Flex
356         https://bugs.webkit.org/show_bug.cgi?id=193033
357
358         Reviewed by Michael Catanzaro.
359
360         The Bison and Flex tools are not needed anymore since r209883.
361
362         * CygwinDownloader/cygwin-downloader.py:
363         * EWSTools/ubuntu-ews-packages:
364         * Scripts/filter-build-webkit:
365         (shouldIgnoreLine):
366         * gtk/install-dependencies:
367         * wpe/install-dependencies:
368
369 2018-12-22  Carlos Garcia Campos  <cgarcia@igalia.com>
370
371         WebDriver: warn about non existing tests when parsing expectations
372         https://bugs.webkit.org/show_bug.cgi?id=192979
373
374         Reviewed by Michael Catanzaro.
375
376         It's common to update web driver tests and forget updating the test expectations in case of tests removed or
377         renamed.
378
379         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
380         (WebDriverTestRunner.__init__):
381
382 2018-12-21  Chris Dumez  <cdumez@apple.com>
383
384         navigator.userAgent in service workers does not reflect customUserAgent set by client
385         https://bugs.webkit.org/show_bug.cgi?id=192951
386
387         Reviewed by Youenn Fablet.
388
389         Extend API test coverage.
390
391         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
392         (-[SWCustomUserAgentDelegate initWithUserAgent:]):
393         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
394         (-[SWUserAgentMessageHandler initWithExpectedMessage:]):
395         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
396
397 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
398
399         [WebAuthN] userPresence should always be true
400         https://bugs.webkit.org/show_bug.cgi?id=192835
401         <rdar://problem/46538788>
402
403         Reviewed by Brent Fulgham.
404
405         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
406         (TestWebKitAPI::TEST):
407
408 2018-12-19  Simon Fraser  <simon.fraser@apple.com>
409
410         Add support to run-benchmark to use non-default copies of the browser apps
411         https://bugs.webkit.org/show_bug.cgi?id=192905
412         rdar://problem/46845840
413
414         Reviewed by Dewei Zhu.
415         
416         Add support for a --browser-path argument to run-benchmark, which allows you to use
417         a custom app bundle for a given browser (only implemented for Safari at present).
418
419         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
420         (BenchmarkRunner.__init__):
421         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
422         (BrowserDriver.__init__):
423         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver_factory.py:
424         (BrowserDriverFactory.create):
425         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
426         (OSXBrowserDriver._launch_process):
427         (OSXBrowserDriver._launch_process_with_caffeinate): Fix spelling.
428         (OSXBrowserDriver._launch_process_with_caffinate): Deleted.
429         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
430         (OSXChromeCanaryDriver.launch_url):
431         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
432         (OSXFirefoxNightlyDriver.launch_url):
433         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
434         (OSXSafariDriver.__init__):
435         (OSXSafariDriver.launch_url):
436         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
437         (parse_args):
438         (run_benchmark_plan):
439         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
440         (WebServerBenchmarkRunner.__init__):
441         * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py:
442         (FakeBenchmarkRunner.__init__):
443
444 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
445
446         [WebAuthN] Import an APDU coder from Chromium
447         https://bugs.webkit.org/show_bug.cgi?id=192949
448         <rdar://problem/46879933>
449
450         Reviewed by Brent Fulgham.
451
452         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
453         * TestWebKitAPI/Tests/WebCore/ApduTest.cpp: Added.
454         (TestWebKitAPI::TEST):
455
456 2018-12-21  Wenson Hsieh  <wenson_hsieh@apple.com>
457
458         Setting the file wrapper and content type of an attachment to a PDF should update its image
459         https://bugs.webkit.org/show_bug.cgi?id=192984
460         <rdar://problem/46798028>
461
462         Reviewed by Tim Horton.
463
464         Add an API test to verify that setting the file wrapper for a _WKAttachment with an enclosing image element with
465         PDF data correctly updates the image element.
466
467         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
468
469 2018-12-21  Michael Catanzaro  <mcatanzaro@igalia.com>
470
471         Add JSCOnly to bot dashboard
472         https://bugs.webkit.org/show_bug.cgi?id=192964
473
474         Reviewed by Alexey Proskuryakov.
475
476         Apparently we have five JSCOnly test bots and multiple developers working on keeping them in
477         good shape. Sadly, they are hidden bots not exposed in the dashboard. They would be more
478         useful if they were not so secret, so add them.
479
480         There appear to be no build-only bots, so the first column is blank. And of course there are
481         no WebKit1 or WebKit2 bots, because this is JSCOnly, so the second and third columns are
482         blank too. That's OK. This will be the last bot on the dashboard, so it won't look too bad,
483         and there's plenty of room in the final column for all the bots.
484
485         I had a hard time picking a logo to use, because the JavaScript language does not have an
486         official logo. But I believe I've found one that will be satisfactory.
487
488         I will sneak in one bonus change: WPE's EWS queue was missing, and has been added.
489
490         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish.png: Added.
491         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish@2x.png: Added.
492         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
493         (BubbleQueueServer):
494         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
495         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
496         (WebKitBuildbot):
497         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
498         (table.queue-grid tr.platform.linux-jsconly img.logo):
499
500 2018-12-21  Benjamin Poulain  <benjamin@webkit.org>
501
502         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
503         https://bugs.webkit.org/show_bug.cgi?id=192821
504
505         Reviewed by Chris Dumez.
506
507         * DumpRenderTree/mac/DumpRenderTree.mm:
508         (createWebViewAndOffscreenWindow):
509         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
510
511 2018-12-20  Fujii Hironori  <Hironori.Fujii@sony.com>
512
513         [Win][Clang] Fix compilation warnings of DumpRenderTree
514         https://bugs.webkit.org/show_bug.cgi?id=192924
515
516         Reviewed by Alex Christensen.
517
518         * DumpRenderTree/AccessibilityController.h: Added member variable initializations in the class definition.
519         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
520         (AccessibilityController::AccessibilityController): Moved member variable initializations to the class definition.
521         * DumpRenderTree/win/DumpRenderTree.cpp:
522         (dumpHistoryItem): String literals can't be converted non-const type. Use auto for them.
523         (resetWebPreferencesToConsistentValues): Pass a temporal _bstr_t
524         object to the argument of setDefaultTextEncodingName instead of a
525         const string literal.
526         (createWebViewAndOffscreenWindow): Use %lx for HRESULT (aka 'long').
527         (main): Exit if _dup2 fails. Use %lu for'DWORD'(aka 'unsigned long').
528         (setCacheFolder): Deleted.
529         * DumpRenderTree/win/DumpRenderTreeWin.h: Fix class/struct mismatch of FrameLoadDelegate and PolicyDelegate declarations.
530         * DumpRenderTree/win/EditingDelegate.cpp:
531         (dump): Use %d for int.
532         * DumpRenderTree/win/FrameLoadDelegate.cpp: Removed unused variable g_delegateWaitingOnTimer.
533         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
534         (BSTRFromString): Deleted unused function.
535         * DumpRenderTree/win/TestRunnerWin.cpp:
536         (TestRunner::setDatabaseQuota): Pass a temporal _bstr_t object to
537         the arguemnt of setQuota instead of const string literal.
538         * DumpRenderTree/win/WorkQueueItemWin.cpp:
539         (jsStringRefToWString): Deleted unused function.
540
541 2018-12-20  Chris Dumez  <cdumez@apple.com>
542
543         Add API test coverage for customUserAgent client setting and service workers
544         https://bugs.webkit.org/show_bug.cgi?id=192952
545
546         Reviewed by Alex Christensen.
547
548         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
549         (-[SWMessageHandler userContentController:didReceiveScriptMessage:]):
550         (-[SWSchemes webView:startURLSchemeTask:]):
551         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
552         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
553
554 2018-12-20  Chris Dumez  <cdumez@apple.com>
555
556         Use Optional::hasValue() instead of Optional::has_value()
557         https://bugs.webkit.org/show_bug.cgi?id=192948
558
559         Reviewed by Tim Horton.
560
561         * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
562         (TestWebKitAPI::TEST):
563         * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
564         (TestWebKitAPI::TEST):
565         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
566         (TestWebKitAPI::TEST_F):
567
568 2018-12-20  Chris Dumez  <cdumez@apple.com>
569
570         Add style script rule to check for uses of std::optional<>
571         https://bugs.webkit.org/show_bug.cgi?id=192931
572
573         Reviewed by Tim Horton.
574
575         * Scripts/webkitpy/style/checkers/cpp.py:
576         (check_wtf_optional):
577         (check_style):
578
579 2018-12-20  Jiewen Tan  <jiewen_tan@apple.com>
580
581         [WebAuthN] Add a runtime flag for local authenticator
582         https://bugs.webkit.org/show_bug.cgi?id=192792
583         <rdar://problem/46798738>
584
585         Reviewed by Brent Fulgham.
586
587         * DumpRenderTree/TestOptions.cpp:
588         (TestOptions::TestOptions):
589         * DumpRenderTree/TestOptions.h:
590         * DumpRenderTree/mac/DumpRenderTree.mm:
591         (enableExperimentalFeatures):
592         (setWebPreferencesForTestOptions):
593         * WebKitTestRunner/TestController.cpp:
594         (WTR::TestController::resetPreferencesToConsistentValues):
595         (WTR::updateTestOptionsFromTestHeader):
596         * WebKitTestRunner/TestOptions.h:
597         (WTR::TestOptions::hasSameInitializationOptions const):
598
599 2018-12-20  Jonathan Bedard  <jbedard@apple.com>
600
601         webkitpy: Autoinstall package URLs have changed
602         https://bugs.webkit.org/show_bug.cgi?id=192909
603         <rdar://problem/46860359>
604
605         Rubber-stamped by Alexey Proskuryakov.
606
607         PyPi urls have been moved around, we need to update our auto-installed packages.
608
609         We should check for Selenium before asking PyPi for the latest version.
610
611         * Scripts/webkitpy/thirdparty/__init__.py:
612         (AutoinstallImportHook._install_mechanize): Update with new pypi url.
613         (AutoinstallImportHook._install_keyring): Ditto.
614         (AutoinstallImportHook._install_pep8): Ditto.
615         (AutoinstallImportHook._install_mozlog): Ditto.
616         (AutoinstallImportHook._install_mozprocess): Ditto.
617         (AutoinstallImportHook._install_pytest_timeout): Ditto.
618         (AutoinstallImportHook._install_pytest): Ditto.
619         (AutoinstallImportHook._install_pylint): Ditto.
620         (AutoinstallImportHook._install_buildbot): Ditto.
621         (AutoinstallImportHook._install_coverage): Ditto.
622         (AutoinstallImportHook._install_twisted_15_5_0): Ditto.
623         (AutoinstallImportHook._install_selenium): Update with new pypi url, only check
624         for new Selenium if the installed version isn't sufficient.
625         (AutoinstallImportHook.get_latest_pypi_url): Update with new pypi url.
626
627 2018-12-20  Chris Dumez  <cdumez@apple.com>
628
629         Use Optional::valueOr() instead of Optional::value_or()
630         https://bugs.webkit.org/show_bug.cgi?id=192933
631
632         Reviewed by Geoffrey Garen.
633
634         * TestWebKitAPI/Tests/WTF/URLParser.cpp:
635         (TestWebKitAPI::checkURL):
636         (TestWebKitAPI::checkRelativeURL):
637         (TestWebKitAPI::checkURLDifferences):
638         (TestWebKitAPI::checkRelativeURLDifferences):
639         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
640         (TestWebKitAPI::checkURL):
641
642 2018-12-20  Ryan Haddad  <ryanhaddad@apple.com>
643
644         Unreviewed, rolling out r239417.
645
646         Introduced two API test failures on macOS.
647
648         Reverted changeset:
649
650         "<rdar://problem/46194315> macOS: WebKit1 does not handle
651         occlusion changes"
652         https://bugs.webkit.org/show_bug.cgi?id=192821
653         https://trac.webkit.org/changeset/239417
654
655 2018-12-20  Devin Rousso  <drousso@apple.com>
656
657         Web Inspector: UIString should take an optional key and description to aid localization
658         https://bugs.webkit.org/show_bug.cgi?id=153962
659         <rdar://problem/24542505>
660
661         Reviewed by Brian Burg.
662
663         * Scripts/extract-localizable-js-strings:
664
665 2018-12-20  Tim Horton  <timothy_horton@apple.com>
666
667         Unparented WKWebView can't retrieve main resource data for a main frame plugin
668         https://bugs.webkit.org/show_bug.cgi?id=192923
669         <rdar://problem/46859068>
670
671         Reviewed by Wenson Hsieh.
672
673         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
674         * TestWebKitAPI/WebKitCocoa/GetResourceData.mm:
675         Add a test ensuring that both parented and unparented WKWebViews can
676         retrieve main resource data when loading a PDF.
677
678 2018-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
679
680         [GTK][WPE] Bump webkitgtk-test-fonts to 0.0.8
681         https://bugs.webkit.org/show_bug.cgi?id=192852
682
683         Reviewed by Michael Catanzaro.
684
685         EmojiOne font was replaced by Noto Color Emoji.
686
687         * WebKitTestRunner/gtk/fonts/fonts.conf: Use Noto Color Emoji when Apple Color Emoji font family is used in tests.
688         * gtk/jhbuild.modules:
689         * wpe/jhbuild.modules:
690
691 2018-12-19  Chris Dumez  <cdumez@apple.com>
692
693         wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
694         https://bugs.webkit.org/show_bug.cgi?id=192728
695         <rdar://problem/46746779>
696
697         Reviewed by Geoff Garen.
698
699         * DumpRenderTree/*:
700         * MiniBrowser/*:
701         * TestRunnerShared/*:
702         * TestWebKitAPI/*:
703         * WebGPUAPIStructure/*:
704         * WebKitTestRunner/*:
705
706 2018-12-19  Benjamin Poulain  <benjamin@webkit.org>
707
708         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
709         https://bugs.webkit.org/show_bug.cgi?id=192821
710
711         Reviewed by Chris Dumez.
712
713         * DumpRenderTree/mac/DumpRenderTree.mm:
714         (createWebViewAndOffscreenWindow):
715
716 2018-12-19  Alex Christensen  <achristensen@webkit.org>
717
718         Navigations away from the SafeBrowsing interstitial show a flash of old content
719         https://bugs.webkit.org/show_bug.cgi?id=192676
720
721         Reviewed by Chris Dumez.
722
723         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
724         (safeBrowsingView):
725         (TEST):
726         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
727
728 2018-12-19  Adrian Perez de Castro  <aperez@igalia.com>
729
730         [GTK][WPE] Unify TestController::platformRunUntil() and honor condition flag
731         https://bugs.webkit.org/show_bug.cgi?id=192855
732
733         Reviewed by Michael Catanzaro.
734
735         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
736         (WTR::TestController::notifyDone): Use the WPE implementation.
737         (WTR::TestController::platformRunUntil): Use the WPE implementation.
738         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
739         (WTR::TestController::platformRunUntil): Honor the condition flag.
740
741 2018-12-19  Megan Gardner  <megan_gardner@apple.com>
742
743         Allow clients to set the navigator platform
744         https://bugs.webkit.org/show_bug.cgi?id=192735
745
746         Reviewed by Tim Horton.
747
748         Add a test for setting a custom navigator platform.
749
750         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
751         (-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
752         (-[CustomNavigatorPlatformDelegate webView:didFinishNavigation:]):
753
754 2018-12-19  Truitt Savell  <tsavell@apple.com>
755
756         Unreviewed, rolling out r239358.
757
758         Revision caused imported/w3c/web-platform-tests/IndexedDB/ to
759         crash on Debug bots
760
761         Reverted changeset:
762
763         "Clean up IndexedDB files between tests"
764         https://bugs.webkit.org/show_bug.cgi?id=192796
765         https://trac.webkit.org/changeset/239358
766
767 2018-12-18  Wenson Hsieh  <wenson_hsieh@apple.com>
768
769         [iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
770         https://bugs.webkit.org/show_bug.cgi?id=192842
771         <rdar://problem/46823586>
772
773         Reviewed by Tim Horton.
774
775         Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
776         item provider when dragging a rich text selection.
777
778         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
779
780 2018-12-18  David Quesada  <david_quesada@apple.com>
781
782         REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
783         https://bugs.webkit.org/show_bug.cgi?id=192810
784         <rdar://problem/46812536>
785
786         Reviewed by Alex Christensen.
787
788         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
789         (-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
790             After releasing our reference to the web view, wait until the next turn of the runloop
791             before checking that the originatingWebView has been zeroed, since the web view might
792             still be referenced in the autorelease pool. This _WKDownload unit test isn't about
793             testing general memory management of WKWebViews, only that _WKDownload does not retain
794             its web view via the 'originatingWebView' property.
795
796 2018-12-18  Sihui Liu  <sihui_liu@apple.com>
797
798         Clean up IndexedDB files between tests
799         https://bugs.webkit.org/show_bug.cgi?id=192796
800
801         Reviewed by Geoffrey Garen.
802
803         * DumpRenderTree/mac/DumpRenderTree.mm:
804         (runTest):
805         * WebKitTestRunner/TestController.cpp:
806         (WTR::TestController::resetStateToConsistentValues):
807         (WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
808         (WTR::RemoveAllIndexedDatabasesCallback):
809         (WTR::TestController::ClearIndexedDatabases):
810         * WebKitTestRunner/TestController.h:
811
812 2018-12-18  Alex Christensen  <achristensen@webkit.org>
813
814         Fix API test introduced in r239339 on iOS.
815         https://bugs.webkit.org/show_bug.cgi?id=192675
816
817         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
818         (TEST):
819         The iOS implementation of the safe browsing warning is a little different.
820         It does some element creation when it is added to the window so it knows how big it is.
821         To test these elements, we need to simulate adding it to the window.
822         A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
823
824 2018-12-18  Jonathan Bedard  <jbedard@apple.com>
825
826         webkitpy: Ignore device type for test when using --force
827         https://bugs.webkit.org/show_bug.cgi?id=192786
828         <rdar://problem/46794894>
829
830         Reviewed by Daniel Bates.
831
832         It is sometimes the case that a contributor will wish to run a test on a specific device,
833         despite expectations which indicate a test should not be run on that device.
834
835         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
836         (parse_args):
837         * Scripts/webkitpy/port/device_port.py:
838         (DevicePort.default_child_processes): Strip device type information when using --force.
839         (DevicePort.setup_test_run): Only allow incomplete match when using --force.
840
841 2018-12-18  Alex Christensen  <achristensen@webkit.org>
842
843         WKWebView has old URL while displaying SafeBrowsing interstitial, for link-click navigations
844         https://bugs.webkit.org/show_bug.cgi?id=192675
845
846         Reviewed by Geoffrey Garen.
847
848         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
849         (goBack):
850         (TEST):
851         (visitUnsafeSite):
852         (-[SafeBrowsingHelper observeValueForKeyPath:ofObject:change:context:]):
853         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
854
855 2018-12-18  Chris Dumez  <cdumez@apple.com>
856
857         Regression(r239182) SuspendedPage's process reuse for link navigation optimization sometimes broken
858         https://bugs.webkit.org/show_bug.cgi?id=192772
859
860         Reviewed by Antti Koivisto.
861
862         Add API test coverage.
863
864         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
865
866 2018-12-18  Philippe Normand  <pnormand@igalia.com>
867
868         Unreviewed, JHBuild GTK build fix attempt
869
870         * gtk/jhbuild.modules: There's no libffi in this moduleset anymore.
871         There's no ninja module either, it should be provided by the
872         host system.
873
874 2018-12-17  Chris Dumez  <cdumez@apple.com>
875
876         Allow passing nil as session state to [WKWebView _restoreSessionState:]
877         https://bugs.webkit.org/show_bug.cgi?id=192789
878         <rdar://problem/46755277>
879
880         Reviewed by Alex Christensen.
881
882         Add API test coverage.
883
884         * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
885         (TEST):
886
887 2018-12-17  Simon Fraser  <simon.fraser@apple.com>
888
889         Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled
890         https://bugs.webkit.org/show_bug.cgi?id=192780
891         rdar://problem/43394387
892
893         Reviewed by Tim Horton.
894
895         No need to set "AppleFontSmoothing" defaults for WK2.
896
897         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
898         (WTR::InjectedBundle::platformInitialize):
899
900 2018-12-17  Jonathan Bedard  <jbedard@apple.com>
901
902         webkitpy: Handle case where stdout and stderr don't accept unicode
903         https://bugs.webkit.org/show_bug.cgi?id=192775
904         <rdar://problem/46497303>
905
906         Reviewed by Stephanie Lewis.
907
908         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
909         (MeteredStream.write): If unicode cannot be written to the stream, replace unicode
910         characters with '?'.
911         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
912         (RegularTest.test_stream_with_encoding):
913
914 2018-12-17  Daniel Bates  <dabates@apple.com>
915
916         Support concatenating StringView with other string types
917         https://bugs.webkit.org/show_bug.cgi?id=177566
918
919         Reviewed by Darin Adler.
920
921         Add some tests to ensure we do not regress the number of allocations needed when performing
922         string concatenation with string views.
923
924         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
925         (TestWebKitAPI::TEST):
926
927 2018-12-17  Commit Queue  <commit-queue@webkit.org>
928
929         Unreviewed, rolling out r239265 and r239274.
930         https://bugs.webkit.org/show_bug.cgi?id=192765
931
932         unorm_normalize is deprecated, and broke an internal build
933         (Requested by Truitt on #webkit).
934
935         Reverted changesets:
936
937         "[GTK][WPE] Need a function to convert internal URI to display
938         ("pretty") URI"
939         https://bugs.webkit.org/show_bug.cgi?id=174816
940         https://trac.webkit.org/changeset/239265
941
942         "Fix the Apple Internal Mac build with a newer SDK"
943         https://trac.webkit.org/changeset/239274
944
945 2018-12-17  Daniel Bates  <dabates@apple.com>
946
947         Implement UIScriptController::toggleCapsLock() for iOS
948         https://bugs.webkit.org/show_bug.cgi?id=191815
949
950         Reviewed by Andy Estes.
951
952         Add support for toggling the caps lock state in WebKitTestRunner on iOS.
953
954         * TestRunnerShared/UIScriptContext/UIScriptController.h:
955         * WebKitTestRunner/TestController.cpp:
956         (WTR::TestController::resetStateToConsistentValues): Clear the current modifier state
957         before running a test. This ensures that the caps lock state does not persist between
958         tests should a test enable caps lock and not disable it.
959         * WebKitTestRunner/ios/HIDEventGenerator.mm:
960         (hidUsageCodeForCharacter): Map "capsLock" to the Caps Lock key usage code.
961         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
962         (WTR::createUIPhysicalKeyboardEvent): Modified to take the keyboard input flags to use to
963         create the event. Also substituted NSString* for const String& as the data type for the first
964         two parameters to avoid conversions in the implementation of UIScriptController::toggleCapsLock()
965         below.
966         (WTR::UIScriptController::keyDown): Update as needed due to changes to prototype of createUIPhysicalKeyboardEvent().
967         (WTR::UIScriptController::toggleCapsLock): Dispatch a UIEvent to toggle caps lock.
968
969 2018-12-17  Daniel Bates  <dabates@apple.com>
970
971         [iOS] Remove -[WebEvent initWithKeyEventType:...:characterSet:]
972         https://bugs.webkit.org/show_bug.cgi?id=192633
973
974         Reviewed by Wenson Hsieh.
975
976         Update code to use the modern initializer.
977
978         * DumpRenderTree/mac/EventSendingController.mm:
979         (-[EventSendingController keyDown:withModifiers:withLocation:]):
980
981 2018-12-17  Matt Lewis  <jlewis3@apple.com>
982
983         Unreviewed, rolling out r239254.
984
985         This broke the Windows 10 Debug build
986
987         Reverted changeset:
988
989         "Replace many uses of String::format with more type-safe
990         alternatives"
991         https://bugs.webkit.org/show_bug.cgi?id=192742
992         https://trac.webkit.org/changeset/239254
993
994 2018-12-17  David Kilzer  <ddkilzer@apple.com>
995
996         clang-tidy: loop variable is copied but only used as const reference in WebCore, WebKit, Tools
997         <https://webkit.org/b/192751>
998         <rdar://problem/46771623>
999
1000         Reviewed by Daniel Bates.
1001
1002         Change loop variables to const references to avoid unnecessary
1003         copies.
1004
1005         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1006         (-[LocalPasteboard pasteboardItems]):
1007
1008 2018-12-17  Ms2ger  <Ms2ger@igalia.com>
1009
1010         [GTK][WPE] Need a function to convert internal URI to display ("pretty") URI
1011         https://bugs.webkit.org/show_bug.cgi?id=174816
1012
1013         Reviewed by Michael Catanzaro.
1014
1015         Add tests for userVisibleString() and (for GTK and WPE) webkit_uri_for_display().
1016
1017         * TestWebKitAPI/CMakeLists.txt:
1018         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1019         * TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Added.
1020         (TestWebKitAPI::TEST):
1021         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitURIUtilities.cpp: Added.
1022         (testURIForDisplayUnaffected):
1023         (testURIForDisplayAffected):
1024         (beforeAll):
1025         (afterAll):
1026         * TestWebKitAPI/glib/CMakeLists.txt:
1027
1028 2018-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1029
1030         [WPE] Add API to notify about frame displayed view backend callback
1031         https://bugs.webkit.org/show_bug.cgi?id=192224
1032
1033         Reviewed by Michael Catanzaro.
1034
1035         Add a test case to check the new API.
1036
1037         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1038         (testWebViewFrameDisplayed):
1039         (beforeAll):
1040         * wpe/jhbuild.modules: Bump WPEBackend-fdo to 1.1.0.
1041
1042 2018-12-16  Adrian Perez de Castro  <aperez@igalia.com>
1043
1044         Unreviewed build fix after r239253
1045
1046         * gtk/jhbuild.modules: Fix typo in libpsl dependency name.
1047
1048 2018-12-15  Darin Adler  <darin@apple.com>
1049
1050         Use warning-ignoring macros more consistently and simply
1051         https://bugs.webkit.org/show_bug.cgi?id=192743
1052
1053         Reviewed by Mark Lam.
1054
1055         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
1056         (handleEventCarbon): Use ALLOW_DEPRECATED_DECLARATIONS_BEGIN/END.
1057         * DumpRenderTree/mac/TextInputControllerMac.m:
1058         (-[TextInputController interpretKeyEvents:withSender:]): Use
1059         IGNORE_WARNINGS_BEGIN/END.
1060         * WebKitTestRunner/mac/EventSenderProxy.mm:
1061         (WTR::EventSenderProxy::mouseForceClick): Use
1062         IGNORE_NULL_CHECK_WARNINGS_BEGIN/END.
1063         (WTR::EventSenderProxy::startAndCancelMouseForceClick): Ditto.
1064         (WTR::EventSenderProxy::mouseForceDown): Ditto.
1065         (WTR::EventSenderProxy::mouseForceUp): Ditto.
1066         (WTR::EventSenderProxy::mouseForceChanged): Ditto.
1067
1068 2018-12-15  Darin Adler  <darin@apple.com>
1069
1070         Replace many uses of String::format with more type-safe alternatives
1071         https://bugs.webkit.org/show_bug.cgi?id=192742
1072
1073         Reviewed by Mark Lam.
1074
1075         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1076         (WTR::cacheTestRunnerCallback): Use makeString.
1077         * WebKitTestRunner/TestController.cpp:
1078         (WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
1079         (WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
1080
1081 2018-12-15  Adrian Perez de Castro  <aperez@igalia.com>
1082
1083         [WPE][GTK] Add libpsl to JHBuild module sets
1084         https://bugs.webkit.org/show_bug.cgi?id=192740
1085
1086         Reviewed by Michael Catanzaro.
1087
1088         * gtk/jhbuild.modules: Add libpsl module.
1089         * wpe/jhbuild.modules: Ditto.
1090
1091 2018-12-14  Alexey Proskuryakov  <ap@apple.com>
1092
1093         Add a style checker rule for Xcode version macros use
1094         https://bugs.webkit.org/show_bug.cgi?id=192703
1095
1096         Reviewed by Alex Christensen.
1097
1098         * Scripts/webkitpy/style/checkers/cpp.py:
1099         (check_os_version_checks):
1100         (process_line):
1101         (CppChecker):
1102         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1103         (WebKitStyleTest.test_os_version_checks):
1104
1105 2018-12-14  Chris Dumez  <cdumez@apple.com>
1106
1107         [PSON] Process-swapping on a loadHTMLString causes duplicate decidePolicyForNavigationAction delegate calls
1108         https://bugs.webkit.org/show_bug.cgi?id=192704
1109
1110         Reviewed by Geoffrey Garen.
1111
1112         Extend existing API test to reproduce the problem.
1113
1114         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1115
1116 2018-12-14  Chris Dumez  <cdumez@apple.com>
1117
1118         [PSON] WebsitePolicies are lost on process-swap
1119         https://bugs.webkit.org/show_bug.cgi?id=192694
1120         <rdar://problem/46715748>
1121
1122         Reviewed by Brady Eidson.
1123
1124         Extend existing API test to reproduce the issue.
1125
1126         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1127
1128 2018-12-14  Michael Catanzaro  <mcatanzaro@igalia.com>
1129
1130         [GTK] Error writing data to TLS socket in some sites when using the jhbuild
1131         https://bugs.webkit.org/show_bug.cgi?id=192678
1132
1133         Reviewed by Carlos Garcia Campos.
1134
1135         Update our ancient versions of libsoup and glib-networking.
1136
1137         * gtk/install-dependencies:
1138         * gtk/jhbuild.modules:
1139         * gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Removed.
1140         * gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Removed.
1141         * gtk/patches/libsoup-soup-message-io-Do-not-fail-when-there-s-no-empty-li.patch: Removed.
1142         * gtk/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
1143         * wpe/install-dependencies:
1144         * wpe/jhbuild.modules:
1145         * wpe/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
1146
1147 2018-12-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1148
1149         [WPE] Use new view state API from libwpe
1150         https://bugs.webkit.org/show_bug.cgi?id=191906
1151
1152         Reviewed by Žan Doberšek.
1153
1154         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1155         (beforeAll): Enable /webkit/WebKitWebView/page-visibility in WPE.
1156         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1157         (Test::createWebViewBackend): Make the view initially hidden for consistency with GTK+ tests.
1158         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1159         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
1160         (WebViewTest::showInWindow): Add wpe_view_activity_state_visible, wpe_view_activity_state_in_window and
1161         wpe_view_activity_state_focused state flags.
1162         (WebViewTest::hideView): Remove wpe_view_activity_state_visible and wpe_view_activity_state_focused state flags.
1163         * wpe/backends/HeadlessViewBackend.cpp:
1164         (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend): Assume view is always visible, focused and in window.
1165         * wpe/backends/WindowViewBackend.cpp:
1166         (WPEToolingBackends::WindowViewBackend::WindowViewBackend): Update the view state flags depending on state
1167         received in configure callback.
1168         * wpe/jhbuild.modules: Bump libwpe to 1.1.0
1169
1170 2018-12-13  Fujii Hironori  <Hironori.Fujii@sony.com>
1171
1172         [WinCairo][Clang] DLLLauncherMain.cpp: warning: unused function 'prependPath' and 'appleApplicationSupportDirectory'
1173         https://bugs.webkit.org/show_bug.cgi?id=192688
1174
1175         Reviewed by Ross Kirsling.
1176
1177         * win/DLLLauncher/DLLLauncherMain.cpp:
1178         (copyEnvironmentVariable): Moved.
1179         (getStringValue): Enclosed with #if !defined(WIN_CAIRO).
1180         (applePathFromRegistry): Ditto.
1181         (appleApplicationSupportDirectory): Ditto.
1182         (prependPath): Ditto.
1183
1184 2018-12-13  Don Olmstead  <don.olmstead@sony.com>
1185
1186         Unreviewed. Changed my status to a reviewer.
1187
1188         * Scripts/webkitpy/common/config/contributors.json:
1189
1190 2018-12-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1191
1192         [iOS] Support dropping contact card data (public.vcard) in editable content
1193         https://bugs.webkit.org/show_bug.cgi?id=192570
1194         <rdar://problem/35626913>
1195
1196         Reviewed by Tim Horton.
1197
1198         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1199
1200         Add API tests to verify that registering `MKMapItem`s and `CNContact`s to item providers and dropping them in
1201         attachment-enabled rich text editable areas inserts attachment elements (and in the case of `MKMapItem`,
1202         additionally inserts a link).
1203
1204         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1205         (TestWebKitAPI::createMapItemForTesting):
1206         (TestWebKitAPI::createContactItemForTesting):
1207
1208         Add API tests to verify that dropping map items and contact items into rich and plain editable areas behaves as
1209         expected (in the case where a URL is present, e.g. dropping a map item, we insert the URL as an anchor, and when
1210         there is no other suitable representation in the item provider, we do nothing at all, which is the case for the
1211         dropped `CNContact`). Also, add a test to verify that drag and drop can be used to upload these items as .vcf
1212         files.
1213
1214 2018-12-13  Ross Kirsling  <ross.kirsling@sony.com>
1215
1216         Unreviewed -- update my status to "reviewer".
1217
1218         * Scripts/webkitpy/common/config/contributors.json:
1219
1220 2018-12-13  Youenn Fablet  <youenn@apple.com>
1221
1222         On page close, WebPage::m_userMediaPermissionRequestManager is nullified too early
1223         https://bugs.webkit.org/show_bug.cgi?id=192657
1224
1225         Reviewed by Eric Carlson.
1226
1227         Add a test that loads a page registering ondevicechange,
1228         load another page in the same process, closes the first page.
1229         Ensure that the process does not crash in that case.
1230
1231         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1232         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1233         (TestWebKitAPI::TEST):
1234         (TestWebKitAPI::didCrashCallback):
1235         * TestWebKitAPI/Tests/WebKit/ondevicechange.html: Added.
1236
1237 2018-12-13  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
1238
1239         [GStreamer][JHBuild] update-webkit{gtk,wpe}-libs fails with libfdk-2.0.0
1240         https://bugs.webkit.org/show_bug.cgi?id=192643
1241
1242         Reviewed by Philippe Normand.
1243
1244         This problem happens with Arch Linux users which have libfdk-2.0.0
1245         installed (which is anybody with gst-plugins-bad 1.14.4 installed).
1246
1247         The problem has already been solved upstream at
1248         https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/77.
1249
1250         Adding patches while this problem is not in a release yet.
1251
1252         * gstreamer/jhbuild.modules: Add patches to fix build of gst-plugins-bad with libfdk-2.0.0.
1253         * gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Added.
1254         * gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Added.
1255
1256 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1257
1258         [FreeType] Add initial implementation of variation fonts
1259         https://bugs.webkit.org/show_bug.cgi?id=192151
1260
1261         Reviewed by Michael Catanzaro.
1262
1263         Add cairo patch to avoid crashes.
1264
1265         * gtk/jhbuild.modules:
1266         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
1267
1268 2018-12-12  Fujii Hironori  <Hironori.Fujii@sony.com>
1269
1270         [Win][Clang][WebKitLegacy] WebFrame.cpp: warning: delete called on non-final 'WebFrame' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
1271         https://bugs.webkit.org/show_bug.cgi?id=192618
1272
1273         Reviewed by Alex Christensen.
1274
1275         * DumpRenderTree/win/DRTDataObject.cpp:
1276         * DumpRenderTree/win/DRTDataObject.h:
1277         * DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
1278         * DumpRenderTree/win/DRTDropSource.h:
1279         * DumpRenderTree/win/EditingDelegate.h:
1280         * DumpRenderTree/win/PolicyDelegate.h:
1281         * DumpRenderTree/win/UIDelegate.h:
1282
1283 2018-12-12  Ryosuke Niwa  <rniwa@webkit.org>
1284
1285         Make TextInputController.legacyAttributedString take DOM nodes and offsets
1286         https://bugs.webkit.org/show_bug.cgi?id=192653
1287
1288         Reviewed by Wenson Hsieh.
1289
1290         Updated TextInputController.legacyAttributedString to take DOM nodes and offsets instead of
1291         a DOM Range object in preparation to add layout tests for HTMLConverter which crosses
1292         shadow boundaries.
1293
1294         * DumpRenderTree/mac/TextInputControllerMac.m:
1295         (+[TextInputController isSelectorExcludedFromWebScript:]): Updated the selector signature.
1296         (+[TextInputController webScriptNameForSelector:]): Ditto.
1297         (-[TextInputController legacyAttributedString:offset:to:offset:]): Made this function take
1298         start node and offset then end node and offset pairs.
1299
1300 2018-12-12  Alex Christensen  <achristensen@webkit.org>
1301
1302         Implement safe browsing in WebKit on WatchOS
1303         https://bugs.webkit.org/show_bug.cgi?id=192641
1304         <rdar://problem/46376188>
1305
1306         Reviewed by Geoff Garen.
1307
1308         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1309         (-[SafeBrowsingNavigationDelegate _webViewDidShowSafeBrowsingWarning:]):
1310         (safeBrowsingView):
1311         Add a test that the new delegate callback is called.
1312
1313 2018-12-12  Michael Catanzaro  <mcatanzaro@igalia.com>
1314
1315         Unreviewed manual rollout of r239100-r239102 and r239116
1316         https://bugs.webkit.org/show_bug.cgi?id=192151
1317         <rdar://problem/46655586>
1318
1319         * gtk/jhbuild.modules:
1320         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Removed.
1321
1322 2018-12-12  Commit Queue  <commit-queue@webkit.org>
1323
1324         Unreviewed, rolling out r239103.
1325         https://bugs.webkit.org/show_bug.cgi?id=192627
1326
1327         It broke the built because it depends on another patch that
1328         didn't land yet (Requested by KaL on #webkit).
1329
1330         Reverted changeset:
1331
1332         "[WPE] Add API to notify about frame displayed view backend
1333         callback"
1334         https://bugs.webkit.org/show_bug.cgi?id=192224
1335         https://trac.webkit.org/changeset/239103
1336
1337 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1338
1339         [WPE] Add API to notify about frame displayed view backend callback
1340         https://bugs.webkit.org/show_bug.cgi?id=192224
1341
1342         Reviewed by Michael Catanzaro.
1343
1344         Add a test case to check the new API.
1345
1346         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1347         (testWebViewFrameDisplayed):
1348         (beforeAll):
1349
1350 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1351
1352         [FreeType] Add initial implementation of variation fonts
1353         https://bugs.webkit.org/show_bug.cgi?id=192151
1354
1355         Reviewed by Michael Catanzaro.
1356
1357         Add cairo patch to avoid crashes.
1358
1359         * gtk/jhbuild.modules:
1360         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
1361
1362 2018-12-11  Justin Michaud  <justin_michaud@apple.com>
1363
1364         Implement feature flag for CSS Typed OM
1365         https://bugs.webkit.org/show_bug.cgi?id=192610
1366
1367         Reviewed by Ryosuke Niwa.
1368
1369         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1370
1371 2018-12-11  Chris Dumez  <cdumez@apple.com>
1372
1373         Unreviewed, fix bad check in API test added in r239080.
1374
1375         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1376
1377 2018-12-11  Fujii Hironori  <Hironori.Fujii@sony.com>
1378
1379         [Win][Clang] Fix warning -Wmissing-field-initializers
1380         https://bugs.webkit.org/show_bug.cgi?id=192584
1381
1382         Reviewed by Yusuke Suzuki.
1383
1384         Initialize a struct with '{ }' instead of '= {0}'.
1385
1386         * DumpRenderTree/win/DumpRenderTree.cpp:
1387         (runTest):
1388         * DumpRenderTree/win/EventSender.cpp:
1389         (makeMsg):
1390         (replaySavedEvents):
1391         (beginDragWithFilesCallback):
1392         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
1393         (createBitmapContextFromWebView):
1394         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
1395         (updateMenuItemForHistoryItem):
1396         * MiniBrowser/win/WinMain.cpp:
1397         (wWinMain):
1398         * TestWebKitAPI/win/HostWindow.cpp:
1399         (TestWebKitAPI::HostWindow::clientRect const):
1400         (TestWebKitAPI::HostWindow::registerWindowClass):
1401         * TestWebKitAPI/win/PlatformWebViewWin.cpp:
1402         (TestWebKitAPI::PlatformWebView::registerWindowClass):
1403         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
1404         (WTR::registerWindowClass):
1405         (WTR::PlatformWebView::windowFrame):
1406         (WTR::PlatformWebView::windowSnapshotImage):
1407
1408 2018-12-11  Chris Dumez  <cdumez@apple.com>
1409
1410         PSON logic gets confused by concurrent decidePolicyForNavigationAction requests
1411         https://bugs.webkit.org/show_bug.cgi?id=192482
1412         <rdar://problem/46470145>
1413
1414         Reviewed by Antti Koivisto.
1415
1416         Add API test coverage.
1417
1418         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1419
1420 2018-12-11  Andy Estes  <aestes@apple.com>
1421
1422         Introduce makeBlockPtr for lambdas
1423         https://bugs.webkit.org/show_bug.cgi?id=192594
1424
1425         Reviewed by Alex Christensen.
1426
1427         Adopted makeBlockPtr and added API tests.
1428
1429         * DumpRenderTree/TestRunner.cpp:
1430         (TestRunner::callUIScriptCallback):
1431         * TestWebKitAPI/Tests/WTF/BlockPtr.mm:
1432         (TestWebKitAPI::TEST):
1433         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
1434         (-[DownloadProgressTestRunner init]):
1435         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
1436
1437 2018-12-11  Chris Dumez  <cdumez@apple.com>
1438
1439         REGRESSION (r238764-238783): TestWTF.WTF.StringOperators is failing
1440         https://bugs.webkit.org/show_bug.cgi?id=192361
1441         <rdar://problem/46524903>
1442
1443         Reviewed by Alex Christensen.
1444
1445         Compile StringOperators.cpp with -O1 optimization level instead of -Os. This
1446         fixes the failures for me locally.
1447
1448         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1449
1450 2018-12-11  Philippe Normand  <pnormand@igalia.com>
1451
1452         Unreviewed, WPE build fix after r239028
1453
1454         The FLATPAK_USER_DIR env var is not set early enough, leading to:
1455
1456         Traceback (most recent call last):
1457         File "/home/phil/WebKit/Tools/Scripts/webkit-flatpak", line 28, in <module>
1458           sys.exit(WebkitFlatpak.load_from_args().run())
1459         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 761, in run
1460           if not self.clean_args():
1461         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 574, in clean_args
1462           _log.debug("Using flatpak user dir: %s" % os.environ["FLATPAK_USER_DIR"])
1463         File "/usr/lib/python2.7/UserDict.py", line 40, in __getitem__
1464           raise KeyError(key)
1465         KeyError: 'FLATPAK_USER_DIR'
1466
1467         * flatpak/flatpakutils.py:
1468         (WebkitFlatpak.clean_args):
1469
1470 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1471
1472         Move ENABLE_RESOURCE_LOAD_STATISTICS to FeatureDefines.xcconfig
1473         https://bugs.webkit.org/show_bug.cgi?id=192573
1474
1475         Reviewed by Simon Fraser.
1476
1477         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1478
1479 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1480
1481         [CMake] Add ENABLE_RESOURCE_LOAD_STATISTICS to WebKitFeatures.cmake
1482         https://bugs.webkit.org/show_bug.cgi?id=192574
1483
1484         Reviewed by Michael Catanzaro.
1485
1486         * Scripts/webkitperl/FeatureList.pm:
1487
1488 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1489
1490         Sync FeatureList.pm
1491         https://bugs.webkit.org/show_bug.cgi?id=192565
1492
1493         Reviewed by Michael Catanzaro.
1494
1495         * Scripts/webkitperl/FeatureList.pm:
1496
1497 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1498
1499         [iOS] Unable to upload data that conforms to "public.item" but not "public.content"
1500         https://bugs.webkit.org/show_bug.cgi?id=192555
1501         <rdar://problem/35204990>
1502
1503         Reviewed by Tim Horton.
1504
1505         Add a test to verify that `.p12` files may be uploaded as files via drag and drop. "com.rsa.pkcs-12" is an
1506         example of a data type that conforms to "public.item", but not "public.content"; before this patch, we would
1507         only support uploading "public.content", so files such as these would not be accepted when dropping into file
1508         inputs, or be exposed as files on DataTransfer.
1509
1510         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1511         (TestWebKitAPI::TEST):
1512
1513 2018-12-10  David Kilzer  <ddkilzer@apple.com>
1514
1515         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
1516         <https://webkit.org/b/192481>
1517         <rdar://problem/46539059>
1518
1519         Follow-up to address Darin's feedback.
1520
1521         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1522         (WTR::TestRunner::shouldDumpPixels const):
1523         (WTR::TestRunner::whatToDump const):
1524         (WTR::TestRunner::shouldWaitUntilDone const):
1525         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
1526         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
1527         (WTR::TestRunner::secureEventInputIsEnabled const):
1528         (WTR::TestRunner::isStatisticsPrevalentResource):
1529         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
1530         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
1531         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
1532         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
1533         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
1534         (WTR::TestRunner::isStatisticsGrandfathered):
1535         (WTR::TestRunner::hasDOMCache):
1536         (WTR::TestRunner::keyExistsInKeychain):
1537
1538 2018-12-10  Jonathan Bedard  <jbedard@apple.com>
1539
1540         webkitpy: Ref tests don't respect platform specific expectations
1541         https://bugs.webkit.org/show_bug.cgi?id=192515
1542         <rdar://problem/46564839>
1543
1544         Reviewed by Lucas Forschler.
1545
1546         * Scripts/webkitpy/port/base.py:
1547         (Port._expected_baselines_for_suffixes): Accept multiple suffixes so ref tests can use this function.
1548         (Port.expected_baselines): Move implementation to _expected_baselines_for_suffixes.
1549         (Port.expected_filename): Remove irrelevant FIXME, code clean-up.
1550         (Port.reference_files): Instead of just searching a single directory, use _expected_baselines_for_suffixes to
1551         search all platform expectations as well.
1552         * Scripts/webkitpy/port/base_unittest.py:
1553         (test_ref_tests_platform_directory):
1554
1555 2018-12-10  Chris Dumez  <cdumez@apple.com>
1556
1557         Add SPI to allow the client to set the user-agent at main frame level, from the UIProcess
1558         https://bugs.webkit.org/show_bug.cgi?id=192509
1559         <rdar://problem/46500832>
1560
1561         Reviewed by Alex Christensen.
1562
1563         Add API test coverage.
1564
1565         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1566         (-[DataMappingSchemeHandler addMappingFromURLString:toData:]):
1567         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
1568         (-[DataMappingSchemeHandler webView:stopURLSchemeTask:]):
1569         (-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1570         (-[CustomUserAgentDelegate webView:didFinishNavigation:]):
1571
1572 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1573
1574         [iOS] Caret is obscured by finger when dragging over an editable element
1575         https://bugs.webkit.org/show_bug.cgi?id=192499
1576         <rdar://problem/46570101>
1577
1578         Reviewed by Tim Horton.
1579
1580         Augment some existing API tests to check that the `precise` flag is either on or off on `UIDropProposal`.
1581
1582         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1583         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1584         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1585         (-[DragAndDropSimulator _resetSimulatedState]):
1586         (-[DragAndDropSimulator lastKnownDropProposal]):
1587
1588         Rename `currentDropProposal` to `lastKnownDropProposal`, and expose it as a readonly property.
1589
1590         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
1591         (-[DragAndDropSimulator _advanceProgress]):
1592         (-[DragAndDropSimulator setShowCustomActionSheetBlock:]):
1593         (-[DragAndDropSimulator showCustomActionSheetBlock]):
1594         (-[DragAndDropSimulator setConvertItemProvidersBlock:]):
1595         (-[DragAndDropSimulator convertItemProvidersBlock]):
1596         (-[DragAndDropSimulator setOverridePerformDropBlock:]):
1597         (-[DragAndDropSimulator overridePerformDropBlock]):
1598         (-[DragAndDropSimulator setOverrideDragUpdateBlock:]):
1599         (-[DragAndDropSimulator overrideDragUpdateBlock]):
1600         (-[DragAndDropSimulator setDropCompletionBlock:]):
1601         (-[DragAndDropSimulator dropCompletionBlock]):
1602
1603         Refactor these properties to return and take normal Objective-C blocks, rather than `BlockPtr`s. However, use
1604         `BlockPtr` instance variables to manage the lifetimes of these blocks.
1605
1606         (-[DragAndDropSimulator _webView:willUpdateDropProposalToProposal:forSession:]):
1607         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]): Deleted.
1608
1609         Update this to use the new WebKit delegate hook for overriding the drop proposal.
1610
1611 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
1612
1613         [WPE][GTK] run-minibrowser improperly creates webkit-flatpak environment
1614         https://bugs.webkit.org/show_bug.cgi?id=190241
1615
1616         Reviewed by Carlos Garcia Campos.
1617
1618         run-minibrowser calls into webkit-flatpak to check if a flatpak environment is available.
1619         Currently this actually creates the directories needed for the flatpak environment. Fix it.
1620
1621         * flatpak/flatpakutils.py:
1622         (WebkitFlatpak.clean_args):
1623         (WebkitFlatpak.run):
1624
1625 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
1626
1627         [GTK] Don't use the slice allocator
1628         https://bugs.webkit.org/show_bug.cgi?id=192360
1629
1630         Reviewed by Carlos Garcia Campos.
1631
1632         * MiniBrowser/gtk/main.c:
1633         (aboutDataRequestFree):
1634         (aboutDataRequestNew):
1635
1636 2018-12-10  Tim Horton  <timothy_horton@apple.com>
1637
1638         WKWebView should support custom tintColor
1639         https://bugs.webkit.org/show_bug.cgi?id=192518
1640         <rdar://problem/37243261>
1641
1642         Reviewed by Wenson Hsieh.
1643
1644         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
1645         (TestWebKitAPI::TEST):
1646         Add a test that tintColor affects UITextInputTraits' interaction colors.
1647
1648 2018-12-09  Wenson Hsieh  <wenson_hsieh@apple.com>
1649
1650         [iOS] DragAndDropTests.RespectsExternalSourceFidelityRankings is flaky
1651         https://bugs.webkit.org/show_bug.cgi?id=192524
1652
1653         Reviewed by Ryosuke Niwa.
1654
1655         This test started failing on certain builds of iOS where UIKit now attempts to reveal the selection by scrolling
1656         (see <rdar://problem/28300343>). This API test simulates two drops from external sources, both from the point
1657         (300, 400) to (100, 300) in window coordinates. On these aforementioned builds of iOS, what happens is that the
1658         first drop inserts text that overflows the editable region by an enormous amount, which creates an extremely
1659         wide selection rect and increases the width of the document; revealing this selection causes the web view to
1660         scroll horizontally, such that the second attempt to simulate a drag from (300, 400) to (100, 300) fails, since
1661         these window coordinates no longer correspond to the drop destination element in the document.
1662
1663         To fix this test, we simply mark the drop destination as `overflow: hidden` to ensure that we don't try and
1664         scroll horizontally after the first drop.
1665
1666         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
1667
1668 2018-12-08  Daniel Bates  <dabates@apple.com>
1669
1670         Fix lldb_webkit.py following r238771
1671         (https://bugs.webkit.org/show_bug.cgi?id=190234)
1672
1673         Substitute WTFURLProvider for WebCoreURLProvider in one call site that was inadvertently
1674         missed in r238771.
1675
1676         * lldb/lldb_webkit.py:
1677         (WebCoreDocumentProvider.url):
1678
1679 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
1680
1681         [ews-build] check-patch-relevance failure should not mark the overall build as failure
1682         https://bugs.webkit.org/show_bug.cgi?id=192510
1683
1684         Reviewed by Lucas Forschler.
1685
1686         * BuildSlaveSupport/ews-build/steps.py:
1687         (CheckPatchRelevance.start):
1688
1689 2018-12-07  Chris Dumez  <cdumez@apple.com>
1690
1691         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
1692         https://bugs.webkit.org/show_bug.cgi?id=192362
1693         <rdar://problem/46460360>
1694
1695         Reviewed by Ryosuke Niwa.
1696
1697         Move the call to _setCookieAcceptPolicy *after* we've constructed a WKWebView and thus
1698         *after* we know for sure we have a network process to communicate the policy to.
1699         This should address the failures on iOS.
1700
1701         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1702
1703 2018-12-07  Jiewen Tan  <jiewen_tan@apple.com>
1704
1705         Add keychain access entitlement to WebKitTestRunnerApp
1706         https://bugs.webkit.org/show_bug.cgi?id=192489
1707         <rdar://problem/45057952>
1708
1709         Reviewed by Alexey Proskuryakov.
1710
1711         * WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
1712
1713 2018-12-07  Saam Barati  <sbarati@apple.com>
1714
1715         WKWebProcessPlugInLoadDelegate should have API for saying which rendering events it wants to listen for
1716         https://bugs.webkit.org/show_bug.cgi?id=192473
1717
1718         Reviewed by Andy Estes.
1719
1720         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1721         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgress.mm: Added.
1722         (-[DidFirstMeaningfulPaintRemoteObject didFirstMeaningfulPaint]):
1723         (TEST):
1724         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressPlugIn.mm: Added.
1725         (-[RenderingProgressPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1726         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextControllerRenderingProgressEvents:]):
1727         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextController:renderingProgressDidChange:]):
1728         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressProtocol.h: Added.
1729
1730 2018-12-07  Jonathan Bedard  <jbedard@apple.com>
1731
1732         REGRESSION: run-webkit-tests may fail when using booted simulators (Follow-up fix)
1733         https://bugs.webkit.org/show_bug.cgi?id=192470
1734         <rdar://problem/46532001>
1735
1736         Unreviewed infrastructure fix.
1737
1738         * Scripts/webkitpy/port/device_port.py:
1739         (DevicePort.setup_test_run): Check that the number of initialized devices matches the
1740         number of child processes.
1741
1742 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
1743
1744         [ews-app] Send bug id as a build property
1745         https://bugs.webkit.org/show_bug.cgi?id=192494
1746
1747         Reviewed by Lucas Forschler.
1748
1749         * BuildSlaveSupport/ews-app/ews/fetcher.py:
1750         (BugzillaPatchFetcher.fetch):
1751
1752 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
1753
1754         [ews-build] Builds should have a link to patch and bug
1755         https://bugs.webkit.org/show_bug.cgi?id=192492
1756
1757         Reviewed by Lucas Forschler.
1758
1759         * BuildSlaveSupport/ews-build/steps.py:
1760         (ConfigureBuild.add_patch_id_url): Method to add Patch URL.
1761         (ConfigureBuild.add_bug_id_url): Method to add Bug URL.
1762         (ConfigureBuild.getPatchURL): Method to get Patch URL.
1763         (ConfigureBuild.getBugURL): Method to get Bug URL.
1764
1765 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
1766
1767         [ews-app] Configure logfile for ews-app logs
1768         https://bugs.webkit.org/show_bug.cgi?id=192493
1769
1770         Reviewed by Lucas Forschler.
1771
1772         * BuildSlaveSupport/ews-app/ews/__init__.py:
1773
1774 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
1775
1776         Style queue exception on some security bugs
1777         https://bugs.webkit.org/show_bug.cgi?id=190793
1778
1779         Reviewed by Lucas Forschler.
1780
1781         * Scripts/webkitpy/tool/steps/applywatchlist.py:
1782         (ApplyWatchList.run):
1783
1784 2018-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
1785
1786         [Attachment Support] Cloned attachment elements lose their unique identifiers
1787         https://bugs.webkit.org/show_bug.cgi?id=192483
1788
1789         Reviewed by Tim Horton.
1790
1791         Introduce a new API test.
1792
1793         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1794         (TestWebKitAPI::TEST):
1795
1796 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
1797
1798         Consecutive DumpRenderTree crashes are happening again on WinCairo BuildBots since r238903
1799         https://bugs.webkit.org/show_bug.cgi?id=192486
1800
1801         Unreviewed infrastructure fix.
1802
1803         WinCairo bots define WEBKIT_TEST_CHILD_PROCESSES to run less processes due to RAM restrictions.
1804
1805         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1806         (_set_up_derived_options):
1807
1808 2018-12-06  David Kilzer  <ddkilzer@apple.com>
1809
1810         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
1811         <https://webkit.org/b/192481>
1812         <rdar://problem/46539059>
1813
1814         Reviewed by Simon Fraser.
1815
1816         This patch:
1817         - Fixes leaks in various injected bundle methods that return +1
1818           retained WKTypeRef objects via pointer.
1819         - Asserts the returned object is the expected WKTypeRef.
1820         - Replaces 0 with nullptr in many places.
1821
1822         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1823         (WTR::InjectedBundle::didCreatePage):
1824         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1825         (WTR::TestRunner::shouldDumpPixels const):
1826         (WTR::TestRunner::whatToDump const):
1827         (WTR::TestRunner::shouldWaitUntilDone const):
1828         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
1829         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
1830         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
1831         (WTR::TestRunner::secureEventInputIsEnabled const):
1832         (WTR::TestRunner::isStatisticsPrevalentResource):
1833         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
1834         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
1835         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
1836         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
1837         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
1838         (WTR::TestRunner::isStatisticsGrandfathered):
1839         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
1840         (WTR::TestRunner::statisticsUpdateCookieBlocking):
1841         (WTR::TestRunner::statisticsSubmitTelemetry):
1842         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
1843         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
1844         (WTR::TestRunner::statisticsResetToConsistentState):
1845         (WTR::TestRunner::getAllStorageAccessEntries):
1846         (WTR::TestRunner::hasDOMCache):
1847         (WTR::TestRunner::domCacheSize):
1848         (WTR::TestRunner::injectUserScript):
1849         (WTR::TestRunner::keyExistsInKeychain):
1850
1851 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
1852
1853         REGRESSION: run-webkit-tests may fail when using booted simulators
1854         https://bugs.webkit.org/show_bug.cgi?id=192470
1855         <rdar://problem/46532001>
1856
1857         Reviewed by Lucas Forschler.
1858
1859         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1860         (Manager.run): Logging uses the number of child processes to print out information about how efficiently tests
1861         were sharded after the fact. This number is the most meaningful if it is the maximum number of child processes used.
1862         * Scripts/webkitpy/port/base.py:
1863         (Port.max_child_processes): By default, Ports do not support running on any specific kind of device.
1864         * Scripts/webkitpy/port/device_port.py:
1865         (DevicePort.default_child_processes): Rather than using the currently initialized devices as a proxy for how many
1866         child processes are being used, check the device manager every time. Regardless of which devices are attached or
1867         available, iOS cannot boot watchOS devices and vice-versa. dedicated_simulators is not a known argument to
1868         device_count_for_type, use use_booted_simulator instead.
1869         (DevicePort.max_child_processes): Simulators can boot more devices than what is specified by device_count_for_type,
1870         but, if no devices are available, then max_child_processes should return 0 even for simulators.
1871         * Scripts/webkitpy/port/ios_device_unittest.py:
1872         (IOSDeviceTest):
1873         (IOSDeviceTest.test_max_child_processes):
1874         * Scripts/webkitpy/port/ios_simulator_unittest.py:
1875         (IOSSimulatorTest):
1876         (IOSSimulatorTest.test_max_child_processes):
1877         * Scripts/webkitpy/port/port_testcase.py:
1878         (PortTestCase):
1879         (PortTestCase.test_max_child_processes):
1880         * Scripts/webkitpy/port/watch_simulator_unittest.py:
1881         (WatchSimulatorTest):
1882         (WatchSimulatorTest.test_max_child_processes):
1883
1884 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
1885
1886         webkitpy: Ignore case when comparing device types (Follow-up fix)
1887         https://bugs.webkit.org/show_bug.cgi?id=192409
1888         <rdar://problem/46491558>
1889
1890         Unreviewed typo fix.
1891
1892         * Scripts/webkitpy/xcode/device_type_unittest.py:
1893         (DeviceTypeTest.test_comparison_lower_case):
1894         (DeviceTypeTest.test_comparsion_lower_case): Deleted.
1895
1896 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
1897
1898         webkitpy: Create device given lower-case DeviceType
1899         <https://bugs.webkit.org/show_bug.cgi?id=192472>
1900         <rdar://problem/46532650>
1901
1902         Reviewed by Lucas Forschler.
1903
1904         * Scripts/webkitpy/xcode/simulated_device.py:
1905         (SimulatedDeviceManager._get_device_identifier_for_type): Comparing simctl device identifiers with DeviceTypes
1906         should be letter-case agnostic.
1907         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
1908         (test_lower_case_device_type):
1909
1910 2018-12-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1911
1912         [iOS] WKWebView should match UITextView behavior when editing text with an RTL keyboard
1913         https://bugs.webkit.org/show_bug.cgi?id=187554
1914         <rdar://problem/42075638>
1915
1916         Reviewed by Tim Horton.
1917
1918         Add support for simulating the keyboard input mode in layout tests using UIScriptController, as well as a new
1919         `TestOption` to make the web view editable.
1920
1921         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1922         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
1923         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1924         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1925         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
1926         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1927         * WebKitTestRunner/PlatformWebView.h:
1928         * WebKitTestRunner/TestController.cpp:
1929         (WTR::updateTestOptionsFromTestHeader):
1930         * WebKitTestRunner/TestController.h:
1931         (WTR::TestController::overriddenKeyboardInputMode const):
1932         * WebKitTestRunner/TestOptions.h:
1933         (WTR::TestOptions::hasSameInitializationOptions const):
1934         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1935         (WTR::TestController::platformCreateWebView):
1936         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
1937         (WTR::PlatformWebView::setEditable):
1938         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1939         (WTR::PlatformWebView::setEditable):
1940         * WebKitTestRunner/ios/TestControllerIOS.mm:
1941         (WTR::TestController::platformResetStateToConsistentValues):
1942         (WTR::swizzleCurrentInputMode):
1943         (WTR::TestController::setKeyboardInputModeIdentifier):
1944
1945         Swizzle out several `UIKeyboardInputModeController` methods in order to convince UIKit that the user has
1946         selected a `UIKeyboardInputMode` corresponding to the given identifier. The call to
1947         `-prepareKeyboardInputModeFromPreferences:` is also necessary on iOS 12 in order to update cached writing
1948         direction state in UIKit.
1949
1950         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1951         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
1952         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
1953         (WTR::PlatformWebView::setEditable):
1954         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
1955         (WTR::PlatformWebView::setEditable):
1956         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
1957         (WTR::PlatformWebView::setEditable):
1958
1959 2018-12-05  Wenson Hsieh  <wenson_hsieh@apple.com>
1960
1961         [Cocoa] Share ClassMethodSwizzler and InstanceMethodSwizzler between TestWebKitAPI and WebKitTestRunner
1962         https://bugs.webkit.org/show_bug.cgi?id=192437
1963
1964         Reviewed by Tim Horton.
1965
1966         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1967         * TestRunnerShared/cocoa/ClassMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.h.
1968         * TestRunnerShared/cocoa/ClassMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.mm.
1969         (ClassMethodSwizzler::ClassMethodSwizzler):
1970         (ClassMethodSwizzler::~ClassMethodSwizzler):
1971         * TestRunnerShared/cocoa/InstanceMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.h.
1972         * TestRunnerShared/cocoa/InstanceMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm.
1973         (InstanceMethodSwizzler::InstanceMethodSwizzler):
1974         (InstanceMethodSwizzler::~InstanceMethodSwizzler):
1975
1976         Move these swizzling helper classes into TestRunnerShared.
1977
1978         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1979         * TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
1980         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1981         (safeBrowsingView):
1982         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDefaultNavigationDelegate.mm:
1983         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1984         (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
1985
1986         Remove namespacing around ClassMethodSwizzler and InstanceMethodSwizzler in a few API tests.
1987
1988         * TestWebKitAPI/mac/TestFontOptions.mm:
1989         * WebKitTestRunner/TestController.h:
1990         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1991         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1992         (WTR::ClassMethodSwizzler::ClassMethodSwizzler): Deleted.
1993         (WTR::ClassMethodSwizzler::~ClassMethodSwizzler): Deleted.
1994
1995         Remove this duplicate implementation of ClassMethodSwizzler in WebKitTestRunner.
1996
1997 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
1998
1999         webkitpy: Clean-up apple_additions
2000         https://bugs.webkit.org/show_bug.cgi?id=192413
2001         <rdar://problem/46493491>
2002
2003         Reviewed by Lucas Forschler.
2004
2005         After the addition of watchOS, some functions which were originally iOS specific were
2006         generalized to include all devices.
2007
2008         * Scripts/webkitpy/port/ios_device.py:
2009         (IOSDevicePort._driver_class): Replace iOS specific call with generalized device call.
2010         (IOSDevicePort.path_to_crash_logs): Ditto.
2011         (IOSDevicePort.clean_up_test_run): Ditto.
2012
2013 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
2014
2015         webkitpy: Ignore case when comparing device types
2016         https://bugs.webkit.org/show_bug.cgi?id=192409
2017         <rdar://problem/46491558>
2018
2019         Reviewed by Lucas Forschler.
2020
2021         This allows DeviceTypes constructed with lowercase strings to correctly compare
2022         against DeviceTypes coming from the simulator runtime.
2023
2024         * Scripts/webkitpy/xcode/device_type.py:
2025         (DeviceType.__eq__):
2026         (DeviceType.__contains__):
2027         * Scripts/webkitpy/xcode/device_type_unittest.py:
2028         (DeviceTypeTest):
2029         (DeviceTypeTest.test_comparsion_lower_case):
2030
2031 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
2032
2033         webkitpy: Sort tests by associated device type
2034         https://bugs.webkit.org/show_bug.cgi?id=192161
2035         <rdar://problem/46345392>
2036
2037         Reviewed by Lucas Forschler.
2038
2039         Sort tests by device type and make an effort to run each specified device type.
2040         Do not run tests if their specified device is not available.
2041
2042         * Scripts/webkitpy/common/system/platforminfo.py:
2043         (PlatformInfo.is_watchos): Add watchos bits to platform info.
2044         (PlatformInfo._determine_os_name): Ditto.
2045         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2046         (Manager.run): Assign each test a device type. Then, generate a list of
2047         device types to sequentially iterate through. Note that a test will run
2048         on the first device which matches.
2049         (Manager._end_test_run): Handle the case where no devices are available and no
2050         tests are run.
2051         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2052         (_set_up_derived_options): Manage child processes in manager.
2053         * Scripts/webkitpy/port/base.py:
2054         (Port):
2055         (Port.default_child_processes): Accept additional arguments.
2056         (Port.max_child_processes): Add upper limit for number of child processes.
2057         * Scripts/webkitpy/port/device_port.py:
2058         (DevicePort):
2059         (DevicePort._device_type_with_version): Adds version to the DeviceType.
2060         (DevicePort.default_child_processes): Allows default_child_processes to be
2061         attached to a device type.
2062         (DevicePort.max_child_processes): Add upper limit to the maximum number of child processes.
2063         (DevicePort.setup_test_run): Use _device_type_with_version.
2064         * Scripts/webkitpy/port/ios_device.py:
2065         (IOSDevicePort):
2066         (IOSDevicePort.default_child_processes): Deleted.
2067         * Scripts/webkitpy/port/ios_simulator.py:
2068         (IOSSimulatorPort.default_child_processes): Deleted.
2069         (IOSSimulatorPort.check_sys_deps): Deleted.
2070         * Scripts/webkitpy/port/mac.py:
2071         (MacPort.default_child_processes): Accept additional arguments.
2072         * Scripts/webkitpy/port/test.py:
2073         * Scripts/webkitpy/port/watch_device.py:
2074         (WatchDevicePort):
2075         (WatchDevicePort.default_child_processes): Deleted.
2076         * Scripts/webkitpy/port/watch_simulator.py:
2077         (WatchSimulatorPort.default_child_processes): Deleted.
2078         (WatchSimulatorPort.check_sys_deps): Deleted.
2079         * Scripts/webkitpy/xcode/simulated_device.py:
2080         (SimulatedDeviceManager):
2081         (SimulatedDeviceManager.device_count_for_type): Count the number of devices
2082         available for a specific device type.
2083
2084 2018-12-05  Devin Rousso  <drousso@apple.com>
2085
2086         Unreviewed, add myself to some watch lists.
2087
2088         * Scripts/webkitpy/common/config/watchlist:
2089
2090 2018-12-05  Alicia Boya García  <aboya@igalia.com>
2091
2092         [MSE][GStreamer] Remove the AppendPipeline state machine
2093         https://bugs.webkit.org/show_bug.cgi?id=192204
2094
2095         Reviewed by Xabier Rodriguez-Calvar.
2096
2097         Updated AbortableTaskQueue tests:
2098
2099         Added test: AbortedBySyncTaskHandler.
2100
2101         Renamed test: AbortDuringSyncTask -> AbortBeforeSyncTaskRun (in
2102         order to avoid confusion with the new test).
2103
2104         Added checks for the correct destruction of response objects.
2105
2106         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
2107         (TestWebKitAPI::FancyResponse::FancyResponse):
2108         (TestWebKitAPI::FancyResponse::~FancyResponse):
2109         (TestWebKitAPI::TEST):
2110
2111 2018-12-04  Chris Dumez  <cdumez@apple.com>
2112
2113         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
2114         https://bugs.webkit.org/show_bug.cgi?id=192362
2115
2116         Reviewed by Alex Christensen.
2117
2118         Set the cookie policy to Accept to make sure the cookies are saved.
2119
2120         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2121
2122 2018-12-04  Michael Catanzaro  <mcatanzaro@igalia.com>
2123
2124         [WPE][GTK] Update GLib
2125         https://bugs.webkit.org/show_bug.cgi?id=191222
2126
2127         Reviewed by Žan Doberšek.
2128
2129         When I try running API tests locally, they crash with:
2130
2131         GLib-GIO-WARNING **: unknown schema extension 'd'
2132
2133         We need to update our old glib to support the 'd' value type, otherwise schemas that may
2134         exist on the host using this type will cause instant crashes.
2135
2136         Also, switch the GLib build to use meson. This requires updating meson as well.
2137
2138         * gtk/jhbuild.modules:
2139         * gtk/patches/glib-cast-function-type.patch: Removed.
2140         * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Removed.
2141         * wpe/jhbuild.modules:
2142         * wpe/patches/glib-cast-function-type.patch: Removed.
2143         * wpe/patches/glib-revert-wakeup-changes.patch: Removed.
2144
2145 2018-12-04  Aakash Jain  <aakash_jain@apple.com>
2146
2147         [ews-app] Run BugzillaPatchFetcher periodically
2148         https://bugs.webkit.org/show_bug.cgi?id=192241
2149
2150         Reviewed by Lucas Forschler.
2151
2152         * BuildSlaveSupport/ews-app/ews/__init__.py:
2153         * BuildSlaveSupport/ews-app/ews/apps.py:
2154         (EwsConfig.ready): This method is called by Django on startup.
2155         * BuildSlaveSupport/ews-app/ews/fetcher.py:
2156         (FetchLoop): Class which invokes BugzillaPatchFetcher every 60s.
2157
2158 2018-12-04  Jonathan Bedard  <jbedard@apple.com>
2159
2160         webkitpy: Support unicode in MeteredStream
2161         https://bugs.webkit.org/show_bug.cgi?id=192260
2162
2163         Reviewed by Aakash Jain.
2164
2165         It's possible that the test runner returns unicode characters to be logged when
2166         running layout tests.
2167
2168         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2169         (MeteredStream.write): Print message without attempting to encode/decode it.
2170         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
2171         (RegularTest.test_unicode):
2172
2173 2018-12-04  Keith Rollin  <krollin@apple.com>
2174
2175         Update scripts for generating .xcfilelist files
2176         https://bugs.webkit.org/show_bug.cgi?id=192081
2177         <rdar://problem/46312290>
2178
2179         Reviewed by Brent Fulgham.
2180
2181         The initial pass at generate-xcfilelists (a script for
2182         creating/updating the .xcfilelist files needed for various Generate
2183         Foo Source build phases in Xcode) only generated the .xcfilelist files
2184         that held the output files; it did not generate the list of input
2185         files. As well, for the sources generated by DerivedSources.make
2186         makefiles, the script accomplished this via the implementation of a
2187         convention in the makefile that allowed the printing of these output
2188         files when invoked with the 'print_all_generated_files' target. Use of
2189         this convention is inconvenient and error-prone.
2190
2191         The script is now updated to address both of these issues. First, it
2192         generates for the input and output sets of files. Second, it does away
2193         with the convention in the DerivedSources.make makefiles and instead
2194         works from the dependency output information printed when `make` is
2195         invoked with --debug. This second part is implemented in the new
2196         script extract-dependencies-from-makefile.
2197
2198         * Scripts/extract-dependencies-from-makefile: Added.
2199         (Parser):
2200         (Parser.__init__):
2201         (Parser.nextLine):
2202         (Parser.addTarget):
2203         (Parser.addPrereq):
2204         (Parser.doParse):
2205         (Parser.printInputs):
2206         (Parser.printOutputs):
2207         (parseArgs):
2208         (main):
2209         * Scripts/generate-xcfilelists:
2210
2211 2018-12-04  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
2212
2213         [WPE] Add gtk-doc
2214         https://bugs.webkit.org/show_bug.cgi?id=178900
2215
2216         Reviewed by Michael Catanzaro.
2217
2218         Add gtk-doc to WPE port. This patch tries to reuse as much code from
2219         WebKitGTK+ as possible.
2220
2221         * gtkdoc/generate-gtkdoc: Renamed from Tools/gtk/generate-gtkdoc.
2222         (get_gtkdoc_module_paths): Add GDK and GTK only if building for GTK.
2223         (prepare_environment_for_gtkdoc_generation):
2224         (build_gtkdoc_for_wpe): Code to generate doc for WPE.
2225         (build_gtkdoc_for_wkgtk): Code to generate doc for WebKitGTK+. Moved from main.
2226         * gtkdoc/gtkdoc.py: Renamed from Tools/gtk/gtkdoc.py.
2227         (GTKDoc.__init__): Initialized required variables according to pylint.
2228         (GTKDoc.api_missing_documentation):
2229         * wpe/install-dependencies: Add gtkdoc dependency.
2230
2231 2018-12-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2232
2233         [SOUP] Move URLSoup back to WebCore after r238771
2234         https://bugs.webkit.org/show_bug.cgi?id=192306
2235
2236         Reviewed by Michael Catanzaro.
2237
2238         Include GUniquePtrSoup from WebCore again.
2239
2240         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2241
2242 2018-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2243
2244         [GTK] Bump freetype, fontconfig, harfbuzz, cairo and icu in jhbuild
2245         https://bugs.webkit.org/show_bug.cgi?id=192310
2246
2247         Reviewed by Michael Catanzaro.
2248
2249         Update those dependencies to their latest stable versions.
2250
2251         * gtk/jhbuild.modules:
2252
2253 2018-12-03  Tomas Popela  <tpopela@redhat.com>
2254
2255         [GTK] Can't run MiniBrowser due to missing python2-yaml
2256         https://bugs.webkit.org/show_bug.cgi?id=192308
2257
2258         Reviewed by Michael Catanzaro.
2259
2260         * gtk/install-dependencies:
2261
2262 2018-12-03  Chris Dumez  <cdumez@apple.com>
2263
2264         Regression(PSON) Google OAuth is broken in private sessions
2265         https://bugs.webkit.org/show_bug.cgi?id=192337
2266         <rdar://problem/46353558>
2267
2268         Reviewed by Alex Christensen.
2269
2270         Add API test coverage.
2271
2272         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2273         * TestWebKitAPI/Tests/WebKitCocoa/GetSessionCookie.html: Added.
2274         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2275         * TestWebKitAPI/Tests/WebKitCocoa/SetSessionCookie.html: Added.
2276
2277 2018-12-03  Chris Dumez  <cdumez@apple.com>
2278
2279         [PSON] Request by the client to process-swap is ignored if the window has an opener
2280         https://bugs.webkit.org/show_bug.cgi?id=192267
2281         <rdar://problem/46386886>
2282
2283         Reviewed by Brady Eidson.
2284
2285         Add API test coverage.
2286
2287         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2288
2289 2018-12-03  Keith Rollin  <krollin@apple.com>
2290
2291         Add .xcfilelist files
2292         https://bugs.webkit.org/show_bug.cgi?id=192082
2293         <rdar://problem/46312533>
2294
2295         Reviewed by Brent Fulgham.
2296
2297         Add .xcfilelist files for Generate Derived Sources and Generate
2298         Unified Sources build phases in Xcode. These are just being staged for
2299         now; they'll be added to the Xcode projects later.
2300
2301         * DumpRenderTree/DerivedSources-input.xcfilelist: Added.
2302         * DumpRenderTree/DerivedSources-output.xcfilelist: Added.
2303         * WebKitTestRunner/DerivedSources-input.xcfilelist: Added.
2304         * WebKitTestRunner/DerivedSources-output.xcfilelist: Added.
2305
2306 2018-12-03  Alex Christensen  <achristensen@webkit.org>
2307
2308         Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
2309         https://bugs.webkit.org/show_bug.cgi?id=192272
2310
2311         Reviewed by Brady Eidson.
2312
2313         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
2314         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]):
2315         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
2316
2317 2018-12-03  Wenson Hsieh  <wenson_hsieh@apple.com>
2318
2319         [iOSMac] Unable to upload non-image files using drag and drop in WKWebView
2320         https://bugs.webkit.org/show_bug.cgi?id=192283
2321         <rdar://problem/46399461>
2322
2323         Reviewed by Ryosuke Niwa.
2324
2325         Add a new API test to check that an item provider which contains plain text data and a file URL (but is not
2326         marked as an attachment) is still treated as an attachment upon drop. Furthermore, verify that "text/uri-list"
2327         does not expose the actual file URL written to the item provider.
2328
2329         Additionally, rebaseline an existing API test to remove an extraneous "text/uri-list" type that appears in
2330         `DataTransfer.types`, but whose data is inaccessible via `getData` anyways.
2331
2332         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2333
2334 2018-12-01  Don Olmstead  <don.olmstead@sony.com>
2335
2336         Cleanup WebKit Features
2337         https://bugs.webkit.org/show_bug.cgi?id=192262
2338
2339         Reviewed by Michael Catanzaro.
2340
2341         Removes obsolete ENABLE options and variable names. Syncs the option's
2342         descriptions with what is present in WebKitFeatures.cmake. Sorts the
2343         options based on the associated define.
2344
2345         * Scripts/webkitperl/FeatureList.pm:
2346
2347 2018-12-01  Chris Dumez  <cdumez@apple.com>
2348
2349         [PSON] process-swapping may occur even though opener has handle to openee
2350         https://bugs.webkit.org/show_bug.cgi?id=192277
2351
2352         Reviewed by Antti Koivisto.
2353
2354         Add API test coverage.
2355
2356         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2357
2358 2018-12-01  Jonathan Bedard  <jbedard@apple.com>
2359
2360         Unreviewed, rolling out r238764.
2361
2362         Breaks existing layout tests
2363
2364         Reverted changeset:
2365
2366         "webkitpy: Support unicode in MeteredStream"
2367         https://bugs.webkit.org/show_bug.cgi?id=192260
2368         https://trac.webkit.org/changeset/238764
2369
2370 2018-12-01  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
2371
2372         Move URL tests from TestWebKitAPI to TestWTF
2373         https://bugs.webkit.org/show_bug.cgi?id=192275
2374
2375         Reviewed by Keith Miller.
2376
2377         Since URL is moved from WebCore to WTF, we also move tests for them from TestWebKitAPI (TestWebCore) to TestWTF.
2378         But we still have some tests in TestWebCore since only WebCore implements TextEncoding. That part is now decoupled
2379         from URLParser tests and new URLParserTextEncoding.cpp is created.
2380
2381         * TestWebKitAPI/CMakeLists.txt:
2382         * TestWebKitAPI/PlatformGTK.cmake:
2383         * TestWebKitAPI/PlatformWPE.cmake:
2384         * TestWebKitAPI/PlatformWin.cmake:
2385         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2386         * TestWebKitAPI/Tests/WTF/URL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URL.cpp.
2387         (TestWebKitAPI::TEST_F):
2388         * TestWebKitAPI/Tests/WTF/URLParser.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp.
2389         (TestWebKitAPI::TEST_F):
2390         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm.
2391         (TestWebKitAPI::TEST):
2392         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp: Added.
2393         (TestWebKitAPI::ExpectedParts::isInvalid const):
2394         (TestWebKitAPI::eq):
2395         (TestWebKitAPI::insertTabAtLocation):
2396         (TestWebKitAPI::invalidParts):
2397         (TestWebKitAPI::checkURL):
2398         (TestWebKitAPI::TEST_F):
2399
2400 2018-11-30  Zalan Bujtas  <zalan@apple.com>
2401
2402         Unreviewed LFC passing test list update.
2403
2404         * LayoutReloaded/misc/LFC-passing-tests.txt:
2405
2406 2018-11-30  Alex Christensen  <achristensen@webkit.org>
2407
2408         Move URL from WebCore to WTF
2409         https://bugs.webkit.org/show_bug.cgi?id=190234
2410
2411         Reviewed by Keith Miller.
2412
2413         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2414         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
2415         * TestWebKitAPI/Tests/WebCore/URL.cpp:
2416         (TestWebKitAPI::createURL):
2417         (TestWebKitAPI::TEST_F):
2418         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2419         (TestWebKitAPI::checkURL):
2420         (TestWebKitAPI::checkRelativeURL):
2421         (TestWebKitAPI::checkURLDifferences):
2422         (TestWebKitAPI::checkRelativeURLDifferences):
2423         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2424         * TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
2425         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
2426         (TestWebKitAPI::originalDataAsString):
2427         (TestWebKitAPI::userVisibleString):
2428         (TestWebKitAPI::literalURL):
2429         (TestWebKitAPI::TEST):
2430         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
2431         (TEST):
2432         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
2433         (literalURL):
2434         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2435         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
2436         (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
2437         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
2438         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
2439         (TestWebKitAPI::Util::createURLForResource):
2440         * lldb/lldb_webkit.py:
2441         (__lldb_init_module):
2442         (WTFURL_SummaryProvider):
2443         (WTFURLProvider):
2444         (WebCoreURL_SummaryProvider): Deleted.
2445         (WebCoreURLProvider): Deleted.
2446         (WebCoreURLProvider.__init__): Deleted.
2447         (WebCoreURLProvider.to_string): Deleted.
2448
2449 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2450
2451         webkitpy: Support unicode in MeteredStream
2452         https://bugs.webkit.org/show_bug.cgi?id=192260
2453
2454         Reviewed by Stephanie Lewis.
2455
2456         It's possible that the test runner returns unicode characters to be logged when
2457         running layout tests.
2458
2459         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2460         (MeteredStream.write): Message written to metered stream should be unicode.
2461         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
2462         (RegularTest.test_unicode):
2463
2464 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2465
2466         REGRESSION (r238749): run-api-tests dies with AttributeError: 'IOSSimulatorPort' object has no attribute 'DEFAULT_DEVICE_CLASS'
2467         https://bugs.webkit.org/show_bug.cgi?id=192257
2468         <rdar://problem/46384671>
2469
2470         Reviewed by Stephanie Lewis.
2471
2472         Follow-up fix for r238749.
2473
2474         * Scripts/webkitpy/api_tests/manager.py:
2475         (Manager._initialize_devices): Use DEFAULT_DEVICE_TYPE instead of DEFAULT_DEVICE_CLASS.
2476
2477 2018-11-30  Chris Dumez  <cdumez@apple.com>
2478
2479         [PSON] We are sometimes swapping processes even though there is an opened window with an opener link to us
2480         https://bugs.webkit.org/show_bug.cgi?id=192242
2481
2482         Reviewed by Geoffrey Garen.
2483
2484         Add API test coverage.
2485
2486         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2487
2488 2018-11-30  Don Olmstead  <don.olmstead@sony.com>
2489
2490         Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
2491         https://bugs.webkit.org/show_bug.cgi?id=192197
2492
2493         Reviewed by Jiewen Tan.
2494
2495         * Scripts/webkitperl/FeatureList.pm:
2496         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2497
2498 2018-11-30  Dean Jackson  <dino@apple.com>
2499
2500         Add first-class support for .mjs files in jsc binary
2501         https://bugs.webkit.org/show_bug.cgi?id=192190
2502         <rdar://problem/46375715>
2503
2504         Reviewed by Keith Miller.
2505
2506         Add .mjs files to the regexp looking for all JS files.
2507
2508         * Scripts/run-jsc-stress-tests:
2509
2510 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2511
2512         webkitpy: Use DeviceType instead of str to represent device class
2513         https://bugs.webkit.org/show_bug.cgi?id=192160
2514         <rdar://problem/46344845>
2515
2516         Rubber-stamped by Aakash Jain.
2517
2518         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2519         (Manager._custom_device_for_test): Use DeviceTypes instead of strings to represent device type.
2520         (Manager._set_up_run): Do not set _options.device_class, use device_type instead of device_class.
2521         (Manager.run): Use device_type instead of device_class.
2522         (Manager._print_expectations_for_subset): Ditto.
2523         (Manager.print_expectations): Ditto.
2524         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
2525         (ManagerTest.test_uses_custom_device): Use DeviceType and actual device definition.
2526         * Scripts/webkitpy/layout_tests/views/printing.py:
2527         (Printer.print_workers_and_shards): Outputting the device suffix doesn't really help, and means
2528         device type needs to be passed around.
2529         * Scripts/webkitpy/port/apple.py:
2530         (ApplePort.setup_test_run): Use device_type instead of device_class.
2531         * Scripts/webkitpy/port/base.py:
2532         (Port):
2533         (Port.setup_test_run): Use device_type instead of device_class.
2534         * Scripts/webkitpy/port/device_port.py:
2535         (DevicePort):
2536         (DevicePort.setup_test_run): Receive device_type as DeviceType object.
2537         (DevicePort._create_devices): Deleted.
2538         * Scripts/webkitpy/port/gtk.py:
2539         (GtkPort.setup_test_run): Use device_type instead of device_class.
2540         * Scripts/webkitpy/port/ios.py:
2541         (IOSPort):
2542         * Scripts/webkitpy/port/ios_simulator.py:
2543         (IOSSimulatorPort):
2544         (IOSSimulatorPort.__init__): Deleted.
2545         (IOSSimulatorPort._set_device_class): Deleted.
2546         * Scripts/webkitpy/port/test.py:
2547         * Scripts/webkitpy/port/watch.py:
2548         (WatchPort):
2549         * Scripts/webkitpy/port/watch_simulator.py:
2550         (WatchSimulatorPort):
2551         (WatchSimulatorPort.__init__): Deleted.
2552         (WatchSimulatorPort._set_device_class): Deleted.
2553         * Scripts/webkitpy/port/win.py:
2554         (WinPort.setup_test_run): Use device_type instead of device_class.
2555         * Scripts/webkitpy/xcode/simulated_device.py:
2556         (SimulatedDeviceManager._disambiguate_device_type): Using the existing devices for this is
2557         a problem if no such device exists yet. Use the _device_identifier_to_name dictionary instead
2558         since this should have hardware types in the device names.
2559
2560 2018-11-30  David Quesada  <david_quesada@apple.com>
2561
2562         -[WKProcessPool _downloadURLRequest:] should allow specifying the initiating web view
2563         https://bugs.webkit.org/show_bug.cgi?id=192212
2564         rdar://problem/46363706
2565
2566         Reviewed by Alex Christensen.
2567
2568         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
2569         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
2570
2571 2018-11-30  Zalan Bujtas  <zalan@apple.com>
2572
2573         [LFC][BFC] Compute min/maxHeight margins only when they are needed.
2574         https://bugs.webkit.org/show_bug.cgi?id=192223
2575
2576         Reviewed by Antti Koivisto.
2577
2578         * LayoutReloaded/misc/LFC-passing-tests.txt:
2579
2580 2018-11-30  Zalan Bujtas  <zalan@apple.com>
2581
2582         [LFC][BFC][MarginCollapsing] Do not use computed display box values for border and padding
2583         https://bugs.webkit.org/show_bug.cgi?id=192214
2584
2585         Reviewed by Antti Koivisto.
2586
2587         * LayoutReloaded/misc/LFC-passing-tests.txt:
2588
2589 2018-11-30  Thibault Saunier  <tsaunier@igalia.com>
2590
2591         [GTK][MiniBrowser] Handle Device Info permission requests
2592         https://bugs.webkit.org/show_bug.cgi?id=191585
2593
2594         Reviewed by Carlos Garcia Campos.
2595
2596         * MiniBrowser/gtk/BrowserTab.c:
2597         (permissionRequestDataNew):
2598         (permissionRequestDataFree):
2599         (permissionRequestDialogResponse):
2600         (decidePermissionRequest):
2601         (browserTabConstructed):
2602
2603 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2604
2605         Unreviewed GTK+ gardening. Stop running tests without complex text enforced
2606
2607         We have enforced complex text in GTK+ for one release cycle without noticing any major issue nor performance
2608         regression.
2609
2610         * WebKitTestRunner/gtk/main.cpp:
2611         (main):
2612
2613 2018-11-29  Wenson Hsieh  <wenson_hsieh@apple.com>
2614
2615         REGRESSION (r238635): Dragging a text selection within WKWebView causes the selection highlight to get into a bad state
2616         https://bugs.webkit.org/show_bug.cgi?id=192165
2617         <rdar://problem/46346682>
2618
2619         Reviewed by Daniel Bates.
2620
2621         Fixes 11 API tests that started failing or timing out after r238635. See below for more details.
2622
2623         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
2624         (TestWebKitAPI::webViewForEditActionTesting):
2625         (TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
2626
2627         Ensure that the web view becomes first responder before executing edit actions.
2628
2629         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
2630         * TestWebKitAPI/Tests/WebKitCocoa/contenteditable-and-textarea.html:
2631
2632         Tweak these tests to allow selected content to overflow the width of the web view. Without this change,
2633         ContentEditableToContentEditable and ContentEditableToTextarea will sometimes fail because the content causes
2634         the body to scroll horizontally, so we miss the drop destination.
2635
2636         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2637         (loadTestPageAndEnsureInputSession):
2638
2639         Add a new helper to load a test page with a given name, become first responder, and wait until an input session
2640         starts. Use this in various drag and drop tests to reduce code duplication.
2641
2642         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2643         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2644         (-[DragAndDropSimulator initWithWebView:]):
2645         (-[DragAndDropSimulator _resetSimulatedState]):
2646         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
2647         (-[DragAndDropSimulator _advanceProgress]):
2648
2649         To more accurately emulate UIKit behavior, begin focus preservation when starting a drag, and attempt to clear
2650         the focus preservation token when the drag session ends. This allows us to simulate and test the scenario that
2651         regressed with r238635.
2652
2653         (-[DragAndDropSimulator ensureInputSession]):
2654         (-[DragAndDropSimulator _webView:didStartInputSession:]):
2655         (-[DragAndDropSimulator waitForInputSession]): Deleted.
2656
2657         Refactored into -ensureInputSession. Instead of assuming that an input session has not yet been started, simply
2658         wait for an input session to start if needed.
2659
2660         * TestWebKitAPI/ios/UIKitSPI.h:
2661
2662         Add a new SPI declaration.
2663
2664 2018-11-29  Tim Horton  <timothy_horton@apple.com>
2665
2666         Inform clients when editable image attachment backing data changes
2667         https://bugs.webkit.org/show_bug.cgi?id=192206
2668         <rdar://problem/46350277>
2669
2670         Reviewed by Wenson Hsieh.
2671
2672         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2673         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2674         (-[AttachmentUpdateObserver init]):
2675         (-[AttachmentUpdateObserver dataInvalidated]):
2676         (-[AttachmentUpdateObserver _webView:didInvalidateDataForAttachment:]):
2677         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentInvalidation):
2678         (webViewForTestingAttachments):
2679         (TestWebKitAPI::forEachViewInHierarchy):
2680         (TestWebKitAPI::findEditableImageCanvas):
2681         (TestWebKitAPI::drawSquareInEditableImage):
2682         (TestWebKitAPI::TEST):
2683         * TestWebKitAPI/ios/PencilKitTestSPI.h: Added.
2684         Add a test ensuring that we get an invalidation callback when an editable image is changed.
2685
2686 2018-11-29  Fujii Hironori  <Hironori.Fujii@sony.com>
2687
2688         REGRESSION(r238445)[Buildbot] Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
2689         https://bugs.webkit.org/show_bug.cgi?id=192143
2690
2691         Reviewed by Philippe Normand.
2692
2693         Buildbot can't start since r238445.
2694
2695         > Configuration Errors:
2696         >   Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
2697         >   Unknown builder 'GTK Linux ARM Release' in scheduler 'trunk'
2698
2699         * BuildSlaveSupport/build.webkit.org-config/config.json: Removed deprecated builders.
2700
2701 2018-11-29  David Quesada  <david_quesada@apple.com>
2702
2703         Add SPI to publish NSProgress on active downloads
2704         https://bugs.webkit.org/show_bug.cgi?id=192021
2705         rdar://problem/44405661
2706
2707         Reviewed by Alex Christensen.
2708
2709         Add API tests to exercise the progress-publishing functionality in a variety of scenarios.
2710
2711         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2712         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm: Added.
2713         (+[DownloadProgressTestProtocol registerProtocolForTestRunner:]):
2714         (+[DownloadProgressTestProtocol unregisterProtocol]):
2715         (+[DownloadProgressTestProtocol canInitWithRequest:]):
2716         (+[DownloadProgressTestProtocol canonicalRequestForRequest:]):
2717         (+[DownloadProgressTestProtocol requestIsCacheEquivalent:toRequest:]):
2718         (-[DownloadProgressTestProtocol startLoading]):
2719         (-[DownloadProgressTestProtocol stopLoading]):
2720         (-[DownloadProgressTestRunner init]):
2721         (-[DownloadProgressTestRunner startLoadingWithProtocol:]):
2722         (-[DownloadProgressTestRunner tearDown]):
2723         (-[DownloadProgressTestRunner _didGetProgress:]):
2724         (-[DownloadProgressTestRunner _didLoseProgress]):
2725         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
2726         (-[DownloadProgressTestRunner waitToLoseProgress]):
2727         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
2728         (-[DownloadProgressTestRunner publishProgress]):
2729         (-[DownloadProgressTestRunner receiveData:]):
2730         (-[DownloadProgressTestRunner finishDownloadTask]):
2731         (-[DownloadProgressTestRunner failDownloadTask]):
2732         (-[DownloadProgressTestRunner waitForDownloadDidCreateDestination]):
2733         (-[DownloadProgressTestRunner waitForDownloadFinished]):
2734         (-[DownloadProgressTestRunner waitForDownloadCanceled]):
2735         (-[DownloadProgressTestRunner waitForDownloadFailed]):
2736         (-[DownloadProgressTestRunner waitForUpdatedCompletedUnitCount]):
2737         (-[DownloadProgressTestRunner observeValueForKeyPath:ofObject:change:context:]):
2738         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationResponse:decisionHandler:]):
2739         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationAction:decisionHandler:]):
2740         (-[DownloadProgressTestRunner _downloadDidStart:]):
2741         (-[DownloadProgressTestRunner _download:didCreateDestination:]):
2742         (-[DownloadProgressTestRunner _downloadDidFinish:]):
2743         (-[DownloadProgressTestRunner _downloadDidCancel:]):
2744         (-[DownloadProgressTestRunner _download:didFailWithError:]):
2745         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2746         (TEST):
2747
2748 2018-11-29  Alexey Proskuryakov  <ap@apple.com>
2749
2750         Exception in bot watcher's dashboard if a hidden platform in no longer configured for display
2751         https://bugs.webkit.org/show_bug.cgi?id=185527
2752
2753         Reviewed by Aakash Jain.
2754
2755         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
2756         (updateHiddenPlatforms):
2757
2758 2018-11-29  Zalan Bujtas  <zalan@apple.com>
2759
2760         [LFC][BFC][Quirk] Body and html height stretching.
2761         https://bugs.webkit.org/show_bug.cgi?id=192154
2762
2763         Reviewed by Antti Koivisto.
2764
2765         * LayoutReloaded/misc/LFC-passing-tests.txt:
2766
2767 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
2768
2769         webkitpy: Unify device creation
2770         https://bugs.webkit.org/show_bug.cgi?id=192158
2771         <rdar://problem/46344757>
2772
2773         Reviewed by Lucas Forschler.
2774
2775         * Scripts/webkitpy/port/device_port.py:
2776         (DevicePort):
2777         (DevicePort.setup_test_run): Use DEVICE_MANAGER to create devices based on the specified device class.
2778         * Scripts/webkitpy/port/ios.py:
2779         (IOSPort): Add DEFAULT_DEVICE_CLASS.
2780         * Scripts/webkitpy/port/ios_device.py:
2781         (IOSDevicePort):
2782         (IOSDevicePort._create_devices): Deleted.
2783         * Scripts/webkitpy/port/ios_simulator.py:
2784         (IOSSimulatorPort._create_devices): Deleted.
2785         * Scripts/webkitpy/port/watch.py:
2786         (WatchPort): Add DEFAULT_DEVICE_CLASS.
2787         * Scripts/webkitpy/port/watch_device.py:
2788         (WatchDevicePort):
2789         (WatchDevicePort._create_devices): Deleted.
2790         * Scripts/webkitpy/port/watch_simulator.py:
2791         (WatchSimulatorPort._create_devices): Deleted.
2792         * Scripts/webkitpy/xcode/device_type_unittest.py:
2793         (DeviceTypeTest.test_from_string): Test that DeviceTypes without hardware types can be constructed
2794         from strings.
2795
2796 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
2797
2798         EWS iOS-sim bots sometimes fails to shutdown simulator
2799         https://bugs.webkit.org/show_bug.cgi?id=191864
2800
2801         Reviewed by Aakash Jain.
2802
2803         * Scripts/webkitpy/xcode/simulated_device.py:
2804         (SimulatedDevice._shut_down): Increase time to wait for simulated device to
2805         shut down, ignore exit code indicating a device is already shut down.
2806
2807 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
2808
2809         webkitpy: Unify ios_version/watchos_version code
2810         https://bugs.webkit.org/show_bug.cgi?id=192153
2811         <rdar://problem/46343642>
2812
2813         Reviewed by Lucas Forschler.
2814
2815         Treating watchOS and iOS versions differently makes it harder to share code between the similar ports.
2816
2817         * Scripts/webkitpy/port/device_port.py:
2818         (DevicePort):
2819         (DevicePort.device_version): Added.
2820         * Scripts/webkitpy/port/ios.py:
2821         (IOSPort.default_baseline_search_path): Use device_version() instead of ios_version().
2822         (IOSPort.ios_version): Deleted.
2823         * Scripts/webkitpy/port/ios_device.py:
2824         (IOSDevicePort.device_version): Renamed from ios_version().
2825         (IOSDevicePort.ios_version): Deleted.
2826         * Scripts/webkitpy/port/ios_simulator.py:
2827         (IOSSimulatorPort.device_version): Renamed from ios_version().
2828         (IOSSimulatorPort.default_child_processes.booted_ios_devices_filter): Use device_version() instead of ios_version().
2829         (IOSSimulatorPort._create_devices): Ditto.
2830         (IOSSimulatorPort.check_sys_deps): Ditto.
2831         (IOSSimulatorPort.ios_version): Deleted.
2832         * Scripts/webkitpy/port/watch.py:
2833         (WatchPort.default_baseline_search_path): Use device_version() instead of watchos_version().
2834         (WatchPort.watchos_version): Deleted.
2835         * Scripts/webkitpy/port/watch_device.py:
2836         (WatchDevicePort.device_version): Renamed from watchos_version().
2837         (WatchDevicePort.watchos_version): Deleted.
2838         * Scripts/webkitpy/port/watch_simulator.py:
2839         (WatchSimulatorPort.device_version): Renamed from watchos_version().
2840         (WatchSimulatorPort.default_child_processes.filter_booted_watchos_devices): Use device_version() instead of watchos_version().
2841         (WatchSimulatorPort._create_devices): Ditto.
2842         (WatchSimulatorPort.check_sys_deps): Ditto.
2843         (WatchSimulatorPort.watchos_version): Deleted.
2844
2845 2018-11-28  Wenson Hsieh  <wenson_hsieh@apple.com>
2846
2847         [iOSMac] Dropping text selections from web content into editable elements crashes the web process
2848         https://bugs.webkit.org/show_bug.cgi?id=192113
2849         <rdar://problem/46323701>
2850
2851         Reviewed by Ryosuke Niwa.
2852
2853         Add a test to verify that, when dropping an item with both "com.apple.webarchive" and "public.utf8-plain-text"
2854         representations, the higher fidelity web archive data is used when handling the drop.
2855
2856         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
2857
2858 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
2859
2860         [ews-app] Fetch bugs from Bugzilla and submit to Buildbot
2861         https://bugs.webkit.org/show_bug.cgi?id=191947
2862
2863         Reviewed by Lucas Forschler.
2864
2865         * BuildSlaveSupport/ews-app/ews/fetcher.py: Added.
2866
2867 2018-11-28  Alex Christensen  <achristensen@webkit.org>
2868
2869         Fix iOS API test after r238585
2870         https://bugs.webkit.org/show_bug.cgi?id=192022
2871
2872         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2873         (TEST):
2874         On iOS, a safe browsing warning over a WKWebView with frame of {0, 0, 0, 0} has a size of {0, 0}, which is fine.
2875         The test was added to catch a bug on Mac platforms, so testing it only on Mac will catch any regression.
2876
2877 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
2878
2879         [ews-app] Configure python logging
2880         https://bugs.webkit.org/show_bug.cgi?id=192005
2881
2882         Reviewed by Lucas Forschler.
2883
2884         * BuildSlaveSupport/ews-app/ews/__init__.py: Configured logging.
2885
2886 2018-11-28  Keith Rollin  <krollin@apple.com>
2887
2888         Update generate-{derived,unified}-sources scripts to support generating .xcfilelist files
2889         https://bugs.webkit.org/show_bug.cgi?id=192031
2890         <rdar://problem/46286816>
2891
2892         Reviewed by Alex Christensen.
2893
2894         The Generate Derived Sources and Generate Unified Sources build phases
2895         in Xcode need to have their inputs and outputs specified. This
2896         specification will come in the form of .xcfilelist files that will be
2897         attached to these build phases. There is one .xcfilelist file that
2898         lists the input file and one that lists the output files. As part of
2899         this work, the various generate-{derived,unified}-sources scripts that
2900         are executed in these Generate build phases are modified to help in
2901         the creation of these .xcfilelist files. In particular, they can now
2902         be invoked with command-line parameters. These parameters are then
2903         used to alter the normal execution of these scripts, causing them to
2904         produce the .xcfilelist files as opposed to actually generating the
2905         files that are listed in those files.
2906
2907         * DumpRenderTree/Scripts/generate-derived-sources.sh:
2908         * WebKitTestRunner/Scripts/generate-derived-sources.sh:
2909
2910 2018-11-28  Keith Rollin  <krollin@apple.com>
2911
2912         Revert print_all_generated_files work in r238008; tighten up target specifications
2913         https://bugs.webkit.org/show_bug.cgi?id=192025
2914         <rdar://problem/46284301>
2915
2916         Reviewed by Alex Christensen.
2917
2918         In r238008, I added a facility for DerivedSources.make makefiles to
2919         print out the list of files that they generate. This output was used
2920         in the generation of .xcfilelist files used to specify the output of
2921         the associated Generate Derived Sources build phases in Xcode. This
2922         approach worked, but it meant that people would need to follow a
2923         specific convention to keep this mechanism working.
2924
2925         Instead of continuing this approach, I'm going to implement a new
2926         facility based on the output of `make` when passed the -d flag (which
2927         prints dependency information). This new mechanism is completely
2928         automatic and doesn't need maintainers to follow a convention. To that
2929         end, remove most of the work performed in r238008 that supports the
2930         print_all_generated_files target.
2931
2932         At the same time, it's important for the sets of targets and their
2933         dependencies to be complete and correct. Therefore, also include
2934         changes to bring those up-to-date. As part of that, you'll see
2935         prevalent use of a particular technique. Here's an example:
2936
2937             BYTECODE_FILES = \
2938                 Bytecodes.h \
2939                 BytecodeIndices.h \
2940                 BytecodeStructs.h \
2941                 InitBytecodes.asm \
2942             #
2943             BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
2944
2945             all : $(BYTECODE_FILES)
2946
2947             $(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb
2948                 ...
2949
2950         These lines indicate a set of generated files (those specified in
2951         BYTECODE_FILES). These files are generated by the BytecodeList.rb
2952         tool. But, as opposed to the normal rule where a single foo.output is
2953         generated by foo.input plus some additional dependencies, this rule
2954         produces multiple output files from a tool whose connection to the
2955         output files is not immediately clear. A special approach is needed
2956         where a single rule produces multiple output files. The normal way to
2957         implement this is to use an .INTERMEDIATE target. However, we used
2958         this approach in the past and ran into a problem with it, addressing
2959         it with an alternate approach in r210507. The above example shows this
2960         approach. The .'s in the list of target files are replaced with %'s,
2961         and the result is used as the left side of the dependency rule.
2962
2963         * DumpRenderTree/DerivedSources.make:
2964         * WebKitTestRunner/DerivedSources.make:
2965
2966 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
2967
2968         [ews-app] Add support to get list of Bugzilla patches needing review
2969         https://bugs.webkit.org/show_bug.cgi?id=191942
2970
2971         Reviewed by Lucas Forschler.
2972
2973         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
2974         (Bugzilla.get_list_of_patches_needing_reviews): Get list of patches needing review.
2975         (BugzillaBeautifulSoup.fetch_attachment_ids_from_review_queue): Copied from Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py
2976         (BugzillaBeautifulSoup._load_query): Ditto.
2977         (BugzillaBeautifulSoup._parse_attachment_ids_request_query): Ditto.
2978
2979 2018-11-28  Daniel Bates  <dabates@apple.com>
2980
2981         [iOS] Page not defocused when Find-in-page becomes first responder
2982         https://bugs.webkit.org/show_bug.cgi?id=192084
2983         <rdar://problem/46146777>
2984
2985         Reviewed by Tim Horton.
2986
2987         Add tests for both Mac and iOS to ensure that when finding a string on the page
2988         that we do not start an input session if a match is found in an <input> and the
2989         WKWebView is not the first responder.
2990
2991         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2992         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm: Added.
2993         (-[WKWebViewFindStringInputDelegate _webView:didStartInputSession:]):
2994         (-[WKWebViewFindStringFindDelegate findString]):
2995         (-[WKWebViewFindStringFindDelegate _webView:didCountMatches:forString:]):
2996         (-[WKWebViewFindStringFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
2997         (-[WKWebViewFindStringFindDelegate _webView:didFailToFindString:]):
2998         (returnNo):
2999         (returnYes):
3000         (viewIsFirstResponder):
3001         (TestWebKitAPI::TEST):
3002         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3003         (WTR::PlatformWebView::PlatformWebView): Make the view the first responder before the
3004         window key. This matches the ordering used in PlatformWebView::focus(). No behavior change.
3005
3006 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3007
3008         [ews-app] Add BeautifulSoup
3009         https://bugs.webkit.org/show_bug.cgi?id=191994
3010
3011         Reviewed by Lucas Forschler.
3012
3013         * BuildSlaveSupport/ews-app/ews/thirdparty: Added.
3014         * BuildSlaveSupport/ews-app/ews/thirdparty/BeautifulSoup.py: Added.
3015         * BuildSlaveSupport/ews-app/ews/thirdparty/__init__.py: Added.
3016
3017 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3018
3019         [ews-app] Add support to download Patch from Bugzilla
3020         https://bugs.webkit.org/show_bug.cgi?id=191943
3021
3022         Reviewed by Lucas Forschler.
3023
3024         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py: Added.
3025         (Bugzilla.retrieve_attachment): Retreives the attachment from Bugzilla and saves to disk.
3026         (Bugzilla._fetch_attachment_json):
3027         (Bugzilla.file_path_for_patch):
3028         * BuildSlaveSupport/ews-app/ews/common/util.py: Added.
3029         (fetch_data_from_url): Method to fetch data from given url.
3030         * BuildSlaveSupport/ews-app/ews/config.py:
3031
3032 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3033
3034         [ews-app] Add methods to update Patch fields
3035         https://bugs.webkit.org/show_bug.cgi?id=191931
3036
3037         Reviewed by Lucas Forschler.
3038
3039         * BuildSlaveSupport/ews-app/ews/models/patch.py:
3040         (Patch.set_sent_to_buildbot):
3041         (Patch.set_bug_id):
3042         (Patch.set_obsolete):
3043
3044 2018-11-28  Yongjun Zhang  <yongjun_zhang@apple.com>
3045
3046         Allow WebKit clients to specify a minimum effective width for layout.
3047         https://bugs.webkit.org/show_bug.cgi?id=191499
3048         <rdar://problem/45362678>
3049
3050         Reviewed by Wenson Hsieh.
3051
3052         Allow UIScriptController to set WKWebView's minimum effective width with a new `setMinimumEffectiveWidth` method.
3053
3054         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3055         (WTR::UIScriptController::setMinimumEffectiveWidth):
3056         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3057         (WTR::UIScriptController::setViewScale):
3058         (WTR::UIScriptController::setMinimumEffectiveWidth):
3059         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3060         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3061         (WTR::UIScriptController::setMinimumEffectiveWidth):
3062         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3063         * WebKitTestRunner/UIScriptControllerCocoa.mm:
3064         (WTR::UIScriptController::setMinimumEffectiveWidth):
3065         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3066         (WTR::TestController::cocoaResetStateToConsistentValues):
3067
3068 2018-11-28  Lucas Forschler  <lforschler@apple.com>
3069
3070         Fix webkitbot hi command.
3071         https://bugs.webkit.org/show_bug.cgi?id=192080
3072
3073         Reviewed by Alexey Proskuryakov.
3074
3075         * Scripts/webkitpy/tool/bot/irc_command.py:
3076         (Hi.execute):
3077
3078 2018-11-28  Zalan Bujtas  <zalan@apple.com>
3079
3080         [LFC][Quirk] Use non-collapsed vertical margin values when the container is stretched to the size of the ICB.
3081         https://bugs.webkit.org/show_bug.cgi?id=192078
3082
3083         Reviewed by Antti Koivisto.
3084
3085         * LayoutReloaded/misc/LFC-passing-tests.txt:
3086
3087 2018-11-28  Zalan Bujtas  <zalan@apple.com>
3088
3089         [LFC] Add support for quirk container's collapsing top margin in quirks mode.
3090         https://bugs.webkit.org/show_bug.cgi?id=192070
3091
3092         Reviewed by Antti Koivisto.
3093
3094         * LayoutReloaded/misc/LFC-passing-tests.txt:
3095
3096 2018-11-28  Thibault Saunier  <tsaunier@igalia.com>
3097
3098         [WebRTC][GStreamer] Make sure to have the default microphone on the top of the list
3099         https://bugs.webkit.org/show_bug.cgi?id=192026
3100
3101         Reviewed by Philippe Normand.
3102
3103         Otherwise we might end up picking a useless one in some applications
3104         (not sure what those application do though).
3105
3106         GStreamer patch proposed as https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/34/diffs
3107
3108         * flatpak/org.webkit.CommonModules.yaml:
3109         * gstreamer/jhbuild.modules:
3110         * gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Added.
3111
3112 2018-11-28  Tomas Popela  <tpopela@redhat.com>
3113
3114         [GTK] Silence compilation warnings in glib unittests
3115         https://bugs.webkit.org/show_bug.cgi?id=192009
3116
3117         Reviewed by Michael Catanzaro.
3118
3119         Mark the destructor as virtual.
3120
3121         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3122         (Test::~Test):
3123
3124 2018-11-27  Mark Lam  <mark.lam@apple.com>
3125
3126         ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
3127         https://bugs.webkit.org/show_bug.cgi?id=192055
3128         <rdar://problem/46288783>
3129
3130         Reviewed by Saam Barati.
3131
3132         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3133
3134 2018-11-27  Alex Christensen  <achristensen@webkit.org>
3135
3136         Make synchronous IPC introduced in r237267 asynchronous
3137         https://bugs.webkit.org/show_bug.cgi?id=190757
3138
3139         Reviewed by Chris Dumez.
3140
3141         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3142
3143 2018-11-27  Jonathan Bedard  <jbedard@apple.com>
3144
3145         webkitpy: Add watchOS ports
3146         https://bugs.webkit.org/show_bug.cgi?id=191974
3147         <rdar://problem/46251051>
3148
3149         Reviewed by Aakash Jain.
3150
3151         * Scripts/webkitpy/port/factory.py:
3152         (PortFactory): Add WatchDevice and WatchSimulator ports.
3153         * Scripts/webkitpy/port/watch.py: Added.
3154         (WatchPort): Base class for watchOS ports.
3155         * Scripts/webkitpy/port/watch_device.py: Added.
3156         (WatchDevicePort): Class for running layout tests on a watchOS device.
3157         * Scripts/webkitpy/port/watch_simulator.py: Added.
3158         (WatchSimulatorPort): Class for running layout tests on a watchOS simulator.
3159         * Scripts/webkitpy/port/watch_simulator_unittest.py: Added.
3160         (WatchSimulatorTest):
3161         * Scripts/webkitpy/port/watch_testcase.py: Added.
3162         (WatchTest):
3163
3164 2018-11-27  Alex Christensen  <achristensen@webkit.org>
3165
3166         Safe browsing warning text needs to be visible on High Sierra
3167         https://bugs.webkit.org/show_bug.cgi?id=192022
3168
3169         Reviewed by Tim Horton.
3170
3171         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3172         (TEST):
3173
3174 2018-11-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3175
3176         Unreviewed, fix the watchOS engineering build
3177
3178         Disable a newly added API test, since DDScannerResult is unavailable on watchOS.
3179
3180         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
3181
3182 2018-11-27  Chris Dumez  <cdumez@apple.com>
3183
3184         Regression(PSON) crash under WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame()
3185         https://bugs.webkit.org/show_bug.cgi?id=191983
3186         <rdar://problem/46246863>
3187
3188         Reviewed by Geoffrey Garen.
3189
3190         Add API test coverage.
3191
3192         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3193
3194 2018-11-27  Aakash Jain  <aakash_jain@apple.com>
3195
3196         [ews-app] Add support to communicate with Buildbot (Follow-up fix)
3197         https://bugs.webkit.org/show_bug.cgi?id=191935
3198         <rdar://problem/46262314>
3199
3200         Unreviewed infrastructure fix.
3201
3202         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
3203         (Buildbot.send_patch_to_buildbot):
3204
3205 2018-11-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3206
3207         [Cocoa] No way for clients to tell whether the content view is in the responder chain when the web view is
3208         https://bugs.webkit.org/show_bug.cgi?id=169212
3209         <rdar://problem/30899656>
3210
3211         Reviewed by Tim Horton.
3212
3213         Add an API test to exercise the behavior of `-_contentViewIsFirstResponder` when an embedded text input becomes
3214         and resigns first responder.
3215
3216         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3217         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm: Added.
3218         (-[FirstResponderTestingView initWithFrame:]):
3219         (-[FirstResponderTestingView inputField]):
3220         (TestWebKitAPI::TEST):
3221
3222 2018-11-26  Fujii Hironori  <Hironori.Fujii@sony.com>
3223
3224         [CMake] Remove ENABLE_ACCESSIBILITY CMake variable
3225         https://bugs.webkit.org/show_bug.cgi?id=191831
3226
3227         Reviewed by Michael Catanzaro.
3228
3229         * WebKitTestRunner/CMakeLists.txt:
3230
3231 2018-11-26  Tim Horton  <timothy_horton@apple.com>
3232
3233         Insert <attachment> elements under editable images to make their backing data accessible
3234         https://bugs.webkit.org/show_bug.cgi?id=191844
3235         <rdar://problem/30900149>
3236
3237         Reviewed by Simon Fraser.
3238
3239         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3240         (WTR::UIScriptController::attachmentInfo):
3241         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3242         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3243         (WTR::UIScriptController::attachmentInfo):
3244         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3245         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3246         (WTR::UIScriptController::attachmentInfo):
3247         Add a UIScriptController mechanism to retrieve information about
3248         a given attachment.
3249
3250 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3251
3252         [ews-app] Add support to communicate with Buildbot
3253         https://bugs.webkit.org/show_bug.cgi?id=191935
3254
3255         Reviewed by Lucas Forschler.
3256
3257         * BuildSlaveSupport/ews-app/ews/common/__init__.py: Added.
3258         * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Added.
3259
3260 2018-11-26  Jonathan Bedard  <jbedard@apple.com>
3261
3262         webkitpy: Race condition in ServerProcess tests
3263         https://bugs.webkit.org/show_bug.cgi?id=191989
3264         <rdar://problem/45536844>
3265
3266         Reviewed by Lucas Forschler.
3267
3268         Serializing these tests to prevent the race conditions.
3269
3270         * Scripts/webkitpy/port/server_process_unittest.py:
3271         (TestServerProcess.serial_test_basic):
3272         (TestServerProcess.serial_test_read_after_process_exits):
3273         (TestServerProcess.serial_test_process_crashing):
3274         (TestServerProcess.serial_test_process_crashing_no_data):
3275         (TestServerProcess.test_basic): Deleted.
3276         (TestServerProcess.test_read_after_process_exits): Deleted.
3277         (TestServerProcess.test_process_crashing): Deleted.
3278         (TestServerProcess.test_process_crashing_no_data): Deleted.
3279
3280 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3281
3282         [ews-app] Add field in Patch object to indicate if it has been sent to Buildbot
3283         https://bugs.webkit.org/show_bug.cgi?id=191929
3284
3285         Reviewed by Lucas Forschler.
3286
3287         * BuildSlaveSupport/ews-app/ews/models/patch.py:
3288         (Patch): Added sent_to_buildbot field.
3289         (Patch.is_patch_sent_to_buildbot): Checks if the patch has been sent to Buildbot.
3290
3291 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3292
3293         [ews-app] Add a config file
3294         https://bugs.webkit.org/show_bug.cgi?id=191933
3295
3296         Reviewed by Lucas Forschler.
3297
3298         * BuildSlaveSupport/ews-app/ews/config.py: Added.
3299
3300 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3301
3302         [ews-app] Add methods to save patch to database
3303         https://bugs.webkit.org/show_bug.cgi?id=191928
3304
3305         Reviewed by Lucas Forschler.
3306
3307         * BuildSlaveSupport/ews-app/ews/models/patch.py:
3308         (Patch.save_patch): Method to save the patch to database.
3309         (Patch.save_patches): Method to save multiple patches to database.
3310         (Patch.is_valid_patch_id): Checks if the patch id is valid.
3311         (Patch.is_existing_patch_id): Checks if the patch id already exists in database.
3312
3313 2018-11-26  Alex Christensen  <achristensen@webkit.org>
3314
3315         Rename WKWebView._safeBrowsingWarningForTesting to _safeBrowsingWarning to use it for more than testing
3316         https://bugs.webkit.org/show_bug.cgi?id=191981
3317
3318         Reviewed by Tim Horton.
3319
3320         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3321         (TEST):
3322         (safeBrowsingView):
3323
3324 2018-11-26  Daniel Bates  <dabates@apple.com>
3325
3326         REGRESSION (r237738): Command Down Arrow doesn't scroll to the end of a page anymore
3327         https://bugs.webkit.org/show_bug.cgi?id=191967
3328         <rdar://problem/45976390>
3329
3330         Reviewed by Tim Horton.
3331
3332         Add more test infrastructure to dispatch key up events.
3333
3334         * WebKitTestRunner/ios/HIDEventGenerator.h:
3335         * WebKitTestRunner/ios/HIDEventGenerator.mm:
3336         (createHIDKeyEvent): Renamed from createHIDKeyDownEvent() and modified to take a boolean as
3337         to whether to create an event for a key down or key up.
3338         (createHIDKeyDownEvent): Deleted; renamed to createHIDKeyEvent().
3339         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3340         (WTR::createUIPhysicalKeyboardEvent): Added. Convenience function to create a UIPhysicalKeyboardEvent.
3341         (WTR::UIScriptController::keyDown): Modified to dispatch a key up event in addition to dispatching
3342         a key down event.
3343
3344 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3345
3346         [ews-app] Set Foreign Keys in EWS Django app models
3347         https://bugs.webkit.org/show_bug.cgi?id=191790
3348
3349         Reviewed by Lucas Forschler.
3350
3351         * BuildSlaveSupport/ews-app/ews/models/builds.py: Set Foreign Key.
3352         * BuildSlaveSupport/ews-app/ews/models/steps.py: Ditto.
3353
3354 2018-11-26  Aakash Jain  <aakash_jain@apple.com>
3355
3356         [ews-app] Do not store patch content in database
3357         https://bugs.webkit.org/show_bug.cgi?id=191788
3358
3359         Reviewed by Lucas Forschler.
3360
3361         * BuildSlaveSupport/ews-app/ews/models/patch.py: Removed content field.
3362
3363 2018-11-26  Jonathan Bedard  <jbedard@apple.com>
3364
3365         webkitpy: Retry app installation on watchOS simulators (Follow-up fix)
3366         https://bugs.webkit.org/show_bug.cgi?id=191769
3367         <rdar://problem/46139850>
3368
3369         Unreviewed infrastructure fix.
3370
3371         * Scripts/webkitpy/xcode/simulated_device.py:
3372         (SimulatedDevice): Increase retry attempts.
3373
3374 2018-11-26  Daniel Bates  <dabates@apple.com>
3375
3376         Move testRunner.toggleCapsLock() to uiController
3377         https://bugs.webkit.org/show_bug.cgi?id=191972
3378
3379         Reviewed by Tim Horton.
3380
3381         Move testRunner.toggleCapsLock() to uiController as uiController is the preferred JavaScript
3382         object for UI test functions. Having this functionality be on uiController makes it an
3383         asynchronous function naturally and complements use of onkeydown, onkeyup listeners to know
3384         when the Caps Lock key event is dispatched. It also facilitates its use directly as part of
3385         scripts with other uiController functions invocations that are passed in a single invocation
3386         of testRunner.runUIScript().
3387
3388         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3389         (WTR::UIScriptController::toggleCapsLock):
3390         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3391         (WTR::UIScriptController::toggleCapsLock):
3392         Added stub functions that invoke the callback. We do not support toggling caps lock in Legacy
3393         WebKit at the moment. Legacy WebKit reads the caps lock key state directly from the OS. Modern
3394         WebKit caches the caps lock state in the WebProcess as a natural side effect of the fact that
3395         the UIProcess is the only process capable of querying the caps lock key state from the OS and
3396         hence the UIProcess must send over this state to the WebProcess.
3397
3398         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Add IDL for new function.
3399         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3400         (WTR::UIScriptController::toggleCapsLock): Added empty implementation for ports non-Cocoa ports.
3401         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3402
3403         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3404         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3405         (WTR::TestRunner::toggleCapsLock): Deleted.
3406         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3407         * WebKitTestRunner/TestController.h:
3408         * WebKitTestRunner/TestInvocation.cpp:
3409         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3410         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3411         (WTR::TestController::toggleCapsLock): Deleted; moved to UIScriptController::toggleCapsLock().
3412         Removed logic to handle testRunner.toggleCapsLock().
3413
3414         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3415         (WTR::UIScriptController::toggleCapsLock): Add stub function that invokes the callback
3416         and a FIXME comment that explains that we will implement this function in <https://bugs.webkit.org/show_bug.cgi?id=191815>.
3417         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3418         (WTR::UIScriptController::toggleCapsLock): Moved the implementation from TestController::toggleCapsLock().
3419
3420 2018-11-26  Brent Fulgham  <bfulgham@apple.com>
3421
3422         [Win] Reduce the use of WKSI library calls: CoreAnimation
3423         https://bugs.webkit.org/show_bug.cgi?id=191777
3424         <rdar://problem/46140542>
3425
3426         Reviewed by Zalan Bujtas.
3427
3428         Update the Windows build of WebKit to refer to the SPI headers, rather than WebKitSystemInterface.
3429         Move a small amount of glue code from WKSI to WebCore, and remove any includes or link
3430         directives for WebKitSystemInterface.lib.
3431
3432         * TestWebKitAPI/PlatformWin.cmake:
3433
3434 2018-11-25  Zalan Bujtas  <zalan@apple.com>
3435
3436         [LFC][IFC] Use float box's margin box to adjust the line constraints.
3437         https://bugs.webkit.org/show_bug.cgi?id=191961
3438
3439         Reviewed by Antti Koivisto.
3440
3441         * LayoutReloaded/misc/LFC-passing-tests.txt:
3442
3443 2018-11-25  Zalan Bujtas  <zalan@apple.com>
3444
3445         Unreviewed test fix after r238467.
3446
3447         * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
3448         (TestWebKitAPI::TEST):
3449
3450 2018-11-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3451
3452         Unreviewed, fix the internal iOS 12 build after r238471
3453
3454         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
3455         (TEST):
3456
3457 2018-11-25  Tim Horton  <timothy_horton@apple.com>
3458
3459         Make it possible to insert editable images with a gesture
3460         https://bugs.webkit.org/show_bug.cgi?id=191937
3461
3462         Reviewed by Wenson Hsieh.
3463
3464         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3465         (WTR::UIScriptController::drawSquareInEditableImage):
3466         If the canvas already has a drawing, draw a new stroke on top of it
3467         instead of removing the existing stroke.
3468
3469 2018-11-24  Wenson Hsieh  <wenson_hsieh@apple.com>
3470
3471         [Cocoa] Add WKWebView SPI to trigger and remove data detection
3472         https://bugs.webkit.org/show_bug.cgi?id=191918
3473         <rdar://problem/36185051>
3474
3475         Reviewed by Tim Horton.
3476
3477         Add an API test to exercise the new WebKit SPI.
3478
3479         * TestWebKitAPI/DataDetectorsCoreSPI.h: Added.
3480         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3481         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
3482         (-[WKWebView synchronouslyDetectDataWithTypes:]):
3483         (-[WKWebView synchronouslyRemoveDataDetectedLinks]):
3484         (TEST):
3485         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3486         (TestWebKitAPI::TEST):
3487         (-[TestWKWebView tagsInBody]): Deleted.
3488         (-[TestWKWebView expectElementTagsInOrder:]): Deleted.
3489         (-[TestWKWebView expectElementCount:tagName:]): Deleted.
3490         (-[TestWKWebView expectElementTag:toComeBefore:]): Deleted.
3491
3492         Rename this from `-expectElementCount:tagName:` to `-expectElementCount:querySelector:`.
3493
3494         * TestWebKitAPI/Tests/WebKitCocoa/data-detectors.html: Added.
3495
3496         Add a new test page containing some content that can be data detected.
3497
3498         * TestWebKitAPI/cocoa/TestWKWebView.h:
3499         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3500         (-[WKWebView tagsInBody]):
3501         (-[WKWebView expectElementTagsInOrder:]):
3502         (-[WKWebView expectElementCount:querySelector:]):
3503         (-[WKWebView expectElementTag:toComeBefore:]):
3504
3505         Move some testing helper functions from WKAttachmentTests to a testing category on WKWebView. This allows us to
3506         use `-expectElementCount:querySelector:` in tests outside of WKAttachmentTests.
3507
3508         (-[WKWebView objectByEvaluatingJavaScript:]):
3509         (-[WKWebView objectByEvaluatingJavaScriptWithUserGesture:]):
3510         (-[WKWebView stringByEvaluatingJavaScript:]):
3511
3512         Move some common helper functions from TestWKWebView to a testing category on WKWebView.
3513
3514         (-[TestWKWebView objectByEvaluatingJavaScript:]): Deleted.
3515         (-[TestWKWebView objectByEvaluatingJavaScriptWithUserGesture:]): Deleted.
3516         (-[TestWKWebView stringByEvaluatingJavaScript:]): Deleted.
3517
3518 2018-11-23  Sam Weinig  <sam@webkit.org>
3519
3520         Add raw pointer overloads to ListHashSet via SmartPtr specialized functions
3521         https://bugs.webkit.org/show_bug.cgi?id=191936
3522
3523         Reviewed by Zalan Bujtas.
3524
3525         Adds tests for raw pointer overloads in ListHashSet.
3526
3527         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
3528         * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
3529
3530 2018-11-23  Wenson Hsieh  <wenson_hsieh@apple.com>
3531
3532         Enable drag and drop support for iOSMac
3533         https://bugs.webkit.org/show_bug.cgi?id=191818
3534         <rdar://problem/43907454>
3535
3536         Reviewed by Dean Jackson.
3537
3538         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3539
3540 2018-11-23  Zalan Bujtas  <zalan@apple.com>
3541
3542         [LFC][IFC] Add support for variable height runs.
3543         https://bugs.webkit.org/show_bug.cgi?id=191925
3544
3545         Reviewed by Antti Koivisto.
3546
3547         * LayoutReloaded/misc/LFC-passing-tests.txt:
3548
3549 2018-11-23  Alberto Garcia  <berto@igalia.com>
3550
3551         [GTK] [WPE] Tools/Platform{GTK,WPE}.cmake files missing from the tarballs
3552         https://bugs.webkit.org/show_bug.cgi?id=191923
3553
3554         Add Tools/PlatformGTK.cmake and Tools/PlatformWPE.cmake to their
3555         respective tarballs.
3556
3557         Reviewed by Carlos Garcia Campos.
3558
3559         * gtk/manifest.txt.in:
3560         * wpe/manifest.txt.in:
3561
3562 2018-11-22  Chris Dumez  <cdumez@apple.com>
3563
3564         Regression(r238353) Load sometimes hangs when navigating back after a cross-site navigation
3565         https://bugs.webkit.org/show_bug.cgi?id=191914
3566
3567         Reviewed by Ryosuke Niwa.
3568
3569         Add API test coverage.
3570
3571         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3572
3573 2018-11-22  Zalan Bujtas  <zalan@apple.com>
3574
3575         [LFC][IFC] Offset formatting context root runs with horizontal margins.
3576         https://bugs.webkit.org/show_bug.cgi?id=191900
3577
3578         Reviewed by Antti Koivisto.
3579
3580         * LayoutReloaded/misc/LFC-passing-tests.txt:
3581
3582 2018-11-22  Philippe Normand  <pnormand@igalia.com>
3583
3584         [GTK] Remove unmaintained bots
3585         https://bugs.webkit.org/show_bug.cgi?id=191467
3586
3587         Reviewed by Alex Christensen.
3588
3589         The Linux 32-bits and ARM build-slaves are no longer maintained
3590         and have been failing for months, so get rid of them.
3591
3592         * BuildSlaveSupport/build.webkit.org-config/config.json:
3593         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
3594         (WebKitBuildbot):
3595         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
3596
3597 2018-11-22  Thibault Saunier  <tsaunier@igalia.com>
3598
3599         [Flatpak] Do not disable signals when running "usual" commands
3600         https://bugs.webkit.org/show_bug.cgi?id=190679
3601
3602         Reviewed by Philippe Normand.
3603
3604         Otherwise <ctr>c doesn't work while compiling. It is not the best fix
3605         as there are cases we want to let only children receive signals, but
3606         it is not clear how to determine when (when running gdb, we still
3607         disable those).
3608
3609         * flatpak/flatpakutils.py:
3610         (WebkitFlatpak.run_in_sandbox):
3611
3612 2018-11-21  Wenson Hsieh  <wenson_hsieh@apple.com>
3613
3614         [Cocoa] [WebKit2] Add support for replacing find-in-page text matches
3615         https://bugs.webkit.org/show_bug.cgi?id=191786
3616         <rdar://problem/45813871>
3617
3618         Reviewed by Ryosuke Niwa.
3619
3620         * MiniBrowser/mac/WK2BrowserWindowController.m:
3621         (-[WK2BrowserWindowController setFindBarView:]):
3622
3623         Fix a bug in MiniBrowser that prevents AppKit from displaying the "All" button in the find bar after checking
3624         the "Replace" option.
3625
3626         * TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
3627
3628         Add an API test to exercise find-and-replace API using WKWebView.
3629
3630         (replaceMatches):
3631         (TEST):
3632         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3633         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3634         (WTR::findOptionsFromArray):
3635         (WTR::TestRunner::findString):
3636         (WTR::TestRunner::findStringMatchesInPage):
3637         (WTR::TestRunner::replaceFindMatchesAtIndices):
3638
3639         Add TestRunner hooks to simulate find-in-page and replace.
3640
3641         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3642
3643 2018-11-21  Zalan Bujtas  <zalan@apple.com>
3644
3645         [LFC][IFC] Horizontal margins should be considered as non-breakable space