Delayed WebProcessLaunch may break the _relatedWebView SPI
[WebKit-https.git] / Tools / ChangeLog
1 2019-04-22  Chris Dumez  <cdumez@apple.com>
2
3         Delayed WebProcessLaunch may break the _relatedWebView SPI
4         https://bugs.webkit.org/show_bug.cgi?id=197160
5
6         Reviewed by Alex Christensen.
7
8         Add API test coverage.
9
10         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
11
12 2019-04-22  Carlos Garcia Campos  <cgarcia@igalia.com>
13
14         REGRESSION(r241289): [GTK] accessibility/removed-continuation-element-causes-crash.html and accessibility/removed-anonymous-block-child-causes-crash.html crashes
15         https://bugs.webkit.org/show_bug.cgi?id=194630
16
17         Reviewed by Michael Catanzaro.
18
19         Return early from getAttributeSet() is passed in accessible is nullptr.
20
21         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
22
23 2019-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
24
25         Defer EditorState updates until the next layer tree flush in a few additional circumstances
26         https://bugs.webkit.org/show_bug.cgi?id=197145
27         <rdar://problem/50078170>
28
29         Reviewed by Darin Adler.
30
31         Adjusts several editing API tests to wait for a presentation update following a selection change, programmatic
32         focus, or showing the font manager.
33
34         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
35         (TestWebKitAPI::TEST):
36         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
37         (TEST):
38         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
39         (TestWebKitAPI::TEST):
40
41 2019-04-21  Brian Burg  <bburg@apple.com>
42
43         WebDriver: add hooks to make it possible to easily run WPT WebDriver web server by itself
44         https://bugs.webkit.org/show_bug.cgi?id=197125
45         <rdar://problem/50061468>
46
47         Reviewed by Darin Adler.
48
49         Sometimes I want to run wptserve independently of tests. Make it easier to script that
50         using this class rather than making our own ./wpt serve invocation.
51
52         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
53         (WebDriverW3CWebServer):
54         (WebDriverW3CWebServer.document_root): Expose this to clients.
55         (WebDriverW3CWebServer.wait): Add a method that blocks until the server dies.
56
57         (WebDriverW3CWebServer.__enter__):
58         (WebDriverW3CWebServer.__exit__):
59         Make it possible to use the web server with a 'with' statement.
60
61 2019-04-20  Don Olmstead  <don.olmstead@sony.com>
62
63         [CMake][Win] Use target oriented design for WebKitLegacy
64         https://bugs.webkit.org/show_bug.cgi?id=197112
65
66         Reviewed by Konstantin Tokarev.
67
68         Fix includes and libraries for DumpRenderTree after changes to WebKitLegacy targets.
69
70         * DumpRenderTree/CMakeLists.txt:
71         * DumpRenderTree/PlatformWin.cmake:
72         * DumpRenderTree/win/EventSender.cpp:
73
74 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
75
76         Update text for old EWS submit button
77         https://bugs.webkit.org/show_bug.cgi?id=197140
78
79         Reviewed by Alexey Proskuryakov.
80
81         * QueueStatusServer/templates/statusbubble.html:
82
83 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
84
85         [ews-app] New EWS should poll bugzilla more frequently
86         https://bugs.webkit.org/show_bug.cgi?id=197138
87
88         Reviewed by Alexey Proskuryakov.
89
90         * BuildSlaveSupport/ews-app/ews/fetcher.py:
91         (FetchLoop.__init__):
92
93 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
94
95         [ews-app] Submit to EWS buttons are not aligned properly with status-bubbles
96         https://bugs.webkit.org/show_bug.cgi?id=197139
97
98         Reviewed by Alexey Proskuryakov.
99
100         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
101         * QueueStatusServer/templates/statusbubble.html:
102
103 2019-04-20  Chris Dumez  <cdumez@apple.com>
104
105         Unreviewed, fix iOS build with recent SDKs.
106
107         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
108
109 2019-04-19  Keith Miller  <keith_miller@apple.com>
110
111         Add script to merge run_benchmark jsons
112         https://bugs.webkit.org/show_bug.cgi?id=197107
113
114         Reviewed by Michael Saboff.
115
116         The script basically recursively decends through all json objects until it gets
117         to an array or JSON primitive and concats or takes the first value, respectively.
118
119         This patch also adds +x bits to the compare-results script so it
120         can be run directly from the command line. I had to add a new line so that svn
121         will accept the change... yay svn!
122
123         * Scripts/compare-results:
124         * Scripts/merge-result-jsons: Added.
125         (readJSONFile):
126         (deepAppend):
127         (mergeJSONs):
128         (main):
129
130 2019-04-18  Ryosuke Niwa  <rniwa@webkit.org>
131
132         Crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener
133         https://bugs.webkit.org/show_bug.cgi?id=197079
134
135         Reviewed by Darin Adler.
136
137         Added a regression test. It hits a slightly different backtrace but of the same class of issues.
138
139         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
140         * TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm: Added.
141
142 2019-04-18  Commit Queue  <commit-queue@webkit.org>
143
144         Unreviewed, rolling out r244434.
145         https://bugs.webkit.org/show_bug.cgi?id=197089
146
147         caused 1 API test failure (Requested by zalan on #webkit).
148
149         Reverted changeset:
150
151         "Regression (r244291): Broken API Test
152         AutoLayoutRenderingProgressRelativeOrdering"
153         https://bugs.webkit.org/show_bug.cgi?id=196948
154         https://trac.webkit.org/changeset/244434
155
156 2019-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
157
158         Add new compatibility mode API on WKNavigation
159         https://bugs.webkit.org/show_bug.cgi?id=197069
160         <rdar://problem/50025800>
161
162         Reviewed by Tim Horton.
163
164         Add a block property for -didCommitNavigation to TestNavigationDelegate.
165
166         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
167         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
168         (-[TestNavigationDelegate webView:didCommitNavigation:]):
169
170 2019-04-18  Don Olmstead  <don.olmstead@sony.com>
171
172         [CMake] Make WebCore headers copies
173         https://bugs.webkit.org/show_bug.cgi?id=182512
174         <rdar://problem/37510435>
175
176         Reviewed by Alex Christensen.
177
178         Added WebCorePrivateFrameworkHeaders as a dependency of TestWebKitAPI for all
179         ports.
180
181         WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. Any includes
182         of WebCore headers using "*.h" were modified to <WebCore/*.h>
183
184         * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
185         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h:
186         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h:
187         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h:
188         * TestWebKitAPI/CMakeLists.txt:
189         * TestWebKitAPI/PlatformWin.cmake:
190         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
191         * TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp:
192         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
193
194 2019-04-18  Jer Noble  <jer.noble@apple.com>
195
196         Add support for parsing FairPlayStreaming PSSH boxes.
197         https://bugs.webkit.org/show_bug.cgi?id=197064
198
199         Reviewed by Eric Carlson.
200
201         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp:
202         (TestWebKitAPI::TEST):
203
204 2019-04-18  Brent Fulgham  <bfulgham@apple.com>
205
206         InjectedBundle parameters often need initialization function called before unarchiving
207         https://bugs.webkit.org/show_bug.cgi?id=189709
208         <rdar://problem/44573653>
209
210         Reviewed by Ryosuke Niwa.
211
212         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
213         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
214
215 2019-04-18  Zalan Bujtas  <zalan@apple.com>
216
217         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
218         https://bugs.webkit.org/show_bug.cgi?id=196948
219         <rdar://problem/49927131>
220
221         Reviewed by Tim Horton.
222
223         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
224         (TEST): 
225         The expected order of incoming events is
226         1. didInvalidateIntrinsicContentSize
227         2. didFirstLayout
228         At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
229         However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
230         (and remember, all we care about is ordering).
231
232 2019-04-18  Ryan Haddad  <ryanhaddad@apple.com>
233
234         Unreviewed, rolling out r244299.
235
236         Breaks internal tests.
237
238         Reverted changeset:
239
240         "InjectedBundle parameters often need initialization function
241         called before unarchiving"
242         https://bugs.webkit.org/show_bug.cgi?id=189709
243         https://trac.webkit.org/changeset/244299
244
245 2019-04-18  Yusuke Suzuki  <ysuzuki@apple.com>
246
247         [WTF] StringBuilder should set correct m_is8Bit flag when merging
248         https://bugs.webkit.org/show_bug.cgi?id=197053
249
250         Reviewed by Saam Barati.
251
252         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
253         (TestWebKitAPI::TEST):
254
255 2019-04-17  Tim Horton  <timothy_horton@apple.com>
256
257         [iOS Sim Debug] REGRESSION (r244151) TestWebKitAPI.WebKit.OverrideViewportArguments is failing (197028)
258         https://bugs.webkit.org/show_bug.cgi?id=197028
259         <rdar://problem/49985290>
260
261         Reviewed by Wenson Hsieh.
262
263         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
264         (TEST):
265         Liberal application of waitForNextPresentationUpdate works around a race
266         where if the page rapidly changes its viewport arguments (or an API client
267         rapidly changes its viewport arguments), we'd get stuck thinking that the
268         user had intentionally zoomed the page, and stop resetting the initial scale.
269         This deserves a separate bug, but no need to keep the test failing while
270         we think about it.
271
272 2019-04-17  Tim Horton  <timothy_horton@apple.com>
273
274         REGRESSION (r241988): Switching tabs is slow
275         https://bugs.webkit.org/show_bug.cgi?id=197037
276         <rdar://problem/49951473>
277
278         Reviewed by Simon Fraser.
279
280         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
281         * TestWebKitAPI/Tests/WebKitCocoa/ReparentWebViewTimeout.mm: Added.
282         (TEST):
283         * TestWebKitAPI/cocoa/TestWKWebView.h:
284         * TestWebKitAPI/cocoa/TestWKWebView.mm:
285         (-[TestWKWebView addToTestWindow]):
286         Add a test that hangs without this fix.
287
288 2019-04-17  Truitt Savell  <tsavell@apple.com>
289
290         Unreviewed, rolling out r244400.
291
292         Caused testing to exit early with assertionon Debug WK2
293
294         Reverted changeset:
295
296         "UI↔Web deadlock when printing with a JavaScript alert
297         visible"
298         https://bugs.webkit.org/show_bug.cgi?id=196839
299         https://trac.webkit.org/changeset/244400
300
301 2019-04-17  Brady Eidson  <beidson@apple.com>
302
303         Link clicks in PDFs shouldn't send referrer headers.
304         <rdar://problem/21142581> and https://bugs.webkit.org/show_bug.cgi?id=196980
305
306         Reviewed by Tim Horton.
307
308         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
309         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm: Added.
310         (putPDFBytesCallback):
311         (emptyReleaseInfoCallback):
312         (createPDFWithLinkToURL):
313         (TEST):
314
315 2019-04-17  Tim Horton  <timothy_horton@apple.com>
316
317         UI↔Web deadlock when printing with a JavaScript alert visible
318         https://bugs.webkit.org/show_bug.cgi?id=196839
319         <rdar://problem/49157642>
320
321         Reviewed by Andy Estes.
322
323         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
324         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm: Added.
325         (-[PrintOnAlertUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
326         (TEST):
327
328 2019-04-17  Alex Christensen  <achristensen@webkit.org>
329
330         WKRetainPtr's adoption constructor should be private
331         https://bugs.webkit.org/show_bug.cgi?id=197019
332
333         Reviewed by Tim Horton.
334
335         * DumpRenderTree/mac/DumpRenderTree.mm:
336         (dumpFramesAsText):
337         * TestWebKitAPI/InjectedBundleController.cpp:
338         (TestWebKitAPI::InjectedBundleController::initialize):
339         * TestWebKitAPI/PlatformUtilities.cpp:
340         (TestWebKitAPI::Util::createContextWithInjectedBundle):
341         (TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
342         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
343         (TestWebKitAPI::Util::toWK):
344         * TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
345         (TestWebKitAPI::TEST):
346         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
347         (TestWebKitAPI::TEST):
348         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
349         (TestWebKitAPI::TEST):
350         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
351         (TestWebKitAPI::TEST):
352         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
353         (TestWebKitAPI::DOMWindowExtensionBasic::initialize):
354         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
355         (TestWebKitAPI::TEST):
356         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
357         (TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
358         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
359         (TestWebKitAPI::TEST):
360         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
361         (TestWebKitAPI::TEST):
362         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
363         (TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
364         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash.cpp:
365         (TestWebKitAPI::TEST):
366         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash_Bundle.cpp:
367         (TestWebKitAPI::DocumentStartUserScriptAlertCrashTest::initialize):
368         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
369         (TestWebKitAPI::TEST):
370         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
371         (TestWebKitAPI::TEST):
372         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
373         (TestWebKitAPI::TEST):
374         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
375         (TestWebKitAPI::TEST):
376         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
377         (TestWebKitAPI::TEST):
378         * TestWebKitAPI/Tests/WebKit/Find.cpp:
379         (TestWebKitAPI::TEST):
380         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
381         (TestWebKitAPI::TEST):
382         * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp:
383         (TestWebKitAPI::TEST):
384         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
385         (TestWebKitAPI::TEST):
386         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
387         (TestWebKitAPI::TEST):
388         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
389         (TestWebKitAPI::TEST):
390         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
391         (TestWebKitAPI::TEST):
392         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
393         (TestWebKitAPI::TEST):
394         * TestWebKitAPI/Tests/WebKit/GetInjectedBundleInitializationUserDataCallback.cpp:
395         (TestWebKitAPI::TEST):
396         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
397         (TestWebKitAPI::TEST):
398         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle_Bundle.cpp:
399         (TestWebKitAPI::HitTestResultNodeHandleTest::getContextMenuFromDefaultMenu):
400         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
401         (TestWebKitAPI::TEST):
402         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp:
403         (TestWebKitAPI::TEST):
404         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp:
405         (TestWebKitAPI::InjectedBundleNoDisableOverrideBuiltinsBehaviorTest::initialize):
406         (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
407         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest.cpp:
408         (TestWebKitAPI::TEST):
409         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest_Bundle.cpp:
410         (TestWebKitAPI::InjectedBundleFrameHitTestTest::frameLoadFinished):
411         * TestWebKitAPI/Tests/WebKit/InjectedBundleInitializationUserDataCallbackWins.cpp:
412         (TestWebKitAPI::TEST):
413         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen.cpp:
414         (TestWebKitAPI::TEST):
415         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp:
416         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize):
417         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
418         (TestWebKitAPI::TEST):
419         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
420         (TestWebKitAPI::loadAlternateHTMLString):
421         (TestWebKitAPI::TEST):
422         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
423         (TestWebKitAPI::TEST):
424         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
425         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
426         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
427         (TestWebKitAPI::buildAndPerformTest):
428         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
429         (TestWebKitAPI::TEST):
430         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
431         (TestWebKitAPI::TEST):
432         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
433         (TestWebKitAPI::TEST):
434         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
435         (TestWebKitAPI::TEST):
436         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
437         (TestWebKitAPI::TEST):
438         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
439         (TestWebKitAPI::TEST):
440         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
441         (TestWebKitAPI::TEST):
442         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
443         (TestWebKitAPI::TEST):
444         * TestWebKitAPI/Tests/WebKit/PasteboardNotifications.mm:
445         (TestWebKitAPI::TEST):
446         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
447         (TestWebKitAPI::TEST):
448         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
449         (TestWebKitAPI::TEST):
450         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
451         (TestWebKitAPI::TEST):
452         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
453         (TestWebKitAPI::TEST):
454         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
455         (TestWebKitAPI::TEST):
456         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
457         (TestWebKitAPI::TEST):
458         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
459         (TestWebKitAPI::TEST):
460         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
461         (TestWebKitAPI::TEST):
462         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
463         (TestWebKitAPI::TEST):
464         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
465         (TestWebKitAPI::TEST):
466         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
467         (TestWebKitAPI::TEST):
468         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
469         (TestWebKitAPI::TEST):
470         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
471         (TestWebKitAPI::TEST):
472         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
473         (TestWebKitAPI::TEST):
474         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
475         (TestWebKitAPI::TEST):
476         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
477         (TestWebKitAPI::TEST):
478         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
479         (TestWebKitAPI::TEST):
480         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
481         (TestWebKitAPI::TEST):
482         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
483         (TestWebKitAPI::TEST):
484         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
485         (TestWebKitAPI::TEST):
486         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
487         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
488         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
489         (TestWebKitAPI::TEST):
490         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
491         (TestWebKitAPI::TEST):
492         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
493         (TestWebKitAPI::TEST):
494         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
495         (TestWebKitAPI::TEST):
496         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
497         (TestWebKitAPI::TEST):
498         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
499         (TestWebKitAPI::TEST):
500         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
501         (TestWebKitAPI::TEST):
502         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
503         (TestWebKitAPI::TEST):
504         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
505         (TestWebKitAPI::TEST):
506         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
507         (TestWebKitAPI::TEST):
508         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
509         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
510         (TEST):
511         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
512         (TEST):
513         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
514         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
515         (TEST):
516         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
517         (TestWebKitAPI::TEST):
518         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
519         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
520         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
521         (WTR::getMenuItemTitleCallback):
522         (WTR::createMouseMessageBody):
523         (WTR::EventSendingController::mouseDown):
524         (WTR::EventSendingController::mouseUp):
525         (WTR::EventSendingController::mouseMoveTo):
526         (WTR::EventSendingController::mouseForceClick):
527         (WTR::EventSendingController::startAndCancelMouseForceClick):
528         (WTR::EventSendingController::mouseForceDown):
529         (WTR::EventSendingController::mouseForceUp):
530         (WTR::EventSendingController::mouseForceChanged):
531         (WTR::EventSendingController::leapForward):
532         (WTR::EventSendingController::scheduleAsynchronousClick):
533         (WTR::createKeyDownMessageBody):
534         (WTR::EventSendingController::keyDown):
535         (WTR::EventSendingController::scheduleAsynchronousKeyDown):
536         (WTR::EventSendingController::mouseScrollBy):
537         (WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
538         (WTR::EventSendingController::continuousMouseScrollBy):
539         (WTR::EventSendingController::addTouchPoint):
540         (WTR::EventSendingController::updateTouchPoint):
541         (WTR::EventSendingController::setTouchModifier):
542         (WTR::EventSendingController::setTouchPointRadius):
543         (WTR::EventSendingController::touchStart):
544         (WTR::EventSendingController::touchMove):
545         (WTR::EventSendingController::touchEnd):
546         (WTR::EventSendingController::touchCancel):
547         (WTR::EventSendingController::clearTouchPoints):
548         (WTR::EventSendingController::releaseTouchPoint):
549         (WTR::EventSendingController::cancelTouchPoint):
550         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
551         (WTR::InjectedBundle::didCreatePage):
552         (WTR::InjectedBundle::didReceiveMessage):
553         (WTR::InjectedBundle::didReceiveMessageToPage):
554         (WTR::InjectedBundle::booleanForKey):
555         (WTR::InjectedBundle::done):
556         (WTR::InjectedBundle::dumpToStdErr):
557         (WTR::InjectedBundle::outputText):
558         (WTR::InjectedBundle::postNewBeforeUnloadReturnValue):
559         (WTR::InjectedBundle::postAddChromeInputField):
560         (WTR::InjectedBundle::postRemoveChromeInputField):
561         (WTR::InjectedBundle::postFocusWebView):
562         (WTR::InjectedBundle::postSetBackingScaleFactor):
563         (WTR::InjectedBundle::postSetWindowIsKey):
564         (WTR::InjectedBundle::postSetViewSize):
565         (WTR::InjectedBundle::postSimulateWebNotificationClick):
566         (WTR::InjectedBundle::postSetAddsVisitedLinks):
567         (WTR::InjectedBundle::setGeolocationPermission):
568         (WTR::InjectedBundle::setMockGeolocationPosition):
569         (WTR::InjectedBundle::setMockGeolocationPositionUnavailableError):
570         (WTR::InjectedBundle::isGeolocationProviderActive const):
571         (WTR::InjectedBundle::imageCountInGeneralPasteboard const):
572         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
573         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin const):
574         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
575         (WTR::InjectedBundle::setCustomPolicyDelegate):
576         (WTR::InjectedBundle::setHidden):
577         (WTR::InjectedBundle::setCacheModel):
578         (WTR::InjectedBundle::shouldProcessWorkQueue const):
579         (WTR::InjectedBundle::processWorkQueue):
580         (WTR::InjectedBundle::queueBackNavigation):
581         (WTR::InjectedBundle::queueForwardNavigation):
582         (WTR::InjectedBundle::queueLoad):
583         (WTR::InjectedBundle::queueLoadHTMLString):
584         (WTR::InjectedBundle::queueReload):
585         (WTR::InjectedBundle::queueLoadingScript):
586         (WTR::InjectedBundle::queueNonLoadingScript):
587         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
588         (WTR::frameToStr):
589         (WTR::InjectedBundlePage::InjectedBundlePage):
590         (WTR::dumpFrameDescriptionSuitableForTestResult):
591         (WTR::dumpFrameScrollPosition):
592         (WTR::dumpDescendantFrameScrollPositions):
593         (WTR::dumpFrameText):
594         (WTR::dumpDescendantFramesText):
595         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
596         (WTR::TestRunner::shouldDumpPixels const):
597         (WTR::TestRunner::setDumpPixels):
598         (WTR::TestRunner::whatToDump const):
599         (WTR::TestRunner::setWhatToDump):
600         (WTR::TestRunner::setWaitUntilDone):
601         (WTR::TestRunner::shouldWaitUntilDone const):
602         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks):
603         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
604         (WTR::TestRunner::clearAllDatabases):
605         (WTR::TestRunner::setIDBPerOriginQuota):
606         (WTR::TestRunner::originsWithApplicationCache):
607         (WTR::TestRunner::setCanOpenWindows):
608         (WTR::TestRunner::setXSSAuditorEnabled):
609         (WTR::TestRunner::setMediaDevicesEnabled):
610         (WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
611         (WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
612         (WTR::TestRunner::setCustomUserAgent):
613         (WTR::TestRunner::setWebAPIStatisticsEnabled):
614         (WTR::TestRunner::setModernMediaControlsEnabled):
615         (WTR::TestRunner::setWebGL2Enabled):
616         (WTR::TestRunner::setWritableStreamAPIEnabled):
617         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
618         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
619         (WTR::TestRunner::setAllowsAnySSLCertificate):
620         (WTR::TestRunner::setPluginsEnabled):
621         (WTR::TestRunner::setValueForUser):
622         (WTR::TestRunner::setAudioResult):
623         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
624         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
625         (WTR::TestRunner::setAlwaysAcceptCookies):
626         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
627         (WTR::TestRunner::isDoingMediaCapture const):
628         (WTR::TestRunner::queueLoad):
629         (WTR::TestRunner::setRejectsProtectionSpaceAndContinueForAuthenticationChallenges):
630         (WTR::TestRunner::setHandlesAuthenticationChallenges):
631         (WTR::TestRunner::setShouldLogCanAuthenticateAgainstProtectionSpace):
632         (WTR::TestRunner::setShouldLogDownloadCallbacks):
633         (WTR::TestRunner::setAuthenticationUsername):
634         (WTR::TestRunner::setAuthenticationPassword):
635         (WTR::TestRunner::secureEventInputIsEnabled const):
636         (WTR::TestRunner::setBlockAllPlugins):
637         (WTR::TestRunner::setPluginSupportedMode):
638         (WTR::TestRunner::setShouldDecideNavigationPolicyAfterDelay):
639         (WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
640         (WTR::TestRunner::setNavigationGesturesEnabled):
641         (WTR::TestRunner::setIgnoresViewportScaleLimits):
642         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
643         (WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
644         (WTR::TestRunner::terminateNetworkProcess):
645         (WTR::TestRunner::terminateServiceWorkerProcess):
646         (WTR::TestRunner::runUIScript):
647         (WTR::TestRunner::setStatisticsDebugMode):
648         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
649         (WTR::TestRunner::setStatisticsLastSeen):
650         (WTR::TestRunner::setStatisticsPrevalentResource):
651         (WTR::TestRunner::setStatisticsVeryPrevalentResource):
652         (WTR::TestRunner::dumpResourceLoadStatistics):
653         (WTR::TestRunner::isStatisticsPrevalentResource):
654         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
655         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
656         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
657         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
658         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
659         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
660         (WTR::TestRunner::setStatisticsGrandfathered):
661         (WTR::TestRunner::isStatisticsGrandfathered):
662         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
663         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
664         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
665         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
666         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
667         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
668         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
669         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
670         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
671         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
672         (WTR::TestRunner::statisticsUpdateCookieBlocking):
673         (WTR::TestRunner::statisticsSubmitTelemetry):
674         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
675         (WTR::TestRunner::setStatisticsIsRunningTest):
676         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
677         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
678         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
679         (WTR::TestRunner::setStatisticsGrandfatheringTime):
680         (WTR::TestRunner::setStatisticsMaxStatisticsEntries):
681         (WTR::TestRunner::setStatisticsPruneEntriesDownTo):
682         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
683         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
684         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
685         (WTR::TestRunner::statisticsDeleteCookiesForHost):
686         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
687         (WTR::TestRunner::statisticsResetToConsistentState):
688         (WTR::TestRunner::setStorageAccessAPIEnabled):
689         (WTR::TestRunner::getAllStorageAccessEntries):
690         (WTR::TestRunner::addMockMediaDevice):
691         (WTR::TestRunner::clearMockMediaDevices):
692         (WTR::TestRunner::removeMockMediaDevice):
693         (WTR::TestRunner::resetMockMediaDevices):
694         (WTR::TestRunner::connectMockGamepad):
695         (WTR::TestRunner::disconnectMockGamepad):
696         (WTR::TestRunner::setMockGamepadDetails):
697         (WTR::TestRunner::setMockGamepadAxisValue):
698         (WTR::TestRunner::setMockGamepadButtonValue):
699         (WTR::TestRunner::removeAllSessionCredentials):
700         (WTR::TestRunner::clearDOMCache):
701         (WTR::TestRunner::clearDOMCaches):
702         (WTR::TestRunner::hasDOMCache):
703         (WTR::TestRunner::domCacheSize):
704         (WTR::TestRunner::setAllowStorageQuotaIncrease):
705         (WTR::TestRunner::getApplicationManifestThen):
706         (WTR::TestRunner::injectUserScript):
707         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
708         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
709         (WTR::TestRunner::addTestKeyToKeychain):
710         (WTR::TestRunner::cleanUpKeychain):
711         (WTR::TestRunner::keyExistsInKeychain):
712         (WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
713         (WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
714         (WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
715         (WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
716         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
717         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
718         * WebKitTestRunner/TestController.cpp:
719         (WTR::TestController::initialize):
720         (WTR::parseStringTestHeaderValueAsRelativePath):
721         (WTR::updateTestOptionsFromTestHeader):
722         (WTR::TestController::runTest):
723         (WTR::TestController::didReceiveLiveDocumentsList):
724         (WTR::TestController::didReceiveMessageFromInjectedBundle):
725         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
726         (WTR::TestController::didFinishNavigation):
727         (WTR::TestController::didReceiveAuthenticationChallenge):
728         * WebKitTestRunner/TestInvocation.cpp:
729         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
730         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
731         (WTR::TestInvocation::uiScriptDidComplete):
732         (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
733         * WebKitTestRunner/WebNotificationProvider.cpp:
734         (WTR::WebNotificationProvider::closeWebNotification):
735         * WebKitTestRunner/WorkQueueManager.cpp:
736         (WTR::ScriptItem::ScriptItem):
737         (WTR::WorkQueueManager::queueLoad):
738         (WTR::WorkQueueManager::queueLoadHTMLString):
739
740 2019-04-17  Alex Christensen  <achristensen@webkit.org>
741
742         Add a comment to make my test from r244139 less mysterious.
743         https://bugs.webkit.org/show_bug.cgi?id=196744
744
745         As suggested by Darin Adler.
746
747         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
748         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
749
750 2019-04-17  Chris Dumez  <cdumez@apple.com>
751
752         Remember device orientation permission for the duration of the browsing session
753         https://bugs.webkit.org/show_bug.cgi?id=196992
754         <rdar://problem/49946067>
755
756         Reviewed by Alex Christensen.
757
758         Add API test coverage.
759
760         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
761         (-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
762         (TEST):
763
764 2019-04-17  Aakash Jain  <aakash_jain@apple.com>
765
766         [ews-app] Clicking 'submit to new ews' doesn't reload status-bubble
767         https://bugs.webkit.org/show_bug.cgi?id=196675
768
769         Reviewed by Lucas Forschler.
770
771         * BuildSlaveSupport/ews-app/ews/views/submittoews.py:
772         (SubmitToEWS): Added @xframe_options_exempt similar to statusbubble.py
773
774 2019-04-16  Wenson Hsieh  <wenson_hsieh@apple.com>
775
776         [iOS] [WebKit2] Add support for honoring -[UIMenuItem dontDismiss]
777         https://bugs.webkit.org/show_bug.cgi?id=196919
778         <rdar://problem/41630459>
779
780         Reviewed by Tim Horton.
781
782         Add iOS support for several new testing hooks. See below for more detail.
783
784         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
785         (WTR::UIScriptController::isDismissingMenu const):
786
787         Add a new script controller method to query whether the platform menu (on iOS, the callout bar) is done
788         dismissing. We consider the menu to be dismissing in between the `-WillHide` and `-DidHide` notifications sent
789         by UIKit when dismissing the callout bar (i.e. UIMenuController).
790
791         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
792         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
793         (WTR::UIScriptController::isDismissingMenu const):
794         * TestRunnerShared/UIScriptContext/UIScriptController.h:
795         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
796         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
797         (WTR::InjectedBundle::didReceiveMessageToPage):
798         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
799         (WTR::TestRunner::setAllowedMenuActions):
800
801         Add a new helper method to specify a list of allowed actions when bringing up the menu. On iOS, in the case of
802         actions supported by the platform, this matches against method selector names (for instance, "SelectAll", or
803         "Copy", or "Paste"). In the case of the custom actions installed via `installCustomMenuAction`, we instead match
804         against the name of the custom action.
805
806         (WTR::TestRunner::installCustomMenuAction):
807
808         Add a new helper method to install a custom action for the context menu (on iOS, this is the callout bar). This
809         takes the name of the action (which appears in a button in the callout bar), whether the action should cause
810         the callout bar to automatically dismiss, and finally, a JavaScript callback that is invoked when the action is
811         triggered.
812
813         (WTR::TestRunner::performCustomMenuAction):
814
815         Invoked when the custom menu action is triggered.
816
817         * WebKitTestRunner/InjectedBundle/TestRunner.h:
818         * WebKitTestRunner/TestController.cpp:
819         (WTR::TestController::installCustomMenuAction):
820         (WTR::TestController::setAllowedMenuActions):
821         * WebKitTestRunner/TestController.h:
822         * WebKitTestRunner/TestInvocation.cpp:
823         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
824         (WTR::TestInvocation::performCustomMenuAction):
825
826         Add plumbing to call back into the injected bundle when performing the custom action.
827
828         * WebKitTestRunner/TestInvocation.h:
829         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
830         (WTR::TestController::installCustomMenuAction):
831         (WTR::TestController::setAllowedMenuActions):
832         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
833         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
834         (-[TestRunnerWKWebView initWithFrame:configuration:]):
835         (-[TestRunnerWKWebView becomeFirstResponder]):
836         (-[TestRunnerWKWebView _addCustomItemToMenuControllerIfNecessary]):
837
838         Helper method that converts web view's current custom menu action info into a UIMenuItem, and adds it to the
839         shared menu controller. This is also invoked when the web view becomes first responder, which matches behavior
840         in the Mail app on iOS.
841
842         (-[TestRunnerWKWebView installCustomMenuAction:dismissesAutomatically:callback:]):
843         (-[TestRunnerWKWebView setAllowedMenuActions:]):
844         (-[TestRunnerWKWebView resetCustomMenuAction]):
845         (-[TestRunnerWKWebView performCustomAction:]):
846         (-[TestRunnerWKWebView canPerformAction:withSender:]):
847         (-[TestRunnerWKWebView _willHideMenu]):
848         (-[TestRunnerWKWebView _didHideMenu]):
849         * WebKitTestRunner/ios/TestControllerIOS.mm:
850         (WTR::TestController::platformResetStateToConsistentValues):
851
852         Reset both any custom installed actions on the shared menu controller, as well as the list of allowed actions,
853         if specified.
854
855         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
856         (WTR::UIScriptController::isDismissingMenu const):
857
858 2019-04-16  Megan Gardner  <megan_gardner@apple.com>
859
860         Allow sharing from imageSheet on an image document
861         https://bugs.webkit.org/show_bug.cgi?id=196891
862         <rdar://problem/25377386>
863
864         Reviewed by Tim Horton.
865
866         Test to make sure that the correct imageURL is extracted from an image element.
867
868         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
869         (TestWebKitAPI::TEST):
870
871 2019-04-16  Alex Christensen  <achristensen@webkit.org>
872
873         REGRESSION(r244162) Clearing website data from ephemeral WKWebsiteDataStore should finish instead of asserting or hanging
874         https://bugs.webkit.org/show_bug.cgi?id=196995
875
876         Reviewed by Brady Eidson.
877
878         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
879         (TEST):
880
881 2019-04-16  Chris Dumez  <cdumez@apple.com>
882
883         URL set by document.open() is not communicated to the UIProcess
884         https://bugs.webkit.org/show_bug.cgi?id=196941
885         <rdar://problem/49237544>
886
887         Reviewed by Geoff Garen.
888
889         Add API test coverage.
890
891         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
892         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
893         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
894         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
895         (TEST):
896
897 2019-04-16  Commit Queue  <commit-queue@webkit.org>
898
899         Unreviewed, rolling out r244321.
900         https://bugs.webkit.org/show_bug.cgi?id=196968
901
902         Causing all WK2 Debug builds to exit early after Assertion
903         failures. (Requested by ShawnRoberts on #webkit).
904
905         Reverted changeset:
906
907         "URL set by document.open() is not communicated to the
908         UIProcess"
909         https://bugs.webkit.org/show_bug.cgi?id=196941
910         https://trac.webkit.org/changeset/244321
911
912 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
913
914         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
915         https://bugs.webkit.org/show_bug.cgi?id=196948
916
917         Reviewed by Zalan Bujtas.
918
919         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
920         (TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
921
922 2019-04-15  Chris Dumez  <cdumez@apple.com>
923
924         URL set by document.open() is not communicated to the UIProcess
925         https://bugs.webkit.org/show_bug.cgi?id=196941
926         <rdar://problem/49237544>
927
928         Reviewed by Geoffrey Garen.
929
930         Add API test coverage.
931
932         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
933         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
934         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
935         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
936         (TEST):
937
938 2019-04-15  Dean Johnson  <dean_johnson@apple.com>
939
940         Using Tools/Scripts/clean-webkit should not install requests
941         https://bugs.webkit.org/show_bug.cgi?id=196940
942
943         Reviewed by Lucas Forschler.
944
945         * Scripts/webkitpy/common/system/autoinstall.py: Drive-by fix for no logging handlers
946         existing, depending on the path autoinstalled is run through.
947         * Scripts/webkitpy/port/base.py: Import webkitpy.results.upload.Upload only where it's
948         needed.
949         (Port.configuration_for_upload):
950         (Port.commits_for_upload):
951
952 2019-04-15  Alex Christensen  <achristensen@webkit.org>
953
954         Add a DiagnosticLogging method taking an arbitrary dictionary of values.
955         https://bugs.webkit.org/show_bug.cgi?id=196773
956
957         Reviewed by Jer Noble.
958
959         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDiagnosticLogging.mm:
960         (-[TestLoggingDelegate _webView:logDiagnosticMessage:description:valueDictionary:]):
961         (TEST):
962
963 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
964
965         ews-build should clearly indicate flaky test failures
966         https://bugs.webkit.org/show_bug.cgi?id=196947
967
968         Reviewed by Lucas Forschler.
969
970         * BuildSlaveSupport/ews-build/steps.py:
971         (AnalyzeAPITestsResults.analyzeResults):
972
973 2019-04-15  Brent Fulgham  <bfulgham@apple.com>
974
975         InjectedBundle parameters often need initialization function called before unarchiving
976         https://bugs.webkit.org/show_bug.cgi?id=189709
977         <rdar://problem/44573653>
978
979         Reviewed by Ryosuke Niwa.
980
981         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
982         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
983
984 2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>
985
986         HashTable::removeIf always shrinks the hash table by half even if there is nothing left
987         https://bugs.webkit.org/show_bug.cgi?id=196681
988
989         Reviewed by Darin Adler.
990
991         Added tests.
992
993         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
994         (WTF_HashSet.RemoveIf):
995         (WTF_HashSet.RemoveIfShrinkToBestSize):
996
997 2019-04-15  John Wilander  <wilander@apple.com>
998
999         Send delayed Ad Click Attribution conversion requests to the click source
1000         https://bugs.webkit.org/show_bug.cgi?id=196838
1001         <rdar://problem/47650157>
1002
1003         Reviewed by Chris Dumez and Youenn Fablet.
1004
1005         This patch adds test infrastructure to override the default behavior in
1006         WebKit::NetworkAdClickAttribution.
1007
1008         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
1009         (TestWebKitAPI::TEST):
1010         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1011         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1012         (WTR::TestRunner::dumpAdClickAttribution):
1013         (WTR::TestRunner::clearAdClickAttribution):
1014         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
1015         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
1016         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1017         * WebKitTestRunner/TestController.cpp:
1018         (WTR::TestController::setAdClickAttributionOverrideTimerForTesting):
1019         (WTR::TestController::setAdClickAttributionConversionURLForTesting):
1020         * WebKitTestRunner/TestController.h:
1021         * WebKitTestRunner/TestInvocation.cpp:
1022         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1023
1024 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1025
1026         [ews-app] status-bubble should display position in queue
1027         https://bugs.webkit.org/show_bug.cgi?id=196607
1028
1029         Reviewed by Lucas Forschler.
1030
1031         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1032         (StatusBubble._build_bubble):
1033         (StatusBubble._queue_position): Method to calculate patch's position in queue.
1034
1035 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1036
1037         [ews-build] Do not run clean build by default on EWS builders
1038         https://bugs.webkit.org/show_bug.cgi?id=196897
1039
1040         Reviewed by Lucas Forschler.
1041
1042         * BuildSlaveSupport/ews-build/steps.py:
1043         (ApplyPatch.start): Do not create .buildbot-patched file. This is a special file for Buildbot and if this
1044         file is present, during the Source checkout, Buildbot cleans the working directory completely (including removing 
1045         untracked directories like WebKitBuild).
1046         (CheckOutSource.__init__): Pass method=clean so that Buildbot clean the working directory. This does not remove
1047         untracked files/directories (like WebKitBuild).
1048
1049 2019-04-15  Per Arne Vollan  <pvollan@apple.com>
1050
1051         TestRunner::notifyDone() should be safely reentrant
1052         https://bugs.webkit.org/show_bug.cgi?id=196898
1053
1054         Reviewed by Darin Adler.
1055
1056         It is currently possible that TestRunner::notifyDone() will call itself, since
1057         notifyDone() will force a repaint, which can start executing JavaScript, which
1058         may call notifyDone() again. This can lead to test failures and flakiness.
1059         Fix this by setting the m_waitToDump flag before calling the dump() method.
1060
1061         * DumpRenderTree/mac/TestRunnerMac.mm:
1062         (TestRunner::notifyDone):
1063         (TestRunner::forceImmediateCompletion):
1064         * DumpRenderTree/win/TestRunnerWin.cpp:
1065         (TestRunner::notifyDone):
1066         (TestRunner::forceImmediateCompletion):
1067
1068 2019-04-15  Philippe Normand  <pnormand@igalia.com>
1069
1070         [GTK][WPE] Add enable-media websetting
1071         https://bugs.webkit.org/show_bug.cgi?id=196863
1072
1073         Reviewed by Michael Catanzaro.
1074
1075         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1076         (testWebKitSettings): Add test for the enable-media web-setting.
1077
1078 2019-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1079
1080         API test WKAttachmentTests.AddAttachmentToConnectedImageElement is a flaky failure on Mac Release builds
1081         https://bugs.webkit.org/show_bug.cgi?id=196905
1082         <rdar://problem/49886096>
1083
1084         Reviewed by Tim Horton.
1085
1086         This flaky test exercises a race condition between when attachment insertion updates are dispatched from the web
1087         process to the UI process, and when script is executed via -[WKWebView evaluateJavaScript:completionHandler:].
1088         Since attachment insertion and removal updates from the web process to the UI process are scheduled on a zero-
1089         delay timer, we end up with this sequence of events in the problematic (failure) case:
1090
1091         (a) [UI]    Run script #1 (which calls `HTMLAttachmentElement.getAttachmentIdentifier`)
1092             ...IPC from UI to web process...
1093         (b) [Web]   Evaluate script #1 in the web process, which schedules attachment updates on a zero-delay timer
1094             ...IPC from web to UI process...
1095         (c) [UI]    Invoke completion handler for script #1
1096         (d) [UI]    Run script #2 (which calls `document.querySelector('img').attachmentIdentifier`)
1097             ...IPC from UI to web process...
1098         (e) [Web]   Evaluate script #2 in the web process
1099         (f) [Web]   Zero-delay timer fires and dispatches attachment updates to the UI process
1100
1101         ...which means that script #2 will complete before the UI process has received the attachment updates sent in
1102         step (f). However, in the case where the flaky test succeeds, the zero-delay timer in (f) fires *before* script
1103         #2 is run in step (e).
1104
1105         This patch fixes the flaky test by waiting until attachment insertion updates are guaranteed to be received in
1106         the UI process by waiting on a script message posted by the web process, after attachment updates are
1107         dispatched.
1108
1109         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1110         (TestWebKitAPI::TEST):
1111
1112 2019-04-14  Aakash Jain  <aakash_jain@apple.com>
1113
1114         Disable Flaky API Test WKAttachmentTests.AddAttachmentToConnectedImageElement
1115         https://bugs.webkit.org/show_bug.cgi?id=196909
1116
1117         Reviewed by Wenson Hsieh.
1118
1119         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1120         (TestWebKitAPI::TEST):
1121
1122 2019-04-13  Tadeu Zagallo  <tzagallo@apple.com>
1123
1124         CodeCache should check that the UnlinkedCodeBlock was successfully created before caching it
1125         https://bugs.webkit.org/show_bug.cgi?id=196880
1126
1127         Reviewed by Yusuke Suzuki.
1128
1129         Add a new function for bytecode cache tests that does not forceDiskCache
1130         for the second run: runBytecodeCacheNoAssetion. This is necessary for the
1131         test added in this patch, since the code is invalid and therefore won't be
1132         cached. It should also be useful for tests that evaluate dynamically
1133         generated code.
1134
1135         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
1136         * Scripts/run-jsc-stress-tests:
1137
1138 2019-04-12  Eric Carlson  <eric.carlson@apple.com>
1139
1140         Update AudioSession route sharing policy
1141         https://bugs.webkit.org/show_bug.cgi?id=196776
1142         <rdar://problem/46501611>
1143
1144         Reviewed by Jer Noble.
1145
1146         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
1147         (TestWebKitAPI::routeSharingPolicyLongFormVideo):
1148         (TestWebKitAPI::routeSharingPolicyLongFormAudio):
1149         (TestWebKitAPI::TEST):
1150
1151 2019-04-12  Wenson Hsieh  <wenson_hsieh@apple.com>
1152
1153         [iOS] Software keyboard is shown too frequently on some websites
1154         https://bugs.webkit.org/show_bug.cgi?id=195856
1155         <rdar://problem/49191395>
1156
1157         Reviewed by Darin Adler.
1158
1159         Add support for attaching or detaching the hardware keyboard on iOS in layout tests.
1160
1161         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1162         (WTR::UIScriptController::setHardwareKeyboardAttached):
1163         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1164         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1165         (WTR::UIScriptController::setHardwareKeyboardAttached):
1166         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1167         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1168
1169         Additionally link against GraphicsServices in WebKitTestRunner.
1170
1171         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1172         (WTR::TestController::platformResetStateToConsistentValues):
1173         (WTR::UIScriptController::setHardwareKeyboardAttached):
1174
1175 2019-04-12  Ludovico de Nittis  <ludovico.denittis@collabora.com>
1176
1177         [GTK][WPE] Fix pacman install-dependencies packages
1178         https://bugs.webkit.org/show_bug.cgi?id=196817
1179
1180         Reviewed by Žan Doberšek.
1181         
1182         python3-setuptools is called python-setuptools
1183         ruby-highline is only available on AUR
1184         libv4l-devel is incorporated in v4l-utils
1185
1186         * gtk/install-dependencies:
1187         * wpe/install-dependencies:
1188
1189 2019-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1190
1191         [GTK] REGRESSION(r243860): Many tests failing
1192         https://bugs.webkit.org/show_bug.cgi?id=196791
1193
1194         Reviewed by Joanmarie Diggs.
1195
1196         Rework the accessibility unit test to use DBus for the communication with the server. This way we can load
1197         multiple documents and check that accessibility hierarchy is updated after a navigation.
1198
1199         * TestWebKitAPI/Tests/WebKitGtk/AccessibilityTestServer.cpp:
1200         (loadChangedCallback):
1201         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
1202         (AccessibilityTest::AccessibilityTest):
1203         (AccessibilityTest::~AccessibilityTest):
1204         (AccessibilityTest::loadHTMLAndWaitUntilFinished):
1205         (AccessibilityTest::findTestServerApplication):
1206         (AccessibilityTest::findDocumentWeb):
1207         (AccessibilityTest::findRootObject):
1208         (AccessibilityTest::waitUntilChildrenRemoved):
1209         (AccessibilityTest::ensureProxy):
1210         (testAtspiBasicHierarchy):
1211         (beforeAll):
1212         (afterAll):
1213
1214 2019-04-11  Aakash Jain  <aakash_jain@apple.com>
1215
1216         [ews-build] Handle bug titles with unicode characters
1217         https://bugs.webkit.org/show_bug.cgi?id=196802
1218
1219         Reviewed by Dewei Zhu.
1220
1221         * BuildSlaveSupport/ews-build/steps.py:
1222         (ValidatePatch._is_bug_closed):
1223
1224 2019-04-11  Michael Saboff  <msaboff@apple.com>
1225
1226         Improve the Inline Cache Stats code
1227         https://bugs.webkit.org/show_bug.cgi?id=196836
1228
1229         Reviewed by Saam Barati.
1230
1231         Added a new script to consolidate and arrange the output of --useICStats option.
1232
1233         This script merges the output from every group into one large table and sorts it from most common to
1234         least common.  It also counts the slow path GetById and PutById variants and then calculates the
1235         percentage of gets or puts for each unique base,property pair compared to all the gets and puts.
1236         Put together, this is useful to see what property accesses are not getting cached.
1237
1238         * Scripts/ic-stats.py: Added.
1239         (ICStats):
1240         (ICStats.__init__):
1241         (ICStats.parse):
1242         (ICStats.dumpStats):
1243         (usage):
1244
1245 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1246
1247         WKNavigationResponse._downloadAttribute should be nil when no download attribute is present
1248         https://bugs.webkit.org/show_bug.cgi?id=196809
1249         <rdar://49800762>
1250
1251         Reviewed by Brady Eidson.
1252
1253         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1254         (TEST):
1255
1256 2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
1257
1258         requestAnimationFrame should execute before the next frame
1259         https://bugs.webkit.org/show_bug.cgi?id=177484
1260
1261         Reviewed by Simon Fraser.
1262
1263         Add trace points for the page RenderingUpdate.
1264
1265         * Tracing/SystemTracePoints.plist:
1266
1267 2019-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1268
1269         [Win] Use a bundled vswhere.exe instead of downloading by update-vswhere.py
1270         https://bugs.webkit.org/show_bug.cgi?id=196760
1271
1272         Reviewed by Don Olmstead.
1273
1274         vswhere.exe has been bundled since Visual Studio 2017 version
1275         15.2. We shouldn't download vswhere.exe.
1276
1277         * Scripts/build-jsc: Do not call update-vswhere.py.
1278         * Scripts/build-webkit: Ditto.
1279         * Scripts/update-vswhere.py: Removed.
1280         * Scripts/webkitdirs.pm:
1281         (requireModulesForVSWhere): Deleted.
1282         (pickCurrentVisualStudioInstallation): Deleted.
1283         (visualStudioInstallDirVSWhere): Return the latest installed VS
1284         installation path by using the bundled vswhere.exe.
1285         (setupCygwinEnv): Removed a unused variable $visualStudioPath.
1286         (visualStudioInstallDirFallback): Removed.
1287
1288 2019-04-10  Aakash Jain  <aakash_jain@apple.com>
1289
1290         [ews-build] PrintConfiguration should display Xcode version instead of SDKVersion
1291         https://bugs.webkit.org/show_bug.cgi?id=196780
1292
1293         Reviewed by Alexey Proskuryakov.
1294
1295         * BuildSlaveSupport/ews-build/steps.py:
1296         * BuildSlaveSupport/ews-build/steps_unittest.py:
1297
1298 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1299
1300         Add SPI WKNavigationResponse._downloadAttribute
1301         https://bugs.webkit.org/show_bug.cgi?id=196755
1302         <rdar://49587365>
1303
1304         Reviewed by Brady Eidson.
1305
1306         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1307         (-[NavigationResponseTestDelegate navigationResponse]):
1308         (-[NavigationResponseTestDelegate waitForNavigationResponseCallback]):
1309         (-[NavigationResponseTestDelegate waitForNavigationFinishedCallback]):
1310         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1311         (-[NavigationResponseTestDelegate webView:didFinishNavigation:]):
1312         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1313         (readRequest):
1314         (writeResponse):
1315         (TEST):
1316
1317 2019-04-10  Tim Horton  <timothy_horton@apple.com>
1318
1319         Add modern API for overriding the page's specified viewport configuration
1320         https://bugs.webkit.org/show_bug.cgi?id=167734
1321         <rdar://problem/30331795>
1322
1323         Reviewed by Simon Fraser.
1324
1325         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1326         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm: Added.
1327
1328 2019-04-10  Tadeu Zagallo  <tzagallo@apple.com>
1329
1330         Add support for incremental bytecode cache updates
1331         https://bugs.webkit.org/show_bug.cgi?id=195000
1332
1333         Reviewed by Filip Pizlo.
1334
1335         Exit when the initial run to generate bytecode fails.
1336
1337         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
1338
1339 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1340
1341         RemoteObjectRegistry message receiver should be removed when WebPage::close is called instead of waiting until dealloc
1342         https://bugs.webkit.org/show_bug.cgi?id=196744
1343         <rdar://49415309>
1344
1345         Reviewed by Chris Dumez.
1346
1347         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
1348         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1349
1350 2019-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1351
1352         Add a way to opt into modern compatibility mode in layout tests
1353         https://bugs.webkit.org/show_bug.cgi?id=196770
1354         <rdar://problem/49777550>
1355
1356         Reviewed by Antoine Quint.
1357
1358         Add a new test option to enable modern compatibility mode in layout tests.
1359
1360         * WebKitTestRunner/TestController.cpp:
1361         (WTR::updateTestOptionsFromTestHeader):
1362         * WebKitTestRunner/TestController.h:
1363         * WebKitTestRunner/TestOptions.h:
1364         (WTR::TestOptions::hasSameInitializationOptions const):
1365         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1366         (WTR::TestController::platformCreateWebView):
1367         (WTR::TestController::enableModernCompatibilityMode):
1368
1369 2019-04-10  Andy Estes  <aestes@apple.com>
1370
1371         Try to fix the 32-bit watchOS build.
1372
1373         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1374         (-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
1375
1376 2019-04-10  Antoine Quint  <graouts@apple.com>
1377
1378         Enable Pointer Events on watchOS
1379         https://bugs.webkit.org/show_bug.cgi?id=196771
1380         <rdar://problem/49040909>
1381
1382         Reviewed by Dean Jackson.
1383
1384         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1385
1386 2019-04-10  Philippe Normand  <pnormand@igalia.com>
1387
1388         Unreviewed. Fix WPE accessibility tests after r244059.
1389
1390         We are failing to load the injected bundle due to undefined symbol
1391         AccessibilityUIElement::replaceTextInRange().
1392
1393         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
1394         (WTR::AccessibilityUIElement::replaceTextInRange):
1395
1396 2019-04-10  Takashi Komori  <Takashi.Komori@sony.com>
1397
1398         [WinCairo][MiniBrowser] Pull down menu "Disable JavaScript" doesn't work.
1399         https://bugs.webkit.org/show_bug.cgi?id=196727
1400
1401         Reviewed by Fujii Hironori.
1402
1403         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1404         (WebKitBrowserWindow::create):
1405
1406 2019-04-09  Aakash Jain  <aakash_jain@apple.com>
1407
1408         [ews-build] Add unit tests for PrintConfiguration
1409         https://bugs.webkit.org/show_bug.cgi?id=196752
1410
1411         Reviewed by Dewei Zhu.
1412
1413         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1414
1415 2019-04-09  Keith Rollin  <krollin@apple.com>
1416
1417         Unreviewed build maintenance -- update .xcfilelists.
1418
1419         * DumpRenderTree/DerivedSources-input.xcfilelist:
1420         * DumpRenderTree/DerivedSources-output.xcfilelist:
1421
1422 2019-04-09  Zalan Bujtas  <zalan@apple.com>
1423
1424         [AutoSizing] Avoid making text paragraphs scroll horizontally when there is a wide table
1425         https://bugs.webkit.org/show_bug.cgi?id=196743
1426         <rdar://problem/43897551>
1427
1428         Reviewed by Tim Horton.
1429
1430         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm: expected behavior change.
1431         (TEST):
1432
1433 2019-04-09  Youenn Fablet  <youenn@apple.com>
1434
1435         Close service worker database on network process suspension
1436         https://bugs.webkit.org/show_bug.cgi?id=196623
1437         <rdar://problem/48930869>
1438
1439         Reviewed by Alex Christensen.
1440
1441         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1442
1443 2019-04-09  Daniel Bates  <dabates@apple.com>
1444
1445         [iPad] Should open popover when the spacebar is pressed
1446         https://bugs.webkit.org/show_bug.cgi?id=196360
1447         <rdar://problem/49389129>
1448
1449         Reviewed by Brent Fulgham.
1450
1451         Add testing infrastructure to support waiting for a popover to be presented or dismissed.
1452
1453         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1454         (WTR::UIScriptController::isShowingPopover const): Added.
1455         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1456         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1457         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1458         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
1459         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1460         (WTR::UIScriptController::setWillPresentPopoverCallback): Added.
1461         (WTR::UIScriptController::willPresentPopoverCallback const): Added.
1462         (WTR::UIScriptController::setDidDismissPopoverCallback): Added.
1463         (WTR::UIScriptController::didDismissPopoverCallback const): Added.
1464         (WTR::UIScriptController::isShowingPopover const): Added.
1465         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1466         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1467         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1468         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
1469         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1470         (-[TestRunnerWKWebView initWithFrame:configuration:]): Update some state.
1471         (-[TestRunnerWKWebView resetInteractionCallbacks]): Ditto.
1472         (-[TestRunnerWKWebView _willPresentPopover]): Added.
1473         (-[TestRunnerWKWebView _didDismissPopover]): Added.
1474         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1475         (WTR::UIScriptController::isShowingPopover const): Added.
1476         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1477         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1478
1479 2019-04-09  Alex Christensen  <achristensen@webkit.org>
1480
1481         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
1482         https://bugs.webkit.org/show_bug.cgi?id=196665
1483         <rdar://45115669>
1484
1485         Reviewed by Geoff Garen.
1486
1487         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1488         (goBack):
1489         (+[SimpleLookupContext sharedLookupContext]):
1490         (-[SimpleLookupContext lookUpURL:completionHandler:]):
1491         (TEST):
1492         (+[Simple3LookupContext sharedLookupContext]): Deleted.
1493         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
1494
1495 2019-04-09  John Wilander  <wilander@apple.com>
1496
1497         Pick up Ad Click Attribution conversions in NetworkResourceLoader::willSendRedirectedRequest()
1498         https://bugs.webkit.org/show_bug.cgi?id=196558
1499         <rdar://problem/47650245>
1500
1501         Reviewed by Youenn Fablet.
1502
1503         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
1504         (TestWebKitAPI::TEST):
1505             Added tests of WebCore::AdClickAttribution::parseConversionRequest().
1506
1507 2019-04-09  Don Olmstead  <don.olmstead@sony.com>
1508
1509         [CMake] Apple builds should use ICU_INCLUDE_DIRS
1510         https://bugs.webkit.org/show_bug.cgi?id=196720
1511
1512         Reviewed by Konstantin Tokarev.
1513
1514         * TestWebKitAPI/PlatformMac.cmake:
1515
1516 2019-04-09  Jonathan Bedard  <jbedard@apple.com>
1517
1518         iOS 12 Simulator Release WK2 frequently timing out while running layout tests
1519         https://bugs.webkit.org/show_bug.cgi?id=196694
1520         <rdar://problem/48388734>
1521
1522         Rubber-stamped by Aakash Jain.
1523
1524         * Scripts/webkitpy/port/image_diff.py:
1525         (ImageDiffer.diff_image): If the ImageDiff process has data, kill it before running again.
1526         * Scripts/webkitpy/port/server_process.py:
1527         (ServerProcess.has_available_stdout): Check if stdout has data in it.
1528         (ServerProcess._wait_for_data_and_update_buffers_using_select):
1529         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
1530         * Scripts/webkitpy/port/server_process_mock.py:
1531         (MockServerProcess.has_available_stdout):
1532         * Scripts/webkitpy/port/server_process_unittest.py:
1533         (TestServerProcess.serial_test_basic):
1534
1535 2019-04-09  Jer Noble  <jer.noble@apple.com>
1536
1537         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
1538         https://bugs.webkit.org/show_bug.cgi?id=196097
1539
1540         Reviewed by Eric Carlson.
1541
1542         Drive-by bug fix: allow tests to play audio without a user gesture by default.
1543
1544         * DumpRenderTree/mac/DumpRenderTree.mm:
1545         (resetWebPreferencesToConsistentValues):
1546         * WebKitTestRunner/TestController.cpp:
1547         (WTR::TestController::resetPreferencesToConsistentValues):
1548
1549 2019-04-09  Pablo Saavedra  <psaavedra@igalia.com>
1550
1551         [JSCOnly] Add an i386 JSCOnly EWS that runs tests
1552         https://bugs.webkit.org/show_bug.cgi?id=196690
1553
1554         Reviewed by Michael Catanzaro.
1555
1556         * QueueStatusServer/config/queues.py:
1557         * Scripts/webkitpy/common/config/ews.json:
1558         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1559         (test_ews_name):
1560
1561 2019-04-09  Chris Dumez  <cdumez@apple.com>
1562
1563         Loads using loadHTMLString() cause flashing when process-swapping
1564         https://bugs.webkit.org/show_bug.cgi?id=196714
1565         <rdar://problem/49637354>
1566
1567         Reviewed by Antti Koivisto.
1568
1569         Add API test coverage.
1570
1571         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1572
1573 2019-04-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1574
1575         Unreviewed. Fix ATK accessibility tests after r244059.
1576
1577         We are failing to load the injected bundle due to undefined symbol
1578         AccessibilityUIElement::replaceTextInRange().
1579
1580         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1581         (WTR::AccessibilityUIElement::replaceTextInRange):
1582
1583 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1584
1585         AX: Support API: accessibilityReplaceRange:withText
1586         https://bugs.webkit.org/show_bug.cgi?id=196636
1587
1588         Unreviewed build fix for Windows port.
1589
1590         * WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
1591         (WTR::AccessibilityUIElement::replaceTextInRange): Added.
1592
1593 2019-04-08  Don Olmstead  <don.olmstead@sony.com>
1594
1595         [CMake][WinCairo] Separate copied headers into different directories
1596         https://bugs.webkit.org/show_bug.cgi?id=196655
1597
1598         Reviewed by Michael Catanzaro.
1599
1600         * DumpRenderTree/CMakeLists.txt:
1601         * MiniBrowser/win/CMakeLists.txt:
1602         * TestWebKitAPI/CMakeLists.txt:
1603         * TestWebKitAPI/PlatformWin.cmake:
1604
1605 2019-04-08  Jonathan Bedard  <jbedard@apple.com>
1606
1607         Log stack-trace for run-webkit-tests when interrupted
1608         https://bugs.webkit.org/show_bug.cgi?id=176393
1609         <rdar://problem/34262310>
1610
1611         Reviewed by Lucas Forschler.
1612
1613         * Scripts/webkitpy/common/interrupt_debugging.py: Added.
1614         (log_stack_trace): Given a Python frame object, log a stack trace to the provided file.
1615         (StackTraceFileContext): Context which allows stack-traces to be printed to stderr or to a file. 
1616         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a stack-trace can be logged when a program is terminated.
1617         (log_stack_trace_on_ctrl_c): Attach a listener to SIGINT so that a stack-trace can be logged when a program is CTRL+Ced. 
1618         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1619         (main): Set handlers to log stack trace on interruption.
1620
1621 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1622
1623         AX: Support API: accessibilityReplaceRange:withText
1624         https://bugs.webkit.org/show_bug.cgi?id=196636
1625
1626         Unreviewed build fix for Windows port.
1627
1628         * DumpRenderTree/AccessibilityUIElement.cpp:
1629         (AccessibilityUIElement::replaceTextInRange): Changed the return value type from void to bool.
1630
1631 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1632
1633         [ews-build] Scripts using Buildbot API have CORS error
1634         https://bugs.webkit.org/show_bug.cgi?id=196709
1635
1636         Reviewed by Alexey Proskuryakov.
1637
1638         * BuildSlaveSupport/ews-build/master.cfg: Set allowed_origins appropriately.
1639
1640 2019-04-08  Chris Fleizach  <cfleizach@apple.com>
1641
1642         AX: Support API: accessibilityReplaceRange:withText
1643         https://bugs.webkit.org/show_bug.cgi?id=196636
1644
1645         Reviewed by Daniel Bates.
1646
1647         * DumpRenderTree/AccessibilityUIElement.cpp:
1648         (replaceTextInRangeCallback):
1649         (AccessibilityUIElement::replaceTextInRange):
1650         (AccessibilityUIElement::getJSClass):
1651         * DumpRenderTree/AccessibilityUIElement.h:
1652         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1653         (AccessibilityUIElement::replaceTextInRange):
1654         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1655         (AccessibilityUIElement::replaceTextInRange):
1656         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1657         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1658         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1659         (WTR::AccessibilityUIElement::replaceTextInRange):
1660         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1661         (WTR::AccessibilityUIElement::replaceTextInRange):
1662
1663 2019-04-08  Wenson Hsieh  <wenson_hsieh@apple.com>
1664
1665         [iOS] Do not allow starting selection drags when selection views are not visible
1666         https://bugs.webkit.org/show_bug.cgi?id=196686
1667         <rdar://problem/49399192>
1668
1669         Reviewed by Tim Horton.
1670
1671         Adjust some existing API tests to make the web view become first responder before trying to begin dragging, and
1672         also add some new API tests to cover scenarios where the web view is not first responder.
1673
1674         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1675         (TestWebKitAPI::TEST):
1676         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1677
1678         Add a switch to optionally make the web view first responder when starting the simulated drag.
1679
1680         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1681         (-[DragAndDropSimulator initWithWebView:]):
1682         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
1683
1684 2019-04-08  Justin Fan  <justin_fan@apple.com>
1685
1686         [Web GPU] Fix Web GPU experimental feature on iOS
1687         https://bugs.webkit.org/show_bug.cgi?id=196632
1688
1689         Reviewed by Myles C. Maxfield.
1690
1691         Properly make Web GPU available on iOS 11+.
1692
1693         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1694
1695 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1696
1697         [ews-build] Do not upload archive when Compile Fails
1698         https://bugs.webkit.org/show_bug.cgi?id=196674
1699
1700         Reviewed by Alexey Proskuryakov.
1701
1702         * BuildSlaveSupport/ews-build/factories.py:
1703         (BuildFactory.__init__): Remove steps which require dynamic decision about whether to run or not.
1704         * BuildSlaveSupport/ews-build/steps.py:
1705         (CompileWebKit.evaluateCommand): Dynamically decide which steps to run based on compile status.
1706         (CompileWebKitToT.evaluateCommand): Explicitly override Compile.evaluateCommand so that it 
1707         doesn't inherit CompileWebKit.evaluateCommand which dynamically adds more steps.
1708
1709 2019-04-08  Guillaume Emont  <guijemont@igalia.com>
1710
1711         Enable DFG on MIPS
1712         https://bugs.webkit.org/show_bug.cgi?id=196689
1713
1714         Reviewed by Žan Doberšek.
1715
1716         Since the bytecode change, we enabled the baseline JIT on mips in
1717         r240432, but DFG is still missing. With this change, all tests are
1718         passing on a ci20 board.
1719
1720         * Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
1721
1722 2019-04-08  Philippe Normand  <pnormand@igalia.com>
1723
1724         [Flatpak] Second run update-webkitwpe-flatpak fails
1725         https://bugs.webkit.org/show_bug.cgi?id=192702
1726
1727         Reviewed by Carlos Garcia Campos.
1728
1729         * flatpak/flatpakutils.py:
1730         (FlatpakObject.flatpak): Fix typo.
1731         (FlatpakPackage.install): When installing, also update to the configured remote commit.
1732         * flatpak/org.webkit.WebKit.yaml: Update GNOME 3.28 SDK/runtime hashes.
1733
1734 2019-04-05  Sergio Villar Senin  <svillar@igalia.com>
1735
1736         [GTK][WPE] outlook.live.com displays old-fashioned UI
1737         https://bugs.webkit.org/show_bug.cgi?id=196642
1738
1739         Reviewed by Carlos Garcia Campos.
1740
1741         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1742         (TestWebKitAPI::TEST): New Mac platform quirk test.
1743
1744 2019-04-07  Commit Queue  <commit-queue@webkit.org>
1745
1746         Unreviewed, rolling out r243956.
1747         https://bugs.webkit.org/show_bug.cgi?id=196688
1748
1749         Broke API Test SafeBrowsing.WKWebViewGoBackIFrame (Requested
1750         by aakashjain on #webkit).
1751
1752         Reverted changeset:
1753
1754         "Clicking "Go Back" from a safe browsing warning from an
1755         iframe should navigate the WKWebView back to the previous
1756         page"
1757         https://bugs.webkit.org/show_bug.cgi?id=196665
1758         https://trac.webkit.org/changeset/243956
1759
1760 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
1761
1762         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
1763         https://bugs.webkit.org/show_bug.cgi?id=196669
1764
1765         Reviewed by Geoffrey Garen.
1766
1767         Added three new unit tests for WeakHashSet.
1768
1769         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
1770         (WTF_WeakPtr.WeakHashSetConstObjects):
1771         (WTF_WeakPtr.WeakHashSetComputesEmpty):
1772         (WTF_WeakPtr.WeakHashSetComputeSize):
1773
1774 2019-04-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1775
1776         Hide next and previous form control buttons when WKWebView is editable
1777         https://bugs.webkit.org/show_bug.cgi?id=196672
1778         <rdar://problem/35625321>
1779
1780         Reviewed by Tim Horton.
1781
1782         Add a new API test.
1783
1784         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1785         (-[TestWKWebView lastTrailingBarButtonGroup]):
1786         (TestWebKitAPI::TEST):
1787         * TestWebKitAPI/ios/UIKitSPI.h:
1788
1789 2019-04-05  Yongjun Zhang  <yongjun_zhang@apple.com>
1790
1791         We should pass minimumEffectiveDeviceWidth to web process on new page creation.
1792         https://bugs.webkit.org/show_bug.cgi?id=196077
1793         <rdar://problem/49108202>
1794
1795         Reviewed by Chris Dumez.
1796
1797         Add an API test to verify the minimumEffectDeviceWidth is passed to web content process
1798         on new web view.
1799
1800         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1801
1802 2019-04-05  Saam Barati  <sbarati@apple.com>
1803
1804         Make compare-results understand MotionMark
1805         https://bugs.webkit.org/show_bug.cgi?id=196666
1806
1807         Reviewed by Yusuke Suzuki.
1808
1809         * Scripts/compare-results:
1810         (PLT5Results):
1811         (detectMotionMark):
1812         (detectMotionMark1_1):
1813         (motionMarkResults):
1814         (motionMark1_1Results):
1815         (detectBenchmark):
1816         (biggerIsBetter):
1817         (main):
1818
1819 2019-04-05  Alex Christensen  <achristensen@webkit.org>
1820
1821         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
1822         https://bugs.webkit.org/show_bug.cgi?id=196665
1823         <rdar://45115669>
1824
1825         Reviewed by Geoff Garen.
1826
1827         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1828         (goBack):
1829         (+[SimpleLookupContext sharedLookupContext]):
1830         (-[SimpleLookupContext lookUpURL:completionHandler:]):
1831         (TEST):
1832         (+[Simple3LookupContext sharedLookupContext]): Deleted.
1833         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
1834
1835 2019-04-05  Aakash Jain  <aakash_jain@apple.com>
1836
1837         [ews-build] Add configuration and architecture for windows builders
1838         https://bugs.webkit.org/show_bug.cgi?id=196660
1839
1840         Reviewed by Lucas Forschler.
1841
1842         * BuildSlaveSupport/ews-build/config.json:
1843
1844 2019-04-05  Jonathan Bedard  <jbedard@apple.com>
1845
1846         webkitpy: Don't run subsequent rounds if interrupted
1847         https://bugs.webkit.org/show_bug.cgi?id=196646
1848
1849         Reviewed by Aakash Jain.
1850
1851         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1852         (Manager.run): Bail out if interrupted.
1853
1854 2019-04-05  Sihui Liu  <sihui_liu@apple.com>
1855
1856         Test sessionStorage in PSON private browsing mode
1857         https://bugs.webkit.org/show_bug.cgi?id=196561
1858
1859         Reviewed by Alex Christensen.
1860
1861         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1862
1863 2019-04-05  Commit Queue  <commit-queue@webkit.org>
1864
1865         Unreviewed, rolling out r243833.
1866         https://bugs.webkit.org/show_bug.cgi?id=196645
1867
1868         This change breaks build of WPE and GTK ports (Requested by
1869         annulen on #webkit).
1870
1871         Reverted changeset:
1872
1873         "[CMake][WTF] Mirror XCode header directories"
1874         https://bugs.webkit.org/show_bug.cgi?id=191662
1875         https://trac.webkit.org/changeset/243833
1876
1877 2019-04-04  Simon Fraser  <simon.fraser@apple.com>
1878
1879         Simple iframe scrolling test fails to get a composited scrolling frame in WebKitTestRunnerApp
1880         https://bugs.webkit.org/show_bug.cgi?id=196635
1881
1882         Reviewed by Antti Koivisto.
1883         
1884         InjectedBundle::beginTesting() calling WKBundleSetAsyncFrameScrollingEnabled() makes it impossible
1885         for a test to enable async frame scrolling via:
1886             <!-- webkit-test-runner [ internal:AsyncFrameScrollingEnabled=true ] -->
1887         so remove it and have TestController::resetPreferencesToConsistentValues() set the default value.
1888         
1889         Test: scrollingcoordinator/ios/programmatic-frame-scroll.html
1890
1891         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1892         (WTR::InjectedBundle::beginTesting):
1893         * WebKitTestRunner/TestController.cpp:
1894         (WTR::TestController::resetPreferencesToConsistentValues):
1895
1896 2019-04-04  Alexey Proskuryakov  <ap@apple.com>
1897
1898         Use a correct LC_RPATH when building with ASan
1899         https://bugs.webkit.org/show_bug.cgi?id=196576
1900
1901         Reviewed by David Kilzer.
1902
1903         * asan/asan.xcconfig: As a temporary hack, just force LC_RPATH on all binaries,
1904         so that ../Frameworks is checked. This is simpler and more reliable than updating
1905         each SPC service xcconfig.
1906
1907 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1908
1909         Disable Flaky API Test TestWebKitAPI.WebKit.FocusTextInputContext
1910         https://bugs.webkit.org/show_bug.cgi?id=196629
1911
1912         Reviewed by Lucas Forschler.
1913
1914         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
1915
1916 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1917
1918         [ews-app] while waiting in queue status-bubble for testers queues should display build information from builder queue
1919         https://bugs.webkit.org/show_bug.cgi?id=196618
1920
1921         Reviewed by Lucas Forschler.
1922
1923         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1924         (StatusBubble): Added QUEUE_TRIGGERS.
1925         (StatusBubble._build_bubble): Get the build from builder if tester has not started the build yet.
1926         (StatusBubble._get_parent_queue): Get the name of the parent (builder) queue.
1927         (StatusBubble.get_latest_build_for_queue): If the queue doesn't have any build yet, return build information from
1928         its parent(builder).
1929
1930 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1931
1932         [ews-app] Status-bubble steps are sometimes displayed in reverse order
1933         https://bugs.webkit.org/show_bug.cgi?id=196625
1934
1935         Reviewed by Lucas Forschler.
1936
1937         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1938         (StatusBubble._steps_messages): Explicitly specify order_by('uid').
1939
1940 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1941
1942         Disable Flaky API Test TestWebKitAPI.KeyboardInputTests.KeyboardTypeForInput
1943         https://bugs.webkit.org/show_bug.cgi?id=196630
1944
1945         Reviewed by Wenson Hsieh.
1946
1947         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
1948
1949 2019-04-04  Youenn Fablet  <youenn@apple.com>
1950
1951         Pass storage quota parameters from UIProcess to NetworkProcess as part of WebsiteDataStore parameters
1952         https://bugs.webkit.org/show_bug.cgi?id=196543
1953
1954         Reviewed by Alex Christensen.
1955
1956         * WebKitTestRunner/TestController.cpp:
1957         (WTR::TestController::generatePageConfiguration):
1958
1959 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1960
1961         [ews-app] Status bubble should not display skipped buildbot steps
1962         https://bugs.webkit.org/show_bug.cgi?id=196584
1963
1964         Reviewed by Lucas Forschler.
1965
1966         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1967
1968 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
1969
1970         [ews-app] configure localhost as BUILDBOT_SERVER_HOST in testing mode
1971         https://bugs.webkit.org/show_bug.cgi?id=196620
1972
1973         Reviewed by Lucas Forschler.
1974
1975         * BuildSlaveSupport/ews-app/ews/config.py:
1976
1977 2019-04-04  Per Arne Vollan  <pvollan@apple.com>
1978
1979         [Win] DumpRenderTreeWatchDog.py is not checked into source
1980         https://bugs.webkit.org/show_bug.cgi?id=196567
1981         <rdar://problem/49525901>
1982
1983         Reviewed by Lucas Forschler.
1984
1985         This script is used on Win EWS bots to terminate hanging DRT processes.
1986
1987         * EWSTools/dumprendertreewatchdog.py: Added.
1988
1989 2019-04-04  Chris Dumez  <cdumez@apple.com>
1990
1991         Unreviewed, roll out r243858 which made tests time out.
1992
1993         Disable new API tests on Windows instead.
1994
1995         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
1996         (TestWebKitAPI::TEST):
1997
1998 2019-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1999
2000         [ATK] Cleanup WebPageAccessibilityObjectAtk
2001         https://bugs.webkit.org/show_bug.cgi?id=196537
2002
2003         Reviewed by Michael Catanzaro.
2004
2005         Also consider files under atk directories as exceptions for GObject conventions.
2006
2007         * Scripts/webkitpy/style/checkers/cpp.py:
2008         (check_identifier_name_in_declaration):
2009
2010 2019-04-03  Fujii Hironori  <Hironori.Fujii@sony.com>
2011
2012         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
2013         https://bugs.webkit.org/show_bug.cgi?id=196588
2014         <rdar://problem/49365787>
2015
2016         Unreviewed build fix for Windows port.
2017
2018         error C3861: 'kill': identifier not found
2019
2020         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2021         (TestWebKitAPI::TEST): Replaced kill with WKPageTerminate.
2022
2023 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2024
2025         [ews-build] Cancel build and similar operations should have authentication
2026         https://bugs.webkit.org/show_bug.cgi?id=196520
2027
2028         Reviewed by Dewei Zhu.
2029
2030         * BuildSlaveSupport/ews-build/master.cfg: Configure authentication using admin's username and password from
2031         environment variables.
2032
2033 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2034
2035         [ews-build] Do not trigger queues which are not in production yet
2036         https://bugs.webkit.org/show_bug.cgi?id=196581
2037
2038         Reviewed by Dewei Zhu.
2039
2040         * BuildSlaveSupport/ews-build/config.json:
2041
2042 2019-04-03  Chris Dumez  <cdumez@apple.com>
2043
2044         Unreviewed, fix typo in the name of API test added in r243848.
2045
2046         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2047         (TestWebKitAPI::TEST):
2048
2049 2019-04-03  Chris Dumez  <cdumez@apple.com>
2050
2051         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
2052         https://bugs.webkit.org/show_bug.cgi?id=196588
2053         <rdar://problem/49365787>
2054
2055         Reviewed by Ryosuke Niwa.
2056
2057         Add API test coverage.
2058
2059         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2060         (TestWebKitAPI::nullJavaScriptCallback):
2061         (TestWebKitAPI::didCrashCheckFrames):
2062         (TestWebKitAPI::TEST):
2063
2064 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
2065
2066         run-webkit-tests: Upload test results (new results database)
2067         https://bugs.webkit.org/show_bug.cgi?id=196577
2068         <rdar://problem/34841155>
2069
2070         Reviewed by Lucas Forschler.
2071
2072         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2073         (Manager.run): Upload results after each device shard, since the configuration will be
2074         different for each device.
2075         (Manager._results_to_upload_json_trie): Convert a TestRunResults object to a trie to be
2076         uploaded to a results database.
2077         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2078         (parse_args): Add new 'Upload Options' and prepare 'Results JSON Options' for deprecation.
2079
2080 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
2081
2082         -apple-trailing-word is needed for browser detection
2083         https://bugs.webkit.org/show_bug.cgi?id=196575
2084
2085         Unreviewed.
2086
2087         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2088
2089 2019-04-03  Don Olmstead  <don.olmstead@sony.com>
2090
2091         [CMake][WTF] Mirror XCode header directories
2092         https://bugs.webkit.org/show_bug.cgi?id=191662
2093
2094         Reviewed by Konstantin Tokarev.
2095
2096         Use WTFFramework as a dependency and include frameworks/WTF.cmake for AppleWin internal
2097         builds.
2098
2099         * CMakeLists.txt:
2100         * DumpRenderTree/CMakeLists.txt:
2101         * DumpRenderTree/PlatformWin.cmake:
2102         * MiniBrowser/win/CMakeLists.txt:
2103         * TestWebKitAPI/CMakeLists.txt:
2104         * TestWebKitAPI/PlatformWin.cmake:
2105         * WebKitTestRunner/PlatformGTK.cmake:
2106         * WebKitTestRunner/PlatformWin.cmake:
2107
2108 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2109
2110         [ews-app] Status bubble should not display certain infrastructure status messages
2111         https://bugs.webkit.org/show_bug.cgi?id=196550
2112
2113         Reviewed by Lucas Forschler.
2114
2115         Do not display the steps which are un-needed for end-user. This information is still avaiable
2116         if the user click on the bubble and look at the Buildbot build.
2117         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2118         (StatusBubble._steps_messages):
2119         (StatusBubble._should_display_step): Method to decide whether to display the step or not.
2120
2121 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2122
2123         [ews-build] Use https for sending data to ews-app
2124         https://bugs.webkit.org/show_bug.cgi?id=196492
2125
2126         Reviewed by Lucas Forschler.
2127
2128         * BuildSlaveSupport/ews-build/events.py:
2129
2130 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
2131
2132         Remove support for -apple-trailing-word
2133         https://bugs.webkit.org/show_bug.cgi?id=196525
2134
2135         Reviewed by Zalan Bujtas.
2136
2137         This CSS property is nonstandard and not used.
2138
2139         * Scripts/webkitperl/FeatureList.pm:
2140         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2141
2142 2019-04-03  Youenn Fablet  <youenn@apple.com>
2143
2144         Add a test for DOMCache on multiple browsing in case of private browsing
2145         https://bugs.webkit.org/show_bug.cgi?id=196524
2146
2147         Reviewed by Alex Christensen.
2148
2149         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2150         (-[SWMessageHandlerForCacheStorage userContentController:didReceiveScriptMessage:]):
2151
2152 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
2153
2154         [ews] Clean out ~/Library/Logs/CoreSimulator/ on reboot
2155         https://bugs.webkit.org/show_bug.cgi?id=196540
2156
2157         Reviewed by Aakash Jain.
2158
2159         * EWSTools/start-queue-mac.sh: Remove CoreSimulator logs.
2160
2161 2019-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
2162
2163         Add plumbing for a compatibility mode preference in WebKit
2164         https://bugs.webkit.org/show_bug.cgi?id=196005
2165
2166         Reviewed by Tim Horton.
2167
2168         Add new API tests.
2169
2170         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2171         * TestWebKitAPI/ios/PreferredCompatibilityMode.mm: Added.
2172
2173 2019-04-03  Claudio Saavedra  <csaavedra@igalia.com>
2174
2175         [WPE][GTK] Update libsrtp dependency package for Debian
2176         https://bugs.webkit.org/show_bug.cgi?id=196528
2177
2178         Reviewed by Frédéric Wang.
2179
2180         * gtk/install-dependencies:
2181         * wpe/install-dependencies:
2182
2183 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
2184
2185         [WK2] Add support for Window's beforeprint / afterprint events
2186         https://bugs.webkit.org/show_bug.cgi?id=196478
2187         <rdar://problem/49535124>
2188
2189         Unreviewed build fix for MSVC.
2190
2191         > WebKitTestRunner\TestController.cpp(267): error C2397: conversion from 'double' to 'float' requires a narrowing conversion
2192
2193         And, there is a style guideline. <https://webkit.org/code-style-guidelines/#floating-point-literals>
2194
2195         * WebKitTestRunner/TestController.cpp:
2196         (WTR::printFrame): Use int and float literals.
2197
2198 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2199
2200         [ews-build] Reassign bots to queues
2201
2202         * BuildSlaveSupport/ews-build/config.json: Reassigned ews150 and ews152.
2203
2204 2019-04-02  Chris Dumez  <cdumez@apple.com>
2205
2206         [WK2] Add support for Window's beforeprint / afterprint events
2207         https://bugs.webkit.org/show_bug.cgi?id=196478
2208
2209         Reviewed by Alex Christensen.
2210
2211         Add minimal implementation for printFrame in WebKitTestRunner.
2212
2213         * WebKitTestRunner/TestController.cpp:
2214         (WTR::printFrame):
2215         (WTR::TestController::createOtherPage):
2216         (WTR::TestController::createWebViewWithOptions):
2217
2218 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2219
2220         [ews-app] Status bubble hover over message should clearly indicate that build is in-progress
2221         https://bugs.webkit.org/show_bug.cgi?id=196491
2222
2223         Reviewed by Lucas Forschler.
2224
2225         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2226
2227 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2228
2229         [ews-build] Configure buildbot try credentials in environment variables
2230         https://bugs.webkit.org/show_bug.cgi?id=196501
2231
2232         Reviewed by Lucas Forschler.
2233
2234         * BuildSlaveSupport/ews-build/loadConfig.py: Read credentials from environment variables.
2235         * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Rename BUILDBOT_PB_USERNAME to BUILDBOT_TRY_USERNAME.
2236         * BuildSlaveSupport/ews-app/ews/config.py: Ditto.
2237
2238 2019-04-02  Wenson Hsieh  <wenson_hsieh@apple.com>
2239
2240         REGRESSION (r243726): Crash at unrecognized selector: -[WKWebpagePreferences webpagePreferences]
2241         https://bugs.webkit.org/show_bug.cgi?id=196496
2242         <rdar://problem/49521634>
2243
2244         Reviewed by Chris Dumez.
2245
2246         Add new API tests (see WebKit ChangeLog for more detail).
2247
2248         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2249         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2250         (TEST):
2251
2252 2019-04-02  David Kilzer  <ddkilzer@apple.com>
2253
2254         Rename CLANG_ADDRESS_SANITIZER Xcode variable to ENABLE_ADDRESS_SANITIZER
2255         <https://webkit.org/b/196499>
2256
2257         Reviewed by Alexey Proskuryakov.
2258
2259         * asan/asan.xcconfig: Change CLANG_ADDRESS_SANITIZER to
2260         ENABLE_ADDRESS_SANITIZER.
2261
2262 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
2263
2264         [CMake] WEBKIT_MAKE_FORWARDING_HEADERS shouldn't use POST_BUILD to copy generated headers
2265         https://bugs.webkit.org/show_bug.cgi?id=182757
2266
2267         Reviewed by Don Olmstead.
2268
2269         * TestWebKitAPI/PlatformGTK.cmake: Removed the workaround of using an intermediate target.
2270         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
2271
2272 2019-04-01  Jonathan Bedard  <jbedard@apple.com>
2273
2274         run-api-tests: Upload test results
2275         https://bugs.webkit.org/show_bug.cgi?id=196323
2276         <rdar://problem/49356714>
2277
2278         Reviewed by Lucas Forschler.
2279
2280         * Scripts/webkitpy/api_tests/manager.py:
2281         (Manager):
2282         (Manager.run): Upload results to a results database.
2283         * Scripts/webkitpy/api_tests/run_api_tests.py:
2284         (parse_args): Add upload arguments.
2285         * Scripts/webkitpy/port/base.py:
2286         (Port):
2287         (Port.configuration_for_upload): Creates a configuration dictionary for uploading results.
2288         (Port.commits_for_upload): Create a list of commits from the WebKit repository tests are run from along
2289         with commits from any other associated repositories.
2290         * Scripts/webkitpy/port/device.py:
2291         (Device):
2292         (Device.build_version): Access build_versoin of underlying platform device.
2293         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2294         (IOSSimulatorTest):
2295         (IOSSimulatorTest.test_configuration_for_upload):
2296         * Scripts/webkitpy/port/device_port.py:
2297         (DevicePort):
2298         (DevicePort.configuration_for_upload): Devices are unique because their configuration is not
2299         the same as the machine uploading results.
2300         * Scripts/webkitpy/port/mac.py:
2301         (MacPort):
2302         (MacPort.configuration_for_upload): Define SDK in upload configuration for Mac.
2303         * Scripts/webkitpy/port/mac_unittest.py:
2304         (MacTest):
2305         (MacTest.test_configuration_for_upload):
2306         * Scripts/webkitpy/xcode/simulated_device.py:
2307         (SimulatedDeviceManager._create_device_with_runtime):
2308         (SimulatedDevice.__init__): Create simulated device with a build_version.
2309         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
2310         (test_existing_simulator):
2311
2312 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2313
2314         Remove extra newline characters (Follow-up fix to r243707)
2315
2316         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2317
2318 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2319
2320         [ews-app] Use API_KEY to accept results data
2321         https://bugs.webkit.org/show_bug.cgi?id=196461
2322
2323         Reviewed by Dewei Zhu.
2324
2325         * BuildSlaveSupport/ews-app/ews/views/results.py:
2326         (Results.post): Validate EWS_API_KEY before accepting any data.
2327         * BuildSlaveSupport/ews-build/events.py:
2328         (Events.sendData): Send EWS_API_KEY if available along with event data.
2329
2330 2019-04-01  Wenson Hsieh  <wenson_hsieh@apple.com>
2331
2332         Unable to copy and paste a PDF from Notes into Mail compose body
2333         https://bugs.webkit.org/show_bug.cgi?id=196442
2334         <rdar://problem/48573098>
2335
2336         Reviewed by Tim Horton.
2337
2338         Add new API tests to exercise pasting CNContact and MKMapItem-backed item providers. Additionally, adjust an
2339         existing test that pastes a PDF file as an attachment to not require UIPreferredPresentationStyleAttachment
2340         to be specified on the item providers.
2341
2342         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2343         (TestWebKitAPI::mapItemForTesting):
2344         (TestWebKitAPI::contactItemForTesting):
2345
2346 2019-04-01  Tim Horton  <timothy_horton@apple.com>
2347
2348         Make UIWKDocumentContext rects per-character instead of per-word
2349         https://bugs.webkit.org/show_bug.cgi?id=196459
2350
2351         Reviewed by Wenson Hsieh.
2352
2353         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
2354         (TEST):
2355         Adjust test results due to switching to per-character rects.
2356
2357 2019-04-01  Chris Dumez  <cdumez@apple.com>
2358
2359         UIProcess crash when a prewarmed process is terminated
2360         https://bugs.webkit.org/show_bug.cgi?id=196451
2361         <rdar://problem/49245471>
2362
2363         Reviewed by Geoffrey Garen.
2364
2365         Add API test coverage.
2366
2367         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2368         (TEST):
2369
2370 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2371
2372         [ews-app] Display OS and Xcode configuration in status-bubble's hover-over message
2373         https://bugs.webkit.org/show_bug.cgi?id=196449
2374
2375         Reviewed by Lucas Forschler.
2376
2377         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2378         (StatusBubble.get_os_details): Method to get OS and Xcode details.
2379         (StatusBubble._build_bubble): Moved the timestamp logic to common method.
2380         (StatusBubble.get_build_timestamp): Method to get the timestamp to display for the build.
2381
2382 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2383
2384         [ews-build] Remove force schedulers from OpenSource EWS Buildbot
2385         https://bugs.webkit.org/show_bug.cgi?id=196444
2386
2387         Reviewed by Lucas Forschler.
2388
2389         * BuildSlaveSupport/ews-build/loadConfig.py: Remove ForceSchedulers.
2390
2391 2019-04-01  Alex Christensen  <achristensen@webkit.org>
2392
2393         Add SPI to canonicalize NSURLs with WTF::URL
2394         https://bugs.webkit.org/show_bug.cgi?id=196415
2395         <rdar://problem/44980271>
2396
2397         Reviewed by Darin Adler.
2398
2399         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2400         * TestWebKitAPI/Tests/WebKitLegacy/mac/URLCanonicalization.mm: Added.
2401         (TestWebKitAPI::TEST):
2402
2403 2019-04-01  Zan Dobersek  <zdobersek@igalia.com>
2404
2405         [WPE] EventSenderProxy constructor is called before a PlatformWindow is usable
2406         https://bugs.webkit.org/show_bug.cgi?id=196441
2407
2408         Reviewed by Carlos Garcia Campos.
2409
2410         Don't cache the wpe_view_backend object that might not exist yet at the
2411         time of EventSenderProxy constructor invocation, but instead retrieve
2412         that object whenever it's required for event dispatching. This should
2413         avoid crashes in this constructor now that it's invoked before any
2414         PlatformWindow has been set up (as changed in r243496).
2415
2416         * WebKitTestRunner/EventSenderProxy.h:
2417         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2418         (WTR::viewBackend):
2419         (WTR::EventSenderProxy::EventSenderProxy):
2420         (WTR::EventSenderProxy::mouseDown):
2421         (WTR::EventSenderProxy::mouseUp):
2422         (WTR::EventSenderProxy::mouseMoveTo):
2423         (WTR::EventSenderProxy::mouseScrollBy):
2424         (WTR::EventSenderProxy::keyDown):
2425         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
2426
2427 2019-03-31  Fujii Hironori  <Hironori.Fujii@sony.com>
2428
2429         [Win][WebKit] MiniBrowser should support high DPI display
2430         https://bugs.webkit.org/show_bug.cgi?id=196391
2431
2432         Reviewed by Alex Christensen.
2433
2434         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2435         (WebKitBrowserWindow::WebKitBrowserWindow): Call resetZoom to set the page zoom factor.
2436         (WebKitBrowserWindow::resetZoom): Changed the default page zoom factor from 1 to the device scale factor.
2437         * MiniBrowser/win/stdafx.h: Define WEBCORE_EXPORT.
2438
2439 2019-03-31  Sam Weinig  <weinig@apple.com>
2440
2441         Remove more i386 specific configurations
2442         https://bugs.webkit.org/show_bug.cgi?id=196430
2443
2444         Reviewed by Alexey Proskuryakov.
2445
2446         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2447         ENABLE_WEB_AUTHN_macosx and ENABLE_WEB_RTC_macosx can now be enabled unconditionally on macOS.
2448
2449 2019-03-31  Andy Estes  <aestes@apple.com>
2450
2451         [iOS] WebKit should consult the navigation response policy delegate before previewing a QuickLook document
2452         https://bugs.webkit.org/show_bug.cgi?id=196433
2453         <rdar://problem/49293305>
2454
2455         Reviewed by Tim Horton.
2456
2457         Enhanced API test coverage to include all navigation response policy decisions in both
2458         linked-before and linked-on-or-after modes. Also added new expectations for all tests.
2459
2460         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2461         * TestWebKitAPI/Tests/WebCore/ios/PreviewConverter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp.
2462         (TestWebKitAPI::TEST):
2463         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
2464         (readFile):
2465         (-[QuickLookDelegate initWithExpectedFileURL:responsePolicy:]):
2466         (-[QuickLookDelegate initWithExpectedFileURL:previewMIMEType:responsePolicy:]):
2467         (-[QuickLookDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2468         (-[QuickLookDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
2469         (-[QuickLookDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
2470         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
2471         (-[QuickLookDelegate _webViewWebProcessDidCrash:]):
2472         (-[QuickLookDelegate _downloadDidStart:]):
2473         (-[QuickLookDelegate _download:didReceiveResponse:]):
2474         (-[QuickLookDelegate _download:didReceiveData:]):
2475         (-[QuickLookDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2476         (-[QuickLookDelegate _downloadDidFinish:]):
2477         (-[QuickLookDelegate _download:didFailWithError:]):
2478         (-[QuickLookDelegate _downloadDidCancel:]):
2479         (-[QuickLookDelegate verifyDownload]):
2480         (runTest):
2481         (runTestDecideBeforeLoading):
2482         (runTestDecideAfterLoading):
2483         (TEST):
2484         (-[QuickLookAsyncDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2485         (-[QuickLookPasswordDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
2486         (-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]):
2487         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2488         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2489         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]): Deleted.
2490         (-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2491         (-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2492         (-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2493         (-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]): Deleted.
2494         (-[QuickLookDecidePolicyDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2495         (-[QuickLookDecidePolicyDelegate webView:didFailProvisionalNavigation:withError:]): Deleted.
2496         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]): Deleted.
2497         (-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]): Deleted.
2498
2499 2019-03-30  Dominik Infuehr  <dinfuehr@igalia.com>
2500
2501         [CMake] add testdfg as target with build-jsc
2502         https://bugs.webkit.org/show_bug.cgi?id=196393
2503
2504         Reviewed by Saam Barati.
2505
2506         Added testdfg as one of the targets to build when
2507         using CMake.
2508
2509         * Scripts/build-jsc:
2510
2511 2019-03-29  Myles C. Maxfield  <mmaxfield@apple.com>
2512
2513         Delete WebMetal implementation in favor of WebGPU
2514         https://bugs.webkit.org/show_bug.cgi?id=195418
2515
2516         Reviewed by Dean Jackson.
2517
2518         * DumpRenderTree/mac/DumpRenderTree.mm:
2519         (enableExperimentalFeatures):
2520         (resetWebPreferencesToConsistentValues):
2521         * Scripts/webkitperl/FeatureList.pm:
2522         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2523         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2524         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Removed.
2525         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Removed.
2526         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Removed.
2527         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Removed.
2528         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Removed.
2529         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Removed.
2530         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Removed.
2531         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2532         (WTR::InjectedBundle::beginTesting):
2533         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2534         (WTR::TestRunner::setWebMetalEnabled): Deleted.
2535         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2536
2537 2019-03-29  Chris Dumez  <cdumez@apple.com>
2538
2539         REGRESSION (r243523): Six form-related watchOS layout tests are timing out
2540         https://bugs.webkit.org/show_bug.cgi?id=196405
2541         <rdar://problem/49428130>
2542
2543         Reviewed by Wenson Hsieh.
2544
2545         Add a shouldPresentPopovers=false WebKitTestRunner option to cause WKTR to swizzle
2546         the popover presentation methods to be no-ops. Use this in the new test added in
2547         r243523 so that we do not swizzle those methods for all tests. This is needed because
2548         those WatchOS tests rely on the popover getting presented and interactive.
2549
2550         * WebKitTestRunner/TestController.cpp:
2551         (WTR::updateTestOptionsFromTestHeader):
2552         * WebKitTestRunner/TestController.h:
2553         * WebKitTestRunner/TestOptions.h:
2554         (WTR::TestOptions::hasSameInitializationOptions const):
2555         * WebKitTestRunner/ios/TestControllerIOS.mm:
2556         (WTR::TestController::platformInitialize):
2557         (WTR::TestController::platformResetStateToConsistentValues):
2558
2559 2019-03-29  Takashi Komori  <Takashi.Komori@sony.com>
2560
2561         [Curl] Add Server Trust Evaluation Support.
2562         https://bugs.webkit.org/show_bug.cgi?id=191646
2563
2564         Reviewed by Fujii Hironori.
2565
2566         Implemented MiniBrowser UI for asking if user trusts the server.
2567
2568         * MiniBrowser/win/Common.cpp:
2569         (askServerTrustEvaluation):
2570         (replaceString):
2571         * MiniBrowser/win/Common.h:
2572         * MiniBrowser/win/MiniBrowserLib.rc:
2573         * MiniBrowser/win/MiniBrowserLibResource.h:
2574         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2575         (createPEMString):
2576         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
2577         (WebKitBrowserWindow::canTrustServerCertificate):
2578         * MiniBrowser/win/WebKitBrowserWindow.h:
2579
2580 2019-03-29  Cathie Chen  <cathiechen@igalia.com>
2581
2582         Implement ResizeObserver.
2583         https://bugs.webkit.org/show_bug.cgi?id=157743
2584
2585         Reviewed by Simon Fraser.
2586
2587         Support resizeObserverEnabled webPreferences.
2588
2589         * DumpRenderTree/TestOptions.cpp:
2590         (TestOptions::TestOptions):
2591         * DumpRenderTree/TestOptions.h:
2592         * DumpRenderTree/mac/DumpRenderTree.mm:
2593         (setWebPreferencesForTestOptions):
2594         * DumpRenderTree/win/DumpRenderTree.cpp:
2595         (enableExperimentalFeatures):
2596         * Scripts/webkitperl/FeatureList.pm:
2597         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2598
2599 2019-03-28  John Wilander  <wilander@apple.com>
2600
2601         Resource Load Statistics: IPC to the WebsiteDataStore in the UI process from NetworkProcess::deleteWebsiteDataForRegistrableDomains()
2602         https://bugs.webkit.org/show_bug.cgi?id=196281
2603         <rdar://problem/48938748>
2604
2605         Reviewed by Alex Christensen.
2606
2607         This patch adds the function isStatisticsHasLocalStorage() to the
2608         TestRunner. With it, the page can query the WebsiteDataStore in the
2609         UI process to make sure that it sees LocalStorage.
2610
2611         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2612         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2613         (WTR::TestRunner::isStatisticsHasLocalStorage):
2614         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2615         * WebKitTestRunner/TestController.cpp:
2616         (WTR::TestController::isStatisticsHasLocalStorage):
2617         * WebKitTestRunner/TestController.h:
2618         * WebKitTestRunner/TestInvocation.cpp:
2619         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2620
2621 2019-03-28  Jiewen Tan  <jiewen_tan@apple.com>
2622
2623         API::Data::createWithoutCopying should do a null check before calling CFRelease
2624         https://bugs.webkit.org/show_bug.cgi?id=196276
2625         <rdar://problem/48059859>
2626
2627         Reviewed by Alex Christensen.
2628
2629         Add an API test that will pass a nil to API::Data::createWithoutCopying via NavigationState::NavigationClient::webCryptoMasterKey.
2630
2631         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2632         * TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
2633         * TestWebKitAPI/Tests/WebKitCocoa/WebCryptoMasterKey.mm: Added.
2634         (-[WebCryptoMasterKeyNavigationDelegate _webCryptoMasterKeyForWebView:]):
2635         (-[WebCryptoMasterKeyNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2636         (TestWebKitAPI::TEST):
2637
2638 2019-03-28  Michael Catanzaro  <mcatanzaro@igalia.com>
2639
2640         [WPE][GTK] webkit_web_resource_get_data_finish can return NULL without setting error
2641         https://bugs.webkit.org/show_bug.cgi?id=186276
2642
2643         Reviewed by Carlos Garcia Campos.
2644
2645         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
2646         (webViewLoadChanged):
2647         (testWebResourceGetDataError):
2648         (testWebResourceGetDataEmpty):
2649         (beforeAll):
2650         (webViewloadChanged): Deleted.
2651
2652 2019-03-27  Andy Estes  <aestes@apple.com>
2653
2654         REGRESSION (r242686): package-root creates roots with broken symlinks in WebKit.framework/XPCServices/
2655         https://bugs.webkit.org/show_bug.cgi?id=196317
2656
2657         Reviewed by Dan Bernstein.
2658
2659         package-root copies built products into a staging directory using ditto(1), which does not
2660         follow symbolic links as it traverses a directory. Now that the files in
2661         WebKit.framework/XPCServices/ are symbolic links to a location outside of the framework
2662         itself, these become broken links when ditto'd into the staging directory.
2663
2664         To account for this, change package-root to copy using cp(1) in a mode that follows symlinks.
2665
2666         * Scripts/package-root:
2667
2668 2019-03-27  Aakash Jain  <aakash_jain@apple.com>
2669
2670         [ews-app] Update display text of Submit for ews analysis
2671         https://bugs.webkit.org/show_bug.cgi?id=196309
2672
2673         Reviewed by Dewei Zhu.
2674
2675         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
2676
2677 2019-03-27  David Kilzer  <ddkilzer@apple.com>
2678
2679         run-webkit-tests should check for leaks in WebKit processes
2680         <https://webkit.org/b/193772>
2681         <rdar://problem/46526680>
2682
2683         Reviewed by Ryosuke Niwa.
2684
2685         This works by doing the following:
2686         - Add a "#LIST CHILD PROCESSES" command to WebKitTestRunnner.
2687           The list of child processes are returned one per line:
2688           process.name: pid
2689         - Run the "#LIST CHILD PROCESSES" command just before the
2690           "#CHECK FOR WORLD LEAKS" command, and store the list of child
2691           processes on the ServerProcess object.
2692         - When the `--leaks` switch is handled, run check_for_leaks() on
2693           each child process after the main test harness.
2694
2695         * DumpRenderTree/mac/DumpRenderTree.mm:
2696         (handleControlCommand):
2697         - Use strncmp() instead of strcmp().
2698         - Add support for handling "#LIST CHILD PROCESSES" command.
2699
2700         * Scripts/webkitpy/port/base.py:
2701         (Port.check_for_leaks):
2702         * Scripts/webkitpy/port/darwin.py:
2703         (DarwinPort.check_for_leaks):
2704         - Rename redundant 'process_pid' argument to 'process_id'.
2705
2706         * Scripts/webkitpy/port/driver.py:
2707         (Driver.do_post_tests_work):
2708         - Restructure the logic since "#CHECK FOR WORLD LEAKS" is no
2709           longer the only command this sends to WebKitTestRunner.
2710         - If the `--leaks` switch is present, send the
2711           "#LIST CHILD PROCESSES" to WebKitTestRunner and store the
2712           result using Port.set_webkit_processes().
2713         (Driver._parse_child_processes_output):
2714         - Add helper method to parse list of child process names and
2715           process IDs returned from WebKitTestRunner.
2716
2717         * Scripts/webkitpy/port/ios_device.py:
2718         (IOSDevicePort.check_for_leaks):
2719         - Rename redundant 'process_pid' argument to 'process_id'.
2720
2721         * Scripts/webkitpy/port/leakdetector.py:
2722         (LeakDetector._parse_leaks_output):
2723         - Return early if there is no leaks_output.
2724         (LeakDetector.check_for_leaks):
2725         - Rename redundant 'process_pid' argument to 'process_id'.
2726
2727         * Scripts/webkitpy/port/server_process.py:
2728         (ServerProcess.__init__):
2729         (ServerProcess.child_processes):
2730         (ServerProcess.set_child_processes):
2731         - Add instance variable to Port to store list of child process
2732           names and process IDs returned from WebKitTestRunner.
2733         (ServerProcess._start):
2734         - Clear self._child_processes.
2735         (ServerProcess.stop):
2736         - If self._child_processes is set, call
2737           self._port.check_for_leaks() for each child process.
2738
2739         * Scripts/webkitpy/port/server_process_unittest.py:
2740         (TrivialMockPort.check_for_leaks):
2741         - Rename redundant 'process_pid' argument to 'process_id'.
2742
2743         * Scripts/webkitpy/port/simulator_process.py:
2744         (SimulatorProcess.stop):
2745         - If self._child_processes is set, call
2746           self._port.check_for_leaks() for each child process.
2747
2748         * Scripts/webkitpy/port/watch_device.py:
2749         (WatchDevicePort.check_for_leaks):
2750         - Rename redundant 'process_pid' argument to 'process_id'.
2751
2752         * WebKitTestRunner/TestController.cpp:
2753         (WTR::TestController::dumpResponse):
2754         - Extract method from findAndDumpWorldLeaks() so that it may be
2755           reused by findAndDumpWebKitProcessIdentifiers().
2756         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
2757         - Add method to output process name and process ID of both the
2758           WebContent and Networking processes.
2759         (WTR::TestController::findAndDumpWorldLeaks):
2760         - Fix missing newline in output when there were no abandoned
2761           documents.
2762         - Call dumpResponse() for extracted code.
2763         (WTR::TestController::handleControlCommand):
2764         - Restructure the logic for "#CHECK FOR WORLD LEAKS".
2765         - Use strncmp() instead of strcmp().
2766         - Call findAndDumpWebKitProcessIdentifiers() when
2767           "#LIST CHILD PROCESSES" command is sent.
2768         * WebKitTestRunner/TestController.h:
2769         (WTR::TestController::dumpResponse):
2770         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
2771         - Declare methods.
2772
2773 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
2774
2775         Unreviewed. Add GLib API test cases after r243434.
2776
2777         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
2778         (testWebViewActiveURI):
2779         (serverCallback):
2780         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
2781         (sendRequestCallback):
2782
2783 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
2784
2785         Geolocation request not complete when watch request was started in a different web process
2786         https://bugs.webkit.org/show_bug.cgi?id=195996
2787
2788         Reviewed by Alex Christensen.
2789
2790         Add a test case.
2791
2792         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
2793         (TestWebKitAPI::runJavaScriptAlert):
2794         (TestWebKitAPI::TEST):
2795
2796 2019-03-26  Keith Rollin  <krollin@apple.com>
2797
2798         Update the way generate-xcfilelists returns strings from functions
2799         https://bugs.webkit.org/show_bug.cgi?id=195975
2800         <rdar://problem/49040807>
2801
2802         Reviewed by Dean Jackson.
2803
2804         There are places where generate-xcfilelists executes assignments with
2805         statements like:
2806
2807             FOO=$(some_function)
2808
2809         where "some_function" return a string by echoing it. E.g.
2810
2811             some_function()
2812             {
2813                 echo "Hello, World"
2814             }
2815
2816         This is a common idiom, but it has a problem if "some_function" needs
2817         to call "exit" in an attempt to halt the entire script right then and
2818         there. Since "some_function" is called inside of $(), it's being
2819         executed in a sub-shell. Calling exit in that sub-shell simply exits
2820         that shell; it doesn't not exit the outer shell in which the main part
2821         of the script is still running. As such, the main script keeps
2822         executing when the intent was for the script to halt.
2823
2824         The solution to this is to use a different idiom for returning
2825         strings. The one we now is to pass in the name of the variable to
2826         receive the string result:
2827
2828             some_function()
2829             {
2830                 variable_name=$1
2831                 eval $variable_name ="Hello, World"
2832             }
2833
2834         The call site now looks like
2835
2836             some_function FOO
2837
2838         Because there's no invocation of a sub-shell, some_function can now
2839         call "exit" if it wants to, and the entire script will exit at that
2840         point.
2841
2842         * Scripts/generate-xcfilelists:
2843
2844 2019-03-26  Chris Dumez  <cdumez@apple.com>
2845
2846         Add basic layout test coverage for File Picker on iOS
2847         https://bugs.webkit.org/show_bug.cgi?id=196265
2848
2849         Reviewed by Wenson Hsieh.
2850
2851         Add layout test infrastructure to test the file picker on iOS.
2852
2853         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2854         (WTR::UIScriptController::dismissFilePicker):
2855         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2856         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2857         (WTR::UIScriptController::dismissFilePicker):
2858         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2859         * WebKitTestRunner/TestController.cpp:
2860         (WTR::TestController::createWebViewWithOptions):
2861         (WTR::updateTestOptionsFromTestHeader):
2862         * WebKitTestRunner/TestOptions.h:
2863         (WTR::TestOptions::hasSameInitializationOptions const):
2864         * WebKitTestRunner/ios/TestControllerIOS.mm:
2865         (overridePresentViewController):
2866         (WTR::TestController::platformInitialize):
2867         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2868         (WTR::UIScriptController::dismissFilePicker):
2869
2870 2019-03-26  Wenson Hsieh  <wenson_hsieh@apple.com>
2871
2872         Implement async paste method on UIWKInteractionViewProtocol
2873         https://bugs.webkit.org/show_bug.cgi?id=196267
2874         <rdar://problem/49236346>
2875
2876         Reviewed by Tim Horton.
2877
2878         Add a new test to exercise the new SPI. Additionally, add staging forward declarations for
2879         -pasteWithCompletionHandler:, and remove some old existing staging declarations for other bits of UIKit SPI that
2880         are now a part of all iOS 12 internal SDKs.
2881
2882         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
2883
2884         While we're here, also change a few iOS 11.3 checks to just be about PLATFORM(IOS) (since we don't build for iOS
2885         prior to 12, these version checks are effectively only about iOS vs. tvOS or watchOS).
2886
2887         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2888         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2889         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
2890         * TestWebKitAPI/ios/UIKitSPI.h:
2891
2892 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2893
2894         [ews-build] Use PostgreSQL for ews.webkit.org database
2895         https://bugs.webkit.org/show_bug.cgi?id=196270
2896
2897         Reviewed by Lucas Forschler.
2898
2899         * BuildSlaveSupport/ews-app/ews-app/settings.py:
2900
2901 2019-03-26  Jonathan Bedard  <jbedard@apple.com>
2902
2903         [ews] Reset simctl states on reboot
2904         https://bugs.webkit.org/show_bug.cgi?id=196260
2905
2906         Rubber-stamped by Aakash Jain.
2907
2908         * EWSTools/start-queue-mac.sh:
2909
2910 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2911
2912         [ews-build] Use PostgreSQL for ews-build database
2913         https://bugs.webkit.org/show_bug.cgi?id=196229
2914
2915         Reviewed by Lucas Forschler.
2916
2917         * BuildSlaveSupport/ews-build/master.cfg:
2918
2919 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2920
2921         [ews-build] Get master_hostname dynamically in master.cfg
2922         https://bugs.webkit.org/show_bug.cgi?id=196255
2923
2924         Reviewed by Lucas Forschler.
2925
2926         * BuildSlaveSupport/ews-build/master.cfg: Get hostname dynamically. Also do not
2927         send events data in test mode.
2928
2929 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2930
2931         [ews-app] Set db_constraint to False for Foreign Keys
2932         https://bugs.webkit.org/show_bug.cgi?id=196252
2933
2934         Reviewed by Lucas Forschler.
2935
2936         * BuildSlaveSupport/ews-app/ews/models/build.py:
2937         * BuildSlaveSupport/ews-app/ews/models/step.py:
2938
2939 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2940
2941         [ews-build] is_test_mode_enabled should default to True
2942         https://bugs.webkit.org/show_bug.cgi?id=196248
2943
2944         Reviewed by Lucas Forschler.
2945
2946         * BuildSlaveSupport/ews-build/master.cfg: Reverse the environment variable used to decide is_test_mode_enabled.
2947
2948 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
2949
2950         [ews-app] Add webkitperl to ENABLED_QUEUES
2951         https://bugs.webkit.org/show_bug.cgi?id=196253
2952
2953         Reviewed by Lucas Forschler.
2954
2955         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2956
2957 2019-03-25  Alexey Proskuryakov  <ap@apple.com>
2958
2959         Address NSWindow sometimes using WebKitTestRunnerEvent too early
2960         https://bugs.webkit.org/show_bug.cgi?id=196211
2961         rdar://problem/49110552
2962
2963         Reviewed by Tim Horton.
2964
2965         * WebKitTestRunner/TestController.cpp: (WTR::TestController::initialize):
2966         Make sure that EventSenderProxy always exists when running tests. We used to create
2967         it when resetting before the first test, which is a bit too late.
2968
2969         * WebKitTestRunner/TestController.h:
2970         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2971         (WTR::TestController::platformCreateWebView):
2972         (WTR::TestController::platformCreateOtherPage):
2973         (WTR::TestController::finishCreatingPlatformWebView):
2974         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2975         (WTR::PlatformWebView::PlatformWebView):
2976         Moved some code that made NSWindow use NSEvent during web view creation. We may
2977         need to move more if some other case us found, but this is enough for now.
2978
2979 2019-03-26  Carlos Garcia Campos  <cgarcia@igalia.com>
2980
2981         Unreviewed. Fix typo in GLib geolocation API after r243285.
2982
2983         gelocation -> geolocation.
2984
2985         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp:
2986         (testGeolocationManagerWatchPosition):
2987
2988 2019-03-25  Alex Christensen  <achristensen@webkit.org>
2989
2990         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
2991         https://bugs.webkit.org/show_bug.cgi?id=196213
2992
2993         Reviewed by Geoff Garen.
2994
2995         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2996         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
2997         (credentialWithIdentityAndKeychainPath):
2998         (-[ChallengeDelegate webView:didFinishNavigation:]):
2999         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
3000         (TestWebKitAPI::TEST):
3001
3002 2019-03-25  Alex Christensen  <achristensen@webkit.org>
3003
3004         Expected shouldn't assume its contained types are copyable
3005         https://bugs.webkit.org/show_bug.cgi?id=195986
3006
3007         Reviewed by JF Bastien.
3008
3009         * TestWebKitAPI/Tests/WTF/Expected.cpp:
3010         (TestWebKitAPI::NonCopyable::operator== const):
3011         (TestWebKitAPI::NonCopyable::operator!= const):
3012         (TestWebKitAPI::TEST):
3013
3014 2019-03-25  Tim Horton  <timothy_horton@apple.com>
3015
3016         Remove some now-unnecessary dynamic class lookup
3017         https://bugs.webkit.org/show_bug.cgi?id=196237
3018
3019         Reviewed by Simon Fraser.
3020
3021         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3022         (makeRequest):
3023         (TEST):
3024
3025 2019-03-25  Fujii Hironori  <Hironori.Fujii@sony.com>
3026
3027         Unreviewed, rolling out r243450.
3028
3029         AppleWin and WinCairo port builds get broken.
3030
3031         Reverted changeset:
3032
3033         "Add test for fix of #196095"
3034         https://bugs.webkit.org/show_bug.cgi?id=196097
3035         https://trac.webkit.org/changeset/243450
3036
3037 2019-03-25  Commit Queue  <commit-queue@webkit.org>
3038
3039         Unreviewed, rolling out r243465.
3040         https://bugs.webkit.org/show_bug.cgi?id=196226
3041
3042         the test doesn't build (Requested by thorton on #webkit).
3043
3044         Reverted changeset:
3045
3046         "Do not terminate the NetworkProcess if a third party
3047         application sends a NSCredential with a SecIdentityRef"
3048         https://bugs.webkit.org/show_bug.cgi?id=196213
3049         https://trac.webkit.org/changeset/243465
3050
3051 2019-03-25  Alex Christensen  <achristensen@webkit.org>
3052
3053         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
3054         https://bugs.webkit.org/show_bug.cgi?id=196213
3055
3056         Reviewed by Geoff Garen.
3057
3058         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3059         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
3060         (credentialWithIdentityAndKeychainPath):
3061         (-[ChallengeDelegate webView:didFinishNavigation:]):
3062         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
3063         (TestWebKitAPI::TEST):
3064
3065 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
3066
3067         [ews-build] Gracefully handle missing patch_id in events
3068         https://bugs.webkit.org/show_bug.cgi?id=196216
3069
3070         Reviewed by Lucas Forschler.
3071
3072         * BuildSlaveSupport/ews-build/events.py:
3073
3074 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
3075
3076         [ews-build] use lz4 compression for improving buildbot performance
3077         https://bugs.webkit.org/show_bug.cgi?id=196155
3078
3079         Reviewed by Lucas Forschler.
3080
3081         * BuildSlaveSupport/ews-build/master.cfg:
3082
3083 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3084
3085         Pull some API testing helper methods out of TestWKWebView
3086         https://bugs.webkit.org/show_bug.cgi?id=196212
3087
3088         Reviewed by Tim Horton.
3089
3090         Refactor some more API testing utility methods, so that they can be used in
3091         tests that do not use TestWKWebView.
3092
3093         * TestWebKitAPI/cocoa/TestWKWebView.h:
3094         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3095         (-[WKWebView loadTestPageNamed:]):
3096         (-[WKWebView synchronouslyLoadHTMLString:baseURL:]):
3097         (-[WKWebView synchronouslyLoadHTMLString:]):
3098         (-[WKWebView synchronouslyLoadTestPageNamed:]):
3099         (-[TestWKWebView loadTestPageNamed:]): Deleted.
3100         (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]): Deleted.
3101         (-[TestWKWebView synchronouslyLoadHTMLString:]): Deleted.
3102         (-[TestWKWebView synchronouslyLoadTestPageNamed:]): Deleted.
3103
3104 2019-03-25  Jer Noble  <jer.noble@apple.com>
3105
3106         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
3107         https://bugs.webkit.org/show_bug.cgi?id=196097
3108
3109         Reviewed by Eric Carlson.
3110
3111         Drive-by bug fix: allow tests to play audio without a user gesture by default.
3112
3113         * DumpRenderTree/mac/DumpRenderTree.mm:
3114         (resetWebPreferencesToConsistentValues):
3115         * WebKitTestRunner/TestController.cpp:
3116         (WTR::TestController::resetPreferencesToConsistentValues):
3117
3118 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3119
3120         Pull IPadUserInterfaceSwizzler out into a separate header file
3121         https://bugs.webkit.org/show_bug.cgi?id=196193
3122
3123         Reviewed by Anders Carlsson.
3124
3125         Pull the IPadUserInterfaceSwizzler helper class out into a separate file, so that it may
3126         be used in other API tests.
3127
3128         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3129         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
3130         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler): Deleted.
3131         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom): Deleted.
3132         * TestWebKitAPI/ios/IPadUserInterfaceSwizzler.h: Added.
3133         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler):
3134         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom):
3135
3136 2019-03-25  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
3137
3138         Remove NavigatorContentUtils in WebCore/Modules
3139         https://bugs.webkit.org/show_bug.cgi?id=196070
3140
3141         Reviewed by Alex Christensen.
3142
3143         NavigatorContentUtils was to support the custom scheme spec [1].
3144         However, in WebKit side, no port has supported the feature in
3145         WebKit layer after EFL port was removed. So there has been the
3146         only IDL implementation of the NavigatorContentUtils in WebCore.
3147         So we don't need to keep the implementation in WebCore anymore.
3148
3149         [1] https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers
3150
3151         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3152
3153 2019-03-24  Andy Estes  <aestes@apple.com>
3154
3155         [watchOS] Remove unused Proximity Networking code
3156         https://bugs.webkit.org/show_bug.cgi?id=196188
3157
3158         Reviewed by Tim Horton.
3159
3160         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
3161         (TEST):
3162
3163 2019-03-23  Keith Miller  <keith_miller@apple.com>
3164
3165         Refactor clz/ctz and fix getLSBSet.
3166         https://bugs.webkit.org/show_bug.cgi?id=196162
3167
3168         Reviewed by Saam Barati.
3169
3170         Add tests for clz, ctz, getLSBSet, and getMSBSet.
3171
3172         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
3173         (TestWebKitAPI::TEST):
3174
3175 2019-03-23  Carlos Garcia Campos  <cgarcia@igalia.com>
3176
3177         [GTK][WPE] check-webkit-style doesn't complain about identifiers with underscores in files under glib, gtk or wpe dirs
3178         https://bugs.webkit.org/show_bug.cgi?id=196143
3179
3180         Reviewed by Michael Catanzaro.
3181
3182         Fix the check for the exception of identifiers starting with webkit_ in files under glib, gtk or wpe
3183         directories.
3184
3185         * Scripts/webkitpy/style/checkers/cpp.py:
3186         (check_identifier_name_in_declaration):
3187         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3188         (WebKitStyleTest.test_names):
3189
3190 2019-03-22  Philippe Normand  <pnormand@igalia.com>
3191
3192         [Flatpak] Manifest expanding fails for qt WPE extension
3193         https://bugs.webkit.org/show_bug.cgi?id=196148
3194
3195         Reviewed by Alex Christensen.
3196
3197         * flatpak/flatpakutils.py:
3198         (expand_submodules_recurse): The last recurse manifest expand
3199         iteration might lead to a single module so take it into account
3200         and don't try to recurse further.
3201
3202 2019-03-22  Chris Dumez  <cdumez@apple.com>
3203
3204         [ iOS Simulator] REGRESSION (r241821) Layout Test platform/ipad/fast/viewport/viewport-unchanged-by-minimum-effective-width-if-not-ignore-meta-viewport.html is a flaky failure on bots
3205         https://bugs.webkit.org/show_bug.cgi?id=195348
3206         <rdar://problem/48622090>
3207
3208         Reviewed by Alex Christensen.
3209
3210         Make sure webView.configuration.preferences._shouldIgnoreMetaViewport gets reset
3211         to NO when test.options().shouldIgnoreMetaViewport is false.
3212
3213         * WebKitTestRunner/ios/TestControllerIOS.mm:
3214         (WTR::TestController::platformConfigureViewForTest):
3215
3216 2019-03-22  Chris Dumez  <cdumez@apple.com>
3217
3218         Prewarmed processes should be usable with any website data store
3219         https://bugs.webkit.org/show_bug.cgi?id=196104
3220
3221         Reviewed by Alex Christensen.
3222
3223         Add API test coverage.
3224
3225         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
3226         (runInitialWarmedProcessUsedTest):
3227         (TEST):
3228
3229 2019-03-22  David Kilzer  <ddkilzer@apple.com>
3230
3231         Back out local changes to Alex's Subversion working directory
3232
3233         They were accidentally committed.
3234
3235         * Scripts/webkitpy/common/system/abstractexecutive.py:
3236         (AbstractExecutive.wait_newest):
3237         * Scripts/webkitpy/common/system/executive.py:
3238         (Executive.running_pids):
3239         * Scripts/webkitpy/common/system/executive_mock.py:
3240         (MockExecutive.running_pids):
3241         * Scripts/webkitpy/common/system/executive_unittest.py:
3242         (ExecutiveTest.serial_test_running_pids):
3243         * Scripts/webkitpy/port/darwin.py:
3244         (DarwinPort.check_for_leaks):
3245         * Scripts/webkitpy/port/leakdetector.py:
3246         (LeakDetector.check_for_leaks):
3247         - This was the hack attached to Bug 193772.
3248
3249         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm:
3250         (+[WebKitTestRunnerEvent mouseLocation]):
3251         - This works around a crash on an internal build.
3252
3253 2019-03-22  Tim Horton  <timothy_horton@apple.com>
3254
3255         Fix the build after r243354
3256         https://bugs.webkit.org/show_bug.cgi?id=196138
3257         <rdar://problem/49145951>
3258
3259         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3260         (TEST):
3261         * TestWebKitAPI/ios/UIKitSPI.h:
3262
3263 2019-03-21  Tim Horton  <timothy_horton@apple.com>
3264
3265         Adopt UIWKDocumentContext
3266         https://bugs.webkit.org/show_bug.cgi?id=196040
3267         <rdar://problem/48642440>
3268
3269         Reviewed by Ryosuke Niwa.
3270
3271         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3272         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm: Added.
3273         (makeRequest):
3274         (-[TestWKWebView synchronouslyRequestDocumentContext:]):
3275         (-[TestWKWebView synchronouslyAdjustSelectionWithDelta:]):
3276         (applyStyle):
3277         (TEST):
3278         Add tests for UIWKDocumentContext.
3279
3280         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
3281         (TEST):
3282         (recursiveFindWKContentView): Deleted.
3283         * TestWebKitAPI/cocoa/TestWKWebView.h:
3284         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3285         (recursiveFindWKContentView):
3286         (-[TestWKWebView wkContentView]):
3287         * TestWebKitAPI/ios/UIKitSPI.h:
3288         Share the WKContentView finding code between tests.
3289
3290 2019-03-21  Simon Fraser  <simon.fraser@apple.com>
3291
3292         [iOS WK2] Turn on async overflow scrolling by default
3293         https://bugs.webkit.org/show_bug.cgi?id=196011
3294         rdar://problem/48453859
3295
3296         Reviewed by Antti Koivisto.
3297         
3298         Explicitly turn off the async overflow scrolling internal feature for tests by default,
3299         since so many basic layout tests have different results when compositing is triggered for
3300         overflow.
3301         
3302         Individual tests will re-enable with <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->.
3303
3304         * WebKitTestRunner/TestController.cpp:
3305         (WTR::TestController::resetPreferencesToConsistentValues):
3306
3307 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3308
3309         [ews-build] Retry API test in case of failures
3310         https://bugs.webkit.org/show_bug.cgi?id=196004
3311
3312         Reviewed by Lucas Forschler.
3313
3314         * BuildSlaveSupport/ews-build/steps.py:
3315         (UnApplyPatchIfRequired.doStepIf): Updated doStepIf to include patchFailedAPITests.
3316         (CompileWebKitToT.doStepIf): Ditto.
3317         (RunAPITests.evaluateCommand): Check if tests failed and retry them if required.
3318         (ReRunAPITests): Re-run API tests.
3319         (ReRunAPITests.evaluateCommand): Check if tests failed and retry on clean build if required.
3320         (RunAPITestsWithoutPatch): Run API tests without patch.
3321         (RunAPITestsWithoutPatch.doStepIf):
3322         (RunAPITestsWithoutPatch.hideStepIf):
3323         (RunAPITestsWithoutPatch.evaluateCommand):
3324         (AnalyzeAPITestsResults): Analyze API test results from previous runs.
3325         (AnalyzeAPITestsResults.start):
3326         (AnalyzeAPITestsResults.analyzeResults): Analyze API test results.
3327         (AnalyzeAPITestsResults.getBuildStepByName): Search for a build step by name.
3328         (AnalyzeAPITestsResults.getTestsResults): Get the test results from previous API tesst steps.
3329         * BuildSlaveSupport/ews-build/steps_unittest.py: Monkey patched FakeBuild.
3330
3331 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3332
3333         [ews-build] Update queues configurations
3334         https://bugs.webkit.org/show_bug.cgi?id=196074
3335
3336         Reviewed by Dewei Zhu.
3337
3338         * BuildSlaveSupport/ews-build/config.json: Updated queues from iOS11 to iOS12,
3339         added new bots, reassigned bots for various builders, moved few builders to another scheduler.
3340
3341 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3342
3343         [ews-app] Generate status-bubble hover-over messages (Follow-up fix)
3344         https://bugs.webkit.org/show_bug.cgi?id=195680
3345         <rdar://problem/48903534>
3346
3347         Unreviewed infrastructure fix.
3348
3349         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3350         (StatusBubble._build_bubble): Do not append to details_message in the cases in which it wasn't defined earlier.
3351
3352 2019-03-21  Andy Estes  <aestes@apple.com>
3353
3354         [iOS] Apple Pay should be available in documents with no user agent scripts
3355         https://bugs.webkit.org/show_bug.cgi?id=196061
3356         <rdar://problem/48649391>
3357
3358         Reviewed by Brady Eidson.
3359
3360         Added API tests and related infrastructure.
3361
3362         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3363         * TestWebKitAPI/Tests/WebKitCocoa/ApplePay.mm: Added.
3364         (-[TestApplePayScriptMessageHandler initWithExpectation:]):
3365         (-[TestApplePayScriptMessageHandler userContentController:didReceiveScriptMessage:]):
3366         (TestWebKitAPI::TEST):
3367         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-active-session.html: Added.
3368         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability-in-iframe.html: Added.
3369         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability.html: Added.
3370         * TestWebKitAPI/cocoa/TestProtocol.mm:
3371         (-[TestProtocol startLoading]):
3372         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.h: Added.
3373         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.mm: Added.
3374         (-[WebProcessPlugInWithInternals webProcessPlugIn:didCreateBrowserContextController:]):
3375         (-[WebProcessPlugInWithInternals webProcessPlugInBrowserContextController:didClearWindowObjectForFrame:inScriptWorld:]):
3376
3377 2019-03-21  Jonathan Bedard  <jbedard@apple.com>
3378
3379         REGRESSSION (r243297): webkitpy tests broken
3380         https://bugs.webkit.org/show_bug.cgi?id=196108
3381
3382         Reviewed by Aakash Jain.
3383
3384         r243297 updated contributors.json, which broke a few unit tests.
3385
3386         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
3387         (IRCCommandTest.test_whois):
3388         * Scripts/webkitpy/tool/commands/suggestnominations_unittest.py:
3389
3390 2019-03-21  Chris Dumez  <cdumez@apple.com>
3391
3392         WebKit should throw when trying to create a WKWebView with a related view that is using a different data store
3393         https://bugs.webkit.org/show_bug.cgi?id=196041
3394         <rdar://problem/49083230>
3395
3396         Reviewed by Alex Christensen.
3397
3398         Add API test coverage.
3399
3400         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm:
3401         (TEST):
3402
3403 2019-03-21  Alex Christensen  <achristensen@webkit.org>
3404
3405         Add SPI to inform applications of WKContentRuleList actions
3406         https://bugs.webkit.org/show_bug.cgi?id=195965
3407         <rdar://problem/42664365>
3408
3409         Reviewed by Geoff Garen.
3410
3411         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
3412         (TestWebKitAPI::allActionsForResourceLoad):
3413         (TestWebKitAPI::testRequest):
3414         (TestWebKitAPI::TEST_F):
3415         * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
3416         (Notification::description):
3417         (Notification::operator== const):
3418         (toVector):
3419         (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
3420         (-[ContentRuleListNotificationDelegate _webView:contentRuleListWithIdentifier:performedActionOnURL:blockedLoad:blockedCookies:madeHTTPS:notifications:]):
3421         (makeContentRuleList):
3422         (TEST):
3423         (makeWarnContentRuleList): Deleted.
3424
3425 2019-03-21  Timothy Hatcher  <timothy@apple.com>
3426
3427         Style check error "WK_MAC_TBA is neither a version number nor WK_IOS_TBA" is confusing.
3428         https://bugs.webkit.org/show_bug.cgi?id=196088
3429
3430         Reviewed by Brian Burg.
3431
3432         Fix the error messages used when looking for macos(WK_IOS_TBA) or ios(WK_MAC_TBA).
3433         Support checks when only one platform is specified. Also deprecate macosx() and
3434         force the use of macos() instead.
3435
3436         * Scripts/webkitpy/style/checkers/cpp.py:
3437         (check_min_versions_of_wk_api_available):
3438         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3439         (WebKitStyleTest.test_min_versions_of_wk_api_available):
3440
3441 2019-03-21  Alexey Proskuryakov  <ap@apple.com>
3442
3443         Update status inactive committers' status to 'contributor'.
3444
3445         * Scripts/webkitpy/common/config/contributors.json:
3446
3447 2019-03-21  Xan Lopez  <xan@igalia.com>
3448
3449         [JSC][x86] Drop support for x87 floating point
3450         https://bugs.webkit.org/show_bug.cgi?id=194853
3451
3452         Reviewed by Don Olmstead.
3453
3454         Force SSE2 on x86/32bit builds.
3455
3456         * Scripts/webkitdirs.pm:
3457         (generateBuildSystemFromCMakeProject):
3458
3459 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3460
3461         [GLIB] User data not correctly passed to callback of functions and constructors with no parameters
3462         https://bugs.webkit.org/show_bug.cgi?id=196073
3463
3464         Reviewed by Michael Catanzaro.
3465
3466         Add test cases to check functions and constructors with no arguments but receiving user data.
3467
3468         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3469         (checkUserData):
3470         (testJSCFunction):
3471         (fooCreateWithUserData):
3472         (testJSCClass):
3473
3474 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3475
3476         Unreviewed. Fix GTK build with GLib < 2.58 after r243285.
3477
3478         Add g_assert_cmpfloat_with_epsilon macro if not defined.
3479
3480         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3481
3482 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3483
3484         [GTK][WPE] Add API to provide geolocation information
3485         https://bugs.webkit.org/show_bug.cgi?id=195940
3486
3487         Reviewed by Michael Catanzaro.
3488
3489         Add a new test to check the new API.
3490
3491         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp: Added.
3492         (testGeolocationManagerCurrentPosition):
3493         (testGeolocationManagerWatchPosition):
3494         (beforeAll):
3495         (afterAll):
3496         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3497         (testWebViewGeolocationPermissionRequests): Stop using ENABLE(GEOLOCATION) conditionals for geolocation tests.
3498         (beforeAll): Ditto.
3499         * TestWebKitAPI/glib/CMakeLists.txt:
3500
3501 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3502
3503         [GLib] Returning G_TYPE_OBJECT from a method does not work
3504         https://bugs.webkit.org/show_bug.cgi?id=195574
3505
3506         Reviewed by Michael Catanzaro.
3507
3508         Add new test cases to check the behavior of constructors and functions returning GObject and boxed types.
3509
3510         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3511         (getGFile):
3512         (getParent):
3513         (createGString):
3514         (getGString):
3515         (getGStringCopyWillRaise):
3516         (getGStringCopy):
3517         (getGStringStr):
3518         (getGStringLen):
3519         (freeGString):
3520         (testJSCClass):
3521
3522 2019-03-20  Saam Barati  <sbarati@apple.com>
3523
3524         DFG::AbstractValue::validateOSREntry is wrong when isHeapTop and the incoming value is Empty
3525         https://bugs.webkit.org/show_bug.cgi?id=195721
3526
3527         Reviewed by Filip Pizlo.
3528
3529         * Scripts/run-javascriptcore-tests:
3530
3531 2019-03-20  Simon Fraser  <simon.fraser@apple.com>
3532
3533         Rename ENABLE_ACCELERATED_OVERFLOW_SCROLLING macro to ENABLE_OVERFLOW_SCROLLING_TOUCH
3534         https://bugs.webkit.org/show_bug.cgi?id=196049
3535
3536         Reviewed by Tim Horton.
3537
3538         This macro is about the -webkit-overflow-scrolling CSS property, not accelerated
3539         overflow scrolling in general, so rename it.
3540
3541         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3542
3543 2019-03-20  Daniel Bates  <dabates@apple.com>
3544
3545         REGRESSION (r243153): [iOS] TestWebKitAPI.FocusPreservationTests.ChangingFocusedNodeResetsFocusPreservationState is failing
3546         https://bugs.webkit.org/show_bug.cgi?id=196031
3547         <rdar://problem/49078172>
3548
3549         Reviewed by Tim Horton.
3550
3551         The test incorrectly assumes that calling -[WKWebView resignFirstResponder] is identical to dismissing the
3552         <select> picker. This is no longer the case following r243135. Instead use testing SPI that invokes that
3553         same code path used when the Done button is pressed to dismiss the <select> picker.
3554
3555         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
3556         (TestWebKitAPI::TEST):
3557
3558 2019-03-20  Chris Dumez  <cdumez@apple.com>
3559
3560         Regression(PSON): ViewGestureController is not properly notified of process swaps on iOS
3561         https://bugs.webkit.org/show_bug.cgi?id=196029
3562         <rdar://problem/48954651>
3563
3564         Reviewed by Tim Horton.
3565
3566         Add API test coverage.
3567
3568         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3569
3570 2019-03-20  Aakash Jain  <aakash_jain@apple.com>
3571
3572         [ews-build] Improve failure summary string for ApplyPatch step
3573         https://bugs.webkit.org/show_bug.cgi?id=195995
3574
3575         Reviewed by Alexey Proskuryakov.
3576
3577         * BuildSlaveSupport/ews-build/steps.py:
3578         (ApplyPatch.getResultSummary): Override getResultSummary.
3579
3580 2019-03-20  Joanmarie Diggs  <jdiggs@igalia.com>
3581
3582         AX: Implement support for new meter ARIA role
3583         https://bugs.webkit.org/show_bug.cgi?id=195966
3584
3585         Reviewed by Chris Fleizach.
3586
3587         Update Core role for ATK_ROLE_LEVEL_BAR from AXProgressIndicator
3588         to AXLevelIndicator.
3589
3590         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3591
3592 2019-03-19  Jiewen Tan  <jiewen_tan@apple.com>
3593
3594         [WebAuthN] Implement FIDO AppID extension
3595         https://bugs.webkit.org/show_bug.cgi?id=143491
3596         <rdar://problem/48298273>
3597
3598         Reviewed by Brent Fulgham.
3599
3600         Add a test that covers the new flag of convertToU2fSignCommand.
3601
3602         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
3603         (TestWebKitAPI::TEST):
3604         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
3605         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
3606         (TestWebKitAPI::TEST):
3607
3608 2019-03-19  Keith Rollin  <krollin@apple.com>
3609
3610         Add support for more platforms to generate-xcfilelists
3611         https://bugs.webkit.org/show_bug.cgi?id=195977
3612
3613         Reviewed by Alexey Proskuryakov.
3614
3615         generate-xcfilelists incorrectly complains when involved with building
3616         WebKit for iphonesimulator:
3617
3618             $ make debug SDKROOT=iphonesimulator.internal -C Internal/
3619             …
3620             ### (die get_canonical_platform_name main main) Unrecognized platform name: iphonesimulator
3621
3622         Address this by teaching generate-xcfilelists about more platforms.
3623
3624         * Scripts/generate-xcfilelists:
3625
3626 2019-03-19  John Wilander  <wilander@apple.com>
3627
3628         Resource Load Statistics (experimental): Clear non-cookie website data for sites that have been navigated to, with link decoration, by a prevalent resource
3629         https://bugs.webkit.org/show_bug.cgi?id=195923
3630         <rdar://problem/49001272>
3631
3632         Reviewed by Alex Christensen.
3633
3634         This patch does the following to the TestRunner:
3635         - Adds setStatisticsCrossSiteLoadWithLinkDecoration().
3636         - Makes setStatisticsTimeToLiveUserInteraction() wait for completion.
3637         - Makes statisticsProcessStatisticsAndDataRecords() wait for completion.
3638
3639         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3640         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3641         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
3642         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3643         * WebKitTestRunner/TestController.cpp:
3644         (WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
3645         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
3646         (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
3647         * WebKitTestRunner/TestController.h:
3648         * WebKitTestRunner/TestInvocation.cpp:
3649         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3650
3651 2019-03-19  Christopher Reid  <chris.reid@sony.com>
3652
3653         [CMake] Support more clang and gcc sanitizers
3654         https://bugs.webkit.org/show_bug.cgi?id=195956
3655
3656         Reviewed by Michael Catanzaro.
3657
3658         * Scripts/webkitdirs.pm: Updating ENABLE_ADDRESS_SANITIZER to ENABLE_SANITIZERS=address
3659
3660 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3661
3662         [ews-build] Improve summary for PrintConfiguration step
3663         https://bugs.webkit.org/show_bug.cgi?id=195945
3664
3665         Reviewed by Lucas Forschler.
3666
3667         * BuildSlaveSupport/ews-build/steps.py:
3668         (PrintConfiguration.getResultSummary): Override getResultSummary.
3669
3670 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3671
3672         [ews-build] Improve summary for CheckOutSource step
3673         https://bugs.webkit.org/show_bug.cgi?id=195963
3674
3675         Reviewed by Lucas Forschler.
3676
3677         * BuildSlaveSupport/ews-build/steps.py:
3678         (CheckOutSource.getResultSummary):
3679
3680 2019-03-19  Daniel Bates  <dabates@apple.com>
3681
3682         [iOS] Focus not preserved when switching between tabs
3683         https://bugs.webkit.org/show_bug.cgi?id=195820
3684         <rdar://problem/43614450>
3685
3686         Reviewed by Brent Fulgham.
3687
3688         Add tests to ensure that we restore focus when resigning and becoming first responder.
3689
3690         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3691         (TestWebKitAPI::TEST):
3692
3693 2019-03-19  Alex Christensen  <achristensen@webkit.org>
3694
3695         Make WTFLogChannelState and WTFLogLevel enum classes
3696         https://bugs.webkit.org/show_bug.cgi?id=195904
3697
3698         Reviewed by Eric Carlson.
3699
3700         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
3701         (TestWebKitAPI::TEST_F):
3702
3703 2019-03-19  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3704
3705         [GStreamer][EME] Backported mssdemux protection data crash fix
3706         https://bugs.webkit.org/show_bug.cgi?id=195918
3707
3708         Reviewed by Philippe Normand.
3709
3710         * gstreamer/jhbuild.modules:
3711         * gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Added.
3712
3713 2019-03-19  Michael Catanzaro  <mcatanzaro@igalia.com>
3714
3715         Unreviewed, rolling out r243132.
3716
3717         Broke GTK build
3718
3719         Reverted changeset:
3720
3721         "Make WTFLogChannelState and WTFLogLevel enum classes"
3722         https://bugs.webkit.org/show_bug.cgi?id=195904
3723         https://trac.webkit.org/changeset/243132
3724
3725 2019-03-19  Zan Dobersek  <zdobersek@igalia.com>
3726
3727         Unreviewed follow-up to r243073, fixing WPE MiniBrowser launching.
3728
3729         * Scripts/webkitdirs.pm:
3730         (builtDylibPathForName): Adjust the shared library name that's changed
3731         with the API version bump in r243073.
3732
3733 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3734
3735         Make WTFLogChannelState and WTFLogLevel enum classes
3736         https://bugs.webkit.org/show_bug.cgi?id=195904
3737
3738         Reviewed by Eric Carlson.
3739
3740         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
3741         (TestWebKitAPI::TEST_F):
3742
3743 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3744
3745         Disable flaky test added in r2431100
3746         https://webkit.org/b/195785
3747
3748         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3749         (TestWebKitAPI::TEST):
3750         Apparently bots don't hit 150kb/s as reliably as I do locally.  Can't say I'm too surprised.
3751
3752 2019-03-18  Timothy Hatcher  <timothy@apple.com>
3753
3754         WKWebView.GetContentsShouldReturnAttributedString is crashing on iOS Simulator.
3755         https://bugs.webkit.org/show_bug.cgi?id=195916
3756
3757         Reviewed by Tim Horton.
3758
3759         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
3760         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Fix iOS code path to pass.
3761
3762 2019-03-18  Alexey Proskuryakov  <ap@apple.com>
3763
3764         Add a secondary e-mail address for Fujii Hironori to make tools happier.
3765
3766         * Scripts/webkitpy/common/config/contributors.json:
3767
3768 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3769
3770         Implement DownloadMonitor to prevent long-running slow downloads from background apps
3771         https://bugs.webkit.org/show_bug.cgi?id=195785
3772
3773         Reviewed by Geoffrey Garen.
3774
3775         * TestWebKitAPI/TCPServer.cpp: Added.
3776         (TestWebKitAPI::TCPServer::TCPServer):
3777         (TestWebKitAPI::TCPServer::~TCPServer):
3778         (TestWebKitAPI::TCPServer::socketBindListen):
3779         (TestWebKitAPI::TCPServer::waitForAndReplyToRequests):
3780         * TestWebKitAPI/TCPServer.h: Added.
3781         (TestWebKitAPI::TCPServer::port const):
3782         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3783         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
3784         (-[DownloadMonitorTestDelegate _downloadDidStart:]):
3785         (-[DownloadMonitorTestDelegate _downloadDidCancel:]):
3786         (-[DownloadMonitorTestDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3787         (-[DownloadMonitorTestDelegate _download:didReceiveData:]):
3788         (TestWebKitAPI::respondSlowly):
3789         (TestWebKitAPI::webViewWithDownloadMonitorSpeedMultiplier):
3790         (TestWebKitAPI::downloadAtRate):
3791         (TestWebKitAPI::TEST):
3792
3793 2019-03-18  Saam Barati  <sbarati@apple.com>
3794
3795         Add a plan file for JetStream 2
3796         https://bugs.webkit.org/show_bug.cgi?id=190734
3797
3798         Reviewed by Mark Lam.
3799
3800         * Scripts/webkitpy/benchmark_runner/data/plans/jetstream2.plan: Added.
3801
3802 2019-03-18  Chris Dumez  <cdumez@apple.com>
3803
3804         Delay WebProcess launch until a load is triggered in a Web view
3805         https://bugs.webkit.org/show_bug.cgi?id=195758
3806         <rdar://problem/48126013>
3807
3808         Reviewed by Geoff Garen.
3809
3810         Add API test coverage. Also update some existing API tests to not expect
3811         constructing a WKWebView to launch both a WebProcess and a NetworkProcess.
3812
3813         * TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
3814         (TestWebKitAPI::TEST):
3815         * TestWebKitAPI/Tests/WebKit/mac/GetBackingScaleFactor.mm:
3816         (TestWebKitAPI::TEST):
3817         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
3818         (TEST):
3819         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3820         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3821         (TEST):
3822         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3823         (TEST):
3824         (testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
3825
3826 2019-03-18  Xan Lopez  <xan@igalia.com>
3827
3828         [CMake] Prevent potential warning when determining $architecture
3829         https://bugs.webkit.org/show_bug.cgi?id=195891
3830
3831         Reviewed by Michael Catanzaro.
3832
3833         It's possible for generateBuildSystemForCMakeProject to be called
3834         before determineArchitecture() is ever called. This will make the
3835         first eq check with $architecture to be bogus (and print a
3836         warning). Change that to an eq check with architecture(), which
3837         implicitly calls determineArchitecture() if needed, and change all
3838         the other similar cases in the method in the same way to prevent
3839         future bugs like this one.
3840
3841         * Scripts/webkitdirs.pm:
3842         (generateBuildSystemFromCMakeProject):
3843
3844 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3845
3846         [WPE] Tarballs generated with “make dist” cannot build documentation
3847         https://bugs.webkit.org/show_bug.cgi?id=195885
3848
3849         Reviewed by Carlos Garcia Campos.
3850
3851         * wpe/manifest.txt.in: Add missing Tools/glib/common.py file to be included in release tarballs.
3852
3853 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3854
3855         [GTK][WPE] Cryptic error from Tools/gtkdoc/generate-gtkdoc
3856         https://bugs.webkit.org/show_bug.cgi?id=195883
3857
3858         Reviewed by Carlos Garcia Campos.
3859
3860         * gtkdoc/gtkdoc.py:
3861         (GTKDoc._run_command): When commands fail to run, include the full command line for
3862         the program invocation and the output it has generated on the standard error stream.
3863
3864 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
3865
3866         [WPE] Bump dependencies to wpe-1.0 and wpebackend-fdo-1.0
3867         https://bugs.webkit.org/show_bug.cgi?id=195786
3868
3869         Reviewed by Philippe Normand.
3870
3871         * flatpak/org.webkit.WPEModules.yaml: Use libwpe 1.1.90 and wpebackend-fdo 1.1.91.
3872         * wpe/jhbuild.modules: Ditto.
3873
3874 2019-03-16  Aakash Jain  <aakash_jain@apple.com>
3875
3876         [ews-build] Don't run clean builds on EWS builders
3877         https://bugs.webkit.org/show_bug.cgi?id=195851
3878
3879         Reviewed by Geoffrey Garen.
3880
3881         * BuildSlaveSupport/ews-build/factories.py:
3882
3883 2019-03-16  Sihui Liu  <sihui_liu@apple.com>
3884
3885         REGRESSION (r243019): Failing API test: WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming
3886         https://bugs.webkit.org/show_bug.cgi?id=195849
3887
3888         Reviewed by Chris Dumez.
3889
3890         We should expect IDB database files to be at path IndexedDB/v1/ after r243019.
3891
3892         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
3893         (runWebsiteDataStoreCustomPaths):
3894
3895 2019-03-15  Jonathan Bedard  <jbedard@apple.com>
3896
3897         webkitpy: Upload test results
3898         https://bugs.webkit.org/show_bug.cgi?id=195755
3899         <rdar://problem/48896182>
3900
3901         Reviewed by Aakash Jain.
3902
3903         Establish a new format for uploading results that is not tied to layout tests, apply
3904         that format to webkitpy tests.
3905
3906         * Scripts/webkitpy/common/checkout/scm/git.py:
3907         (Git.native_branch): Return what branch the current checkout is on.
3908         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
3909         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
3910         * Scripts/webkitpy/common/checkout/scm/svn.py:
3911         (SVN.native_branch): Ditto.
3912         * Scripts/webkitpy/common/system/platforminfo.py:
3913         (PlatformInfo.build_version): Return a build version for Mac.
3914         * Scripts/webkitpy/common/system/platforminfo_mock.py:
3915         (MockPlatformInfo.__init__):
3916         (MockPlatformInfo.build_version):
3917         * Scripts/webkitpy/results: Added.
3918         * Scripts/webkitpy/results/__init__.py: Added.
3919         * Scripts/webkitpy/results/options.py: Added.
3920         (upload_options): OptParse list for upload options.
3921         * Scripts/webkitpy/results/upload.py: Added.
3922         (Upload): Class which enforces the upload format expected by the results server.
3923         (Upload.Expectations):
3924         (Upload.create_configuration):
3925         (Upload.create_commit):
3926         (Upload.create_details):
3927         (Upload.create_run_stats):
3928         (Upload.create_test_result):
3929         (Upload.__init__):
3930         (Upload.Encoder): Encode Upload object as json.
3931         (Upload.upload): Upload results to the results server, returning 'True' if the upload is successful.
3932         * Scripts/webkitpy/results/upload_unittest.py: Added.
3933         * Scripts/webkitpy/test/main.py:
3934         (Tester._parse_args): Add upload arguments.
3935         (Tester._run_tests): Allow results to be uploaded.
3936         * Scripts/webkitpy/test/runner.py:
3937         (Runner.__init__): Record which tests were run, rather than just counting them.
3938         (Runner.handle):
3939         * Scripts/webkitpy/test/runner_unittest.py:
3940         (RunnerTest.test_run):
3941         * Scripts/webkitpy/thirdparty/__init__.py:
3942         (AutoinstallImportHook.find_module): Add requests auto-install.
3943         (AutoinstallImportHook._install_requests):
3944         * Scripts/webkitpy/tool/commands/queues_unittest.py:
3945         (PatchProcessingQueueTest.test_upload_results_archive_for_patch): Update os name for testing.
3946
3947 2019-03-15  Wenson Hsieh  <wenson_hsieh@apple.com>
3948
3949         [iOS] Crash under -[TestRunnerWKWebView _didShowMenu] while running layout tests on iOS simulator
3950         https://bugs.webkit.org/show_bug.cgi?id=195810
3951
3952         Reviewed by Tim Horton.
3953
3954         Ensure that the process of resetting web view state between tests doesn't also invoke testing callbacks
3955         registered by the previous layout test. This fixes an occasional crash when hiding the callout menu after
3956         ending certain layout tests.
3957
3958         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3959         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3960         (-[TestRunnerWKWebView dealloc]):
3961         (-[TestRunnerWKWebView resetInteractionCallbacks]):
3962
3963         Pull logic to reset all of TestRunnerWKWebView's callback handler blocks into a separate helper method; use this
3964         helper method when destroying the web view, and when resetting state between tests.
3965
3966         * WebKitTestRunner/ios/TestControllerIOS.mm:
3967         (WTR::TestController::platformResetStateToConsistentValues):
3968
3969         Hide the callout menu *after* clearing out interaction callbacks registered on the web view.
3970
3971 2019-03-15  Sihui Liu  <sihui_liu@apple.com>
3972
3973         [ Mojave WK1 ] Layout Test storage/indexeddb/database-odd-names.html is failing
3974         https://bugs.webkit.org/show_bug.cgi?id=190350
3975         <rdar://problem/45089503>
3976
3977         Reviewed by Geoffrey Garen.
3978
3979         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3980         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
3981         (TEST):
3982         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3:
3983         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-shm:
3984         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-wal:
3985         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-1.html: Added.
3986         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-2.html: Added.
3987         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm: Added.
3988         (-[IndexedDBFileNameMessageHandler userContentController:didReceiveScriptMessage:]):
3989         (runTest):
3990         (createDirectories):
3991         (TEST):
3992         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize.mm:
3993         (TEST):
3994         * TestWebKitAPI/Tests/WebKitCocoa/StoreBlobThenDelete.mm:
3995         (TEST):
3996
3997 2019-03-15  Timothy Hatcher  <timothy@apple.com>
3998
3999         Add support to WebPage for getting the contents as an attributed string.
4000         https://bugs.webkit.org/show_bug.cgi?id=195636
4001         rdar://problem/45055697
4002
4003         Reviewed by Tim Horton.
4004
4005         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
4006         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Added.
4007
4008 2019-03-15  Chris Dumez  <cdumez@apple.com>
4009
4010         [PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
4011         https://bugs.webkit.org/show_bug.cgi?id=195747
4012
4013         Reviewed by Geoff Garen.
4014
4015         Add API test coverage.
4016
4017         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4018
4019 2019-03-15  Shawn Roberts  <sroberts@apple.com>
4020
4021         Unreviewed, rolling out r242952.
4022
4023         Causing API failures on iOS Simulator
4024
4025         Reverted changeset:
4026
4027         "[PSON] Make sure the WebProcessCache is leverage when
4028         relaunching a process after termination"
4029         https://bugs.webkit.org/show_bug.cgi?id=195747
4030         https://trac.webkit.org/changeset/242952
4031
4032 2019-03-14  Fujii Hironori  <Hironori.Fujii@sony.com>
4033
4034         [Win][MinBrowser][WK2] Implement createNewPage of WKPageUIClient to open a new window
4035         https://bugs.webkit.org/show_bug.cgi?id=195740
4036
4037         Reviewed by Ross Kirsling.
4038
4039         window.open doesn't work for WebKitBrowserWindow because it is not
4040         implemented yet.
4041
4042         1. Implemented createNewPage callback of WKPageUIClient.
4043         2. Changed MainWindow to take a BrowserWindow factory function
4044           instead of BrowserWindowType to be flexible to create
4045           BrowserWindow with extra settings.
4046         3. Renamed MainWindow::BrowserWindowType to BrowserWindowType
4047           because it is not relevant with MainWindow anymore.
4048
4049         * MiniBrowser/win/Common.cpp:
4050         (parseCommandLine):
4051         * MiniBrowser/win/Common.h:
4052         (CommandLineOptions::CommandLineOptions):
4053         * MiniBrowser/win/MainWindow.cpp:
4054         (MainWindow::MainWindow):
4055         (MainWindow::create):
4056         (MainWindow::init):
4057         (MainWindow::WndProc):
4058         * MiniBrowser/win/MainWindow.h:
4059         * MiniBrowser/win/PrintWebUIDelegate.cpp:
4060         (PrintWebUIDelegate::createWebViewWithRequest):
4061         * MiniBrowser/win/WebKitBrowserWindow.cpp:
4062         (WebKitBrowserWindow::create): Moved WKPageConfigurationRef related code from WebKitBrowserWindow::WebKitBrowserWindow.
4063         (WebKitBrowserWindow::WebKitBrowserWindow): Added a WKPageConfigurationRef parameter.
4064         (WebKitBrowserWindow::updateProxySettings):
4065         (WebKitBrowserWindow::createNewPage):
4066         * MiniBrowser/win/WebKitBrowserWindow.h:
4067         * MiniBrowser/win/WinMain.cpp:
4068         (wWinMain):
4069
4070 2019-03-14  Simon Fraser  <simon.fraser@apple.com>
4071
4072         Make it possible to test scrolling tree layer manipulation more easily
4073         https://bugs.webkit.org/show_bug.cgi?id=195780
4074
4075         Reviewed by Tim Horton.
4076         
4077         Add a boolean attribute 'scrollUpdatesDisabled' on UIScriptController that
4078         cuts off communication of scrolling tree scrolls back to the web process
4079         (in RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll()). This
4080         allows tests to trigger scrolls which run the scrolling tree layer positioning
4081         logic, but never get another commit from the web process that might mask
4082         scrolling tree bugs.
4083         
4084         WKWebView's testing protocol get @property _scrollingUpdatesDisabledForTesting,
4085         whose getters and setters are overridden by TestRunnerWKWebView. Plumbing
4086         via PageClient and WebPageProxy makes this flag reachable by RemoteScrollingCoordinatorProxy.
4087
4088         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4089         (WTR::UIScriptController::scrollUpdatesDisabled const):
4090         (WTR::UIScriptController::setScrollUpdatesDisabled):
4091         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4092         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4093         (WTR::UIScriptController::scrollUpdatesDisabled const):
4094         (WTR::UIScriptController::setScrollUpdatesDisabled):
4095         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4096         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
4097         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
4098         (-[TestRunnerWKWebView _scrollingUpdatesDisabledForTesting]):
4099         (-[TestRunnerWKWebView _setScrollingUpdatesDisabledForTesting:]):
4100         * WebKitTestRunner/ios/TestControllerIOS.mm:
4101         (WTR::TestController::platformResetStateToConsistentValues):
4102         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4103         (WTR::UIScriptController::scrollUpdatesDisabled const):
4104         (WTR::UIScriptController::setScrollUpdatesDisabled):
4105
4106 2019-03-14  Youenn Fablet  <youenn@apple.com>
4107
4108         Move IDB storage in private browsing mode to NetworkProcess
4109         https://bugs.webkit.org/show_bug.cgi?id=195602
4110
4111         Reviewed by Brady Eidson.
4112
4113         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
4114         (TEST):
4115
4116 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
4117
4118         [ews-build] Make descriptionDone messages more readable
4119         https://bugs.webkit.org/show_bug.cgi?id=195760
4120
4121         Reviewed by Lucas Forschler.
4122
4123         * BuildSlaveSupport/ews-build/steps.py:
4124         * BuildSlaveSupport/ews-build/steps_unittest.py:
4125
4126 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
4127
4128         [ews-build] Generate status-bubble hover-over messages
4129         https://bugs.webkit.org/show_bug.cgi?id=195680
4130
4131         Reviewed by Lucas Forschler.
4132
4133         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4134         (StatusBubble):
4135         (StatusBubble._build_bubble): Generate bubble['details_message'] which would be displayed
4136         on hover-over.
4137         (StatusBubble._iso_time):
4138         (StatusBubble._steps_messages): Returns status messages from steps to be displayed in
4139         hover-over message.
4140         (StatusBubble._most_recent_step_message): Returns status message from most recent step.
4141
4142 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
4143
4144         [ews-app] Gracefully handle the case when state_string is None
4145         https://bugs.webkit.org/show_bug.cgi?id=195753
4146
4147         Reviewed by Lucas Forschler.
4148
4149         * BuildSlaveSupport/ews-app/ews/models/build.py:
4150         * BuildSlaveSupport/ews-app/ews/models/step.py:
4151
4152 2019-03-14  Aakash Jain  <aakash_jain@apple.com>
4153
4154         [ews-app] Status bubble display pending for currently running build step
4155         https://bugs.webkit.org/show_bug.cgi?id=195744
4156
4157         Reviewed by Lucas Forschler.
4158
4159         * BuildSlaveSupport/ews-build/events.py:
4160         (Events.stepStarted): If state_string is pending, replace it with step name.
4161
4162 2019-03-14  Chris Dumez  <cdumez@apple.com>
4163
4164         Add WebsitePolicy for the client to specify the device orientation & motion access policy
4165         https://bugs.webkit.org/show_bug.cgi?id=195750
4166
4167         Reviewed by Geoffrey Garen.
4168
4169         Add API test coverage.
4170
4171         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
4172         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationAccessPolicy:]):
4173         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
4174         (-[WebsitePoliciesDeviceOrientationUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
4175
4176 2019-03-14  Chris Dumez  <cdumez@apple.com>
4177
4178         [PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
4179         https://bugs.webkit.org/show_bug.cgi?id=195747
4180
4181         Reviewed by Geoff Garen.
4182
4183         Add API test coverage.
4184
4185         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4186
4187 2019-03-13  Wenson Hsieh  <wenson_hsieh@apple.com>
4188
4189         Make -[_WKAttachment setFileWrapper:contentType:completion:] robust when given a nil completion handler
4190         https://bugs.webkit.org/show_bug.cgi?id=195725
4191         <rdar://problem/48545062>
4192
4193         Reviewed by Tim Horton.
4194
4195         Test that we don't crash when changing the file wrapper of an invalid attachment, if the given completion
4196         handler is nil.
4197
4198         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
4199         (TestWebKitAPI::TEST):
4200
4201 2019-03-13  Sam Weinig  <sam@webkit.org>
4202
4203         Add utility function to allow easy reverse range-based iteration of a container
4204         https://bugs.webkit.org/show_bug.cgi?id=195542
4205
4206         Reviewed by Antti Koivisto.
4207
4208         * TestWebKitAPI/CMakeLists.txt:
4209         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4210         * TestWebKitAPI/Tests/WTF/IteratorRange.cpp: Added.
4211         (TestWebKitAPI::TEST):
4212         Add test to ensure WTF::makeReversedRange() works correctly and uses the correct types.
4213
4214 2019-03-13  Chris Dumez  <cdumez@apple.com>
4215
4216         Use a ServiceWorker process per registrable domain
4217         https://bugs.webkit.org/show_bug.cgi?id=195649
4218
4219         Reviewed by Youenn Fablet.
4220
4221         Update API test coverage.
4222
4223         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
4224
4225 2019-03-13  Chris Dumez  <cdumez@apple.com>
4226
4227         REGRESSION(PSON, r240660): Navigation over process boundary is flashy when using Cmd-left/right arrow to navigate
4228         https://bugs.webkit.org/show_bug.cgi?id=195684
4229         <rdar://problem/48294714>
4230
4231         Reviewed by Antti Koivisto.
4232
4233         Add API test coverage.
4234
4235         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4236
4237 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4238
4239         [ews-app] Remove unused patch view
4240         https://bugs.webkit.org/show_bug.cgi?id=195669
4241
4242         Reviewed by Lucas Forschler.
4243
4244         * BuildSlaveSupport/ews-app/ews/urls.py:
4245         * BuildSlaveSupport/ews-app/ews/views/patch.py: Removed.
4246
4247 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4248
4249         [ews-app] Use Buildbot result code variables
4250         https://bugs.webkit.org/show_bug.cgi?id=195668
4251
4252         Reviewed by Alexey Proskuryakov.
4253
4254         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
4255         (Buildbot): Added Buildbot result code variables.
4256         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4257         (StatusBubble._build_bubble): Used Buildbot result code variables.
4258
4259 2019-03-13  Thibault Saunier  <tsaunier@igalia.com>
4260
4261         [Flatpak] Expand submodule recursively
4262         https://bugs.webkit.org/show_bug.cgi?id=195672
4263
4264         Building WPE with flatpak was impossible without that as it was raising an exception.
4265         Also update wpebackend-fdo to match what is built in jhbuild
4266
4267         Reviewed by Philippe Normand.
4268
4269         * flatpak/flatpakutils.py:
4270         (expand_submodules_recurse):
4271         (expand_manifest):
4272         * flatpak/org.webkit.WPEModules.yaml:
4273
4274 2019-03-13  Aakash Jain  <aakash_jain@apple.com>
4275
4276         [ews-app] status bubble should be hidden for certain builds
4277         https://bugs.webkit.org/show_bug.cgi?id=194597
4278
4279         Reviewed by Dewei Zhu.
4280
4281         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
4282         (StatusBubble._build_bubble):
4283         (StatusBubble._should_show_bubble_for_build): Hide bubble for builds which were skipped
4284         because the patch didn't have relevant changes.
4285         (StatusBubble._should_show_bubble_for_queue): Hide bubbles for queues which are not deployed
4286         in production yet.
4287
4288 2019-03-12  Ross Kirsling  <ross.kirsling@sony.com>
4289
4290         [Win] Fix a slew of simple clang-cl warnings.
4291         https://bugs.webkit.org/show_bug.cgi?id=195652
4292
4293         Reviewed by Don Olmstead.
4294
4295         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
4296         (WTR::PlatformWebView::windowSnapshotImage): -Wunused-variable
4297
4298 2019-03-12  Justin Fan  <justin_fan@apple.com>
4299
4300         [Web GPU] Update GPURenderPipelineDescriptor and add GPUColorStateDescriptor.format
4301         https://bugs.webkit.org/show_bug.cgi?id=195518
4302         <rdar://problem/46322356>
4303
4304         Reviewed by Myles C. Maxfield.
4305
4306         * DumpRenderTree/DerivedSources-input.xcfilelist:
4307         * DumpRenderTree/DerivedSources-output.xcfilelist:
4308
4309 2019-03-12  Commit Queue  <commit-queue@webkit.org>
4310
4311         Unreviewed, rolling out r242825.
4312         https://bugs.webkit.org/show_bug.cgi?id=195648
4313
4314         "Broke webkitpy tests with my change to
4315         lldb_dump_class_layout.py" (Requested by rmorisset on
4316         #webkit).
4317
4318         Reverted changeset:
4319
4320         "Alter Tools/Scripts/dump-class-layout to be able to dump all
4321         classes with suspicious padding"
4322         https://bugs.webkit.org/show_bug.cgi?id=195573
4323         https://trac.webkit.org/changeset/242825