Unreviewed, rolling out r219070.
[WebKit-https.git] / Tools / ChangeLog
1 2017-07-05  Matt Lewis  <jlewis3@apple.com>
2
3         Unreviewed, rolling out r219070.
4
5         This revision caused consistent failures of the API test
6         UIPasteboardTests.DoNotPastePlainTextAsURL on iOS.
7
8         Reverted changeset:
9
10         "Pasting single words copied to UIPasteboard inserts URLs in
11         editable areas"
12         https://bugs.webkit.org/show_bug.cgi?id=174082
13         http://trac.webkit.org/changeset/219070
14
15 2017-07-04  Michael Catanzaro  <mcatanzaro@igalia.com>
16
17         Remove unused EFL logo from bot watcher dashboard
18         https://bugs.webkit.org/show_bug.cgi?id=174136
19
20         Reviewed by Alexey Proskuryakov.
21
22         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL.png: Removed.
23         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/EFL@2x.png: Removed.
24
25 2017-07-04  Michael Catanzaro  <mcatanzaro@igalia.com>
26
27         [GTK] Add more GTK bots to dashboard
28         https://bugs.webkit.org/show_bug.cgi?id=174129
29
30         Reviewed by Carlos Alberto Lopez Perez.
31
32         We have a bunch of GTK bots that I never look at because they're not on the dashboard. Add
33         them.
34
35         This also changes the sort order to put WPE above GTK so that it's not buried under all the
36         less-essential GTK bots.
37
38         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
39         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
40         (WebKitBuildbot):
41
42 2017-07-04  Michael Catanzaro  <mcatanzaro@igalia.com>
43
44         [WPE] Add WPE to bot watcher dashboard
45         https://bugs.webkit.org/show_bug.cgi?id=174119
46
47         Reviewed by Alexey Proskuryakov.
48
49         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/CREDIT: Added.
50         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE.png: Added.
51         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE@2x.png: Added.
52         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
53         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
54         (WebKitBuildbot):
55         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
56         (table.queue-grid tr.platform.linux-wpe img.logo):
57
58 2017-07-03  Lucas Forschler  <lforschler@apple.com>
59
60         https://bugs.webkit.org/show_bug.cgi?id=174105
61         
62         Reviewed by Stephanie Lewis.
63
64         * BuildSlaveSupport/built-product-archive:
65         (main): Add a -minify parser option
66         (createZip): Pass along the optional Minify argument if requested
67         (minifySource): This will trim down archives, logic limited to Mac platform.
68
69 2017-07-03  Matt Rajca  <mrajca@apple.com>
70
71         Add/remove appropriate media element behavior restrictions when updateWebsitePolicies is called
72         https://bugs.webkit.org/show_bug.cgi?id=174103
73
74         Reviewed by Alex Christensen.
75
76         Added an API test.
77
78         * TestWebKitAPI/Tests/WebKit2/autoplay-check.html: Expose a pause method.
79         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
80         (TEST): Added test.
81         * TestWebKitAPI/cocoa/TestWKWebView.h:
82         * TestWebKitAPI/cocoa/TestWKWebView.mm:
83         (-[TestWKWebView stringByEvaluatingJavaScript:]): Don't simulate a user gesture when invoking the script.
84
85 2017-07-03  Matt Lewis  <jlewis3@apple.com>
86
87         Unreviewed, rolling out r219103.
88
89         Caused multiple build failures.
90
91         Reverted changeset:
92
93         "Remove copy of ICU headers from WebKit"
94         https://bugs.webkit.org/show_bug.cgi?id=116407
95         http://trac.webkit.org/changeset/219103
96
97 2017-07-03  Myles C. Maxfield  <mmaxfield@apple.com>
98
99         Remove copy of ICU headers from WebKit
100         https://bugs.webkit.org/show_bug.cgi?id=116407
101
102         Reviewed by Alex Christensen.
103
104         Use WTF's copy of ICU headers.
105
106         * DumpRenderTree/mac/Configurations/Base.xcconfig:
107         * TestWebKitAPI/Configurations/Base.xcconfig:
108         * WebKitTestRunner/Configurations/Base.xcconfig:
109
110 2017-07-03  Brady Eidson  <beidson@apple.com>
111
112         Switch all WebKit API related to favicons from WebIconDatabase over to new WebCore::IconLoader mechanism.
113         https://bugs.webkit.org/show_bug.cgi?id=174073
114
115         Reviewed by Andy Estes.
116
117         * DumpRenderTree/mac/TestRunnerMac.mm:
118         (TestRunner::setIconDatabaseEnabled): Call new SPI for this setting instead of WebIconDatabase stuff.
119
120         * TestWebKitAPI/Tests/mac/WebViewIconLoading.mm:
121         (-[MainFrameIconKVO observeValueForKeyPath:ofObject:change:context:]):
122
123 2017-07-03  Matt Lewis  <jlewis3@apple.com>
124
125         Unreviewed, rolling out r219083.
126
127         The revision caused an API failure on all testing platforms.
128
129         Reverted changeset:
130
131         "[MediaStream] Protect request and web view during gUM client
132         callback"
133         https://bugs.webkit.org/show_bug.cgi?id=174096
134         http://trac.webkit.org/changeset/219083
135
136 2017-07-03  Jonathan Bedard  <jbedard@apple.com>
137
138         webkitpy: Properly number duplicated crashlogs
139         https://bugs.webkit.org/show_bug.cgi?id=172002
140
141         Reviewed by Aakash Jain.
142
143         * Scripts/webkitpy/common/system/crashlogs.py:
144         (CrashLogs._find_all_logs_darwin): Number multiple crash logs for a single process with
145         an increasing integer.
146         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
147         (CrashLogsTest.create_crash_logs_darwin): Create duplicated crashlog for testing.
148         (CrashLogsTest.test_find_all_log_darwin): Now 7 Darwin logs instead of 5.
149         (CrashLogsTest.test_duplicate_log_darwin): Test that duplicated logs are correctly numbered.
150
151 2017-07-03  Ryosuke Niwa  <rniwa@webkit.org>
152
153         WebContent processes crash when the network process crashes with pending connection requests
154         https://bugs.webkit.org/show_bug.cgi?id=174065
155         <rdar://problem/30359835>
156
157         Reviewed by Tim Horton.
158
159         Add a API to ensure UI process tries to relaunch a new network process when the network process
160         crashes with pending network connection requests.
161
162         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
163         * TestWebKitAPI/Tests/WebKit2/NetworkProcessCrashWithPendingConnection.mm: Added.
164         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
165         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
166         (-[TestNavigationDelegate webViewWebContentProcessDidTerminate:]): Added.
167
168 2017-07-03  Eric Carlson  <eric.carlson@apple.com>
169
170         [MediaStream] Protect request and web view during gUM client callback
171         https://bugs.webkit.org/show_bug.cgi?id=174096
172         <rdar://problem/32833102>
173
174         Reviewed by Youenn Fablet.
175
176         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
177         * TestWebKitAPI/Tests/WebKit2/GetUserMediaNavigation.mm: New test.
178
179 2017-07-03  Andy Estes  <aestes@apple.com>
180
181         [Xcode] Add an experimental setting to build with ccache
182         https://bugs.webkit.org/show_bug.cgi?id=173875
183
184         Reviewed by Tim Horton.
185
186         On systems that already have ccache(1) installed, this patch adds experimental support for
187         it to Xcode builds. It can be enabled with the WK_USE_CCACHE build setting.
188
189         When ccache is enabled, CC is overridden to invoke Tools/ccache/ccache-clang. This script
190         finds the "-isysroot" argument to determine the active SDK, uses xcrun(1) and the SDK to
191         find the toolchain from which to run clang, and then invokes ccache with the required
192         arguments.
193
194         ccache is invoked with CCACHE_SLOPPINESS="pch_defines,time_macros", which is required for
195         precompiled headers to work properly [1].
196
197         LDPLUSPLUS is overridden to invoke Tools/ccache/ccache-clang++. It behaves the same as
198         ccache-clang, except it tells ccache to execute clang++ instead of clang. This is important
199         during linking.
200         
201         [1] https://ccache.samba.org/manual.html#_precompiled_headers
202
203         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
204         * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
205         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
206         * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
207         * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Ditto.
208         * ccache/README.md: Added.
209         * ccache/ccache-clang: Added.
210         * ccache/ccache-clang++: Added.
211         * ccache/ccache.xcconfig: Added. Overrides CC and LDPLUSPLUS when WK_USE_CACHE=YES.
212
213 2017-07-03  Alex Christensen  <achristensen@webkit.org>
214
215         REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
216         https://bugs.webkit.org/show_bug.cgi?id=174051
217
218         Reviewed by Tim Horton.
219
220         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
221         (TestWebKitAPI::TEST_F):
222
223 2017-07-03  Matt Lewis  <jlewis3@apple.com>
224
225         Unreviewed, rolling out r219024.
226
227         This patch cause 3 didferent test to fail.
228
229         Reverted changeset:
230
231         "REGRESSION(r215096) Queries of URLs with non-special schemes
232         should not percent-encode single quotes"
233         https://bugs.webkit.org/show_bug.cgi?id=174051
234         http://trac.webkit.org/changeset/219024
235
236 2017-07-03  Chris Dumez  <cdumez@apple.com>
237
238         Drop ResourceLoadStatisticsStore's statisticsLock
239         https://bugs.webkit.org/show_bug.cgi?id=174080
240
241         Reviewed by Brent Fulgham.
242
243         Port WebKitTestRunner to new Asynchronous Cocoa SPI.
244
245         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
246         (WTR::TestController::isStatisticsPrevalentResource):
247         (WTR::TestController::isStatisticsHasHadUserInteraction):
248         (WTR::TestController::isStatisticsGrandfathered):
249
250 2017-07-03  Wenson Hsieh  <wenson_hsieh@apple.com>
251
252         Pasting single words copied to UIPasteboard inserts URLs in editable areas
253         https://bugs.webkit.org/show_bug.cgi?id=174082
254         <rdar://problem/33046992>
255
256         Reviewed by Tim Horton.
257
258         Adds 3 new unit tests to UIPasteboardTests to test cases of pasting plain text and URLs.
259
260         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
261         (TestWebKitAPI::setUpWebViewForPasteboardTests):
262         (TestWebKitAPI::TEST):
263
264 2017-07-02  Brady Eidson  <beidson@apple.com>
265
266         Add API test for all parts of WebKit1 API related to favicons.
267         https://bugs.webkit.org/show_bug.cgi?id=174069
268
269         Reviewed by Andy Estes.
270
271         These two API tests cover all WebKit1 API related to icons.
272         
273         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
274         * TestWebKitAPI/Tests/mac/WebViewIconLoading.mm: Added.
275         (mainResourceData):
276         (defaultFaviconData):
277         (customFaviconData):
278         (imageFromData):
279         (+[IconLoadingProtocol canInitWithRequest:]):
280         (+[IconLoadingProtocol canonicalRequestForRequest:]):
281         (-[IconLoadingProtocol startLoading]):
282         (-[IconLoadingProtocol stopLoading]):
283         (-[IconLoadingFrameLoadDelegate webView:didReceiveIcon:forFrame:]):
284         (-[MainFrameIconKVO observeValueForKeyPath:ofObject:change:context:]):
285         (TestWebKitAPI::TEST):
286
287 2017-07-01  Dan Bernstein  <mitz@apple.com>
288
289         [iOS] Remove code only needed when building for iOS 9.x
290         https://bugs.webkit.org/show_bug.cgi?id=174068
291
292         Reviewed by Tim Horton.
293
294         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
295         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
296         (WTR::initializeWebViewConfiguration):
297         * WebKitTestRunner/ios/HIDEventGenerator.mm:
298         (-[HIDEventGenerator _createIOHIDEventType:]):
299
300 2017-07-01  Brady Eidson  <beidson@apple.com>
301
302         When setting a custom cookie storage location on a WKWebsiteDataStore, cookies aren't actually removed.
303         <rdar://problem/32410662> and https://bugs.webkit.org/show_bug.cgi?id=174035
304
305         Reviewed by Alex Christensen.
306
307         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
308
309 2017-07-01  Dan Bernstein  <mitz@apple.com>
310
311         [macOS] Remove code only needed when building for OS X Yosemite
312         https://bugs.webkit.org/show_bug.cgi?id=174067
313
314         Reviewed by Tim Horton.
315
316         * DumpRenderTree/mac/Configurations/Base.xcconfig:
317         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
318         * DumpRenderTree/mac/DumpRenderTree.mm:
319         (setDefaultsToConsistentValuesForTesting):
320         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
321         (-[DumpRenderTreeDraggingInfo resetSpringLoading]):
322         * MiniBrowser/Configurations/Base.xcconfig:
323         * MiniBrowser/Configurations/DebugRelease.xcconfig:
324         * TestWebKitAPI/Configurations/Base.xcconfig:
325         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
326         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
327         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
328         (TestWebKitAPI::TEST_F):
329         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
330         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm:
331         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
332         (TestWebKitAPI::TEST_F):
333         * TestWebKitAPI/Tests/mac/StringTruncator.mm:
334         (TestWebKitAPI::TEST):
335         * WebKitTestRunner/Configurations/Base.xcconfig:
336         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
337         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
338         (WTR::InjectedBundle::platformInitialize):
339         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
340         (-[WebKitTestRunnerDraggingInfo resetSpringLoading]):
341
342 2017-07-01  Chris Dumez  <cdumez@apple.com>
343
344         Replace ResourceLoadStatisticsStore C API with Cocoa SPI
345         https://bugs.webkit.org/show_bug.cgi?id=174060
346
347         Reviewed by Brent Fulgham.
348
349         Port WebKitTestRunner over to the new Cocoa SPI.
350
351         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
352         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
353         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
354         Drop calls to the WKResourceLoadStatisticsStore C API here. Those were
355         no-ops since this code runs in the WebContent process, not the
356         UIProcess.
357
358         * WebKitTestRunner/TestController.cpp:
359         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
360
361 2017-06-30  Megan Gardner  <megan_gardner@apple.com>
362
363         Unreviewed mac build fix.
364
365         * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm:
366         (TestWebKitAPI::TEST):
367
368 2017-06-30  Megan Gardner  <megan_gardner@apple.com>
369
370         Add API to get WKActivatedElementInfo
371         https://bugs.webkit.org/show_bug.cgi?id=174001
372         <rdar://problem/29165518>
373         
374         Tests for now SPI to get activatedElementInfo.
375
376         Reviewed by Tim Horton.
377
378         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
379         * TestWebKitAPI/Tests/WebKit2Cocoa/WKRequestActivatedElementInfo.mm: Added.
380         (TestWebKitAPI::TEST):
381
382 2017-06-30  Chris Dumez  <cdumez@apple.com>
383
384         Move store logic from WebResourceLoadStatisticsManager to WebResourceLoadStatisticsStore
385         https://bugs.webkit.org/show_bug.cgi?id=174038
386
387         Reviewed by Brent Fulgham.
388
389         Fix typo in API name.
390
391         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
392         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
393         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
394         * WebKitTestRunner/InjectedBundle/TestRunner.h:
395         * WebKitTestRunner/TestController.cpp:
396         (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
397         * WebKitTestRunner/TestController.h:
398         * WebKitTestRunner/TestInvocation.cpp:
399         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
400
401 2017-06-30  Alex Christensen  <achristensen@webkit.org>
402
403         REGRESSION(r215096) Queries of URLs with non-special schemes should not percent-encode single quotes
404         https://bugs.webkit.org/show_bug.cgi?id=174051
405         <rdar://problem/33002846>
406
407         Reviewed by Tim Horton.
408
409         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
410         (TestWebKitAPI::TEST_F):
411
412 2017-06-30  Daniel Bates  <dabates@apple.com>
413
414         API::FrameInfo should know the web page that contains the frame; add API property webView to WKFrameInfo
415         https://bugs.webkit.org/show_bug.cgi?id=165160
416         <rdar://problem/29451999>
417
418         Reviewed by Brady Eidson.
419
420         Add tests to ensure that -[WKFrameInfo webView] is computed correctly for the source and target frame
421         for navigations and window creation.
422
423         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
424         * TestWebKitAPI/Tests/WebKit2Cocoa/DecidePolicyForNavigationAction.mm: Added. Derived from file ShouldOpenExternalURLsInNewWindowActions.mm.
425         (-[DecidePolicyForNavigationActionController webView:decidePolicyForNavigationAction:decisionHandler:]):
426         (-[DecidePolicyForNavigationActionController webView:didFinishNavigation:]):
427         (-[DecidePolicyForNavigationActionController webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
428         (TEST):
429
430 2017-06-29  Jer Noble  <jer.noble@apple.com>
431
432         Make Legacy EME API controlled by RuntimeEnabled setting.
433         https://bugs.webkit.org/show_bug.cgi?id=173994
434
435         Reviewed by Sam Weinig.
436
437         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
438
439 2017-06-30  Jonathan Bedard  <jbedard@apple.com>
440
441         Follow-up fix for r218996
442
443         Unreviewed infrastructure fix.
444
445         Repeated calls to 'ios_version' make the log noisy, memoize the function.
446
447         * Scripts/webkitpy/port/ios_simulator.py:
448         (IOSSimulatorPort): Memoize ios_version().
449
450 2017-06-30  Wenson Hsieh  <wenson_hsieh@apple.com>
451
452         [iOS DnD] Drag caret rect is incorrectly computed when dropping in editable content in iframes
453         https://bugs.webkit.org/show_bug.cgi?id=174017
454         <rdar://problem/32959782>
455
456         Reviewed by Simon Fraser.
457
458         Add a new test verifying that the drag caret is visually contained within the bounds of an iframe. Before these
459         changes, the caret would appear outside of the iframe.
460
461         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
462         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-in-iframe.html: Added.
463         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
464         (checkDragCaretRectIsContainedInRect):
465         (TestWebKitAPI::TEST):
466         * TestWebKitAPI/ios/DataInteractionSimulator.h:
467         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
468         (-[DataInteractionSimulator _resetSimulatedState]):
469         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
470         (-[DataInteractionSimulator _advanceProgress]):
471         (-[DataInteractionSimulator lastKnownDragCaretRect]):
472
473 2017-06-30  Jonathan Bedard  <jbedard@apple.com>
474
475         Add support for different versions of iOS when loading test expectations
476         https://bugs.webkit.org/show_bug.cgi?id=173774
477         <rdar://problem/32951132>
478
479         Rubber-stamped by Aakash Jain.
480
481         When running layout tests, we should support multiple version of iOS the same way we do Mac.
482
483         * Scripts/webkitpy/port/ios.py:
484         (IOSPort.default_baseline_search_path): Add ios-<major version> test expectation.
485         (IOSPort.test_expectations_file_position): Added new file expectations, increment expected file position.
486         (IOSPort.ios_version): iOS ports must define a function to retrieve the iOS version.
487         * Scripts/webkitpy/port/ios_device.py:
488         (IOSDevicePort.ios_version): Ask connected devices for implementation.
489         * Scripts/webkitpy/port/ios_device_unittest.py:
490         (IOSDeviceTest.test_additional_platform_directory): Skip test until bug 173775 is finished.
491         (IOSDeviceTest.test_baseline_searchpath): Ditto.
492         (IOSDeviceTest.test_expectations_ordering): Ditto.
493         * Scripts/webkitpy/port/ios_simulator.py:
494         (IOSSimulatorPort.ios_version): If a runtime is specified, ask the runtime for the iOS version. Otherwise,
495         ask the platform.
496
497 2017-06-30  Jacobo Aragunde Pérez  <jaragunde@igalia.com>
498
499         Fontconfig build breaks with glibc 2.15+
500         https://bugs.webkit.org/show_bug.cgi?id=174019
501
502         Reviewed by Carlos Alberto Lopez Perez.
503
504         Apply patch by Khem Raj adapted to fontconfig 2.11.1.
505
506         * wpe/jhbuild.modules:
507         * wpe/patches/fontconfig-avoid-conflicts-with-integer-width-macros-from-TS-18.patch: Added.
508
509 2017-06-29  Wenson Hsieh  <wenson_hsieh@apple.com>
510
511         [iOS DnD] Web content process crashes when the selection is moved far offscreen in dragstart
512         https://bugs.webkit.org/show_bug.cgi?id=174010
513         <rdar://problem/32597802>
514
515         Reviewed by Tim Horton.
516
517         Adds a new API test to ensure that we don't crash trying to dereference a null RefPtr when the TextIndicator
518         snapshot fails for any reason.
519
520         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
521         * TestWebKitAPI/Tests/WebKit2Cocoa/dragstart-change-selection-offscreen.html: Added.
522         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
523         (TestWebKitAPI::TEST):
524
525 2017-06-29  Chris Fleizach  <cfleizach@apple.com>
526
527         AX: Cannot call setValue() on contenteditable or ARIA text controls
528         https://bugs.webkit.org/show_bug.cgi?id=173520
529
530         Reviewed by Ryosuke Niwa.
531
532         Add setValue() method to WKTR (already existed in DRT).
533
534         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
535         (WTR::AccessibilityUIElement::setValue):
536         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
537         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
538         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
539         (WTR::AccessibilityUIElement::setValue):
540
541 2017-06-28  Simon Fraser  <simon.fraser@apple.com>
542
543         getBoundingClientRect returns wrong value for combination of page zoom and scroll
544         https://bugs.webkit.org/show_bug.cgi?id=173841
545         rdar://problem/32983841
546
547         Reviewed by Dean Jackson.
548
549         Make "Zoom In" and "Zoom Out" work correctly in the WebKit1 window. Previously they
550         always did text zooming.
551
552         * MiniBrowser/mac/WK1BrowserWindowController.m:
553         (-[WK1BrowserWindowController zoomIn:]):
554         (-[WK1BrowserWindowController zoomOut:]):
555         (-[WK1BrowserWindowController canResetZoom]):
556         (-[WK1BrowserWindowController resetZoom:]):
557
558 2017-06-29  John Wilander  <wilander@apple.com>
559
560         Fix for intermittent Layout Test fail http/tests/loading/resourceLoadStatistics/telemetry-generation.html
561         https://bugs.webkit.org/show_bug.cgi?id=173940
562         <rdar://problem/33018125>
563
564         Reviewed by Brent Fulgham.
565
566         This change allows the TestController to turn off
567         regular resource load statistics telemetry submission
568         and to manually control when telemetry is calculated
569         and submitted.
570
571         * WebKitTestRunner/TestController.cpp:
572         (WTR::TestController::initialize):
573             Turns off automatic resource load statistics telemetry submission.
574
575 2017-06-29  Commit Queue  <commit-queue@webkit.org>
576
577         Unreviewed, rolling out r218512.
578         https://bugs.webkit.org/show_bug.cgi?id=173981
579
580         "It changes the behavior of the JS API's JSEvaluateScript
581         which breaks TurboTax" (Requested by saamyjoon on #webkit).
582
583         Reverted changeset:
584
585         "test262: Completion values for control flow do not match the
586         spec"
587         https://bugs.webkit.org/show_bug.cgi?id=171265
588         http://trac.webkit.org/changeset/218512
589
590 2017-06-29  Jonathan Bedard  <jbedard@apple.com>
591
592         Add WebKitSystemInterface for iOS 11
593         https://bugs.webkit.org/show_bug.cgi?id=173936
594
595         Reviewed by Lucas Forschler.
596
597         * Scripts/copy-webkitlibraries-to-product-directory: Copy iOS 11 WebKitSystemInterface libraries. 
598
599 2017-06-28  Keith Miller  <keith_miller@apple.com>
600
601         VMTraps has some races
602         https://bugs.webkit.org/show_bug.cgi?id=173941
603
604         Reviewed by Michael Saboff.
605
606         Add new testing mode for testing the Watchdog with our stress
607         tests.
608
609         * Scripts/run-jsc-stress-tests:
610
611 2017-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
612
613         [GTK][WPE] Implement API::IconLoadingClient and rework WebKitFaviconDatabase to use IconDatabase directly
614         https://bugs.webkit.org/show_bug.cgi?id=173877
615
616         Reviewed by Brady Eidson.
617
618         Update favicons unit test to ensure we wait until the database is updated in testGetFavicon() before starting
619         the next tests.
620
621         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
622         (testGetFavicon):
623
624 2017-06-28  Tim Horton  <timothy_horton@apple.com>
625
626         MobileSafari was constantly using 10-15% CPU viewing a PDF
627         https://bugs.webkit.org/show_bug.cgi?id=173944
628         <rdar://problem/33039910>
629
630         Reviewed by Simon Fraser.
631
632         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
633         * TestWebKitAPI/Tests/WebKit2Cocoa/WKPDFViewStablePresentationUpdateCallback.mm:
634         Add a test that we ever call the stable presentation update callback
635         when we have a WKPDFView up, instead of infinitely looping.
636
637 2017-06-28  Alex Christensen  <achristensen@webkit.org>
638
639         Prevent displaying URLs with small capital letters
640         https://bugs.webkit.org/show_bug.cgi?id=173949
641         <rdar://problem/32952058>
642
643         Reviewed by Brent Fulgham.
644
645         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
646         (TestWebKitAPI::TEST):
647
648 2017-06-28  Brent Fulgham  <bfulgham@apple.com>
649
650         Unreviewed test fix.
651
652         Disable the file monitor tests on iOS because the 'system' API is unavailable on that platform.
653
654         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: 
655
656 2017-06-28  Brent Fulgham  <bfulgham@apple.com>
657
658         Teach ResourceLoadStatistics to recognize changes in the file system
659         https://bugs.webkit.org/show_bug.cgi?id=173800
660         <rdar://problem/32937842>
661
662         Reviewed by Chris Dumez.
663
664         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
665         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp: Added.
666         (TestWebKitAPI::FileMonitorTest::tempFilePath):
667         (TestWebKitAPI::handleFileModification):
668         (TestWebKitAPI::handleFileDeletion):
669         (TestWebKitAPI::resetTestState):
670         (TestWebKitAPI::TEST_F):
671
672 2017-06-28  Brady Eidson  <beidson@apple.com>
673
674         DocumentLoader should always notify the client if there are pending icon loads when the load is stopped.
675         https://bugs.webkit.org/show_bug.cgi?id=173874
676
677         Reviewed by Alex Christensen.
678
679         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
680
681 2017-06-28  Don Olmstead  <don.olmstead@sony.com>
682
683         Unreviewed, adding Don Olmstead to contributors.json
684
685         * Scripts/webkitpy/common/config/contributors.json:
686
687 2017-06-28  Alex Christensen  <achristensen@webkit.org>
688
689         WebsitePolicies given with navigation policy for redirects should apply to the provisional document
690         https://bugs.webkit.org/show_bug.cgi?id=173886
691         <rdar://problem/32543191>
692
693         Reviewed by Andy Estes.
694
695         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
696         (ParsedRange::ParsedRange):
697         (-[TestSchemeHandler initWithVideoData:]):
698         (-[TestSchemeHandler webView:startURLSchemeTask:]):
699         (-[TestSchemeHandler webView:stopURLSchemeTask:]):
700         (TEST):
701
702 2017-06-27  JF Bastien  <jfbastien@apple.com>
703
704         WebAssembly: running out of executable memory should throw OoM
705         https://bugs.webkit.org/show_bug.cgi?id=171537
706         <rdar://problem/32963338>
707
708         Reviewed by Saam Barati.
709
710         * Scripts/run-jsc-stress-tests: add a configuration which runs the
711         tests under limited executable memory and avoids non-WebAssembly
712         code generation so that we more reliably run out of executable
713         memory in WebAssembly.
714
715 2017-06-27  Wenson Hsieh  <wenson_hsieh@apple.com>
716
717         [iOS DnD] Support dragging out of contenteditable areas without a prior selection
718         https://bugs.webkit.org/show_bug.cgi?id=173854
719         <rdar://problem/32236827>
720
721         Reviewed by Ryosuke Niwa and Tim Horton.
722
723         Adds a new test to check that an image can be dragged out of a contenteditable and dropped.
724
725         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
726         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-target.html: Added.
727         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
728         (TestWebKitAPI::TEST):
729
730 2017-06-27  Don Olmstead  <don.olmstead@sony.com>
731
732         [PAL] Add symbol export macros for PAL
733         https://bugs.webkit.org/show_bug.cgi?id=171519
734
735         Reviewed by Konstantin Tokarev.
736
737         * DumpRenderTree/config.h:
738         * TestWebKitAPI/CMakeLists.txt:
739         * TestWebKitAPI/config.h:
740         * WebKitTestRunner/config.h:
741
742 2017-06-27  John Wilander  <wilander@apple.com>
743
744         Resource Load Statistics: Add telemetry
745         https://bugs.webkit.org/show_bug.cgi?id=173499
746         <rdar://problem/32826094>
747
748         Reviewed by Brent Fulgham.
749
750         Adds three new testRunner functions:
751         - installStatisticsDidRunTelemetryCallback()
752         - statisticsFireTelemetryHandler()
753         - setStatisticsNotifyPagesWhenTelemetryWasCaptured()
754
755         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
756         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
757         (WTR::InjectedBundle::didReceiveMessageToPage):
758         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
759         (WTR::TestRunner::installStatisticsDidRunTelemetryCallback):
760         (WTR::TestRunner::statisticsDidRunTelemetryCallback):
761         (WTR::TestRunner::statisticsFireTelemetryHandler):
762         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
763         * WebKitTestRunner/InjectedBundle/TestRunner.h:
764         * WebKitTestRunner/TestController.cpp:
765         (WTR::TestController::resetStateToConsistentValues):
766         (WTR::TestController::statisticsFireTelemetryHandler):
767         (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
768         * WebKitTestRunner/TestController.h:
769         * WebKitTestRunner/TestInvocation.cpp:
770         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
771
772 2017-06-27  Ting-Wei Lan  <lantw44@gmail.com>
773
774         Add missing includes to fix compilation error on FreeBSD
775         https://bugs.webkit.org/show_bug.cgi?id=172919
776
777         Reviewed by Mark Lam.
778
779         * ImageDiff/cairo/PlatformImageCairo.cpp:
780
781 2017-06-26  Jonathan Bedard  <jbedard@apple.com>
782
783         Unreviewed, rolling out r218783.
784
785         Causing accessibility/mac/setting-attributes-is-
786         asynchronous.html to crash consistently on mac-wk2 Debug
787
788         Reverted changeset:
789
790         "AX: Cannot call setValue() on contenteditable or ARIA text
791         controls"
792         https://bugs.webkit.org/show_bug.cgi?id=173520
793         http://trac.webkit.org/changeset/218783
794
795 2017-06-26  Yusuke Suzuki  <utatane.tea@gmail.com>
796
797         [WTF] Drop Thread::create(obsolete things) API since we can use lambda
798         https://bugs.webkit.org/show_bug.cgi?id=173825
799
800         Reviewed by Saam Barati.
801
802         * DumpRenderTree/JavaScriptThreading.cpp:
803         (runJavaScriptThread):
804         (startJavaScriptThreads):
805         * DumpRenderTree/mac/DumpRenderTree.mm:
806         (runThread):
807         (runPthread):
808         (testThreadIdentifierMap):
809
810 2017-06-26  David Kilzer  <ddkilzer@apple.com>
811
812         [TestWebKitAPI] Fix false-positive bad release warnings found by clang static analyzer
813         <https://webkit.org/b/173837>
814
815         Reviewed by Geoffrey Garen.
816
817         The clang static analyzer can't reason about objects that are
818         assigned to a delegate as +1 retained, and then released
819         later in a different method when the delegate is cleared.
820
821         Instead, use a common idiom where the object setting the
822         delegate retains it as an instance variable on initialization.
823         Then the same object clears the delegate and releases its
824         instance variable during teardown.
825
826         Also add EXPECT_TRUE() tests to make sure the delegate objects
827         match before teardown.
828
829         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
830         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
831         (TestWebKitAPI::FullscreenZoomInitialFrame::teardownView):
832         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
833         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::initializeView):
834         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::teardownView):
835
836 2017-06-26  David Kilzer  <ddkilzer@apple.com>
837
838         [TestWebKitAPI] REGRESSION (r218750): Fix leak of NSURLResponse in WKURLSchemeHandler-1.mm
839         <https://webkit.org/b/173836>
840
841         Reviewed by Brady Eidson.
842
843         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
844         (-[RedirectSchemeHandler webView:startURLSchemeTask:]): Use
845         adoptNS() to fix the leak.  Also use auto/adoptNS() for other
846         objects in this test.
847
848 2017-06-26  Joanmarie Diggs  <jdiggs@igalia.com>
849
850         [ATK] Add support for aria-details and aria-errormessage
851         https://bugs.webkit.org/show_bug.cgi?id=172588
852
853         Reviewed by Chris Fleizach.
854
855         Add additional methods to test ARIA properties which are exposed via
856         AtkRelation. Also bump minimum versions of at-spi2-core and at-spi2-atk
857         to versions which support the details and error-message relation types.
858
859         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
860         (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
861         (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
862         (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
863         (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
864         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
865         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
866         (WTR::AccessibilityUIElement::ariaDetailsElementAtIndex):
867         (WTR::AccessibilityUIElement::ariaDetailsReferencingElementAtIndex):
868         (WTR::AccessibilityUIElement::ariaErrorMessageElementAtIndex):
869         (WTR::AccessibilityUIElement::ariaErrorMessageReferencingElementAtIndex):
870         * gtk/jhbuild.modules:
871
872 2017-06-26  Carlos Garcia Campos  <cgarcia@igalia.com>
873
874         Unreviewed. Add libfii to GTK+ install dependencies script.
875
876         * gtk/install-dependencies:
877
878 2017-06-25  Michael Catanzaro  <mcatanzaro@igalia.com>
879
880         Unreviewed, rolling out r215190.
881
882         Broke product select element on GNOME Bugzilla
883
884         Reverted changeset:
885
886         "[GTK] Misplaced right click menu on web page due to
887         deprecated gtk_menu_popup()"
888         https://bugs.webkit.org/show_bug.cgi?id=170553
889         http://trac.webkit.org/changeset/215190
890
891 2017-06-24  Joseph Pecoraro  <pecoraro@apple.com>
892
893         Remove Reflect.enumerate
894         https://bugs.webkit.org/show_bug.cgi?id=173806
895
896         Reviewed by Yusuke Suzuki.
897
898         * Scripts/run-jsc-stress-tests:
899
900 2017-06-24  Chris Fleizach  <cfleizach@apple.com>
901
902         AX: Cannot call setValue() on contenteditable or ARIA text controls
903         https://bugs.webkit.org/show_bug.cgi?id=173520
904
905         Reviewed by Ryosuke Niwa.
906
907         Add setValue() method to WKTR (already existed in DRT).
908
909         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
910         (WTR::AccessibilityUIElement::setValue):
911         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
912         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
913         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
914         (WTR::AccessibilityUIElement::setValue):
915
916 2017-06-23  Keith Miller  <keith_miller@apple.com>
917
918         Switch VMTraps to use halt instructions rather than breakpoint instructions
919         https://bugs.webkit.org/show_bug.cgi?id=173677
920
921         Reviewed by JF Bastien.
922
923         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
924         (TEST):
925
926 2017-06-23  Youenn Fablet  <youenn@apple.com>
927
928         Set getUserMedia permission to true by default on WTR
929         https://bugs.webkit.org/show_bug.cgi?id=173610
930
931         Reviewed by Alex Christensen.
932
933         Adding a way to reset the getUserMedia permission to pending.
934
935         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
936         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
937         (WTR::InjectedBundle::setUserMediaPermissionAsUnset):
938         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
939         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
940         (WTR::TestRunner::setUserMediaPermissionAsUnset):
941         * WebKitTestRunner/InjectedBundle/TestRunner.h:
942         * WebKitTestRunner/TestController.cpp:
943         (WTR::TestController::resetStateToConsistentValues):
944         (WTR::TestController::setUserMediaPermissionAsUnset):
945         * WebKitTestRunner/TestController.h:
946         * WebKitTestRunner/TestInvocation.cpp:
947         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
948
949 2017-06-23  Alex Christensen  <achristensen@webkit.org>
950
951         Add SPI to WKURLSchemeTask for redirection
952         https://bugs.webkit.org/show_bug.cgi?id=173730
953
954         Reviewed by Brady Eidson.
955
956         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
957         (-[SchemeHandler webView:startURLSchemeTask:]):
958         (-[SchemeHandler webView:stopURLSchemeTask:]):
959         (TEST):
960         (-[RedirectSchemeHandler webView:startURLSchemeTask:]):
961         (-[RedirectSchemeHandler webView:stopURLSchemeTask:]):
962         (-[RedirectSchemeHandler webView:didReceiveServerRedirectForProvisionalNavigation:]):
963         (-[RedirectSchemeHandler webView:decidePolicyForNavigationResponse:decisionHandler:]):
964         (-[RedirectSchemeHandler userContentController:didReceiveScriptMessage:]):
965
966 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
967
968         [WPE] Use JSC API to send script messages from web extension in tests
969         https://bugs.webkit.org/show_bug.cgi?id=173757
970
971         Reviewed by Žan Doberšek.
972
973         The GTK+ uses DOM bindings to send the messages. We can just build the message string and use JSEvaluateScript
974         to run postMessage().
975
976         Fixes: /wpe/WebKitSecurityManager/file-xhr
977                /wpe/WebKitConsoleMessage/console-api
978                /wpe/WebKitConsoleMessage/js-exception
979                /wpe/WebKitConsoleMessage/network-error
980                /wpe/WebKitConsoleMessage/security-error
981
982         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
983         (testWebKitConsoleMessageSecurityError): Remove ifdefs.
984         (beforeAll): Ditto.
985         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
986         (testWebContextSecurityFileXHR): Ditto.
987         (beforeAll): Ditto.
988         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
989         (consoleMessageSentCallback): Use JSEvaluateScript in WPE. We need to escape the '"' in the message string.
990         (pageCreatedCallback): Remove ifdefs.
991
992 2017-06-23  Carlos Garcia Campos  <cgarcia@igalia.com>
993
994         Unreviewed. Fix WPE /wpe/WebKitWebView/javascript-dialogs and /wpe/WebKitWebView/window-properties
995
996         Skip onbeforeunload dialog tests for now in WPE since we don't have a implemention for
997         simulateUserInteraction(). And do not expect changes in "geometry" property of WebKitWindowProperties that
998         doesn't exist yet in WPE.
999
1000         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1001         (testWebViewJavaScriptDialogs):
1002         (testWebViewWindowProperties):
1003
1004 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1005
1006         [GTK] Upgrade pixman and cairo in jhbuild
1007         https://bugs.webkit.org/show_bug.cgi?id=173710
1008
1009         Reviewed by Carlos Alberto Lopez Perez.
1010
1011         * gtk/jhbuild.modules:
1012
1013 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1014
1015         REGRESSION(r218686): [GTK] Several unit tests are failing after r218686 in the bots
1016         https://bugs.webkit.org/show_bug.cgi?id=173711
1017
1018         Reviewed by Carlos Alberto Lopez Perez.
1019
1020         I can't reproduce it locally, but it's complaining about a g_setenv() and I only added one in r218686 to recover
1021         the XDG_RUNTIME_DIR, because it's required by Wayland to work. So, I guess that env var is not set in the bots.
1022
1023         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
1024         (WebKitTestBus::run): Ensure value is not nullptr before calling g_setenv().
1025
1026 2017-06-22  David Kilzer  <ddkilzer@apple.com>
1027
1028         REGRESSION (r218419): 7 leaks in PluginLoadClientPolicies.mm
1029         <https://webkit.org/b/173721>
1030
1031         Reviewed by Joseph Pecoraro.
1032
1033         Use RetainPtr<> to create NSMutableDictionary and NSNumber
1034         objects to fix leaks and to avoid the autoreleasepool.
1035
1036         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm:
1037         (TEST):
1038
1039 2017-06-22  Matt Lewis  <jlewis3@apple.com>
1040
1041         Unreviewed, rolling out r218633.
1042
1043         The test is failing frequently on Sierra Debug and Windows
1044
1045         Reverted changeset:
1046
1047         "AX: Cannot call setValue() on contenteditable or ARIA text
1048         controls"
1049         https://bugs.webkit.org/show_bug.cgi?id=173520
1050         http://trac.webkit.org/changeset/218633
1051
1052 2017-06-22  David Kilzer  <ddkilzer@apple.com>
1053
1054         [TestWebKitAPI] Fix misuse of -[NSData dataWithBytesNoCopy:length:] with global variables
1055         <https://webkit.org/b/173690>
1056
1057         Reviewed by Chris Dumez.
1058
1059         Per documentation, -[NSData dataWithBytesNoCopy:length:] takes
1060         ownership of malloc()-ed memory, then frees it when it's
1061         released.  These tests were passing global variables into the
1062         method, which is not malloc()-ed memory, which violates the API
1063         contract.
1064
1065         The fix is to switch to use
1066         -[NSData dataWithBytesNoCopy:length:freeWhenDone:] and to pass
1067         NO for the last argument.
1068
1069         Caught by the clang static analyzer.
1070
1071         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
1072         (TEST):
1073         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
1074         (TEST):
1075
1076 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1077
1078         [GTK] Upgrade Harfbuzz to version 1.4.2
1079         https://bugs.webkit.org/show_bug.cgi?id=173592
1080
1081         Reviewed by Carlos Alberto Lopez Perez.
1082
1083         * gtk/jhbuild.modules:
1084
1085 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1086
1087         [WPE] Update WPEBackend-mesa
1088         https://bugs.webkit.org/show_bug.cgi?id=173705
1089
1090         Reviewed by Carlos Alberto Lopez Perez.
1091
1092         A crash has been fixed, needed for unit tests to work.
1093
1094         * wpe/jhbuild.modules:
1095
1096 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1097
1098         Remove unused coordinated graphics C API
1099         https://bugs.webkit.org/show_bug.cgi?id=173706
1100
1101         Reviewed by Žan Doberšek.
1102
1103         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive.cpp: Removed.
1104         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewIsActiveSetIsActive_Bundle.cpp: Removed.
1105         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewRestoreZoomAndScrollBackForward.cpp: Removed.
1106         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/WKViewUserViewportToContents.cpp: Removed.
1107         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward1.html: Removed.
1108         * TestWebKitAPI/Tests/WebKit2/CoordinatedGraphics/backforward2.html: Removed.
1109
1110 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1111
1112         [WPE] Build glib API tests
1113         https://bugs.webkit.org/show_bug.cgi?id=173702
1114
1115         Reviewed by Žan Doberšek.
1116
1117         Many of the tests pass without problems, others need to be investigated, and some others are known issues. The
1118         main difference between the GTK+ and WPE WebKitWebView is that in GTK+ it's a GtkWidget, so initially
1119         unowned. The tests assume that webkit_web_view_new methods return a floating reference. This patch adds
1120         Test::adoptView() method that returns a GRefPtr<WebKitWebView> with a different implementation in GTK+ and
1121         WPE. In the case of GTK+, it sinks the floating reference, while in WPE it simply adopts the reference. Another
1122         difference is that in GTK+ the web view is initially hidden and needs to be added to a window to make it
1123         visible. Also, some tests need the web view to be realized to work, and others need that the view is added to a
1124         toplevel window, instead of a popup window. All those things are not needed at all in WPE. I've added several
1125         #ifdefs with FIXME comments for the things that we know don't work in WPE yet, for example, because we haven't
1126         implemented the methods to send events to the web view. Those will be removed eventually when we fix the issues
1127         and implement the missing features.
1128
1129         * CMakeLists.txt:
1130         * TestWebKitAPI/Tests/WebKit2Gtk/EditorTest.cpp:
1131         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
1132         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
1133         (testAutomationSessionRequestSession):
1134         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
1135         (testWebKitWebViewSessionState):
1136         (testWebKitWebViewSessionStateWithFormData):
1137         (testWebKitWebViewNavigationAfterSessionRestore):
1138         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
1139         (beforeAll):
1140         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
1141         (testCookieManagerEphemeral):
1142         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
1143         (testBlobDownload):
1144         (beforeAll):
1145         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
1146         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
1147         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
1148         (testProcessPerWebView):
1149         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
1150         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1151         (testWebViewCreateNavigationData):
1152         (testWebViewJavaScriptDialogs):
1153         (testWebViewWindowProperties):
1154         (testWebViewMouseTarget):
1155         (testWebViewGeolocationPermissionRequests):
1156         (testWebViewUserMediaPermissionRequests):
1157         (testWebViewAudioOnlyUserMediaPermissionRequests):
1158         (testWebViewFileChooserRequest):
1159         (beforeAll):
1160         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
1161         (beforeAll):
1162         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
1163         (testPrivateBrowsing):
1164         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
1165         (testFindControllerHide):
1166         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
1167         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1168         (testWebKitSettings):
1169         (beforeAll):
1170         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
1171         (testWebViewNewWithUserContentManager):
1172         (beforeAll):
1173         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1174         (testWebContextEphemeral):
1175         (testWebContextProxySettings):
1176         (beforeAll):
1177         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1178         (testWebViewWebContext):
1179         (testWebViewWebContextLifetime):
1180         (testWebViewEphemeral):
1181         (testWebViewSettings):
1182         (testWebViewCanShowMIMEType):
1183         (testWebViewPageVisibility):
1184         (testWebViewIsPlayingAudio):
1185         (beforeAll):
1186         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1187         (testWebsiteDataEphemeral):
1188         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
1189         (documentLoadedCallback):
1190         (pageCreatedCallback):
1191         (methodCallCallback):
1192         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h:
1193         * TestWebKitAPI/glib/CMakeLists.txt:
1194         * TestWebKitAPI/glib/PlatformGTK.cmake:
1195         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
1196         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
1197         (main):
1198         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1199         (Test::adoptView):
1200         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
1201         (WebKitTestBus::run):
1202         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1203         (WebViewTest::~WebViewTest):
1204         (WebViewTest::initializeWebView):
1205         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1206         * TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp: Added.
1207         (WebViewTest::platformDestroy):
1208         (WebViewTest::platformInitializeWebView):
1209         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
1210         (WebViewTest::resizeView):
1211         (WebViewTest::hideView):
1212         (parentWindowMapped):
1213         (WebViewTest::showInWindow):
1214         (WebViewTest::showInWindowAndWaitUntilMapped):
1215         (WebViewTest::mouseMoveTo):
1216         (WebViewTest::clickMouseButton):
1217         (WebViewTest::emitPopupMenuSignal):
1218         (WebViewTest::keyStroke):
1219         (WebViewTest::doMouseButtonEvent):
1220         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp: Copied from Tools/TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h.
1221         (WebViewTest::platformDestroy):
1222         (WebViewTest::platformInitializeWebView):
1223         (WebViewTest::quitMainLoopAfterProcessingPendingEvents):
1224         (WebViewTest::resizeView):
1225         (WebViewTest::hideView):
1226         (WebViewTest::mouseMoveTo):
1227         (WebViewTest::clickMouseButton):
1228         (WebViewTest::keyStroke):
1229
1230 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1231
1232         [GTK] Move WebKit2 GLib API tests to glib directories
1233         https://bugs.webkit.org/show_bug.cgi?id=173642
1234
1235         Reviewed by Žan Doberšek.
1236
1237         * CMakeLists.txt:
1238         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt: Removed.
1239         * TestWebKitAPI/Tests/WebKit2Gtk/resources/webkit2gtk-tests.gresource.xml: Removed.
1240         * TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/FrameTest.cpp.
1241         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp.
1242         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp.
1243         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestBackForwardList.cpp.
1244         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp.
1245         (testWebKitConsoleMessageNetworkError):
1246         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp.
1247         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp.
1248         * TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestFrame.cpp.
1249         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp.
1250         (testLoadFromGResource):
1251         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestMultiprocess.cpp.
1252         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp.
1253         * TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp.
1254         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp.
1255         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp.
1256         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp.
1257         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp.
1258         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp.
1259         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp.
1260         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp.
1261         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp.
1262         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp.
1263         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp.
1264         (testWebViewRunJavaScript):
1265         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp.
1266         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp.
1267         (registerGResource):
1268         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp.
1269         * TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h.
1270         * TestWebKitAPI/Tests/WebKitGLib/resources/blank.ico: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico.
1271         * TestWebKitAPI/Tests/WebKitGLib/resources/boring.html: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/boring.html.
1272         * TestWebKitAPI/Tests/WebKitGLib/resources/link-title.js: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/link-title.js.
1273         * TestWebKitAPI/Tests/WebKitGLib/resources/silence.mpg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg.
1274         * TestWebKitAPI/Tests/WebKitGLib/resources/simple.json: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json.
1275         * TestWebKitAPI/Tests/WebKitGLib/resources/test-cert.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-cert.pem.
1276         * TestWebKitAPI/Tests/WebKitGLib/resources/test-key.pem: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test-key.pem.
1277         * TestWebKitAPI/Tests/WebKitGLib/resources/test.pdf: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf.
1278         * TestWebKitAPI/Tests/WebKitGLib/resources/track.ogg: Renamed from Tools/TestWebKitAPI/Tests/WebKit2Gtk/resources/track.ogg.
1279         * TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml: Added.
1280         * TestWebKitAPI/glib/CMakeLists.txt: Added.
1281         * TestWebKitAPI/glib/PlatformGTK.cmake: Added.
1282         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp.
1283         * TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.h.
1284         * TestWebKitAPI/glib/WebKitGLib/TestMain.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.cpp.
1285         (registerGResource):
1286         * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h.
1287         (Test::getResourcesDir):
1288         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp.
1289         * TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h.
1290         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp.
1291         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h.
1292         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp.
1293         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h: Renamed from Tools/TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h.
1294
1295 2017-06-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1296
1297         [WPE] Add initial web extensions API
1298         https://bugs.webkit.org/show_bug.cgi?id=173640
1299
1300         Reviewed by Žan Doberšek.
1301
1302         Add style checker exceptions for WPE web extensions API files.
1303
1304         * Scripts/webkitpy/style/checker.py:
1305
1306 2017-06-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1307
1308         [iOS DnD] [WK2] Cancelling a drag interaction using the ObjC SPI causes subsequent dragging to fail
1309         https://bugs.webkit.org/show_bug.cgi?id=173659
1310         <rdar://problem/32879788>
1311
1312         Reviewed by Tim Horton.
1313
1314         Adds a new test to verify that a lift cancelled within the UI process does not cause subsequent dragging to fail.
1315
1316         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html:
1317
1318         Augment this test page to log dragend and dragstart events on the drag source as well.
1319
1320         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1321         (checkStringArraysAreEqual):
1322         (TestWebKitAPI::TEST):
1323
1324 2017-06-21  Antoine Quint  <graouts@apple.com>
1325
1326         Ensure DRT always logs rAF suspension debugging code
1327         https://bugs.webkit.org/show_bug.cgi?id=173681
1328
1329         Reviewed by Tim "Mr. T" Horton.
1330
1331         * DumpRenderTree/mac/DumpRenderTree.mm:
1332         (resetWebPreferencesToConsistentValues):
1333
1334 2017-06-21  Chris Dumez  <cdumez@apple.com>
1335
1336         Allow constructing a WTF:Function from a function pointer
1337         https://bugs.webkit.org/show_bug.cgi?id=173660
1338
1339         Reviewed by Alex Christensen.
1340
1341         Add API test coverage.
1342
1343         * TestWebKitAPI/Tests/WTF/Function.cpp:
1344         (TestWebKitAPI::returnThree):
1345         (TestWebKitAPI::returnFour):
1346         (TestWebKitAPI::returnPassedValue):
1347         (TestWebKitAPI::TEST):
1348
1349 2017-06-21  Antoine Quint  <graouts@apple.com>
1350
1351         Add logging to identify when the Page suspends scripted animations
1352         https://bugs.webkit.org/show_bug.cgi?id=173626
1353
1354         Reviewed by Tim Horton.
1355
1356         Turn the new logging on for WK1/DRT since the issue we're trying to pinpoint only occurs on WK1 bots.
1357
1358         * DumpRenderTree/mac/DumpRenderTree.mm:
1359         (resetWebPreferencesToConsistentValues):
1360
1361 2017-06-21  Chris Fleizach  <cfleizach@apple.com>
1362
1363         AX: Cannot call setValue() on contenteditable or ARIA text controls
1364         https://bugs.webkit.org/show_bug.cgi?id=173520
1365
1366         Reviewed by Ryosuke Niwa.
1367
1368         Add setValue() method to WKTR (already existed in DRT).
1369
1370         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
1371         (WTR::AccessibilityUIElement::setValue):
1372         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1373         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1374         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1375         (WTR::AccessibilityUIElement::setValue):
1376
1377 2017-06-21  Zan Dobersek  <zdobersek@igalia.com>
1378
1379         List libtasn1 packages in GTK+ and WPE install-dependencies scripts
1380         as one of the dependencies required to build the product.
1381
1382         Rubber-stamped by Carlos Garcia Campos.
1383
1384         * gtk/install-dependencies:
1385         * wpe/install-dependencies:
1386
1387 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
1388
1389         Disable font variations on macOS Sierra and iOS 10
1390         https://bugs.webkit.org/show_bug.cgi?id=173618
1391         <rdar://problem/32879164>
1392
1393         Reviewed by Jon Lee.
1394
1395         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1396
1397 2017-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1398
1399         [iOS DnD] [WK2] Remove custom logic for disambiguating long press action sheet gestures and drag lift
1400         https://bugs.webkit.org/show_bug.cgi?id=173578
1401         <rdar://problem/32825028>
1402
1403         Reviewed by Tim Horton.
1404
1405         Slight tweak to ensure that DataInteractionTests.CustomActionSheetPopover still passes and verifies that showing
1406         a custom popover does not cause dragging to fail when the popover is presented.
1407
1408         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1409         (-[DataInteractionSimulator _advanceProgress]):
1410
1411 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1412
1413         [WPE] Add initial implementation of glib API
1414         https://bugs.webkit.org/show_bug.cgi?id=173546
1415
1416         Reviewed by Žan Doberšek.
1417
1418         Disable geolocation because WPE doesn't implement any provider and update the style checker exceptions to
1419         include WPE glib API files.
1420
1421         * Scripts/webkitperl/FeatureList.pm:
1422         * Scripts/webkitpy/style/checker.py:
1423         * Scripts/webkitpy/style/checkers/cpp.py:
1424         (check_identifier_name_in_declaration):
1425
1426 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1427
1428         [GTK] Upgrade to ICU to version 57.1
1429         https://bugs.webkit.org/show_bug.cgi?id=173538
1430
1431         Reviewed by Žan Doberšek.
1432
1433         * gtk/jhbuild.modules:
1434
1435 2017-06-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1436
1437         [GTK] Remove unneeded modules from the jhbuild
1438         https://bugs.webkit.org/show_bug.cgi?id=170540
1439
1440         Reviewed by Michael Catanzaro.
1441
1442         We are building libxslt and libffi that we don't really need to build from sources.
1443
1444         * gtk/jhbuild.modules:
1445
1446 2017-06-19  Frederic Wang  <fwang@igalia.com>
1447
1448         [Mac] Add an experimental feature setting for async frame scrolling
1449         https://bugs.webkit.org/show_bug.cgi?id=173359
1450
1451         Reviewed by Simon Fraser.
1452
1453         * DumpRenderTree/mac/DumpRenderTree.mm:
1454         (enableExperimentalFeatures): Do not enable async frame scrolling for now.
1455         (resetWebPreferencesToConsistentValues): Disable async frame scrolling by default.
1456         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1457         (WTR::InjectedBundle::beginTesting): Initalize to async frame scrolling to false.
1458
1459 2017-06-19  Guillaume Emont  <guijemont@igalia.com>
1460
1461         Unreviewed, adding myself to contributors.json
1462
1463         * Scripts/webkitpy/common/config/contributors.json:
1464
1465 2017-06-19  Joseph Pecoraro  <pecoraro@apple.com>
1466
1467         test262: Completion values for control flow do not match the spec
1468         https://bugs.webkit.org/show_bug.cgi?id=171265
1469
1470         Reviewed by Saam Barati.
1471
1472         * Scripts/run-jsc-stress-tests:
1473         Include a :failDueToOutdatedOrBadTest to mark failures with justification.
1474
1475 2017-06-19  Zalan Bujtas  <zalan@apple.com>
1476
1477         Opening certain mails brings up a mail that grows indefinitely.
1478         https://bugs.webkit.org/show_bug.cgi?id=173562
1479         <rdar://problem/32766579>
1480
1481         Reviewed by Tim Horton.
1482
1483         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
1484         (TEST):
1485
1486 2017-06-19  Wenson Hsieh  <wenson_hsieh@apple.com>
1487
1488         [iOS DnD] Support .zip archives for file uploads via drag and drop
1489         https://bugs.webkit.org/show_bug.cgi?id=173511
1490         <rdar://problem/32521025>
1491
1492         Reviewed by Tim Horton.
1493
1494         Adds tests for dropping .zip archives into a JavaScript-based file upload area, as well as into a file input.
1495         Also verifies that URLs are not handled as file drops. See WebCore ChangeLog for more details.
1496
1497         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1498         * TestWebKitAPI/Tests/WebKit2Cocoa/compressed-files.zip: Added.
1499         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1500         (testZIPArchive):
1501         (TestWebKitAPI::TEST):
1502
1503 2017-06-18  Darin Adler  <darin@apple.com>
1504
1505         Fix Ref to deref before assignment, add tests for this to RefPtr, Ref, Function
1506         https://bugs.webkit.org/show_bug.cgi?id=173526
1507
1508         Reviewed by Sam Weinig.
1509
1510         * TestWebKitAPI/CMakeLists.txt: Added Function.cpp.
1511         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
1512
1513         * TestWebKitAPI/Tests/WTF/Function.cpp: Added. Contains basic tests and some
1514         tests for assignment before destruction ones.
1515
1516         * TestWebKitAPI/Tests/WTF/MoveOnly.h: Added a () operator so this can be used
1517         as a function, so it can be used in WTF::Function tests.
1518
1519         * TestWebKitAPI/Tests/WTF/Ref.cpp: Use EXPECT macros insead of ASSERT.
1520         Added tests for swap and for assignment before deref.
1521
1522         * TestWebKitAPI/Tests/WTF/RefLogger.cpp: Stopped using inlining; no good reason
1523         to inline everything. Also removed the unnecessary clearing of the log every time
1524         the DerivedRefLogger constructor is called.
1525         * TestWebKitAPI/Tests/WTF/RefLogger.h: Ditto.
1526
1527         * TestWebKitAPI/Tests/WTF/RefPtr.cpp: Use EXPECT macros instead of ASSERT.
1528         Added tests for assignment before deref and similar for releaseNonNull.
1529
1530 2017-06-19  Sam Weinig  <sam@webkit.org>
1531
1532         [WebIDL] Properly model buffer source / typed arrays as their own IDL types
1533         https://bugs.webkit.org/show_bug.cgi?id=173513
1534
1535         Reviewed by Alex Christensen.
1536
1537         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1538         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
1539         Replace IsNonPointerType subroutine with IsPrimitiveType so we can remove IsNonPointerType.
1540
1541 2017-06-19  Per Arne Vollan  <pvollan@apple.com>
1542
1543         [Win] fast/dom/assign-to-window-status.html is flaky.
1544         https://bugs.webkit.org/show_bug.cgi?id=173512
1545
1546         Reviewed by Alex Christensen.
1547
1548         We should not dump status callbacks when test is done.
1549
1550         * DumpRenderTree/win/UIDelegate.cpp:
1551         (UIDelegate::setStatusText):
1552
1553 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1554
1555         [WPE][JHBuild] Update WPEBackend-mesa
1556         https://bugs.webkit.org/show_bug.cgi?id=173433
1557
1558         Unreviewed.
1559
1560         Update WPEBackend-mesa back (like it was done originally in r218344)
1561         after fixing the issue with the DISPLAY environment variables that
1562         caused the crashes.
1563
1564         * wpe/jhbuild.modules:
1565
1566 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1567
1568         Rename unit test file after r218482
1569         https://bugs.webkit.org/show_bug.cgi?id=173483
1570
1571         Unreviewed.
1572
1573         * Scripts/webkitpy/port/waylanddriver_unittest.py: Renamed from Tools/Scripts/webkitpy/port/wayland_unittest.py.
1574
1575 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1576
1577         Unreviewed. Fix wrong style checker condition added in r218487.
1578
1579         * Scripts/webkitpy/style/checkers/cpp.py:
1580         (check_identifier_name_in_declaration):
1581
1582 2017-06-19  Adrian Perez de Castro  <aperez@igalia.com>
1583
1584         Missing <functional> includes make builds fail with GCC 7.x
1585         https://bugs.webkit.org/show_bug.cgi?id=173544
1586
1587         Unreviewed gardening.
1588
1589         Fix compilation with GCC 7.
1590
1591         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
1592         * TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
1593
1594 2017-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1595
1596         [GTK] Move GTK+ API files that could be shared to glib dirs
1597         https://bugs.webkit.org/show_bug.cgi?id=173545
1598
1599         Reviewed by Žan Doberšek.
1600
1601         Update paths of GTK+ API in watchlist and style checker.
1602
1603         * Scripts/webkitpy/common/config/watchlist:
1604         * Scripts/webkitpy/style/checker.py:
1605         * Scripts/webkitpy/style/checkers/cpp.py:
1606         (check_identifier_name_in_declaration):
1607
1608 2017-06-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1609
1610         Port setup_environ_for_server should not set environment variables related with the driver.
1611         https://bugs.webkit.org/show_bug.cgi?id=173483
1612
1613         Reviewed by Carlos Garcia Campos.
1614
1615         The port setup_environ_for_server() should not set environment variables
1616         that depend on the type of driver (like DISPLAY or GDK_BACKEND).
1617         This varibles should be only set on the driver setup_environ_for_test().
1618
1619         This causes that (for example) the variable DISPLAY or XAUTHORITY leaks
1620         into the test environment even when running the tests with a driver
1621         that is not the Xorg or Xvfb one.
1622
1623         * Scripts/webkitpy/port/base.py: Stop setting XAUTHORITY and DISPLAY here.
1624         (Port.to.setup_environ_for_server):
1625         * Scripts/webkitpy/port/driver.py: Remove unneded WEBKIT_OUTPUTDIR that is already set on base.py
1626         (Driver._setup_environ_for_driver):
1627         * Scripts/webkitpy/port/driver_unittest.py:
1628         (DriverTest.test_setup_environ_for_test):
1629         (DriverTest):
1630         (DriverTest.test_setup_environ_base_vars):
1631         * Scripts/webkitpy/port/gtk.py: Stop setting GDK_BACKEND here and do that on the driver (Xvfb).
1632         (GtkPort.setup_environ_for_server):
1633         * Scripts/webkitpy/port/wayland_unittest.py: Added.
1634         (WaylandDriverTest):
1635         (WaylandDriverTest.make_driver):
1636         (WaylandDriverTest.make_environment):
1637         (WaylandDriverTest.test_checkdriver):
1638         (WaylandDriverTest.test_environment_needed_variables):
1639         (WaylandDriverTest.test_environment_forbidden_variables):
1640         (WaylandDriverTest.test_environment_optional_variables):
1641         * Scripts/webkitpy/port/waylanddriver.py: Allow the driver to run also with WAYLAND_SOCKET.
1642         (WaylandDriver.check_driver):
1643         (WaylandDriver._setup_environ_for_test):
1644         * Scripts/webkitpy/port/xorgdriver.py:
1645         (XorgDriver.check_driver):
1646         (XorgDriver._setup_environ_for_test):
1647         * Scripts/webkitpy/port/xorgdriver_unittest.py: Added.
1648         (XorgDriverTest):
1649         (XorgDriverTest.make_driver):
1650         (XorgDriverTest.make_environment):
1651         (XorgDriverTest.test_checkdriver):
1652         (XorgDriverTest.test_environment_needed_variables):
1653         (XorgDriverTest.test_environment_forbidden_variables):
1654         (XorgDriverTest.test_environment_optional_variables):
1655         * Scripts/webkitpy/port/xvfbdriver.py:
1656         (XvfbDriver._setup_environ_for_test):
1657         * Scripts/webkitpy/port/xvfbdriver_unittest.py:
1658         (XvfbDriverTest.assertDriverStartSuccessful):
1659
1660
1661 2017-05-14 Frederic Wang  <fwang@igalia.com>
1662
1663         Add heuristic to avoid flattening "fullscreen" iframes
1664         https://bugs.webkit.org/show_bug.cgi?id=171914
1665
1666         Reviewed by Simon Fraser.
1667
1668         * DumpRenderTree/mac/DumpRenderTree.mm:
1669         (resetWebPreferencesToConsistentValues): Use WebKitFrameFlatteningDisabled.
1670
1671 2017-06-18  Chris Dumez  <cdumez@apple.com>
1672
1673         Crash when re-entering MediaDevicesEnumerationRequest::cancel()
1674         https://bugs.webkit.org/show_bug.cgi?id=173522
1675         <rdar://problem/31185739>
1676
1677         Reviewed by Darin Adler.
1678
1679         Add API test for re-entering Function's assignment operators.
1680
1681         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1682         * TestWebKitAPI/Tests/WTF/Function.cpp: Added.
1683         (TestWebKitAPI::TestObject::TestObject):
1684         (TestWebKitAPI::TestObject::~TestObject):
1685         (TestWebKitAPI::TestObject::operator()):
1686         (TestWebKitAPI::TEST):
1687
1688 2017-06-16  Dan Bernstein  <mitz@apple.com>
1689
1690         [Cocoa] Some declarations have missing or incorrect availability attributes
1691         https://bugs.webkit.org/show_bug.cgi?id=173508
1692
1693         Reviewed by Tim Horton.
1694
1695         * TestWebKitAPI/Tests/ios/PositionInformationTests.mm:
1696         (TestWebKitAPI::TEST): Updated for renames.
1697
1698 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1699
1700         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
1701         https://bugs.webkit.org/show_bug.cgi?id=173366
1702         <rdar://problem/32767014>
1703
1704         Reviewed by Tim Horton.
1705
1706         Move test pages and pieces of DataInteractionSimulator hidden behind WebKitAdditions into TestWebKitAPI. No
1707         change in behavior.
1708
1709         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1710         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1711         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
1712         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
1713         * TestWebKitAPI/Tests/WebKit2Cocoa/contenteditable-and-textarea.html: Added.
1714         * TestWebKitAPI/Tests/WebKit2Cocoa/div-and-large-image.html: Added.
1715         * TestWebKitAPI/Tests/WebKit2Cocoa/file-uploading.html: Added.
1716         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
1717         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
1718         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
1719         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-target-div.html: Added.
1720         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-operation.html: Added.
1721         * TestWebKitAPI/Tests/WebKit2Cocoa/prevent-start.html: Added.
1722         * TestWebKitAPI/Tests/WebKit2Cocoa/textarea-to-input.html: Added.
1723         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1724         (-[MockDragDropSession initWithItems:location:window:]):
1725         (-[MockDragDropSession allowsMoveOperation]):
1726         (-[MockDragDropSession isRestrictedToDraggingApplication]):
1727         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
1728         (-[MockDragDropSession canLoadObjectsOfClass:]):
1729         (-[MockDragDropSession canLoadObjectsOfClasses:]):
1730         (-[MockDragDropSession items]):
1731         (-[MockDragDropSession setItems:]):
1732         (-[MockDragDropSession locationInView:]):
1733         (-[MockDataOperationSession initWithProviders:location:window:]):
1734         (-[MockDataOperationSession session]):
1735         (-[MockDataOperationSession isLocal]):
1736         (-[MockDataOperationSession progress]):
1737         (-[MockDataOperationSession setProgressIndicatorStyle:]):
1738         (-[MockDataOperationSession progressIndicatorStyle]):
1739         (-[MockDataOperationSession operationMask]):
1740         (-[MockDataOperationSession localDragSession]):
1741         (-[MockDataOperationSession hasItemsConformingToTypeIdentifier:]):
1742         (-[MockDataOperationSession canCreateItemsOfClass:]):
1743         (-[MockDataOperationSession loadObjectsOfClass:completion:]):
1744         (-[MockDataInteractionSession initWithWindow:]):
1745         (-[MockDataInteractionSession localOperationMask]):
1746         (-[MockDataInteractionSession externalOperationMask]):
1747         (-[MockDataInteractionSession session]):
1748         (-[DataInteractionSimulator _advanceProgress]):
1749
1750 2017-06-16  Alex Christensen  <achristensen@webkit.org>
1751
1752         Show punycode to user if a URL has dotless i or j followed by diacritic dot
1753         https://bugs.webkit.org/show_bug.cgi?id=173431
1754
1755         Reviewed by Darin Adler.
1756
1757         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1758         (TestWebKitAPI::TEST):
1759
1760 2017-06-16  Chris Dumez  <cdumez@apple.com>
1761
1762         [WK2] Add WKProcessPool SPI to efficiently reset all plugin load client policies
1763         https://bugs.webkit.org/show_bug.cgi?id=173472
1764         <rdar://problem/28858817>
1765
1766         Reviewed by Brady Eidson.
1767
1768         Add API test coverage.
1769
1770         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1771         * TestWebKitAPI/Tests/WebKit2Cocoa/PluginLoadClientPolicies.mm: Added.
1772         (TEST):
1773
1774 2017-06-16  Brady Eidson  <beidson@apple.com>
1775
1776         REGRESSION (r218015) IconLoaders for already-cached resources expect to be asynchronous, no longer are.
1777         <rdar://problem/32817519> and https://bugs.webkit.org/show_bug.cgi?id=173478
1778
1779         Reviewed by Daniel Bates.
1780
1781         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm:
1782
1783 2017-06-16  Chris Dumez  <cdumez@apple.com>
1784
1785         DRT fails to reset page visibility between tests
1786         https://bugs.webkit.org/show_bug.cgi?id=173485
1787
1788         Reviewed by Alexey Proskuryakov.
1789
1790         DRT fails to reset page visibility between tests and relies on tests calling testRunner.resetPageVisibility().
1791         Fix this to address flakiness.
1792
1793         I confirmed this by commenting out the call to testRunner.resetPageVisibility() in
1794         fast/events/page-visibility-onvisibilitychange.html and running the test in a loop.
1795         The test became flaky without the DRT change and was no longer flaky with the DRT
1796         change.
1797
1798         WebKitTestRunner already does this.
1799
1800         * DumpRenderTree/mac/DumpRenderTree.mm:
1801         (resetWebViewToConsistentStateBeforeTesting):
1802
1803 2017-06-16  Alex Christensen  <achristensen@webkit.org>
1804
1805         Implement basic authentication in MiniBrowser
1806         https://bugs.webkit.org/show_bug.cgi?id=173443
1807
1808         Reviewed by Tim Horton.
1809
1810         * MiniBrowser/mac/WK2BrowserWindowController.m:
1811         (-[WK2BrowserWindowController webView:didReceiveAuthenticationChallenge:completionHandler:]):
1812
1813 2017-06-16  Jer Noble  <jer.noble@apple.com>
1814
1815         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1816         https://bugs.webkit.org/show_bug.cgi?id=173398
1817         <rdar://problem/32592961>
1818
1819         Reviewed by Eric Carlson.
1820
1821         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1822         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1823         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1824         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1825         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1826         (TestWebKitAPI::TEST):
1827         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1828
1829 2017-06-16  Matt Lewis  <jlewis3@apple.com>
1830
1831         Unreviewed, rolling out r218375.
1832
1833         The API test MediaStreamTrackDetached is still timing out
1834         after the patch
1835
1836         Reverted changeset:
1837
1838         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
1839         reports no recording to WebKit clients"
1840         https://bugs.webkit.org/show_bug.cgi?id=173398
1841         http://trac.webkit.org/changeset/218375
1842
1843 2017-06-15  Jer Noble  <jer.noble@apple.com>
1844
1845         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1846         https://bugs.webkit.org/show_bug.cgi?id=173398
1847         <rdar://problem/32592961>
1848
1849         Reviewed by Eric Carlson.
1850
1851         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1852         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1853         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1854         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1855         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1856         (TestWebKitAPI::TEST):
1857         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1858
1859 2017-06-15  Matt Lewis  <jlewis3@apple.com>
1860
1861         Unreviewed, rolling out r218365.
1862
1863         The revision caused API timeouts on all builds.
1864
1865         Reverted changeset:
1866
1867         "[WebRTC] Removing a MediaStreamTrack from a MediaStream
1868         reports no recording to WebKit clients"
1869         https://bugs.webkit.org/show_bug.cgi?id=173398
1870         http://trac.webkit.org/changeset/218365
1871
1872 2017-06-15  Jer Noble  <jer.noble@apple.com>
1873
1874         [WebRTC] Removing a MediaStreamTrack from a MediaStream reports no recording to WebKit clients
1875         https://bugs.webkit.org/show_bug.cgi?id=173398
1876         <rdar://problem/32592961>
1877
1878         Reviewed by Eric Carlson.
1879
1880         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1881         * TestWebKitAPI/Tests/WebKit2/MediaStreamTrackDetached.mm: Added.
1882         (-[MediaStreamTrackDetachedUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1883         (-[MediaStreamTrackDetachedUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1884         (-[MediaStreamTrackDetachedUIDelegate _webView:mediaCaptureStateDidChange:]):
1885         (TestWebKitAPI::TEST):
1886         * TestWebKitAPI/Tests/WebKit2/mediastreamtrack-detached.html: Added.
1887
1888 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1889
1890         REGRESSION(r218344): [WPE] Thousands of layout test crashes
1891         https://bugs.webkit.org/show_bug.cgi?id=173433
1892
1893         Unreviewed.
1894
1895         * wpe/jhbuild.modules: Revert the update of WPEBackend-mesa.
1896
1897 2017-06-15  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1898
1899         [WPE] The run-minibrowser script should allow to execute also a WPE launcher
1900         https://bugs.webkit.org/show_bug.cgi?id=173061
1901
1902         Reviewed by Žan Doberšek.
1903
1904         Launch dyz <https://github.com/Igalia/dyz> with the script
1905         run-minibrowser for the wpe port. It is now built as part of the
1906         WPE dependencies with JHBuild.
1907
1908         * Scripts/run-minibrowser:
1909         * Scripts/webkitdirs.pm:
1910         (launcherPath):
1911         (launcherName):
1912         * wpe/install-dependencies: Luajit is needed for building dyz.
1913         * wpe/jhbuild.modules: Add dyz and update the revision for WPEBackend-mesa.
1914
1915 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1916
1917         Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
1918         https://bugs.webkit.org/show_bug.cgi?id=173338
1919         <rdar://problem/32777720>
1920
1921         Reviewed by Tim Horton.
1922
1923         Adds new unit tests to ensure that -_webView:willPerformDropWithSession: can be used to filter out drag items
1924         used by WebKit when handling a drop. These tests ensure that WebItemProviderPasteboard is still able to handle
1925         these remaining items on drop.
1926
1927         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1928         (TestWebKitAPI::TEST):
1929         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1930         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1931
1932         Add -overridePerformDropBlock, which can be set to provide custom handling of dropped items.
1933
1934         (-[DataInteractionSimulator _webView:willPerformDropWithSession:]):
1935
1936 2017-06-15  Per Arne Vollan  <pvollan@apple.com>
1937
1938         [Win] Crash in accessibility layout test.
1939         https://bugs.webkit.org/show_bug.cgi?id=173401
1940
1941         Reviewed by Brent Fulgham.
1942
1943         We should not manually release the punkVal IUnknown member in a _variant_t object, since the punkVal
1944         member will be automatically released when the _variant_t object goes out of scope if the vt member
1945         does not equal VT_UNKNOWN | VT_BYREF.
1946         See https://msdn.microsoft.com/en-us/library/windows/desktop/ms221165(v=vs.85).aspx. 
1947
1948         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1949         (AccessibilityUIElement::titleUIElement):
1950
1951 2017-06-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1952
1953         [GTK] Add API to allow overriding popup menus
1954         https://bugs.webkit.org/show_bug.cgi?id=172905
1955
1956         Reviewed by Michael Catanzaro.
1957
1958         Add a unit test to check the new API.
1959
1960         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1961         * TestWebKitAPI/Tests/WebKit2Gtk/TestOptionMenu.cpp: Added.
1962         (OptionMenuTest::OptionMenuTest):
1963         (OptionMenuTest::~OptionMenuTest):
1964         (OptionMenuTest::destroyMenu):
1965         (OptionMenuTest::showOptionMenuCallback):
1966         (OptionMenuTest::menuCloseCallback):
1967         (OptionMenuTest::showOptionMenu):
1968         (OptionMenuTest::clickAtPositionAndWaitUntilOptionMenuShown):
1969         (OptionMenuTest::close):
1970         (OptionMenuTest::activateItem):
1971         (OptionMenuTest::selectItem):
1972         (testOptionMenuSimple):
1973         (testOptionMenuGroups):
1974         (testOptionMenuActivate):
1975         (testOptionMenuSelect):
1976         (beforeAll):
1977         (afterAll):
1978
1979 2017-06-15  Fujii Hironori  <Hironori.Fujii@sony.com>
1980
1981         [WinCairo] DumpRenderTree.cpp: error C3861: 'CFURLCacheCreate': identifier not found
1982         https://bugs.webkit.org/show_bug.cgi?id=173399
1983
1984         Reviewed by Per Arne Vollan.
1985
1986         OpenCFLite doesn't have CFURLCacheCreate and CFURLCacheSetSharedURLCache.
1987         Curl port needs to do nothing because libcurl doesn't have disk cache.
1988
1989         * DumpRenderTree/win/DumpRenderTree.cpp:
1990         (prepareConsistentTestingEnvironment): Call CFURLCacheCreate() and
1991         CFURLCacheSetSharedURLCache() only if USE(CFURLCONNECTION).
1992
1993 2017-06-14  Tomas Popela  <tpopela@redhat.com>
1994
1995         [GTK] integer expression expected if running Tools/gtk/install-dependencies
1996         https://bugs.webkit.org/show_bug.cgi?id=173356
1997
1998         Reviewed by Michael Catanzaro.
1999
2000         Use the correct operator to compare the strings.
2001
2002         * gtk/install-dependencies:
2003
2004 2017-06-14  Commit Queue  <commit-queue@webkit.org>
2005
2006         Unreviewed, rolling out r218285.
2007         https://bugs.webkit.org/show_bug.cgi?id=173391
2008
2009         API test fails on iOS (Requested by alexchristensen on
2010         #webkit).
2011
2012         Reverted changeset:
2013
2014         "Add SPI for immediate injection of user scripts"
2015         https://bugs.webkit.org/show_bug.cgi?id=173342
2016         http://trac.webkit.org/changeset/218285
2017
2018 2017-06-14  Chris Dumez  <cdumez@apple.com>
2019
2020         WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
2021         https://bugs.webkit.org/show_bug.cgi?id=173384
2022         <rdar://problem/32723779>
2023
2024         Reviewed by Dan Bernstein.
2025
2026         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2027         * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
2028         Add API test coverage.
2029
2030         * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
2031         (TestWebKitAPI::Util::sleep):
2032         Update implementation of Util::sleep() so that we actually run the run loop.
2033         Otherwise, we don't process events while sleeping.
2034
2035 2017-06-14  Alex Christensen  <achristensen@webkit.org>
2036
2037         Add SPI for immediate injection of user scripts
2038         https://bugs.webkit.org/show_bug.cgi?id=173342
2039         <rdar://problem/29202285>
2040
2041         Reviewed by Brady Eidson.
2042
2043         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
2044         (waitForMessage):
2045         (TEST):
2046
2047 2017-06-14  Claudio Saavedra  <csaavedra@igalia.com>
2048
2049         Add WPE to the flakiness dashboard
2050         https://bugs.webkit.org/show_bug.cgi?id=173365
2051
2052         Reviewed by Carlos Alberto Lopez Perez.
2053
2054         * TestResultServer/static-dashboards/builders.jsonp:
2055         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2056         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
2057         (resetGlobals):
2058         * TestResultServer/static-dashboards/loader_unittests.js:
2059
2060 2017-06-14  Brady Eidson  <beidson@apple.com>
2061
2062         WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
2063         <rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
2064
2065         Reviewed by Alex Christensen.
2066
2067         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2068         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
2069         (-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
2070         (-[IconLoadingSchemeHandler initWithData:mimeType:]):
2071         (-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
2072         (-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
2073         (TEST):
2074
2075 2017-06-14  Tim Horton  <timothy_horton@apple.com>
2076
2077         WKContentViewEditingActions API test always fails
2078         https://bugs.webkit.org/show_bug.cgi?id=173374
2079
2080         Reviewed by Wenson Hsieh.
2081
2082         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
2083         (TEST):
2084         selectAll isn't working, because canPerformAction for selectAll returns NO
2085         if selectionIsNone (which is true in the non-contenteditable case).
2086         Instead, make use of r218180's test page, which knows how to select itself.
2087         Also, reset the pasteboard at the beginning of the test to reduce confusion
2088         (I landed the test broken because my simulator had the correct text
2089         stuck in its pasteboard).
2090
2091 2017-06-14  Jonathan Bedard  <jbedard@apple.com>
2092
2093         Configure screen scale for running layout tests on plus devices
2094         https://bugs.webkit.org/show_bug.cgi?id=173319
2095
2096         Reviewed by Tim Horton.
2097
2098         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
2099         * DumpRenderTree/mac/DumpRenderTree.mm:
2100         (dumpRenderTree): Set screen scale to 2.0.
2101         * TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
2102         add _setScale for UIScreen.
2103         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
2104         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
2105         * WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
2106         * WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
2107         * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
2108         * WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
2109         (WTR::TestController::platformInitialize): Set screen scale to 2.0.
2110         * WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
2111         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
2112         * WebKitTestRunner/ios/mainIOS.mm: Ditto.
2113
2114 2017-06-14  Alexey Proskuryakov  <ap@apple.com>
2115
2116         Add iOS 11 support to the bot watcher's dashboard
2117         https://bugs.webkit.org/show_bug.cgi?id=173369
2118
2119         Reviewed by Lucas Forschler.
2120
2121         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
2122         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
2123         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
2124         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
2125         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2126         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2127
2128 2017-06-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2129
2130         [GTK][WPE] Raise the timeout values for layout tests
2131         https://bugs.webkit.org/show_bug.cgi?id=173368
2132
2133         Reviewed by Carlos Garcia Campos.
2134
2135         Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
2136         When running under valgrind a 10x multiplier is applied.
2137
2138         * Scripts/webkitpy/port/gtk.py:
2139         (GtkPort.default_timeout_ms):
2140         * Scripts/webkitpy/port/gtk_unittest.py:
2141         (GtkPortTest.test_default_timeout_ms):
2142         * Scripts/webkitpy/port/wpe.py:
2143         (WPEPort.default_timeout_ms):
2144         * Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
2145         (WPEPortTest):
2146         (WPEPortTest.make_port):
2147         (WPEPortTest.test_default_timeout_ms):
2148         (WPEPortTest.test_get_crash_log):
2149
2150 2017-06-14  Alex Christensen  <achristensen@webkit.org>
2151
2152         Test persistent WKHTTPCookieStorages on iOS.
2153         https://bugs.webkit.org/show_bug.cgi?id=173284
2154
2155         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2156         (TEST):
2157         Make the bots green again for now. There's still a problem, and I'll investigate and fix.
2158
2159 2017-06-14  Per Arne Vollan  <pvollan@apple.com>
2160
2161         [Win] DRT should not use disk cache.
2162         https://bugs.webkit.org/show_bug.cgi?id=173361
2163
2164         Reviewed by Darin Adler.
2165
2166         Like on macOS/iOS, DRT on Windows should only use memory cache.
2167
2168         * DumpRenderTree/win/DumpRenderTree.cpp:
2169         (setDefaultsToConsistentValuesForTesting):
2170         (prepareConsistentTestingEnvironment):
2171
2172 2017-06-14  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
2173
2174         MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
2175         https://bugs.webkit.org/show_bug.cgi?id=171668
2176
2177         Reviewed by Jer Noble.
2178
2179         MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
2180         MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
2181         Infinity when the double value passed as argument is greater than 2^64.
2182
2183         This patch removes the overflow control mechanism when time value is represented as a double. This patch also
2184         modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
2185         MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
2186         double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
2187         method. No behavior change for rational MediaTime.
2188
2189         * TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
2190         (TestWebKitAPI::TEST):
2191
2192 2017-06-13  Alex Christensen  <achristensen@webkit.org>
2193
2194         Test persistent WKHTTPCookieStorages on iOS
2195         https://bugs.webkit.org/show_bug.cgi?id=173284
2196         <rdar://problem/32260156>
2197
2198         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2199         (TEST):
2200
2201 2017-06-13  Matt Rajca  <mrajca@apple.com>
2202
2203         WebsitePolicies: let clients select specific autoplay quirks
2204         https://bugs.webkit.org/show_bug.cgi?id=173343
2205
2206         Reviewed by Alex Christensen.
2207
2208         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2209         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2210         (TEST): Updated tests.
2211
2212 2017-06-13  Daniel Bates  <dabates@apple.com>
2213
2214         Implement W3C Secure Contexts Draft Specification
2215         https://bugs.webkit.org/show_bug.cgi?id=158121
2216         <rdar://problem/26012994>
2217
2218         Reviewed by Brent Fulgham.
2219
2220         Part 4
2221
2222         Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
2223         Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
2224         to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
2225
2226         * DumpRenderTree/TestOptions.h:
2227         * DumpRenderTree/TestOptions.mm:
2228         (TestOptions::TestOptions):
2229         * DumpRenderTree/mac/DumpRenderTree.mm:
2230         (setWebPreferencesForTestOptions):
2231         * DumpRenderTree/win/DumpRenderTree.cpp:
2232         (enableExperimentalFeatures):
2233         * WebKitTestRunner/TestController.cpp:
2234         (WTR::TestController::resetPreferencesToConsistentValues):
2235         (WTR::updateTestOptionsFromTestHeader):
2236         * WebKitTestRunner/TestOptions.h:
2237         (WTR::TestOptions::hasSameInitializationOptions):
2238
2239 2017-06-13  Alex Christensen  <achristensen@webkit.org>
2240
2241         Test persistent WKHTTPCookieStorages on iOS
2242         https://bugs.webkit.org/show_bug.cgi?id=173284
2243         <rdar://problem/32260156>
2244
2245         Reviewed by Alexey Proskuryakov.
2246
2247         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2248         (TEST):
2249
2250 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2251
2252         [GTK] Blob download doesn't work
2253         https://bugs.webkit.org/show_bug.cgi?id=172442
2254
2255         Reviewed by Carlos Alberto Lopez Perez.
2256
2257         Add a unit test to check blob downloads.
2258
2259         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
2260         (testBlobDownload):
2261         (beforeAll):
2262
2263 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2264
2265         [GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
2266         https://bugs.webkit.org/show_bug.cgi?id=173316
2267
2268         Reviewed by Alex Christensen.
2269
2270         It's not really possible to run layout tests from the tarball, so it's better not to include those files.
2271
2272         * gtk/manifest.txt.in:
2273
2274 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2275
2276         [WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
2277         https://bugs.webkit.org/show_bug.cgi?id=173315
2278
2279         Reviewed by Darin Adler.
2280
2281         This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
2282         somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
2283         returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
2284         freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
2285         WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
2286         destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
2287         WKGeolocationManagerRef is not destroyed.
2288
2289         * WebKitTestRunner/GeolocationProviderMock.cpp:
2290         (WTR::GeolocationProviderMock::GeolocationProviderMock):
2291         * WebKitTestRunner/GeolocationProviderMock.h:
2292
2293 2017-06-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2294
2295         Unable to paste text that was copied from a page into the universal search field
2296         https://bugs.webkit.org/show_bug.cgi?id=173293
2297         <rdar://problem/32440918>
2298
2299         Reviewed by Ryosuke Niwa.
2300
2301         Adds 2 new unit tests for copying plain and rich selected web content.
2302         See WebCore and WebKit ChangeLogs for more detail.
2303
2304         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2305         * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
2306         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
2307         (TestWebKitAPI::dataForPasteboardType):
2308         (TestWebKitAPI::setUpWebViewForPasteboardTests):
2309         (TestWebKitAPI::TEST):
2310
2311 2017-06-13  Joanmarie Diggs  <jdiggs@igalia.com>
2312
2313         AX: [ATK] Implement missing AtkRelation types
2314         https://bugs.webkit.org/show_bug.cgi?id=155494
2315
2316         Reviewed by Darin Adler.
2317
2318         Add additional methods to test ARIA properties which are exposed via
2319         AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
2320
2321         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2322         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
2323         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
2324         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
2325         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
2326         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
2327         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
2328         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2329         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2330         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2331         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2332         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
2333         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
2334         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
2335         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
2336         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
2337         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
2338         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
2339
2340 2017-06-12  Daniel Bates  <dabates@apple.com>
2341
2342         Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
2343         https://bugs.webkit.org/show_bug.cgi?id=173286
2344         <rdar://problem/32726102>
2345
2346         Reviewed by Brent Fulgham.
2347
2348         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
2349         (TestWebKitAPI::TEST_F):
2350
2351 2017-06-12  Lucas Forschler  <lforschler@apple.com>
2352
2353         <rdar://problem/32683422>
2354         Teach copy-webkitlibraries-to-product-directory script about updated libraries.
2355
2356         Reviewed by Conrad Schultz.
2357
2358         * Scripts/copy-webkitlibraries-to-product-directory:
2359
2360 2017-06-12  Tim Horton  <timothy_horton@apple.com>
2361
2362         [iOS] Cmd-C doesn't copy text from WKWebView
2363         https://bugs.webkit.org/show_bug.cgi?id=173277
2364         <rdar://problem/32396742>
2365
2366         Reviewed by Dan Bernstein.
2367
2368         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2369         * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
2370         Add a test ensuring that -copy on WKContentView will cause text to be copied.
2371
2372 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
2373
2374         [WebCrypto] Remove experimental feature flag of SubtleCrypto
2375         https://bugs.webkit.org/show_bug.cgi?id=173197
2376         <rdar://problem/32688148>
2377
2378         Reviewed by Brent Fulgham.
2379
2380         * DumpRenderTree/mac/DumpRenderTree.mm:
2381         (enableExperimentalFeatures):
2382         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2383         (WTR::InjectedBundle::beginTesting):
2384         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2385         (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
2386         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2387
2388 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2389
2390         [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
2391         https://bugs.webkit.org/show_bug.cgi?id=173238
2392         <rdar://problem/31943370>
2393
2394         Reviewed by Ryosuke Niwa and Tim Horton.
2395
2396         Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
2397         element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
2398         of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
2399
2400         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2401         (TestWebKitAPI::TEST):
2402         * TestWebKitAPI/ios/DataInteractionSimulator.h:
2403         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2404         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
2405         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
2406
2407 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2408
2409         WebItemProviderPasteboard should call its completion block immediately after a synchronous load
2410         https://bugs.webkit.org/show_bug.cgi?id=173225
2411         <rdar://problem/32713144>
2412
2413         Reviewed by Tim Horton.
2414
2415         Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
2416         cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
2417
2418         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2419         (TestWebKitAPI::TEST):
2420
2421 2017-06-12  Jonathan Bedard  <jbedard@apple.com>
2422
2423         Return correct process names for iOS on-device testing
2424         https://bugs.webkit.org/show_bug.cgi?id=173263
2425
2426         Reviewed by Alex Christensen.
2427
2428         When running tests on iOS devices, process names do not end with '.Development'
2429         as they do on Mac and iOS simulator.
2430
2431         * WebKitTestRunner/TestController.cpp:
2432         (WTR::TestController::webProcessName): Return correct process name without '.Development'
2433         for iOS on-device testing.
2434         (WTR::TestController::networkProcessName): Ditto.
2435         (WTR::TestController::databaseProcessName): Ditto.
2436
2437 2017-06-12  Chris Dumez  <cdumez@apple.com>
2438
2439         Regression(r217867): Legacy SessionHistoryEntryData format should not change
2440         https://bugs.webkit.org/show_bug.cgi?id=173267
2441         <rdar://problem/32701257>
2442
2443         Reviewed by Simon Fraser.
2444
2445         Restrict test to stop covering saving / restore of scrollRestoration via the legacy
2446         SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
2447         though as this covers the crash that r217867 was fixing.
2448
2449         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
2450         (TestWebKitAPI::createSessionStateData):
2451         (TestWebKitAPI::TEST):
2452         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
2453
2454 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2455
2456         [GTK] Stop dismissing menus attached to the web view for every injected event
2457         https://bugs.webkit.org/show_bug.cgi?id=172708
2458
2459         Reviewed by Alex Christensen.
2460
2461         It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
2462         that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
2463         events while the menu is open.
2464
2465         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2466         (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
2467         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
2468         (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
2469
2470 2017-06-12  Miguel Gomez  <magomez@igalia.com>
2471
2472         [GTK][WPE] Enable GStreamer GL on development builds
2473         https://bugs.webkit.org/show_bug.cgi?id=173248
2474
2475         Enable GStreamer GL for GTK and WPE.
2476
2477         Reviewed by Carlos Garcia Campos.
2478
2479         * Scripts/webkitperl/FeatureList.pm:
2480
2481 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2482
2483         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
2484
2485         Notifications are no longer cleared on page navigation.
2486
2487         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
2488         (testWebViewNotification):
2489
2490 2017-06-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2491
2492         Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
2493
2494         DBus interface and object path names were updated in r217831.
2495
2496         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
2497
2498 2017-06-10  Dan Bernstein  <mitz@apple.com>
2499
2500         Reverted r218056 because it made the IDE reindex constantly.
2501
2502         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2503         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2504         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
2505         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2506         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
2507         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2508         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2509         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2510
2511 2017-06-10  Dan Bernstein  <mitz@apple.com>
2512
2513         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
2514         https://bugs.webkit.org/show_bug.cgi?id=173223
2515
2516         Reviewed by Sam Weinig.
2517
2518         The rebuilds were happening due to a difference in the compiler options that the IDE and
2519         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
2520         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
2521         specify an appropriate path in CLANG_INDEX_STORE_PATH.
2522
2523         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2524         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2525         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
2526         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2527         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
2528         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2529         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2530         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2531
2532 2017-06-10  Jonathan Bedard  <jbedard@apple.com>
2533
2534         webkitpy: Reduce polling in ServerProcess
2535         https://bugs.webkit.org/show_bug.cgi?id=173116
2536
2537         Reviewed by Ryosuke Niwa.
2538
2539         We should be smarter about polling. We do not need to poll every time a line is read from
2540         stdout and stderr since lines are usually read from cached data. We should only poll
2541         when extracting that cached data from stdout and stderr.
2542
2543         * Scripts/webkitpy/port/driver.py:
2544         (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
2545         and on ServerProcess to poll the process if not data is available in stdout and stderr.
2546         * Scripts/webkitpy/port/driver_unittest.py:
2547         (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
2548         ServerProcess.
2549         * Scripts/webkitpy/port/server_process.py:
2550         (ServerProcess._read): Allow for data to be read from _output even if the process has
2551         crashed. Only poll the process if data needs to be extracted from stdout or stderr. 
2552         * Scripts/webkitpy/port/server_process_mock.py:
2553         (MockServerProcess): Add number_of_times_polled.
2554         (MockServerProcess.poll): Increment number_of_times_polled.
2555         (MockServerProcess.has_crashed): Poll before returning crash state.
2556         (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
2557         just like a ServerProcess would.
2558         (MockServerProcess.read_stdout): Ditto.
2559         * Scripts/webkitpy/port/server_process_unittest.py:
2560         (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
2561         process from ending before stdout and stderr are read. This is the reason this test was flakey.
2562         (TestServerProcess):
2563         (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
2564         the processes is polled.
2565         (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
2566         data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
2567
2568 2017-06-10  Andy Estes  <aestes@apple.com>
2569
2570         [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
2571         https://bugs.webkit.org/show_bug.cgi?id=173190
2572         <rdar://problem/31360659>
2573
2574         Reviewed by Brady Eidson.
2575         
2576         Added a release assert that tries to create a proper test failure if the web process crashes.
2577
2578         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
2579         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
2580
2581 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2582
2583         [iOS DnD] Add a hook to perform two-step drops in editable content
2584         https://bugs.webkit.org/show_bug.cgi?id=172992
2585         <rdar://problem/32590174>
2586
2587         Reviewed by Tim Horton.
2588
2589         Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
2590         Tests:  DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
2591                 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
2592
2593         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
2594         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2595         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
2596
2597         Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
2598         be overridden. Currently, this is overridden to just return true.
2599
2600         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2601         (TestWebKitAPI::TEST):
2602         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2603         (WTR::InjectedBundlePage::InjectedBundlePage):
2604
2605 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
2606
2607         [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
2608         https://bugs.webkit.org/show_bug.cgi?id=173103
2609
2610         Reviewed by Xabier Rodriguez-Calvar.
2611
2612         * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
2613         when building the WPE port through build-webkit.
2614
2615 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
2616
2617         [WPE] Enable MEDIA_SOURCE for build-webkit builds
2618         https://bugs.webkit.org/show_bug.cgi?id=173136
2619
2620         Reviewed by Xabier Rodriguez-Calvar.
2621
2622         * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
2623
2624 2017-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2625
2626         [GTK] Use API::FormClient instead of the C API in WebKitFormClient
2627         https://bugs.webkit.org/show_bug.cgi?id=173098
2628
2629         Reviewed by Žan Doberšek.
2630
2631         Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
2632         assuming that all tests containing forms define ids for the form elements like
2633         /webkit2/WebKitWebExtension/form-controls-associated-signal does.
2634
2635         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
2636         (formControlsAssociatedCallback):
2637
2638 2017-06-08  Jonathan Bedard  <jbedard@apple.com>
2639
2640         webkitpy: Run sample/spindump on iOS devices
2641         https://bugs.webkit.org/show_bug.cgi?id=171881
2642         <rdar://problem/32084602>
2643
2644         Reviewed by Daniel Bates.
2645
2646         * Scripts/webkitpy/port/darwin.py:
2647         (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
2648         requires sudo to run spindump.
2649         * Scripts/webkitpy/port/ios_device.py:
2650         (IOSDevicePort.look_for_new_samples): Deleted.
2651         (IOSDevicePort.sample_process): Deleted.
2652         * Scripts/webkitpy/port/ios_device_unittest.py:
2653         (IOSDeviceTest): iOS devices use 'ios' and their os_name.
2654         (IOSDeviceTest.test_spindump):
2655         (IOSDeviceTest.test_sample_process):
2656         (IOSDeviceTest.test_sample_process_exception):
2657         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2658         (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
2659
2660 2017-06-08  Keith Miller  <keith_miller@apple.com>
2661
2662         WebAssembly: We should only create wrappers for functions that can be exported
2663         https://bugs.webkit.org/show_bug.cgi?id=173088
2664
2665         Reviewed by Saam Barati.
2666
2667         Add quick mode for wasm tests.
2668
2669         * Scripts/run-jsc-stress-tests:
2670
2671 2017-06-08  Darin Adler  <darin@apple.com>
2672
2673         WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
2674         https://bugs.webkit.org/show_bug.cgi?id=173106
2675
2676         Reviewed by Sam Weinig.
2677
2678         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
2679         destroyed last.
2680         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
2681         * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
2682
2683 2017-06-07  Dan Bernstein  <mitz@apple.com>
2684
2685         [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
2686         https://bugs.webkit.org/show_bug.cgi?id=173086
2687
2688         Reviewed by Andy Estes.
2689
2690         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
2691         (TEST):
2692
2693 2017-06-07  Alexey Proskuryakov  <ap@apple.com>
2694
2695         Add High Sierra support to WebKit tools
2696         https://bugs.webkit.org/show_bug.cgi?id=173080
2697
2698         Rubber-stamped by Daniel Bates.
2699
2700         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
2701         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
2702         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2703         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2704         Added dashboard support.
2705
2706         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2707         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
2708         Trigger the right build queues on check-in.
2709
2710         * Scripts/webkitpy/common/system/platforminfo.py:
2711         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
2712         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2713         * Scripts/webkitpy/port/mac.py:
2714         * Scripts/webkitpy/port/mac_unittest.py:
2715         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2716         Added cases for Sierra, and updated tests for new baseline search paths.
2717
2718 2017-06-07  Ryan Haddad  <ryanhaddad@apple.com>
2719
2720         Unreviewed, rolling out r217902.
2721
2722         This change appears to have caused imported/w3c/web-platform-
2723         tests/fetch/api/cors tests to fail on El Capitan.
2724
2725         Reverted changeset:
2726
2727         "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
2728         https://bugs.webkit.org/show_bug.cgi?id=172930
2729         http://trac.webkit.org/changeset/217902
2730
2731 2017-06-07  Daniel Bates  <dabates@apple.com>
2732
2733         Teach run-webkit-tests how to run HTTPS Web Platform Tests
2734         https://bugs.webkit.org/show_bug.cgi?id=172930
2735         <rdar://problem/32570201>
2736
2737         Reviewed by Youenn Fablet.
2738
2739         Some web platform tests need to be run from an HTTPS server in order to exercise functionality
2740         that is conditioned on the page being delivered over a secure protocol. One example of such
2741         a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
2742
2743         Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
2744         to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
2745         This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
2746
2747         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
2748         (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
2749         to the Web Platform Tests HTTPS server.
2750         * Scripts/webkitpy/port/base.py:
2751         (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
2752         * Scripts/webkitpy/port/driver.py:
2753         (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
2754         instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
2755         _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
2756         indicate that they should be considered private instance variables.
2757         (Driver.is_web_platform_test): Update code for renamed instance variables.
2758         (Driver):
2759         (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
2760         (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
2761         determine the base URL to use to access the test.
2762         (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
2763         Platform Tests HTTPS URL. Also updated code for renamed instance variables.
2764
2765 2017-06-07  Per Arne Vollan  <pvollan@apple.com>
2766
2767         Support removal of authentication data through the Website data store API.
2768         https://bugs.webkit.org/show_bug.cgi?id=171217
2769
2770         Reviewed by Brady Eidson.
2771
2772         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2773         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2774         (WTR::InjectedBundle::didReceiveMessageToPage):
2775         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2776         (WTR::TestRunner::removeAllSessionCredentials):
2777         (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
2778         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2779         * WebKitTestRunner/TestController.h:
2780         * WebKitTestRunner/TestInvocation.cpp:
2781         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2782         (WTR::TestInvocation::didRemoveAllSessionCredentials):
2783         * WebKitTestRunner/TestInvocation.h:
2784         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2785         (WTR::TestController::removeAllSessionCredentials):
2786
2787 2017-06-07  Charlie Turner  <cturner@igalia.com>
2788
2789         Add Charlie Turner as contributor
2790         https://bugs.webkit.org/show_bug.cgi?id=173055
2791
2792         Reviewed by Carlos Alberto Lopez Perez.
2793
2794         I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
2795         of webkit-patch upload, which reordered some fields and removed a newline.
2796
2797         * Scripts/webkitpy/common/config/contributors.json:
2798
2799 2017-06-06  Chris Dumez  <cdumez@apple.com>
2800
2801         RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
2802         https://bugs.webkit.org/show_bug.cgi?id=173033
2803         <rdar://problem/32591099>
2804
2805         Reviewed by Simon Fraser.
2806
2807         Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
2808         WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
2809
2810         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2811         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
2812         (TestWebKitAPI::didFinishLoadForFrame):
2813         (TestWebKitAPI::setPageLoaderClient):
2814         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
2815         (TestWebKitAPI::TEST):
2816
2817 2017-06-06  Andy Estes  <aestes@apple.com>
2818
2819         REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
2820         https://bugs.webkit.org/show_bug.cgi?id=172849
2821         <rdar://problem/32567454>
2822
2823         Reviewed by Darin Adler.
2824
2825         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2826         * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
2827         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
2828         (TestWebKitAPI::TEST):
2829
2830 2017-06-06  Yoav Weiss  <yoav@yoav.ws>
2831
2832         [preload] Conditional support for media preloading and align media `as` values.
2833         https://bugs.webkit.org/show_bug.cgi?id=172501
2834
2835         Reviewed by Dean Jackson.
2836
2837         Turn on media preloading preference for tests.
2838
2839         * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
2840         * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
2841         * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
2842
2843 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
2844
2845         webkitpy: Return correct process names from SimulatorProcess
2846         https://bugs.webkit.org/show_bug.cgi?id=172940
2847
2848         Reviewed by Aakash Jain.
2849
2850         * Scripts/webkitpy/port/darwin.py:
2851         (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
2852         (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
2853         (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
2854         * Scripts/webkitpy/port/driver.py:
2855         (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
2856         _server_process.name() will not return the correct process name for iOS.
2857         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
2858         (Driver._read_block): Ditto.
2859         * Scripts/webkitpy/port/driver_unittest.py:
2860         (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
2861         process_name() instead of name().
2862         * Scripts/webkitpy/port/server_process.py:
2863         (ServerProcess._start): Use process_name() instead of name().
2864         (ServerProcess.stop): Ditto.
2865         (ServerProcess.name): Deleted.
2866         * Scripts/webkitpy/port/simulator_process.py:
2867         (SimulatorProcess.process_name): Check the provided bundle for the process name.
2868
2869 2017-06-06  Dean Johnson  <dean_johnson@apple.com>
2870
2871         test-webkitpy: stop forking unsafely from within a spawned process
2872         https://bugs.webkit.org/show_bug.cgi?id=172774
2873
2874         Reviewed by Darin Adler.
2875
2876         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
2877         (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
2878         it's going to be used.
2879         (Builder.force_build):
2880
2881 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
2882
2883         webkitpy: Process crash-logs for iOS devices
2884         https://bugs.webkit.org/show_bug.cgi?id=171976
2885         <rdar://problem/32134551>
2886
2887         Reviewed by David Kilzer.
2888
2889         When running layout tests on an iOS device, crash logs should be processed.
2890         Implement crash log searching and parsing for iOS devices.
2891
2892         * Scripts/webkitpy/common/system/crashlogs.py:
2893         (CrashLogs): Moved process regular expression for Darwin to class variable.
2894         (CrashLogs.__init__): Accept optional list of crash logs to ignore.
2895         (CrashLogs.find_newest_log): Add iOS as a potential platform.
2896         (CrashLogs.find_all_logs): Ditto.
2897         (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
2898         Do not assume that a Darwin crash log starts with the process.
2899         (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
2900         shared code for parsing Darwin crash logs.
2901         (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
2902         object so that crash logs already on the system before testing are not parsed.
2903         (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
2904         (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
2905         (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
2906         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
2907         (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
2908         * Scripts/webkitpy/common/system/systemhost.py:
2909         (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
2910         systems is just the crashlog, use this behavior by default.
2911         * Scripts/webkitpy/common/system/systemhost_mock.py:
2912         (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
2913         systems is just the crashlog, use this behavior by default.
2914         * Scripts/webkitpy/port/apple.py:
2915         (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
2916         (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
2917         the system before testing begins
2918         * Scripts/webkitpy/port/base.py:
2919         (Port._get_crash_log): Pass optional target host when getting crash logs.
2920         * Scripts/webkitpy/port/darwin.py:
2921         (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
2922         CrashLogs object.
2923         (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
2924         logs to be skipped to CrashLogs object.
2925         * Scripts/webkitpy/port/darwin_testcase.py:
2926         (DarwinTest.test_get_crash_log): Removed unused local function.
2927         (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
2928         * Scripts/webkitpy/port/device.py:
2929         (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
2930         name, call it. Otherwise, assume the default behavior and read the file at the provided path.
2931         * Scripts/webkitpy/port/driver.py:
2932         (Driver._get_crash_log): Pass optional target host when getting crash logs.
2933         * Scripts/webkitpy/port/gtk.py:
2934         (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
2935         * Scripts/webkitpy/port/ios.py: Ditto.
2936         (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
2937         to be skipped for each host.
2938         * Scripts/webkitpy/port/ios_device.py:
2939         (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
2940         (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
2941         crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
2942         (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
2943         host is specified. Else, search all connected devices for the specified crash-log.
2944         (IOSDevicePort.look_for_new_crash_logs): Deleted.
2945         * Scripts/webkitpy/port/ios_device_unittest.py:
2946         (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
2947         (IOSDeviceTest.test_get_crash_log): Ditto.
2948         * Scripts/webkitpy/port/simulator_process.py:
2949         (SimulatorProcess.process_name): Check the provided bundle for the process name.
2950         * Scripts/webkitpy/port/win.py:
2951         (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
2952         logs to be skipped to CrashLogs object.
2953         * Scripts/webkitpy/port/wpe.py:
2954         (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
2955
2956 2017-06-06  David Kilzer  <ddkilzer@apple.com>
2957
2958         Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
2959         <https://webkit.org/b/172804>
2960
2961         Reviewed by Darin Adler.
2962
2963         WTF_ATTRIBUTE_PRINTF() only works outside the current
2964         compilation unit if it's on the declaration, not the
2965         implementation, of a function or class method.
2966
2967         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
2968         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
2969         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
2970         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
2971         - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
2972         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2973         - Remove redundant CRASH() macro definition.  Use the one from
2974           <wtf/Assertions.h> instead.
2975
2976 2017-06-06  Joseph Pecoraro  <pecoraro@apple.com>
2977
2978         Move Resource Timing / User Timing from experimental features into main preferences
2979         https://bugs.webkit.org/show_bug.cgi?id=172950
2980
2981         Reviewed by Darin Adler.
2982
2983         * DumpRenderTree/mac/DumpRenderTree.mm:
2984         (enableExperimentalFeatures):
2985         (resetWebPreferencesToConsistentValues):
2986         * DumpRenderTree/win/DumpRenderTree.cpp:
2987         (enableExperimentalFeatures):
2988         (resetWebPreferencesToConsistentValues):
2989         * WebKitTestRunner/TestController.cpp:
2990         (WTR::TestController::resetPreferencesToConsistentValues):
2991         Move out no longer experimental features to the main list.
2992
2993 2017-06-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2994
2995         [WPE] Add an install-dependencies script
2996         https://bugs.webkit.org/show_bug.cgi?id=172948
2997
2998         Reviewed by Žan Doberšek.
2999
3000         It is based on the gtk/install-dependencies script.
3001         Includes support for Debian based distrubutions, Fedora and Arch.
3002         It has been tested on a minimal Debian 9 chroot.
3003
3004         * wpe/install-dependencies: Added.
3005
3006 2017-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
3007
3008         Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
3009         https://bugs.webkit.org/show_bug.cgi?id=172891
3010         <rdar://problem/32204540>
3011
3012         Reviewed by Darin Adler.
3013
3014         Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
3015         contenteditable. See WebCore ChangeLog for more details.
3016
3017         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3018         (TestWebKitAPI::TEST):
3019
3020 2017-06-05  Daniel Bates  <dabates@apple.com>
3021
3022         webkitpy: Abstract Executive class
3023         https://bugs.webkit.org/show_bug.cgi?id=172928
3024         <rdar://problem/32569531>
3025
3026         Reviewed by Ryosuke Niwa.
3027
3028         Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
3029         This will make it straightforward to create additional derived classes that
3030         adhere to the same interface, say for iOS on-device testing.
3031
3032         * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
3033         (AbstractExecutive):
3034         (AbstractExecutive.run_and_throw_if_fail):
3035         (AbstractExecutive.cpu_count):
3036         (AbstractExecutive.interpreter_for_script):
3037         (AbstractExecutive.shell_command_for_script):
3038         (AbstractExecutive.kill_process):
3039         (AbstractExecutive.check_running_pid):
3040         (AbstractExecutive.running_pids):
3041         (AbstractExecutive.wait_newest):
3042         (AbstractExecutive.wait_limited):
3043         (AbstractExecutive.interrupt):
3044         (AbstractExecutive.default_error_handler):
3045         (AbstractExecutive.ignore_error):
3046         (AbstractExecutive._stringify_args):
3047         (AbstractExecutive.command_for_printing):
3048         (AbstractExecutive.run_command):
3049         (AbstractExecutive.popen):
3050         (AbstractExecutive.run_in_parallel):
3051         * Scripts/webkitpy/common/system/executive.py:
3052         (Executive):
3053         (Executive.cpu_count):
3054         (Executive.running_pids):
3055         (Executive.kill_all):
3056         (Executive._compute_stdin):
3057         (Executive.interpreter_for_script): Deleted.
3058         (Executive.shell_command_for_script): Deleted.
3059         (Executive.wait_newest): Deleted.
3060         (Executive.wait_limited): Deleted.
3061         (Executive.default_error_handler): Deleted.
3062         (Executive.ignore_error): Deleted.
3063         (Executive.command_for_printing): Deleted.
3064
3065 2017-06-05  Jonathan Bedard  <jbedard@apple.com>
3066
3067         webkitpy: Add iOS to platform
3068         https://bugs.webkit.org/show_bug.cgi?id=172931
3069
3070         Reviewed by Daniel Bates.
3071
3072         * Scripts/webkitpy/common/system/platforminfo.py:
3073         PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
3074         (PlatformInfo.is_ios): Added.
3075         (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
3076         * Scripts/webkitpy/common/system/platforminfo_mock.py:
3077         (MockPlatformInfo.is_ios): Added.
3078
3079 2017-06-05  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3080
3081         [WPE][JHBuild] Switch github repository from git:// to https://
3082         https://bugs.webkit.org/show_bug.cgi?id=172921
3083
3084         Reviewed by Alex Christensen.
3085
3086         * wpe/jhbuild.modules:
3087
3088 2017-06-05  Tim Horton  <timothy_horton@apple.com>
3089
3090         ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
3091         https://bugs.webkit.org/show_bug.cgi?id=172887
3092         <rdar://problem/32546061>
3093
3094         Reviewed by Sam Weinig.
3095
3096         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3097         (WTR::UIScriptController::applyAutocorrection):
3098         applyAutocorrection can call its completion handler synchronously,
3099         which makes UIScriptController unhappy (see bug 172884).
3100
3101 2017-06-03  Jonathan Bedard  <jbedard@apple.com>
3102
3103         webkitpy: Add contextmanager to disable logging for a block
3104         https://bugs.webkit.org/show_bug.cgi?id=172876
3105
3106         Reviewed by Daniel Bates.
3107
3108         Add a context manager which will use an OutputCapture object to capture logging
3109         in a block and hold it in a variable.
3110
3111         * Scripts/webkitpy/common/system/outputcapture.py:
3112         (OutputCaptureScope):
3113         (OutputCaptureScope.__init__): Construct with OutputCapture object.
3114         (OutputCaptureScope.__enter__): Begin capturing output. 
3115         (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
3116         output and retain the resulting log.
3117         * Scripts/webkitpy/common/system/outputcapture_unittest.py:
3118         (OutputCaptureTest.test_output_capture_scope): Added.
3119
3120 2017-06-02  Zalan Bujtas  <zalan@apple.com>
3121
3122         Cleanup FrameView::autoSizeIfEnabled.
3123         https://bugs.webkit.org/show_bug.cgi?id=172889
3124         <rdar://problem/32550783>
3125
3126         Reviewed by Tim Horton.
3127
3128         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
3129         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
3130         (TEST):
3131
3132 2017-06-02  Chris Dumez  <cdumez@apple.com>
3133
3134         ResourceLoadStatistics are not using unique paths during test runs
3135         https://bugs.webkit.org/show_bug.cgi?id=172861
3136         <rdar://problem/32442251>
3137
3138         Reviewed by Darin Adler.
3139
3140         Make sure WebKitTestRunner sets a temporary path for saving resource
3141         load statistics.
3142
3143         * WebKitTestRunner/TestController.cpp:
3144         (WTR::TestController::generateContextConfiguration):
3145
3146 2017-06-02  Brady Eidson  <beidson@apple.com>
3147
3148         Prevent scheme handlers from handling all built-in URL schemes.
3149         <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
3150
3151         Reviewed by Andy Estes.
3152
3153         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
3154
3155 2017-06-02  Stephan Szabo  <stephan.szabo@am.sony.com>
3156
3157         [JSCOnly] Build static jsc.exe on Windows
3158         https://bugs.webkit.org/show_bug.cgi?id=172833
3159
3160         Reviewed by Konstantin Tokarev.
3161
3162         * CMakeLists.txt:
3163         * Scripts/build-jsc:
3164
3165 2017-06-02  Zalan Bujtas  <zalan@apple.com>
3166
3167         Disable ViewportSizeForViewportUnits tests on iOS.
3168         https://bugs.webkit.org/show_bug.cgi?id=172872
3169
3170         Reviewed by Tim Horton.
3171
3172         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
3173
3174 2017-06-02  Zalan Bujtas  <zalan@apple.com>
3175
3176         Allow clients to override viewport size for CSS viewport units.
3177         https://bugs.webkit.org/show_bug.cgi?id=172838
3178         <rdar://problem/32523441>
3179
3180         Reviewed by Tim Horton.
3181
3182         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3183         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
3184         (TEST):
3185
3186 2017-06-02  Simon Fraser  <simon.fraser@apple.com>
3187
3188         Get <chrono> out of StdLibExtras.h
3189         https://bugs.webkit.org/show_bug.cgi?id=172744
3190
3191         Reviewed by Zalan Bujtas.
3192
3193         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
3194
3195 2017-06-02  Zan Dobersek  <zdobersek@igalia.com>
3196
3197         [WPE] Enable SUBTLE_CRYPTO
3198         https://bugs.webkit.org/show_bug.cgi?id=172756
3199
3200         Reviewed by Michael Catanzaro.
3201
3202         * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
3203         * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
3204         * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
3205         exhausting entropy when running the crypto layout tests.
3206
3207 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3208
3209         [GTK] Bump GTK+ and its dependencies in jhbuild
3210         https://bugs.webkit.org/show_bug.cgi?id=171918
3211
3212         Reviewed by Carlos Alberto Lopez Perez.
3213
3214         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
3215         (WTR::initializeGtkSettings):
3216         * gtk/jhbuild.modules:
3217         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
3218         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
3219
3220 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
3221
3222         [GTK] Bump wayland and weston in jhbuild
3223         https://bugs.webkit.org/show_bug.cgi?id=171921
3224
3225         Reviewed by Carlos Alberto Lopez Perez.
3226
3227         * gtk/jhbuild.modules:
3228         * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
3229
3230 2017-06-01  Andy Estes  <aestes@apple.com>
3231
3232         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
3233         https://bugs.webkit.org/show_bug.cgi?id=172828
3234
3235         Reviewed by Beth Dakin.
3236
3237         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3238
3239 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
3240
3241         webkitpy: Remove unneeded simulator teardown
3242         https://bugs.webkit.org/show_bug.cgi?id=171891
3243
3244         Reviewed by Aakash Jain.
3245
3246         * Scripts/webkitpy/port/ios_simulator.py:
3247         (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
3248         for communication between Python and WebKitTestRunner/DumpRenderTree.
3249
3250 2017-06-01  Keith Miller  <keith_miller@apple.com>
3251
3252         Undo rollout in r217638 with bug fix
3253         https://bugs.webkit.org/show_bug.cgi?id=172824
3254
3255         Unreviewed, reland patch with unused set_state code removed.
3256
3257         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
3258         (runThreadMessageTest):
3259         (TEST):
3260
3261 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
3262
3263         webkitpy: Do not send 0 or -1 as a pid to kill_process
3264         https://bugs.webkit.org/show_bug.cgi?id=172818
3265
3266         Reviewed by Darin Adler.
3267
3268         Sending a signal to process 0 will result in all processes in the group receiving 
3269         the signal. Sending a signal to process -1 will result in all non-system processes
3270         receiving the signal. Both Executive.kill_process and Executive.check_running_pid
3271         should consider these cases
3272
3273         * Scripts/webkitpy/common/system/executive.py:
3274         (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
3275         (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
3276         never be running, although os.kill may succeed.
3277         * Scripts/webkitpy/port/simulator_process.py:
3278         (SimulatorProcess.stop): Do not kill process if it is undefined.
3279
3280 2017-05-31  Alexey Proskuryakov  <ap@apple.com>
3281
3282         JSC EWS bot does not run on WTF only patches
3283         https://bugs.webkit.org/show_bug.cgi?id=172777
3284         rdar://problem/32495975
3285
3286         Reviewed by Aakash Jain.
3287
3288         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
3289         (CheckPatchRelevance): Add a missing comma.
3290
3291 2017-05-31  Commit Queue  <commit-queue@webkit.org>
3292
3293         Unreviewed, rolling out r217611 and r217631.
3294         https://bugs.webkit.org/show_bug.cgi?id=172785
3295
3296         "caused wasm-hashset-many.html to become flaky." (Requested by
3297         keith_miller on #webkit).
3298
3299         Reverted changesets:
3300
3301         "Reland r216808, underlying lldb bug has been fixed."
3302         https://bugs.webkit.org/show_bug.cgi?id=172759
3303         http://trac.webkit.org/changeset/217611
3304
3305         "Use dispatch queues for mach exceptions"
3306         https://bugs.webkit.org/show_bug.cgi?id=172775
3307         http://trac.webkit.org/changeset/217631
3308
3309 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
3310
3311         EWS bots should reboot themselves more frequently
3312         https://bugs.webkit.org/show_bug.cgi?id=172402
3313
3314         Reviewed by Alexey Proskuryakov.
3315
3316         Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
3317
3318         * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
3319
3320 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
3321
3322         Reallocate hardware for iOS bots.
3323         https://bugs.webkit.org/show_bug.cgi?id=172657
3324
3325         Reviewed by Alexey Proskuryakov.
3326
3327         * BuildSlaveSupport/build.webkit.org-config/config.json:
3328
3329 2017-05-31  Andy Estes  <aestes@apple.com>
3330
3331         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
3332         https://bugs.webkit.org/show_bug.cgi?id=172366
3333
3334         Reviewed by Daniel Bates.
3335
3336         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3337
3338 2017-05-31  Jiewen Tan  <jiewen_tan@apple.com>
3339
3340         Unreviewed, add Jiewen Tan as a reviewer
3341
3342         * Scripts/webkitpy/common/config/contributors.json:
3343
3344 2017-05-31  Adrian Perez de Castro  <aperez@igalia.com>
3345
3346         [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
3347         https://bugs.webkit.org/show_bug.cgi?id=172770
3348
3349         Reviewed by Michael Catanzaro.
3350
3351         * MiniBrowser/gtk/BrowserWindow.c:
3352         (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
3353         which caused the body of the if-clause to be accidentally empty.
3354
3355 2017-05-31  Keith Miller  <keith_miller@apple.com>
3356
3357         Reland r216808, underlying lldb bug has been fixed.
3358         https://bugs.webkit.org/show_bug.cgi?id=172759
3359
3360         Unreviewed, relanding old patch. See: rdar://problem/31183352
3361
3362         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
3363         (runThreadMessageTest):
3364         (TEST):
3365
3366 2017-05-31  Matt Lewis  <jlewis3@apple.com>
3367
3368         Unreviewed, rolling out r217603.
3369
3370         This patch broke the internal builds.
3371
3372         Reverted changeset:
3373
3374         "Get <chrono> out of StdLibExtras.h"
3375         https://bugs.webkit.org/show_bug.cgi?id=172744
3376         http://trac.webkit.org/changeset/217603
3377
3378 2017-05-31  Brent Fulgham  <bfulgham@apple.com>
3379
3380         Make ResourceLoadStatistics testing more reliable
3381         https://bugs.webkit.org/show_bug.cgi?id=172730
3382         <rdar://problem/32028373>
3383
3384         Reviewed by Andy Estes.
3385
3386         When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
3387         we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
3388
3389         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3390         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
3391
3392 2017-05-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3393
3394         [GTK][WPE] run-javascriptcore-tests should use the jhbuild
3395         https://bugs.webkit.org/show_bug.cgi?id=172757
3396
3397         Reviewed by Xabier Rodriguez-Calvar.
3398
3399         When needed, add the jhbuild wrapper at the beginning of the array
3400         that will be invoked to execute the run-jsc-stress-test or testapi
3401         commands.
3402
3403         * Scripts/run-javascriptcore-tests:
3404         (runJSCStressTests):
3405         * Scripts/webkitdirs.pm:
3406         (shouldUseJhbuild):
3407
3408 2017-05-31  Simon Fraser  <simon.fraser@apple.com>
3409
3410         Get <chrono> out of StdLibExtras.h
3411         https://bugs.webkit.org/show_bug.cgi?id=172744
3412
3413         Reviewed by Saam Barati.
3414
3415         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
3416
3417 2017-05-30  Tim Horton  <timothy_horton@apple.com>
3418
3419         Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
3420         https://bugs.webkit.org/show_bug.cgi?id=172735
3421         <rdar://problem/32015977>
3422
3423         Reviewed by Enrica Casucci.
3424
3425         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3426         (WTR::UIScriptController::applyAutocorrection):
3427         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3428         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3429         (WTR::UIScriptController::applyAutocorrection):
3430         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3431         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3432         (WTR::UIScriptController::applyAutocorrection):
3433         Expose applyAutocorrection to UIScriptController. Use a WKTesting method
3434         because I don't know how to tap the button in the autocorrection bar from a test.
3435
3436 2017-05-30  Daniel Bates  <dabates@apple.com>
3437
3438         Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
3439         https://bugs.webkit.org/show_bug.cgi?id=172671
3440
3441         Reviewed by Alex Christensen.
3442
3443         We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
3444         For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
3445
3446         * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
3447         (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
3448         to trigger a navigation to test it.
3449         (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
3450         (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
3451
3452 2017-05-30  Jonathan Bedard  <jbedard@apple.com>
3453
3454         webkitpy: Start servers before setting-up for testing
3455         https://bugs.webkit.org/show_bug.cgi?id=172176
3456         <rdar://problem/32225538>
3457
3458         Reviewed by Alexey Proskuryakov.
3459
3460         On-device testing requires that servers are started before ports set-up their
3461         test environments.
3462
3463         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3464         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
3465         Servers are unconditionally stopped on exit.
3466         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
3467         Manager now stops servers.
3468         (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
3469         (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
3470         * Scripts/webkitpy/layout_tests/controllers/manager.py:
3471         (Manager.__init__): Delay construction of the test runner until we can determine
3472         if servers need to be started.
3473         (Manager.run): Determine if servers need to be started and construct the test runner.
3474         Shut servers down when the test run is finished.
3475         (Manager._run_tests): Move the determination of servers to run into Manager.run.
3476         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3477         (is_wpt_server_running): Server is not running if no config is found.
3478         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
3479         (PyWebSocket.is_running): Check if this WebSocket server is running.
3480         * Scripts/webkitpy/port/base.py:
3481         (Port.__init__): Define secure WebSocket server.
3482         (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
3483
3484 2017-05-30  Daniel Bates  <dabates@apple.com>
3485
3486         [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
3487         https://bugs.webkit.org/show_bug.cgi?id=172603
3488         <rdar://problem/32471306>
3489
3490         Reviewed by Brady Eidson.
3491
3492         Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
3493         method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
3494         unloading is initiated for a page that registered a onbeforeunload handler.
3495
3496         Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
3497         is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
3498         when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
3499
3500         Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
3501         for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
3502         as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
3503         registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
3504
3505         * MiniBrowser/mac/WK2BrowserWindowController.m:
3506         (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3507         * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
3508         * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
3509         (sawDialog):
3510         (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
3511         (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3512         (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
3513
3514 2017-05-30  Alex Christensen  <achristensen@webkit.org>
3515
3516         Update libwebrtc configuration
3517         https://bugs.webkit.org/show_bug.cgi?id=172727
3518
3519         Reviewed by Geoffrey Garen.
3520
3521         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3522
3523 2017-05-30  Fujii Hironori  <Hironori.Fujii@sony.com>
3524
3525         [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
3526         https://bugs.webkit.org/show_bug.cgi?id=172702
3527
3528         Reviewed by Alex Christensen.
3529
3530         EGL PlatformDisplay needs to be shut down before existing a
3531         program on Windows.
3532
3533         * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
3534         (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
3535         * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
3536         (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
3537
3538 2017-05-30  Per Arne Vollan  <pvollan@apple.com>
3539
3540         [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
3541         https://bugs.webkit.org/show_bug.cgi?id=172709
3542
3543         Reviewed by Brent Fulgham.
3544
3545         Exit fullscreen mode after a fullscreen test.
3546
3547         * DumpRenderTree/win/DumpRenderTree.cpp:
3548         (resetWebViewToConsistentStateBeforeTesting):
3549
3550 2017-05-30  Antti Koivisto  <antti@apple.com>
3551
3552         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
3553         https://bugs.webkit.org/show_bug.cgi?id=172713
3554
3555         Reviewed by Zalan Bujtas.
3556
3557         * DumpRenderTree/mac/ResourceLoadDelegate.mm:
3558         (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
3559
3560             Remove forced display from plugin resource load delegate. It is testing some long-obsolete
3561             Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
3562             because on Mac WK1 it may get invoked from middle of a layout.
3563
3564             Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
3565
3566 2017-05-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3567
3568         Add a WPE EWS queue
3569         https://bugs.webkit.org/show_bug.cgi?id=172693
3570
3571         Reviewed by Carlos Garcia Campos.
3572
3573         * QueueStatusServer/config/queues.py:
3574         * QueueStatusServer/model/queues.py: Capitalize the name of the
3575         port on the tooltip of the bubbles. Do the same for the GTK port.
3576         (Queue.display_name):
3577         * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
3578         for the GTK+ EWS also. Set for both ports as watcher the alias
3579         bugs-noreply@webkitgtk.org that maintainers of both ports follow.
3580         * Scripts/webkitpy/common/config/ports.py:
3581         (DeprecatedPort.port):
3582         (WpePort):
3583         (WpePort.build_webkit_command):
3584         (WpePort.run_webkit_tests_command):
3585         * Scripts/webkitpy/common/config/ports_unittest.py:
3586         (DeprecatedPortTest):
3587         (DeprecatedPortTest.test_wpe_port):
3588         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
3589         (test_ews_name):
3590
3591 2017-05-29  Zan Dobersek  <zdobersek@igalia.com>
3592
3593         Unreviewed. Bumping the WPEBackend-mesa dependency version.
3594
3595         * wpe/jhbuild.modules: Use the latest version that uses proper GLib
3596         priorities for IPC communication.
3597
3598 2017-05-27  Yusuke Suzuki  <utatane.tea@gmail.com>
3599
3600         [JSC] Map and Set constructors should have fast path for cloning
3601         https://bugs.webkit.org/show_bug.cgi?id=172413
3602
3603         Reviewed by Saam Barati.
3604
3605         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
3606         (TestWebKitAPI::TEST):
3607
3608 2017-05-27  Zalan Bujtas  <zalan@apple.com>
3609
3610         enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
3611         https://bugs.webkit.org/show_bug.cgi?id=172676
3612
3613         Reviewed by Simon Fraser.
3614
3615         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
3616         (TestWebKitAPI::TEST):
3617
3618 2017-05-26  Zalan Bujtas  <zalan@apple.com>