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