[Attachment Support] Remove _WKAttachments and notify the UI client upon mainframe...
[WebKit-https.git] / Tools / ChangeLog
1 2018-08-21  Wenson Hsieh  <wenson_hsieh@apple.com>
2
3         [Attachment Support] Remove _WKAttachments and notify the UI client upon mainframe navigation
4         https://bugs.webkit.org/show_bug.cgi?id=188715
5         <rdar://problem/43541790>
6
7         Reviewed by Tim Horton.
8
9         Adds API tests to exercises cases where (1) the UI client is notified of attachment removal upon mainframe
10         navigation, and (2) the UI client is notified of attachment removal upon web content process termination.
11
12         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
13         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
14         (TestWebKitAPI::TEST):
15
16 2018-08-21  Alex Christensen  <achristensen@webkit.org>
17
18         Transition ResizeReversePaginatedWebView API test from WKPageLoaderClient to WKPageNavigationClient
19         https://bugs.webkit.org/show_bug.cgi?id=188821
20
21         Reviewed by Simon Fraser.
22
23         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
24         (TestWebKitAPI::didLayout):
25         (TestWebKitAPI::TEST):
26
27 2018-08-21  Myles C. Maxfield  <mmaxfield@apple.com>
28
29         [WHLSL] Call expressions shouldn't have type arguments
30         https://bugs.webkit.org/show_bug.cgi?id=188770
31
32         Reviewed by Filip Pizlo.
33
34         Call expressions only had type arguments for casts, becuase native types can have type arguments.
35         However, instead of putting those type arguments on the CallExpression, we should parse the casted
36         type as a real type and not as an identifier, which puts the type arguments in the TypeRef.
37
38         Test: casts
39
40         * WebGPUShadingLanguageRI/CallExpression.js:
41         (CallExpression):
42         (CallExpression.prototype.get name):
43         (CallExpression.resolve):
44         (CallExpression.prototype.get typeArguments): Deleted.
45         (CallExpression.prototype.becomeCast): Deleted.
46         * WebGPUShadingLanguageRI/NameResolver.js:
47         (NameResolver.prototype.visitCallExpression):
48         * WebGPUShadingLanguageRI/Parse.js:
49         (parseConstexpr):
50         (parseTypeDef):
51         (parseLeftOperatorCall):
52         (parseCallExpression.let.parseArguments):
53         (parsePossiblePrefix):
54         (parsePossibleRelationalEquality):
55         (parseLeftLogicalExpression):
56         (parseIfStatement):
57         (parseWhile):
58         (parseFor):
59         (parseDo):
60         * WebGPUShadingLanguageRI/RemoveTypeArguments.js:
61         * WebGPUShadingLanguageRI/Rewriter.js:
62         (Rewriter.prototype.visitCallExpression):
63
64 2018-08-21  Alex Christensen  <achristensen@webkit.org>
65
66         Translate WebKit.LimitTitleSize API test into ObjC
67         https://bugs.webkit.org/show_bug.cgi?id=188810
68
69         Reviewed by Andy Estes.
70
71         It uses WKPageLoaderClient.didReceiveTitleForFrame which has been replaced by KVO.
72         I'm translating the test into ObjC rather than introducing a new callback to WKPageNavigationClient.
73
74         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
75         * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp: Removed.
76         * TestWebKitAPI/Tests/mac/LimitTitleSize.mm:
77         (TEST):
78         (-[LimitTitleSizeTestObserver observeValueForKeyPath:ofObject:change:context:]):
79         (TestWebKitAPI::TEST): Deleted.
80
81 2018-08-21  Alex Christensen  <achristensen@webkit.org>
82
83         Remove unused shouldKeepCurrentBackForwardListItemInList check
84         https://bugs.webkit.org/show_bug.cgi?id=188805
85
86         Reviewed by Andy Estes.
87
88         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
89         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp: Removed.
90
91 2018-08-21  Alex Christensen  <achristensen@webkit.org>
92
93         Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
94         https://bugs.webkit.org/show_bug.cgi?id=188813
95
96         Reviewed by Andy Estes.
97
98         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
99         (TestWebKitAPI::didLayout):
100         (TestWebKitAPI::setPageLoaderClient):
101         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
102         (TestWebKitAPI::didFinishNavigation):
103         (TestWebKitAPI::didLayout):
104         (TestWebKitAPI::setPageLoaderClient):
105         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
106         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
107         (TestWebKitAPI::didLayout):
108         (TestWebKitAPI::setPageLoaderClient):
109
110 2018-08-21  Wenson Hsieh  <wenson_hsieh@apple.com>
111
112         [Attachment Support] Augment _WKAttachment SPI to handle NSFileWrappers in addition to NSData
113         https://bugs.webkit.org/show_bug.cgi?id=188496
114         <rdar://problem/43216836>
115
116         Reviewed by Tim Horton.
117
118         Adjusts existing attachment API tests. See below for more detail.
119
120         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
121         (-[TestWKWebView synchronouslyInsertAttachmentWithFileWrapper:contentType:]):
122         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
123         (-[_WKAttachment synchronouslySetData:newContentType:newFilename:error:]):
124         (-[_WKAttachment synchronouslySetFileWrapper:newContentType:error:]):
125
126         Move off of deprecated attachment SPI, and add new helper functions to synchronously insert a new attachment or
127         update an existing attachment with a file wrapper.
128
129         (-[_WKAttachment expectRequestedDataToBe:]):
130         (TestWebKitAPI::TEST):
131
132         Add a new test to verify that file-URL-backed NSFileWrappers can be used to insert and update attachment data.
133         Also augment an existing test to check that an attachment element which has been copied and pasted within the
134         same document has a different _WKAttachment wrapper object than its duplicate, but both _WKAttachments are
135         backed by the same NSFileWrapper that was originally used to insert the attachment.
136
137         Additionally, add another macOS test to verify that dropping promised files in an attachment-element-enabled
138         editable area inserts attachment elements into the document and notifies the UI client with the inserted
139         attachment data.
140
141         (-[_WKAttachment synchronouslyRequestInfo:]): Deleted.
142         (-[_WKAttachment synchronouslyRequestData:]): Deleted.
143         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
144         (-[DragAndDropSimulator _webView:didInsertAttachment:withSource:]):
145
146         Move off of -_webView:didInsertAttachment:.
147
148         (-[DragAndDropSimulator _webView:didInsertAttachment:]): Deleted.
149
150 2018-08-21  David Kilzer  <ddkilzer@apple.com>
151
152         sort-Xcode-project-file: top-level files and folders are sorted unintentionally when `mainGroup` has no name
153         <https://webkit.org/b/188755>
154
155         Reviewed by Andy Estes.
156
157         * Scripts/sort-Xcode-project-file: Fix regular expression to
158         make `mainGroup` name optional.
159
160 2018-08-21  Andy VanWagoner  <andy@vanwagoner.family>
161
162         Unreviewed, add myself to committers list.
163
164         * Scripts/webkitpy/common/config/contributors.json:
165
166 2018-08-21  Antti Koivisto  <antti@apple.com>
167
168         Allow creating WeakPtrs to const objects
169         https://bugs.webkit.org/show_bug.cgi?id=188785
170
171         Reviewed by Geoffrey Garen.
172
173         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
174         (TestWebKitAPI::Base::weakPtrFactory const):
175         (TestWebKitAPI::TEST):
176         (TestWebKitAPI::Base::weakPtrFactory): Deleted.
177
178 2018-08-21  Per Arne Vollan  <pvollan@apple.com>
179
180         [WebGL] Contexts are not updated when display configuration changed.
181         https://bugs.webkit.org/show_bug.cgi?id=188750
182
183         Reviewed by Brent Fulgham.
184
185         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
186         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
187         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
188         * WebKitTestRunner/InjectedBundle/TestRunner.h:
189         * WebKitTestRunner/TestController.cpp:
190         (WTR::TestController::sendDisplayConfigurationChangedMessageForTesting):
191         * WebKitTestRunner/TestController.h:
192         * WebKitTestRunner/TestInvocation.cpp:
193         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
194
195 2018-08-21  John Wilander  <wilander@apple.com>
196
197         Make ResourceLoadObserver::logWebSocketLoading() handle websockets in detached frames
198         https://bugs.webkit.org/show_bug.cgi?id=188757
199         <rdar://problem/38713390>
200
201         Reviewed by Alex Christensen.
202
203         These changes add the new WebKitTestRunner function
204         isStatisticsRegisteredAsSubresourceUnder().
205
206         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
207         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
208         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
209         * WebKitTestRunner/InjectedBundle/TestRunner.h:
210         * WebKitTestRunner/TestController.cpp:
211         (WTR::TestController::isStatisticsRegisteredAsSubresourceUnder):
212         * WebKitTestRunner/TestController.h:
213         * WebKitTestRunner/TestInvocation.cpp:
214         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
215
216 2018-08-21  Alex Christensen  <achristensen@webkit.org>
217
218         Transition more API tests from WKPageLoaderClient to WKPageNavigationClient
219         https://bugs.webkit.org/show_bug.cgi?id=188797
220
221         Reviewed by Tim Horton.
222
223         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
224         (TestWebKitAPI::didFinishNavigation):
225         (TestWebKitAPI::TEST):
226         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
227         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
228         (TestWebKitAPI::didSameDocumentNavigation):
229         (TestWebKitAPI::TEST):
230         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
231         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
232         (TestWebKitAPI::didFailProvisionalNavigation):
233         (TestWebKitAPI::TEST):
234         (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
235         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
236         (TestWebKitAPI::didStartProvisionalNavigation):
237         (TestWebKitAPI::didCommitNavigation):
238         (TestWebKitAPI::didFinishNavigation):
239         (TestWebKitAPI::TEST):
240         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
241         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
242         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
243         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
244         (TestWebKitAPI::didStartProvisionalNavigation):
245         (TestWebKitAPI::didCommitNavigation):
246         (TestWebKitAPI::didFinishNavigation):
247         (TestWebKitAPI::TEST):
248         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
249         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
250         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
251         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
252         (TestWebKitAPI::renderingProgressDidChange):
253         (TestWebKitAPI::TEST):
254         (TestWebKitAPI::didLayout): Deleted.
255         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
256         (TestWebKitAPI::didFinishNavigation):
257         (TestWebKitAPI::renderingProgressDidChange):
258         (TestWebKitAPI::setPageLoaderClient):
259         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
260         (TestWebKitAPI::didLayout): Deleted.
261         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
262         (TestWebKitAPI::State::State):
263         (TestWebKitAPI::didStartProvisionalNavigation):
264         (TestWebKitAPI::didCommitNavigation):
265         (TestWebKitAPI::didFinishNavigation):
266         (TestWebKitAPI::decidePolicyForNavigationAction):
267         (TestWebKitAPI::decidePolicyForResponse):
268         (TestWebKitAPI::TEST):
269         (TestWebKitAPI::didStartProvisionalLoadForFrame): Deleted.
270         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
271         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
272         (TestWebKitAPI::decidePolicyForNewWindowAction): Deleted.
273         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
274         (TestWebKitAPI::didSameDocumentNavigation):
275         (TestWebKitAPI::TEST):
276         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
277         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
278         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
279         (TestWebKitAPI::TEST):
280         (TestWebKitAPI::didSameDocumentNavigationForFrame): Deleted.
281         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
282         (TestWebKitAPI::didFinishLoad):
283         (TestWebKitAPI::TEST):
284         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp:
285         (TestWebKitAPI::didFinishNavigation):
286         (TestWebKitAPI::TEST):
287         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
288         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
289         (TestWebKitAPI::didFinishLoad):
290         (TestWebKitAPI::TEST):
291         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
292         (WebKit2_CommandBackForwardTestWKView::SetUp):
293         (WebKit2_CommandBackForwardTestWKView::didFinishLoadForFrame): Deleted.
294
295 2018-08-20  Alex Christensen  <achristensen@webkit.org>
296
297         Replace WKPageLoaderClient with WKPageNavigationClient in many API tests
298         https://bugs.webkit.org/show_bug.cgi?id=188771
299
300         Reviewed by Tim Horton.
301
302         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
303         (TestWebKitAPI::didFinishNavigation):
304         (TestWebKitAPI::TEST):
305         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
306         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
307         (TestWebKitAPI::didFinishNavigation):
308         (TestWebKitAPI::TEST):
309         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
310         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
311         (TestWebKitAPI::didFinishNavigation):
312         (TestWebKitAPI::setPageLoaderClient):
313         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
314         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
315         (TestWebKitAPI::TEST):
316         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
317         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache.cpp:
318         (TestWebKitAPI::didFinishNavigation):
319         (TestWebKitAPI::setPageLoaderClient):
320         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
321         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
322         (TestWebKitAPI::didFinishNavigation):
323         (TestWebKitAPI::setClients):
324         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
325         * TestWebKitAPI/Tests/WebKit/Find.cpp:
326         (TestWebKitAPI::didFinishNavigation):
327         (TestWebKitAPI::TEST):
328         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
329         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
330         (TestWebKitAPI::didFinishNavigation):
331         (TestWebKitAPI::TEST):
332         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
333         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
334         (TestWebKitAPI::didFinishNavigation):
335         (TestWebKitAPI::TEST):
336         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
337         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
338         (TestWebKitAPI::didFinishNavigation):
339         (TestWebKitAPI::TEST):
340         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
341         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
342         (TestWebKitAPI::didFinishNavigation):
343         (TestWebKitAPI::TEST):
344         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
345         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
346         (TestWebKitAPI::didFinishNavigation):
347         (TestWebKitAPI::setPageLoaderClient):
348         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
349         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
350         (TestWebKitAPI::didFinishNavigation):
351         (TestWebKitAPI::TEST):
352         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
353         * TestWebKitAPI/Tests/WebKit/LimitTitleSize.cpp:
354         (TestWebKitAPI::didFinishLoadForFrame):
355         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
356         (TestWebKitAPI::didFinishNavigation):
357         (TestWebKitAPI::loadAlternateHTMLString):
358         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
359         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
360         (TestWebKitAPI::didFinishNavigation):
361         (TestWebKitAPI::TEST):
362         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
363         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
364         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
365         (TestWebKitAPI::didFinishLoad):
366         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
367         (TestWebKitAPI::didFinishNavigation):
368         (TestWebKitAPI::setPageLoaderClient):
369         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
370         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
371         (TestWebKitAPI::didFinishNavigation):
372         (TestWebKitAPI::setPageLoaderClient):
373         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
374         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
375         (TestWebKitAPI::didFinishLoadForFrame):
376         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
377         (TestWebKitAPI::TEST):
378         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
379         (TestWebKitAPI::TEST):
380         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
381         (TestWebKitAPI::didFinishLoad):
382         (TestWebKitAPI::TEST):
383         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
384         (TestWebKitAPI::didFinishNavigation):
385         (TestWebKitAPI::setPageLoaderClient):
386         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
387         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
388         (TestWebKitAPI::didFinishNavigation):
389         (TestWebKitAPI::setPageLoaderClient):
390         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
391         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
392         (TestWebKitAPI::didFinishNavigation):
393         (TestWebKitAPI::TEST):
394         (TestWebKitAPI::didFinishDocumentLoadForFrame): Deleted.
395         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
396         (TestWebKitAPI::didFinishNavigation):
397         (TestWebKitAPI::TEST):
398         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
399         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
400         (TestWebKitAPI::didFailProvisionalNavigation):
401         (TestWebKitAPI::TEST):
402         (TestWebKitAPI::didFailProvisionalLoadWithErrorForFrame): Deleted.
403         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
404         (TestWebKitAPI::didFinishNavigation):
405         (TestWebKitAPI::TEST):
406         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
407         * TestWebKitAPI/Tests/WebKit/TextFieldDidBeginAndEndEditing.cpp:
408         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishNavigation):
409         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::setPageLoaderClient):
410         (TestWebKitAPI::WebKit2TextFieldBeginAndEditEditingTest::didFinishLoadForFrame): Deleted.
411         * TestWebKitAPI/Tests/WebKit/UserMessage.cpp:
412         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishNavigation):
413         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::setPageLoaderClient):
414         (TestWebKitAPI::WebKit2UserMessageRoundTripTest::didFinishLoadForFrame): Deleted.
415         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
416         (TestWebKitAPI::didFinishNavigation):
417         (TestWebKitAPI::setPageLoaderClient):
418         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
419         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
420         (TestWebKitAPI::didFinishNavigation):
421         (TestWebKitAPI::setPageLoaderClient):
422         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
423         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
424         (TestWebKitAPI::didFinishNavigation):
425         (TestWebKitAPI::setPageLoaderClient):
426         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
427         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
428         (TestWebKitAPI::didFinishNavigation):
429         (TestWebKitAPI::setUpClients):
430         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
431         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
432         (TestWebKitAPI::didFinishNavigation):
433         (TestWebKitAPI::setPageLoaderClient):
434         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
435         * TestWebKitAPI/Tests/WebKit/WebArchive.cpp:
436         (TestWebKitAPI::didFinishNavigation):
437         (TestWebKitAPI::TEST):
438         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
439         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
440         (TestWebKitAPI::didFinishNavigation):
441         (TestWebKitAPI::TEST):
442         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
443         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
444         (TestWebKitAPI::didFinishNavigation):
445         (TestWebKitAPI::TEST):
446         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
447         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
448         (TestWebKitAPI::didFinishNavigation):
449         (TestWebKitAPI::TEST):
450         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
451         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
452         (TestWebKitAPI::didFinishNavigation):
453         (TestWebKitAPI::TEST):
454         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
455         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
456         (TestWebKitAPI::didFinishNavigation):
457         (TestWebKitAPI::TEST):
458         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
459         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
460         (TestWebKitAPI::didFinishNavigation):
461         (TestWebKitAPI::TEST):
462         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
463         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
464         (didFinishNavigation):
465         (TestWebKitAPI::TEST):
466         (didFinishLoadForFrame): Deleted.
467         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
468         (didFinishNavigation):
469         (TestWebKitAPI::TEST):
470         (didFinishLoadForFrame): Deleted.
471         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
472         (TestWebKitAPI::didFinishNavigation):
473         (TestWebKitAPI::TEST):
474         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
475         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
476         (TestWebKitAPI::didFinishNavigation):
477         (TestWebKitAPI::setPageLoaderClient):
478         (TestWebKitAPI::didFinishLoadForFrame): Deleted.
479
480 2018-08-21  Adrian Perez de Castro  <aperez@igalia.com>
481
482         [WPE] Update to use libwpe-1.0.0 and WPEBackend-fdo-1.0.0
483         https://bugs.webkit.org/show_bug.cgi?id=188782
484
485         Reviewed by Michael Catanzaro.
486
487         Make the build depend on wpe-0.2, and change the Flatpak and JHBuild development
488         environments to use version 1.0.0 of libwpe and WPEBackend-fdo.
489
490         * flatpak/org.webkit.WPE.yaml: Update to use libwpe and WPEBackend-fdo version 1.0.0 from
491         release tarballs, and removed the (now unneeded) Lua and LuaJIT modules.
492         * wpe/jhbuild.modules: Ditto.
493
494 2018-08-21  Michael Catanzaro  <mcatanzaro@igalia.com>
495
496         [Flatpak] Update to GNOME master runtime
497         https://bugs.webkit.org/show_bug.cgi?id=188731
498
499         Reviewed by Philippe Normand.
500
501         The 3.28 runtime is pretty stale at this point. We could wait a couple weeks for the 3.30
502         runtime, but I don't think there's any need to stick with the stable runtime when we have
503         the ability to pin to a particular version of the master runtime. There are also several
504         advantages to switching to the master runtime.
505
506         * flatpak/files/httpd-autogen.sh: Removed.
507         * flatpak/flatpakutils.py:
508         (WebkitFlatpak.clean_args):
509         * flatpak/org.webkit.GTK.yaml:
510         * flatpak/org.webkit.WebKit.yaml:
511         * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Removed.
512         * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Removed.
513
514 2018-08-20  Jonathan Bedard  <jbedard@apple.com>
515
516         WebKitTestRunner: Add watchOS entitlements
517         https://bugs.webkit.org/show_bug.cgi?id=188758
518
519         Reviewed by Tim Horton.
520
521         watchOS needs an additional entitlement to open up a socket for on-device testing.
522
523         * WebKitTestRunner/Configurations/WebKitTestRunnerApp-watchOS.entitlements: Added.
524         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
525         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
526
527 2018-08-20  Thomas Denney  <tdenney@apple.com>
528
529         [WHLSL] Remove generics from the interpreter
530         https://bugs.webkit.org/show_bug.cgi?id=187988
531
532         Reviewed by Myles C. Maxfield.
533
534         This patch completely removes generic and protocol support from WHLSL
535         whilst adding back any features that were originally implemented with
536         generics.
537
538         Many of the changes in this patch just remove occurrences of type
539         arguments and type parameters --- although there are some cases where
540         they have been deliberately left in --- as well as removing tests only
541         relevant to those features. These changes are not listed below.
542
543         * WebGPUShadingLanguageRI/All.js: Add/remove JS dependencies
544         * WebGPUShadingLanguageRI/AutoWrapper.js:
545         (AutoWrapper.prototype.visitConstexprTypeParameter): Deleted.
546         * WebGPUShadingLanguageRI/BuiltinVectorCasts.js: Added. The built-in
547         vectors have many constructors for different scalar and vector types.
548         These were originally implemented with generics.
549         * WebGPUShadingLanguageRI/BuiltinVectorEqualityOperator.js: Adds the
550         equality operator for built-in vectors, again this was removed with
551         generics.
552         * WebGPUShadingLanguageRI/BuiltinVectorGetter.js: Added, as above.
553         Built-in vectors only support the getter and setter, and not the ander.
554         * WebGPUShadingLanguageRI/BuiltinVectorIndexGetter.js: Added.
555         * WebGPUShadingLanguageRI/BuiltinVectorIndexSetter.js: Added.
556         * WebGPUShadingLanguageRI/BuiltinVectorSetter.js: Added.
557         * WebGPUShadingLanguageRI/CallExpression.js: Adds support for
558         instantiating functions which cannot be discovered earlier in
559         preparation because their types are absent (specifically support for the
560         operator &[] for array references and the length operator for array
561         references). Previously support for these was implemented with generics.
562         (CallExpression.resolve):
563         (CallExpression.prototype.resolve):
564         (CallExpression.prototype._resolveByInstantiation):
565         (CallExpression.prototype._resolveToOperatorAnderIndexer):
566         (CallExpression.prototype._resolveToOperatorLength):
567         (CallExpression.prototype.resolveToOverload):
568         (CallExpression.prototype.becomeCast):
569         (CallExpression.prototype.toString):
570         (CallExpression):
571         * WebGPUShadingLanguageRI/CallExpressionTypeArgumentResolver.js: Added.
572         We support syntax like vector<int, 2>(a, b) for constructing vectors;
573         this new preparation step resolves them to specific constructors.
574         * WebGPUShadingLanguageRI/CallFunction.js:
575         * WebGPUShadingLanguageRI/Checker.js:
576         * WebGPUShadingLanguageRI/ConstexprFolder.js:
577         * WebGPUShadingLanguageRI/CreateLiteralType.js:
578         * WebGPUShadingLanguageRI/ExpressionFinder.js:
579         * WebGPUShadingLanguageRI/FlattenProtocolExtends.js: Removed.
580         * WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js:
581         * WebGPUShadingLanguageRI/Func.js:
582         * WebGPUShadingLanguageRI/FuncDef.js:
583         * WebGPUShadingLanguageRI/FuncInstantiator.js: Deleted.
584         * WebGPUShadingLanguageRI/InferTypesForCall.js: Removed usage of type arguments.
585         * WebGPUShadingLanguageRI/Inline.js: Remove use of FuncInstantiator.
586         * WebGPUShadingLanguageRI/Inliner.js: Ditto.
587         * WebGPUShadingLanguageRI/Intrinsics.js:
588         * WebGPUShadingLanguageRI/Lexer.js:
589         * WebGPUShadingLanguageRI/LiteralTypeChecker.js:
590         * WebGPUShadingLanguageRI/NameContext.js:
591         (NameContext.prototype.add):
592         (NameContext.prototype.get let):
593         (NameContext.underlyingThings.prototype.else):
594         (NameContext.prototype.resolveFuncOverload):
595         * WebGPUShadingLanguageRI/NameFinder.js:
596         * WebGPUShadingLanguageRI/NameResolver.js:
597         (NameResolver.prototype.visitFunc):
598         (NameResolver.prototype.visitFuncDef):
599         (NameResolver.prototype.visitTypeDef):
600         (NameResolver.prototype.visitStructType):
601         (NameResolver.prototype.visitTypeRef):
602         (NameResolver.prototype.visitCallExpression):
603         (NameResolver.prototype.visitVectorType):
604         (NameResolver):
605         (NameResolver.prototype._visitTypeParametersAndBuildNameContext): Deleted.
606         (NameResolver.prototype.visitProtocolDecl): Deleted.
607         * WebGPUShadingLanguageRI/NativeFunc.js:
608         (NativeFunc):
609         * WebGPUShadingLanguageRI/NativeFuncInstance.js: Deleted.
610         * WebGPUShadingLanguageRI/NativeType.js:
611         (NativeType):
612         (NativeType.prototype.get name):
613         (NativeType.prototype.toString):
614         (NativeType.prototype.get typeParameters): Deleted.
615         (NativeType.prototype.instantiate): Deleted.
616         * WebGPUShadingLanguageRI/Node.js:
617         (Node.prototype.commit):
618         (Node):
619         (Node.prototype.substitute): Deleted.
620         (Node.prototype.substituteToUnification): Deleted.
621         * WebGPUShadingLanguageRI/OperatorAnderIndex.js: Added, previously
622         implemented with generics.
623         * WebGPUShadingLanguageRI/OperatorArrayRefLength.js: Ditto.
624         * WebGPUShadingLanguageRI/OperatorBool.js: Ditto.
625         * WebGPUShadingLanguageRI/Parse.js: Removed everything related to
626         generics and protocols.
627         * WebGPUShadingLanguageRI/Prepare.js: Added new stages.
628         * WebGPUShadingLanguageRI/Program.js:
629         (Program):
630         (Program.prototype.get types):
631         (Program.prototype.add):
632         (Program.prototype.get protocols): Deleted.
633         * WebGPUShadingLanguageRI/ProtocolDecl.js: Removed.
634         * WebGPUShadingLanguageRI/ProtocolRef.js: Removed.
635         * WebGPUShadingLanguageRI/RecursiveTypeChecker.js:
636         * WebGPUShadingLanguageRI/ResolveCallExpressionsWithTypeArguments.js: Added.
637         * WebGPUShadingLanguageRI/ResolveNames.js:
638         * WebGPUShadingLanguageRI/ResolveOverloadImpl.js:
639         * WebGPUShadingLanguageRI/ResolveTypeDefs.js:
640         (resolveTypeDefsInProtocols): Deleted.
641         * WebGPUShadingLanguageRI/Rewriter.js: Changes for new classes.
642         * WebGPUShadingLanguageRI/SPIRV.html:
643         * WebGPUShadingLanguageRI/SPIRVCodegen.js:
644         * WebGPUShadingLanguageRI/StandardLibrary.js: Replace old generic features.
645         * WebGPUShadingLanguageRI/StatementCloner.js: Changes for new classes.
646         (StructLayoutBuilder):
647         * WebGPUShadingLanguageRI/StructType.js:
648         * WebGPUShadingLanguageRI/SwizzleOp.js:
649         (SwizzleOp):
650         (SwizzleOp.prototype.get baseTypeName):
651         (SwizzleOp.prototype.toString):
652         (SwizzleOp.functions.):
653         (SwizzleOp.functions):
654         (SwizzleOp.prototype.instantiateImplementation):
655         (SwizzleOp.allSwizzleOperators.): Deleted.
656         (SwizzleOp.allSwizzleOperators): Deleted.
657         * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js: Added,
658         previously implemented with generics.
659         * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js: Ditto.
660         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Ditto.
661         * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js: Ditto.
662         * WebGPUShadingLanguageRI/SynthesizeOperatorBool.js: Ditto.
663         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
664         (synthesizeStructAccessors.setupImplementationData):
665         (synthesizeStructAccessors.createFieldType):
666         (synthesizeStructAccessors.createTypeRef):
667         (synthesizeStructAccessors.setupAnder):
668         (synthesizeStructAccessors):
669         (synthesizeStructAccessors.createTypeParameters): Deleted.
670         (synthesizeStructAccessors.): Deleted.
671         * WebGPUShadingLanguageRI/Test.html:
672         * WebGPUShadingLanguageRI/Test.js: Removed redundant tests and added new
673         tests for changed language features.
674         * WebGPUShadingLanguageRI/Type.js:
675         * WebGPUShadingLanguageRI/TypeDef.js:
676         * WebGPUShadingLanguageRI/TypeDefResolver.js:
677         * WebGPUShadingLanguageRI/TypeParameterRewriter.js: Removed.
678         * WebGPUShadingLanguageRI/TypeRef.js:
679         * WebGPUShadingLanguageRI/TypeVariable.js: Removed.
680         * WebGPUShadingLanguageRI/UnificationContext.js:
681         * WebGPUShadingLanguageRI/VectorType.js: Added.
682         * WebGPUShadingLanguageRI/Visitor.js: Changes for new classes.
683         * WebGPUShadingLanguageRI/WSL.md: Removed description of
684         generics/protocols.
685         * WebGPUShadingLanguageRI/WrapChecker.js:
686         (WrapChecker):
687         (WrapChecker.visitConstexprTypeParameter): Deleted.
688         (WrapChecker.prototype.visitFuncParameter): Deleted.
689         (WrapChecker.prototype.visitTypeVariable): Deleted.
690         * WebGPUShadingLanguageRI/index.html:
691
692 2018-08-20  Thomas Denney  <tdenney@apple.com>
693
694         Added Thomas Denney to contributors.json.
695         https://bugs.webkit.org/show_bug.cgi?id=188525
696
697         Reviewed by Myles C. Maxfield.
698
699         * Scripts/webkitpy/common/config/contributors.json:
700
701 2018-08-20  Bernhard M. Wiedemann  <bwiedemann@suse.de>
702
703         [GTK] Sort inspector GResource manifest to ensure reproducible builds
704         https://bugs.webkit.org/show_bug.cgi?id=188738
705
706         Reviewed by Michael Catanzaro.
707
708         * glib/generate-inspector-gresource-manifest.py:
709         (get_filenames): sort list of input files
710
711 2018-08-20  Wenson Hsieh  <wenson_hsieh@apple.com>
712
713         [iOS] Paste is missing from callout bar when pasteboard only contains custom data
714         https://bugs.webkit.org/show_bug.cgi?id=184271
715         <rdar://problem/39256708>
716
717         Reviewed by Andy Estes.
718
719         This API test is failing when run against older macOS builds, where custom pasteboard
720         data is not enabled by default.
721
722         * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
723         (TestWebKitAPI::TEST):
724
725 2018-08-20  Claudio Saavedra  <csaavedra@igalia.com>
726
727         Add WPE Debug configuration to the flakiness dashboard
728         https://bugs.webkit.org/show_bug.cgi?id=188743
729
730         Reviewed by Michael Catanzaro.
731
732         * TestResultServer/static-dashboards/builders.jsonp:
733         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
734
735 2018-08-19  Carlos Garcia Campos  <cgarcia@igalia.com>
736
737         [GLIB] Add API to throw exceptions using printf formatted strings
738         https://bugs.webkit.org/show_bug.cgi?id=188698
739
740         Reviewed by Michael Catanzaro.
741
742         Add cases to test the new API.
743
744         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
745         (createFormattedError):
746         (createCustomFormattedError):
747         (testJSCExceptions):
748
749 2018-08-19  Carlos Garcia Campos  <cgarcia@igalia.com>
750
751         [GLIB] Complete the JSCException API
752         https://bugs.webkit.org/show_bug.cgi?id=188695
753
754         Reviewed by Michael Catanzaro.
755
756         Add cases to test the new API.
757
758         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
759         (testJSCCheckSyntax):
760         (createCustomError):
761         (testJSCExceptions):
762
763 2018-08-18  Wenson Hsieh  <wenson_hsieh@apple.com>
764
765         [iOS] Paste is missing from callout bar when pasteboard only contains custom data
766         https://bugs.webkit.org/show_bug.cgi?id=184271
767         <rdar://problem/39256708>
768
769         Reviewed by Ryosuke Niwa.
770
771         Add a new API test to verify that on both iOS and macOS, copied custom pasteboard data can only be pasted in a
772         matching origin. Additionally verify that on iOS, the web view is capable of performing the "paste:" selector.
773
774         * TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
775         (TestWebKitAPI::TEST):
776         (imagePath): Deleted.
777         (writeTypesAndDataToPasteboard): Deleted.
778         (setUpWebView): Deleted.
779         (markupString): Deleted.
780
781         Make this test file no longer exclusive to macOS.
782
783         * TestWebKitAPI/cocoa/TestWKWebView.h:
784         * TestWebKitAPI/cocoa/TestWKWebView.mm:
785         (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]):
786
787         Tweak this helper to also take in a `baseURL`. Defaults to using the TestWebKitAPI bundle resource URL.
788
789         (-[TestWKWebView synchronouslyLoadHTMLString:]):
790
791 2018-08-17  Jonathan Bedard  <jbedard@apple.com>
792
793         Add back --wtf-only to run-api-tests
794         https://bugs.webkit.org/show_bug.cgi?id=187893
795         <rdar://problem/42483983>
796
797         Reviewed by Aakash Jain.
798
799         When doing WTF development, it is not necessary to build or run all of the API
800         tests. Generally, if a user has specified a specific binary (or binaries) that
801         they are interested in testing, it is not necessary to check all API test binaries.
802
803         * Scripts/webkitpy/api_tests/manager.py:
804         (Manager._collect_tests): Only use the binaries matching the program arguments
805         when collecting tests.
806         (Manager._binaries_for_arguments): Generate a list of binaries which match the
807         program arguments.
808         (Manager.run): Pass a list binaries to check.
809         * Scripts/webkitpy/api_tests/run_api_tests.py:
810         (parse_args):
811         * Scripts/webkitpy/port/base.py:
812         (Port.check_api_test_build): If the caller specifies which API test binaries it
813         requires, only check the ones specified.
814         (Port.path_to_api_test_binaries): Allow the caller to only build the WTF API tests.
815         (Port._build_api_tests): Allow the caller to only build the WTF API tests.
816         * Scripts/webkitpy/port/win.py:
817         (WinPort.path_to_api_test_binaries):
818
819 2018-08-17  Jer Noble  <jer.noble@apple.com>
820
821         REGRESSION (234743) Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio
822         https://bugs.webkit.org/show_bug.cgi?id=188470
823         <rdar://problem/43144969>
824
825         Reviewed by Alex Christensen.
826
827         On a loaded server, the WebContent process may send the "playing" message before the
828         UIProcess has a chance to register a listener for that message. Restructure the tests
829         so that the listener is registered before the page is loaded.
830
831         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
832         (PreferredAudioBufferSize::runPlayingTestWithPageNamed):
833         (TEST_F):
834
835 2018-08-16  Wenson Hsieh  <wenson_hsieh@apple.com>
836
837         [macOS] [WK2] Add infrastructure to test receiving file promises on drop
838         https://bugs.webkit.org/show_bug.cgi?id=188583
839
840         Reviewed by Andy Estes.
841
842         Enable testing file promise drop handling on the WebKit2 port of macOS by introducing a subclass of
843         NSFilePromiseReceiver and implementing `-enumerateDraggingItemsWithOptions:forView:…` on TestDraggingInfo (the
844         concrete NSDraggingInfo implementation used by DragAndDropSimulator) using the mock file receiver. Also
845         introduces 3 new macOS tests. See below for more details.
846
847         A large portion of this logic is ported over from DumpRenderTree testing infrastructure added in r229297. In a
848         future patch, we should introduce a way to write code common to both API tests, WebKitTestRunner and
849         DumpRenderTree, and make this code shared among all three testing harnesses.
850
851         Tests:  DragAndDropTests.DragImageElementIntoFileUpload
852                 DragAndDropTests.DragPromisedImageFileIntoFileUpload
853                 DragAndDropTests.DragImageFileIntoFileUpload
854
855         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
856         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
857         (TEST):
858
859         Drive-by fix: Replace NSMakePoint with CGPointMake.
860
861         * TestWebKitAPI/Tests/WebKitCocoa/image-and-file-upload.html:
862
863         Add a new test page consisting of an image and a "file upload" area that updates exercises DataTransfer API to
864         load the dropped image.
865
866         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
867         (waitForConditionWithLogging):
868
869         Add a helper function to wait for a condition to evaluate to true. To make failures more informative,
870         additionally add a mechanism to log a warning message after a given timeout, if the condition has yet to be met.
871
872         (TEST):
873
874         Add new tests to exercise a few cases of file upload in WebKit, including: (1) dragging from an image element,
875         (2) dragging files written to the pasteboard as promises, and (3) files written to the pasteboard as file URLs.
876
877         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
878
879         Surface the new functionality provided by the file promise receiver mock via two new methods on
880         DragAndDropSimulator to (1) write files as file promises to the pasteboard, and (2) write files as file paths
881         directly to the pasteboard.
882
883         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
884         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
885         (-[DragAndDropSimulator externalPromisedFiles]):
886         (getFilePathsAndTypeIdentifiers):
887         (-[DragAndDropSimulator writePromisedFiles:]):
888         (-[DragAndDropSimulator writeFiles:]):
889         * TestWebKitAPI/mac/TestDraggingInfo.h:
890         * TestWebKitAPI/mac/TestDraggingInfo.mm:
891         (-[TestDraggingInfo initWithDragAndDropSimulator:]):
892         (-[TestDraggingInfo filePromiseReceivers]):
893         (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
894
895         Implement this by invoking the given block with a TestFilePromiseReceiver. While all other classes are
896         unhandled by this testing code, WebKit only calls into this with [NSFilePromiseReceiver class], this is
897         currently sufficient for testing purposes.
898
899         * TestWebKitAPI/mac/TestFilePromiseReceiver.h: Copied from Tools/TestWebKitAPI/mac/TestDraggingInfo.h.
900         * TestWebKitAPI/mac/TestFilePromiseReceiver.mm: Added.
901         (-[TestFilePromiseReceiver initWithPromisedTypeIdentifiers:dragAndDropSimulator:]):
902         (-[TestFilePromiseReceiver fileTypes]):
903         (-[TestFilePromiseReceiver fileNames]):
904         (-[TestFilePromiseReceiver dealloc]):
905         (-[TestFilePromiseReceiver draggingSource]):
906         (-[TestFilePromiseReceiver setDraggingSource:]):
907         (fileNameWithNumericSuffix):
908         (copyFile):
909
910         Add a helper to copy a file into a destination directory. Used to implement the main functionality of our
911         NSFilePromiseReceiver subclass, which copies the files specified by test code into the directory determined by
912         WebKit.
913
914         (-[TestFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
915
916 2018-08-16  Alex Christensen  <achristensen@webkit.org>
917
918         Add entitlement to MiniBrowser to allow it to communicate with com.apple.Safari.SafeBrowsing.Service
919         https://bugs.webkit.org/show_bug.cgi?id=188677
920
921         Reviewed by Tim Horton.
922
923         * MiniBrowser/MiniBrowser.entitlements:
924         SSBLookupContext lookUpURL:completionHandler: fails to communicate with its service without this entitlement
925         on released operating systems.  See <rdar://problem/42749777>
926
927 2018-08-16  Jer Noble  <jer.noble@apple.com>
928
929         Add option to run-api-tests to force running of DISABLED tests.
930         https://bugs.webkit.org/show_bug.cgi?id=188674
931
932         Reviewed by Joseph Pecoraro.
933
934         * Scripts/webkitpy/api_tests/run_api_tests.py:
935         (parse_args):
936         * Scripts/webkitpy/api_tests/runner.py:
937         (Runner.command_for_port):
938         (_Worker._run_single_test):
939
940 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
941
942         [ews-build] Separate queues for Builders and Testers - macOS High Sierra
943         https://bugs.webkit.org/show_bug.cgi?id=188540
944
945         Reviewed by Lucas Forschler.
946
947         * BuildSlaveSupport/ews-build/config.json: Splitted few macOS queues into builders and testers. 
948
949 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
950
951         [ews-build] Add build steps ArchiveTestResults, UploadTestResults and ExtractTestResults
952         https://bugs.webkit.org/show_bug.cgi?id=188666
953
954         Reviewed by Lucas Forschler.
955
956         * BuildSlaveSupport/ews-build/steps.py:
957         (ArchiveTestResults): Build step to Archive the test results.
958         (UploadTestResults): Build step to upload the archive.
959         (ExtractTestResults): Build step to unzip the archive on server and generate a link.
960         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
961         (ExpectMasterShellCommand): Copied from other similar internal code.
962
963 2018-08-16  Aakash Jain  <aakash_jain@apple.com>
964
965         [ews-build] Separate queues for Builders and Testers - macOS Sierra
966         https://bugs.webkit.org/show_bug.cgi?id=188516
967
968         Reviewed by Lucas Forschler.
969
970         * BuildSlaveSupport/ews-build/config.json: Splitted macOS Sierra Release queues into builders and testers.
971         * BuildSlaveSupport/ews-build/factories.py: Used appropriate base classes for builders and testers.
972
973 2018-08-16  Basuke Suzuki  <Basuke.Suzuki@sony.com>
974
975         [Win][DumpRenderTree] Remove error message for duplicated tests.
976         https://bugs.webkit.org/show_bug.cgi?id=188662
977
978         Reviewed by Per Arne Vollan.
979
980         This was added to track down an issue where the same tests appeared
981         to be run multiple times. This turned out to not be the case.
982         See https://bugs.webkit.org/show_bug.cgi?id=166760 .
983
984         * DumpRenderTree/win/DumpRenderTree.cpp:
985         (runTest):
986
987 2018-08-16  Alex Christensen  <achristensen@webkit.org>
988
989         Re-introduce assertion removed in r234890
990         https://bugs.webkit.org/show_bug.cgi?id=188611
991
992         Reviewed by Geoffrey Garen.
993
994         * TestWebKitAPI/Tests/WTF/Vector.cpp:
995         (TestWebKitAPI::TEST):
996
997 2018-08-16  Jer Noble  <jer.noble@apple.com>
998
999         Add Experimental Feature support for SourceBuffer.changeType()
1000         https://bugs.webkit.org/show_bug.cgi?id=188626
1001         <rdar://problem/43356021>
1002
1003         Reviewed by Eric Carlson.
1004
1005         * DumpRenderTree/mac/DumpRenderTree.mm:
1006         (enableExperimentalFeatures):
1007         (resetWebPreferencesToConsistentValues):
1008         * WebKitTestRunner/TestController.cpp:
1009         (WTR::TestController::resetPreferencesToConsistentValues):
1010
1011 2018-08-16  Aditya Keerthi  <akeerthi@apple.com>
1012
1013         Support drag-and-drop for input[type=color]
1014         https://bugs.webkit.org/show_bug.cgi?id=188464
1015
1016         Reviewed by Wenson Hsieh.
1017
1018         Added five cross-platform API tests, to verify that dragging and dropping with
1019         color inputs changes the value of the drop target if and only if both inputs are
1020         enabled. Also tests that the change and input events are fired when changing the
1021         value of a color input through drag and drop. 
1022
1023         Additionally, added a macOS-specific test to verify that dropping an item with
1024         NSColorPboardType changes the value of the color input.
1025
1026         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1027         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
1028         (TestWebKitAPI::TEST):
1029         * TestWebKitAPI/Tests/WebKitCocoa/color-drop.html: Added.
1030         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
1031         (TestWebKitAPI::TEST):
1032
1033 2018-08-16  Antti Koivisto  <antti@apple.com>
1034
1035         Use OptionSet for ActivityState::Flags
1036         https://bugs.webkit.org/show_bug.cgi?id=188554
1037
1038         Reviewed by Brent Fulgham.
1039
1040         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
1041         (TestWebKitAPI::TEST):
1042
1043 2018-08-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1044
1045         [GTK] MiniBrowser: web view doesn't get the focus when new window is created
1046         https://bugs.webkit.org/show_bug.cgi?id=188546
1047
1048         Reviewed by Michael Catanzaro.
1049
1050         When a new window is created, the first widget of the windo is getting the focus, the toolbar in this case. We
1051         always want the WebView to grab the focus. In case of new empty tab, we want to the URL bar to be focused
1052         instead. This was causing failures in WebDriver tests that create a popup window with an input element that is
1053         filled with send keys command. The input element is marked as focused in the DOM, but the actual focused widget
1054         is the toolbar, so key events are sent to the toolbar instead of the web view.
1055
1056         * MiniBrowser/gtk/BrowserWindow.c:
1057         (webViewCreate):
1058         (newTabCallback):
1059         (openPrivateWindow):
1060         (browser_window_get_or_create_web_view_for_automation):
1061
1062 2018-08-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1063
1064         Unreviewed. Fix WebDriver tests after r234839.
1065
1066         New pytest requires to autoinstall attrs too.
1067
1068         * Scripts/webkitpy/thirdparty/__init__.py:
1069         (AutoinstallImportHook._install_pytest):
1070
1071 2018-08-15  Ansh Shukla  <ansh_shukla@apple.com>
1072
1073         NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
1074         https://bugs.webkit.org/show_bug.cgi?id=186870
1075         <rdar://problem/41314410>
1076
1077         Reviewed by Alex Christensen.
1078
1079         * WebKitTestRunner/TestController.cpp:
1080         (WTR::toString):
1081         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
1082         (WTR::TestController::didReceiveAuthenticationChallenge):
1083
1084 2018-08-15  Ben Richards  <benton_richards@apple.com>
1085
1086         We should cache the compiled sandbox profile in a data vault
1087         https://bugs.webkit.org/show_bug.cgi?id=184991
1088
1089         Reviewed by Ryosuke Niwa.
1090
1091         Added trace points for sandbox initialization
1092
1093         * Tracing/SystemTracePoints.plist:
1094
1095 2018-08-15  Ryan Haddad  <ryanhaddad@apple.com>
1096
1097         Unreviewed, rolling out r234870.
1098
1099         The test introduced with this change is a flaky failure.
1100
1101         Reverted changeset:
1102
1103         "NSURLAuthenticationMethodOAuth challenges are surfaced to
1104         clients in -didReceiveAuthenticationChallenge as
1105         NSURLAuthenticationMethodDefault"
1106         https://bugs.webkit.org/show_bug.cgi?id=186870
1107         https://trac.webkit.org/changeset/234870
1108
1109 2018-08-15  Jonathan Bedard  <jbedard@apple.com>
1110
1111         WebKitTestRunner should support watch devices
1112         https://bugs.webkit.org/show_bug.cgi?id=188570
1113
1114         Reviewed by Alex Christensen.
1115
1116         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1117
1118 2018-08-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1119
1120         [Attachment SPI] Remove attachment display mode options
1121         https://bugs.webkit.org/show_bug.cgi?id=188596
1122
1123         Reviewed by Dan Bernstein.
1124
1125         Remove API tests and API test helpers for verifying the behavior of in-place media attachment elements.
1126
1127         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1128         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:]):
1129         (TestWebKitAPI::TEST):
1130         (testVideoData): Deleted.
1131         (displayOptionsWithMode): Deleted.
1132         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]): Deleted.
1133
1134 2018-08-14  Devin Rousso  <drousso@apple.com>
1135
1136         Unreviewed, change my emails.
1137
1138         * Scripts/webkitpy/common/config/contributors.json:
1139         * Scripts/webkitpy/common/config/watchlist:
1140
1141 2018-08-14  Saam barati  <sbarati@apple.com>
1142
1143         HashMap<Ref<P>, V> asserts when V is not zero for its empty value
1144         https://bugs.webkit.org/show_bug.cgi?id=188582
1145
1146         Reviewed by Sam Weinig.
1147
1148         * TestWebKitAPI/Tests/WTF/HashMap.cpp:
1149         (TestWebKitAPI::TEST):
1150
1151 2018-08-14  Zalan Bujtas  <zalan@apple.com>
1152
1153         [LFC][Floating] Add support for negative clearance.
1154         https://bugs.webkit.org/show_bug.cgi?id=188555
1155
1156         Reviewed by Simon Fraser.
1157
1158         * LayoutReloaded/misc/LFC-passing-tests.txt:
1159
1160 2018-08-14 Sihui Liu <sihui_liu@apple.com>
1161
1162         Crash in WebKit::filterPreloadHSTSEntry via NetworkProcess::getHostNamesWithHSTSCache
1163         https://bugs.webkit.org/show_bug.cgi?id=188576
1164         <rdar://problem/43148977>
1165
1166         Reviewed by Alex Christensen.
1167
1168         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1169         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm: Added.
1170         (TEST):
1171
1172 2018-08-14  Alex Christensen  <achristensen@webkit.org>
1173
1174         isValidCSSSelector is unsafe to be called from a non-main thread
1175         https://bugs.webkit.org/show_bug.cgi?id=188581
1176         <rdar://problem/40517358>
1177
1178         Reviewed by Sam Weinig.
1179
1180         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
1181         (TestWebKitAPI::InMemoryCompiledContentExtension::create):
1182         (TestWebKitAPI::checkCompilerError):
1183
1184 2018-08-14  Ansh Shukla  <ansh_shukla@apple.com>
1185
1186         NSURLAuthenticationMethodOAuth challenges are surfaced to clients in -didReceiveAuthenticationChallenge as NSURLAuthenticationMethodDefault
1187         https://bugs.webkit.org/show_bug.cgi?id=186870
1188         <rdar://problem/41314410>
1189
1190         Reviewed by Alex Christensen.
1191
1192         * WebKitTestRunner/TestController.cpp:
1193         (WTR::toString):
1194         (WTR::TestController::canAuthenticateAgainstProtectionSpace): Expose type of authentication challenge so we can test OAuth.
1195         (WTR::TestController::didReceiveAuthenticationChallenge):
1196
1197 2018-08-14  Fujii Hironori  <Hironori.Fujii@sony.com>
1198
1199         [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
1200         https://bugs.webkit.org/show_bug.cgi?id=187973
1201
1202         Reviewed by Alex Christensen.
1203
1204         In LayoutTests, test names have been canonicalized in Unix style
1205         since Bug 63597, for example 'fast/css/001.html'. But Bug 179219,
1206         Bug 179572, Bug 180660, and Bug 181814 have changed to use
1207         os.path.seq instead of slash if Windows Python is used.
1208
1209         Revert parts of those changes. Change relative_test_filename to
1210         return a slash-separated test name as chromium_win.py used to do.
1211
1212         This change fixes all 41 test-webkitpy failures in WinCairo port.
1213
1214         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1215         (TestExpectationParser._parse_line): Do not convert test names with normpath.
1216         * Scripts/webkitpy/port/base.py:
1217         (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
1218         (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
1219         (Port.abspath_for_test): Replace self.TEST_PATH_SEPARATOR with self.host.filesystem.sep.
1220         * Scripts/webkitpy/port/driver.py:
1221         (Driver): Use '/' instead of os.sep.
1222         * Scripts/webkitpy/port/win.py:
1223         (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
1224
1225 2018-08-14  Aakash Jain  <aakash_jain@apple.com>
1226
1227         [ews-build] Add build step to run WK1 layout-test
1228         https://bugs.webkit.org/show_bug.cgi?id=188498
1229
1230         Reviewed by Lucas Forschler.
1231
1232         * BuildSlaveSupport/ews-build/steps.py:
1233         (RunWebKit1Tests): Class to run WebKit1Tests.
1234         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1235
1236 2018-08-14  Patrick Griffis  <pgriffis@igalia.com>
1237
1238         [Flatpak] Fix --cmakeargs
1239         https://bugs.webkit.org/show_bug.cgi?id=188567
1240
1241         Reviewed by Michael Catanzaro.
1242
1243         * flatpak/flatpakutils.py:
1244         (WebkitFlatpak.setup_dev_env):
1245
1246 2018-08-14  Darshan Kadu  <dkadu@igalia.com>
1247
1248         Enhancement request: Make export-w3c-test-changes add the PR to "See Also" links
1249         https://bugs.webkit.org/show_bug.cgi?id=186140
1250
1251         Reviewed by Youenn Fablet.
1252
1253         Added an optional parameter see_also to post_comment_to_bug function and used it for adding see_also variable's content in "See Also"
1254         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
1255         (Bugzilla.post_comment_to_bug):
1256         Modified mock for see_also parameter
1257         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
1258         (MockBugzilla.post_comment_to_bug):
1259         Made following unit tests to have see_also in bug comment
1260         * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
1261         * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
1262         (SheriffTest.test_post_blame_comment_on_bug):
1263         * Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py:
1264         * Scripts/webkitpy/tool/commands/queues_unittest.py:
1265         * Scripts/webkitpy/tool/commands/upload_unittest.py:
1266         * Scripts/webkitpy/tool/steps/applywatchlist_unittest.py:
1267         * Scripts/webkitpy/w3c/test_exporter.py:
1268         (WebPlatformTestExporter.make_pull_request):
1269         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
1270         (TestExporterTest.MockBugzilla.post_comment_to_bug):
1271         (TestExporterTest.test_export):
1272
1273 2018-08-14  Aakash Jain  <aakash_jain@apple.com>
1274
1275         [ews-build] Add support for max_builds parameter for workers
1276         https://bugs.webkit.org/show_bug.cgi?id=188531
1277
1278         Reviewed by Lucas Forschler.
1279
1280         * BuildSlaveSupport/ews-build/loadConfig.py:
1281         (loadBuilderConfig): Added support for max_builds.
1282
1283 2018-08-14  Zalan Bujtas  <zalan@apple.com>
1284
1285         [LFC][Floating] Adjust vertical position with non-collapsing previous sibling margin.
1286         https://bugs.webkit.org/show_bug.cgi?id=188543
1287
1288         Reviewed by Antti Koivisto.
1289
1290         * LayoutReloaded/misc/LFC-passing-tests.txt:
1291
1292 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1293
1294         Unreviewed. Fix WebDriver tests after r234839.
1295
1296         New pytest requires to autoinstall more_itertools and six too.
1297
1298         * Scripts/webkitpy/thirdparty/__init__.py:
1299         (AutoinstallImportHook._install_pytest):
1300
1301 2018-08-14  Tomas Popela  <tpopela@redhat.com>
1302
1303         [GTK] Minibrowser: Add labels for buttons
1304         https://bugs.webkit.org/show_bug.cgi?id=188549
1305
1306         Reviewed by Carlos Garcia Campos.
1307
1308         So they are accessible easier (i.e. while testing WebKitGTK+ through Minibrowser in Dogtail).
1309
1310         * MiniBrowser/gtk/BrowserWindow.c:
1311         (webViewIsLoadingChanged):
1312         (browserWindowSetupEditorToolbar):
1313         (browser_window_init):
1314
1315 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1316
1317         Unreviewed. Fix WebDriver tests after r234839.
1318
1319         New pytest requires to autoinstall atomicwrites too.
1320
1321         * Scripts/webkitpy/thirdparty/__init__.py:
1322         (AutoinstallImportHook._install_pytest):
1323
1324 2018-08-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1325
1326         Unreviewed. Fix WebDriver tests after r234839.
1327
1328         New pytest requires to autoinstall pluggy and funcsigs too.
1329
1330         * Scripts/webkitpy/thirdparty/__init__.py:
1331         (AutoinstallImportHook._install_pytest):
1332
1333 2018-08-13  Carlos Garcia Campos  <cgarcia@igalia.com>
1334
1335         Unreviewed. Update W3C WebDriver imported tests.
1336
1337         Bump pytest version to 3.6.2.
1338
1339         * Scripts/webkitpy/thirdparty/__init__.py:
1340         (AutoinstallImportHook._install_pytest):
1341
1342 2018-08-13  Thomas Denney  <tdenney@apple.com>
1343
1344         Allow the substring 'me' in contributor names and email addresses
1345         https://bugs.webkit.org/show_bug.cgi?id=188538
1346
1347         Reviewed by Tim Horton.
1348
1349         A test didn't permit the string "me" in email addresses or names of contributors.
1350
1351         * Scripts/webkitpy/common/config/committers_unittest.py:
1352         (CommittersTest.test_contributors_by_fuzzy_match):
1353
1354 2018-08-13  Commit Queue  <commit-queue@webkit.org>
1355
1356         Unreviewed, rolling out r234812.
1357         https://bugs.webkit.org/show_bug.cgi?id=188536
1358
1359         broke the build (Requested by ThomasDenney on #webkit).
1360
1361         Reverted changeset:
1362
1363         "Added Thomas Denney to contributors.json."
1364         https://bugs.webkit.org/show_bug.cgi?id=188525
1365         https://trac.webkit.org/changeset/234812
1366
1367 2018-08-13  Sihui Liu  <sihui_liu@apple.com>
1368
1369         Avoid timeout resulted from calling waitUntilDone when test is not running
1370         https://bugs.webkit.org/show_bug.cgi?id=188389
1371
1372         Reviewed by Chris Dumez.
1373
1374         If test is not running, we should not set the waitUntilDone flag, or it may cause subsequent tests timeout.
1375
1376         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1377         (WTR::TestRunner::waitUntilDone):
1378
1379 2018-08-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1380
1381         [WK2] [macOS] Implement a mechanism to test drag and drop
1382         https://bugs.webkit.org/show_bug.cgi?id=181898
1383         <rdar://problem/39181698>
1384
1385         Reviewed by Simon Fraser.
1386
1387         Implements the currently stubbed DragAndDropSimulator on macOS, and introduces a new API test for r227266. See
1388         comments below for more detail.
1389
1390         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1391         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
1392
1393         Introduce a file for cross-platform drag and drop tests, currently for iOS and macOS. Additionally add a test
1394         for r227266, which was fixed earlier this year but could not be tested due to a lack of testing mechanism on
1395         macOS in WebKit2.
1396
1397         (TEST):
1398         * TestWebKitAPI/Tests/WebKitCocoa/full-page-dropzone.html: Added.
1399
1400         Minor tweaks to this test page to add "dragover" and "drop" event handlers.
1401
1402         * TestWebKitAPI/Tests/WebKitCocoa/image-in-link-and-input.html:
1403         * TestWebKitAPI/Tests/WebKitCocoa/link-in-iframe-and-input.html: Added.
1404
1405         Add a new test page that includes a link embedded within an iframe below a plain text input.
1406
1407         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm: Added.
1408         (TEST):
1409         * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm: Renamed from Tools/TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm.
1410
1411         Move only existing WebKit2 macOS drag and drop test (DragAndDropPasteboardTests.NumberOfValidItemsForDrop) out
1412         of DragAndDropPasteboardTests.mm and into a new file, DragAndDropTestsMac.mm. Additionally, rename
1413         DragAndDropPasteboardTests to LegacyDragAndDropTests, since it now only contains two legacy WebView tests for
1414         drag and drop.
1415
1416         (+[FrameLoadCompletionListener listenerWithCompletionBlock:]):
1417         (-[FrameLoadCompletionListener initWithCompletionBlock:]):
1418         (-[FrameLoadCompletionListener webView:didFinishLoadForFrame:]):
1419         (-[DragSource draggingSourceOperationMaskForLocal:]):
1420         (-[DragInfo initWithImage:offset:pasteboard:source:destinationWindow:]):
1421         (-[DragInfo lastMousePosition]):
1422         (-[DragInfo setLastMousePosition:]):
1423         (-[DragInfo draggingDestinationWindow]):
1424         (-[DragInfo draggingSourceOperationMask]):
1425         (-[DragInfo draggingLocation]):
1426         (-[DragInfo draggedImageLocation]):
1427         (-[DragInfo draggedImage]):
1428         (-[DragInfo draggingPasteboard]):
1429         (-[DragInfo draggingSource]):
1430         (-[DragInfo draggingSequenceNumber]):
1431         (-[DragInfo slideDraggedImageTo:]):
1432         (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
1433         (-[DragInfo draggingFormation]):
1434         (-[DragInfo setDraggingFormation:]):
1435         (-[DragInfo animatesToDestination]):
1436         (-[DragInfo setAnimatesToDestination:]):
1437         (-[DragInfo numberOfValidItemsForDrop]):
1438         (-[DragInfo setNumberOfValidItemsForDrop:]):
1439         (-[DragInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
1440         (-[DragInfo springLoadingHighlight]):
1441         (-[DragInfo resetSpringLoading]):
1442         (TestWebKitAPI::getTestImage):
1443         (TestWebKitAPI::webViewAfterPerformingDragOperation):
1444         (TestWebKitAPI::TEST):
1445         * TestWebKitAPI/Tests/mac/full-page-dropzone.html: Removed.
1446         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1447
1448         Flesh out some of the DragAndDropSimulator API for macOS, exposing (among other things) the drag pasteboard,
1449         the current NSDraggingInfo, the initial location of the drag image, and the drag image itself.
1450
1451         * TestWebKitAPI/cocoa/TestWKWebView.h:
1452         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1453         (-[TestWKWebView mouseDownAtPoint:simulatePressure:]):
1454         (-[TestWKWebView mouseUpAtPoint:]):
1455         (-[TestWKWebView mouseMoveToPoint:withFlags:]):
1456         (-[TestWKWebView sendClicksAtPoint:numberOfClicks:]):
1457         (-[TestWKWebView mouseEnterAtPoint:]):
1458         (-[TestWKWebView mouseExitAtPoint:]):
1459         (-[TestWKWebView mouseDragToPoint:]):
1460         (-[TestWKWebView _mouseEventWithType:atLocation:]):
1461         (-[TestWKWebView _mouseEventWithType:atLocation:flags:timestamp:clickCount:]):
1462
1463         Add TestWKWebView helpers to send MouseMove, MouseEnter and MouseDrag NSEvents to the web view. Additionally,
1464         rename parameter names to these helpers to make it more obvious that these locations are all in NSWindow
1465         coordinates.
1466
1467         (-[TestWKWebView typeCharacter:]):
1468
1469         Drive-by style fix: put this opening brace on the beginning of the next line.
1470
1471         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1472         (-[DragAndDropSimulator initWithWebViewFrame:]):
1473         (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
1474         (-[DragAndDropSimulator webView]):
1475
1476         Small iOS DragAndDropSimulator adjustments for new DragAndDropSimulator interfaces.
1477
1478         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
1479         (-[DragAndDropTestWKWebView initWithFrame:configuration:simulator:]):
1480
1481         Introduce a WKWebView subclass for testing drag and drop that overrides `-dragImage:at:offset:…`, and instead
1482         allows DragAndDropSimulator to take over the drag.
1483
1484         (-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
1485
1486         Override this entry point into drag and drop code, and instead call out to the DragAndDropSimulator to
1487         coordinate the drag.
1488
1489         (-[DragAndDropTestWKWebView waitForPendingMouseEvents]):
1490
1491         Helper method to wait for the web process to finish handling all in-flight mouse events.
1492
1493         (defaultExternalDragImage):
1494
1495         Set this image as the default drag image when simulating an incoming drag session from outside of the web view.
1496
1497         (-[DragAndDropSimulator initWithWebViewFrame:]):
1498         (-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
1499         (-[DragAndDropSimulator flipAboutXAxisInHostWindow:]):
1500
1501         Helper method to flip a given point about the X axis of the window.
1502
1503         (-[DragAndDropSimulator locationInViewForCurrentProgress]):
1504
1505         Map a progress value (between 0 and 1) to a drag location.
1506
1507         (-[DragAndDropSimulator initialProgressForMouseDrag]):
1508
1509         Determines the initial progress value when initiation a drag in web content. This is the initial progress
1510         required to ensure that the first mouse drag event exceeds the drag distance hysteresis and causes any drag
1511         (if applicable) to begin.
1512
1513         (-[DragAndDropSimulator runFrom:to:]):
1514         (-[DragAndDropSimulator performDragInWebView:atLocation:withImage:pasteboard:source:]):
1515
1516         Helper to coordinate drag updates in both the cases where we're simulating a drag session entering from outside
1517         of the web view, and in the case where we've initiated a drag from the web view itself.
1518
1519         (-[DragAndDropSimulator webView]):
1520         (-[DragAndDropSimulator setExternalDragPasteboard:]):
1521         (-[DragAndDropSimulator externalDragPasteboard]):
1522
1523         Just like its iOS counterpart (setExternalItemProviders:), setting an external drag pasteboard on macOS puts the
1524         DragAndDropSimulator in a mode that simulates a drag coming in from outside the web view, using the given
1525         pasteboard.
1526
1527         (-[DragAndDropSimulator setExternalDragImage:]):
1528         (-[DragAndDropSimulator externalDragImage]):
1529
1530         May be optionally set when specifying an external drag pasteboard to specify the drag image used. If no external
1531         drag image is specified, falls back to the default image returned by `defaultExternalDragImage()`.
1532
1533         (-[DragAndDropSimulator draggingInfo]):
1534         (-[DragAndDropSimulator willEndDraggingHandler]):
1535         (-[DragAndDropSimulator setWillEndDraggingHandler:]):
1536
1537         Hook to allow tests to run logic right before performing the drop (if the current drag operation is not none) or
1538         ending the drag session without performing a drag operation.
1539
1540         (-[DragAndDropSimulator initWithWebView:]): Deleted.
1541         (-[DragAndDropSimulator dealloc]): Deleted.
1542         (-[DragAndDropSimulator phase]): Deleted.
1543         * TestWebKitAPI/mac/TestDraggingInfo.h: Copied from Tools/TestWebKitAPI/mac/DragAndDropSimulatorMac.mm.
1544         * TestWebKitAPI/mac/TestDraggingInfo.mm: Added.
1545
1546         Mock object conforming to NSDraggingInfo that is passed to WKWebView when invoking -draggingUpdated:,
1547         -draggingEntered: and -draggingExited:.
1548
1549         (-[TestDraggingInfo draggingPasteboard]):
1550         (-[TestDraggingInfo setDraggingPasteboard:]):
1551         (-[TestDraggingInfo draggingSource]):
1552         (-[TestDraggingInfo setDraggingSource:]):
1553         (-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
1554         (-[TestDraggingInfo draggingDestinationWindow]):
1555         (-[TestDraggingInfo draggedImage]):
1556         (-[TestDraggingInfo setDraggedImage:]):
1557         (-[TestDraggingInfo slideDraggedImageTo:]):
1558         (-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
1559         (-[TestDraggingInfo resetSpringLoading]):
1560
1561         Empty method stubs, to be implemented in the future as needed.
1562
1563 2018-08-13  Thomas Denney  <tdenney@apple.com>
1564
1565         Added Thomas Denney to contributors.json.
1566         https://bugs.webkit.org/show_bug.cgi?id=188525
1567
1568         Reviewed by Myles C. Maxfield.
1569
1570         * Scripts/webkitpy/common/config/contributors.json:
1571
1572 2018-08-13  Antti Koivisto  <antti@apple.com>
1573
1574         Meaning of OptionSet::contains is unclear when used with OptionSet argument
1575         https://bugs.webkit.org/show_bug.cgi?id=188501
1576
1577         Reviewed by Anders Carlsson.
1578
1579         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
1580         (TestWebKitAPI::TEST):
1581
1582 2018-08-13  Commit Queue  <commit-queue@webkit.org>
1583
1584         Unreviewed, rolling out r234747.
1585         https://bugs.webkit.org/show_bug.cgi?id=188524
1586
1587         plugin processes crash on launch (Requested by smfr on
1588         #webkit).
1589
1590         Reverted changeset:
1591
1592         "We should cache the compiled sandbox profile in a data vault"
1593         https://bugs.webkit.org/show_bug.cgi?id=184991
1594         https://trac.webkit.org/changeset/234747
1595
1596 2018-08-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1597
1598         [iOS] Dragging a non-editable text selection into a plain text input inserts HTML markup
1599         https://bugs.webkit.org/show_bug.cgi?id=188485
1600         <rdar://problem/43168784>
1601
1602         Reviewed by Tim Horton.
1603
1604         Add a new API test to verify that dropping selected non-editable rich text into a textarea inserts text as
1605         expected, rather than markup.
1606
1607         It's somewhat interesting to note that this particular use case isn't exercised by any existing tests; the
1608         closest test is DragAndDropTests.ContentEditableToTextarea, which drags a rich text selection from a
1609         contenteditable element to a text area. However, due to logic in `DragController::concludeEditDrag` that handles
1610         drag and drop across editable content differently than drag and drop from non-editable to editable content, the
1611         bug that is fixed here doesn't surface in that existing test.
1612
1613         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1614         * TestWebKitAPI/Tests/WebKitCocoa/selected-text-and-textarea.html: Added.
1615         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1616         (TestWebKitAPI::TEST):
1617
1618 2018-08-13  Alex Christensen  <achristensen@webkit.org>
1619
1620         Use a 1-byte enum class for TextDirection
1621         https://bugs.webkit.org/show_bug.cgi?id=188350
1622
1623         Reviewed by Simon Fraser.
1624
1625         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
1626         (TestWebKitAPI::TEST_F):
1627         * TestWebKitAPI/Tests/WebCore/StringWithDirection.cpp:
1628         (WebCore::operator<<):
1629         (TestWebKitAPI::TEST):
1630         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
1631         (TEST_F):
1632
1633 2018-08-13  Zalan Bujtas  <zalan@apple.com>
1634
1635         [LFC][Floating] Add basic clearance support
1636         https://bugs.webkit.org/show_bug.cgi?id=188492
1637
1638         Reviewed by Antti Koivisto.
1639
1640         * LayoutReloaded/misc/LFC-passing-tests.txt:
1641
1642 2018-08-12  Zalan Bujtas  <zalan@apple.com>
1643
1644         [LFC] Float prev/next sibling should prevent top/bottom margin collapsing with parent.
1645         https://bugs.webkit.org/show_bug.cgi?id=188487
1646
1647         Reviewed by Antti Koivisto.
1648
1649         * LayoutReloaded/misc/LFC-passing-tests.txt:
1650
1651 2018-08-11  Aakash Jain  <aakash_jain@apple.com>
1652
1653         [ews-build] Separate queues for Builders and Testers - iOS
1654         https://bugs.webkit.org/show_bug.cgi?id=188396
1655
1656         Reviewed by Lucas Forschler.
1657
1658         * BuildSlaveSupport/ews-build/config.json: Splitted iOS queues into builders and testers.
1659         Also added ews121 and ews122 to match with current EWS configuration.
1660         * BuildSlaveSupport/ews-build/factories.py:
1661         (TestsFactory): Base classes for various Test factories.
1662         (TestsFactory.getProduct): Download and extract the archive.
1663
1664 2018-08-10  Daniel Bates  <dabates@apple.com>
1665
1666         webkit-patch setup-git-clone should set Git core editor to commit-log-editor
1667         https://bugs.webkit.org/show_bug.cgi?id=188473
1668
1669         Reviewed by Ryosuke Niwa.
1670
1671         Have "webkit-patch setup-git-clone" set the Git core editor to "perl Tools/Scripts/commit-log-editor --regenerate-log"
1672         so that the Git commit message is generated from the ChangeLog for developers that manually
1673         generate their ChangeLog using prepare-ChangeLog.
1674
1675         * Scripts/webkitpy/tool/commands/setupgitclone.py:
1676         (SetupGitClone.execute):
1677
1678 2018-08-10  Truitt Savell  <tsavell@apple.com>
1679
1680         Unreviewed, rolling out r234749.
1681
1682         Caused all perf tests to fail in Sierra
1683
1684         Reverted changeset:
1685
1686         "[webkitpy][Win] LayoutTests: test names should be Unix style,
1687         separated by slash not backslash"
1688         https://bugs.webkit.org/show_bug.cgi?id=187973
1689         https://trac.webkit.org/changeset/234749
1690
1691 2018-08-10  David Fenton  <david_fenton@apple.com>
1692
1693         Timeouts in TestWebKitAPI.PreferredAudioBufferSize.AudioWithWebAudio and TestWebKitAPI.PreferredAudioBufferSize.WebAudio.
1694         https://bugs.webkit.org/show_bug.cgi?id=188470.
1695
1696         Unreviewed test gardening, disabling the tests.
1697
1698         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
1699         (TEST_F):
1700
1701 2018-08-10  Joseph Pecoraro  <pecoraro@apple.com>
1702
1703         Eliminate remaining instances of "ElCapitan" from LayoutTests / Tools
1704         https://bugs.webkit.org/show_bug.cgi?id=188458
1705
1706         Reviewed by Alex Christensen.
1707
1708         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1709         (TestExpectationParser):
1710         * TestResultServer/static-dashboards/flakiness_dashboard.js:
1711
1712 2018-08-09  Fujii Hironori  <Hironori.Fujii@sony.com>
1713
1714         [webkitpy][Win] LayoutTests: test names should be Unix style, separated by slash not backslash
1715         https://bugs.webkit.org/show_bug.cgi?id=187973
1716
1717         Reviewed by Alex Christensen.
1718
1719         In LayoutTests, test names have been canonicalized in Unix style
1720         since Bug 63597, for example 'fast/css/001.html'. But, Bug 179219,
1721         Bug 179572, Bug 180660 and Bug 181814 have changed to use
1722         os.path.seq instead of slash if Windows Python is used.
1723
1724         Revert parts of those changes. Change relative_test_filename to
1725         return a slash sperated test name as well as chromium_win.py used
1726         to do.
1727
1728         This change fixes all 41 test-webkitpy failures in WinCairo port.
1729
1730         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1731         (TestExpectationParser._parse_line): Do not convert a test name by using normpath.
1732         * Scripts/webkitpy/port/base.py:
1733         (Port.normalize_test_name): Use TEST_PATH_SEPARATOR instead of os.path.sep.
1734         (Port.relative_test_filename): Replace self.host.filesystem.sep with self.TEST_PATH_SEPARATOR.
1735         (Port.abspath_for_test): Split test_name with TEST_PATH_SEPARATOR.
1736         * Scripts/webkitpy/port/driver.py:
1737         (Driver): Use '/' instead of os.sep.
1738         * Scripts/webkitpy/port/win.py:
1739         (WinCairoPort): Do not override TEST_PATH_SEPARATOR.
1740
1741 2018-08-09  Thomas Denney  <tdenney@apple.com>
1742
1743         [WHLSL] Add individual test durations to output
1744         https://bugs.webkit.org/show_bug.cgi?id=188448
1745
1746         Reviewed by Myles C. Maxfield.
1747
1748         * WebGPUShadingLanguageRI/Test.js: Add timing output.
1749
1750 2018-08-09  Ben Richards  <benton_richards@apple.com>
1751
1752         We should cache the compiled sandbox profile in a data vault
1753         https://bugs.webkit.org/show_bug.cgi?id=184991
1754
1755         Reviewed by Ryosuke Niwa.
1756
1757         Added trace points for sandbox initialization
1758
1759         * Tracing/SystemTracePoints.plist:
1760
1761 2018-08-09  Jer Noble  <jer.noble@apple.com>
1762
1763         Video playback is using more power
1764         https://bugs.webkit.org/show_bug.cgi?id=188452
1765         <rdar://problem/42298937>
1766
1767         Reviewed by Eric Carlson.
1768
1769         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
1770         (PreferredAudioBufferSize::createView):
1771         (PreferredAudioBufferSize::preferredAudioBufferSize const):
1772         (TEST_F):
1773
1774 2018-08-09  Alex Christensen  <achristensen@webkit.org>
1775
1776         REGRESSION(234640) Loading stalls in environments without SafariSafeBrowsing framework
1777         https://bugs.webkit.org/show_bug.cgi?id=188453
1778         <rdar://problem/43102553>
1779
1780         Reviewed by Chris Dumez
1781
1782         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1783         (TEST):
1784         (+[NullLookupContext sharedLookupContext]):
1785         (TestWebKitAPI::TEST): Deleted.
1786
1787 2018-08-09  Alex Christensen  <achristensen@webkit.org>
1788
1789         WKURLSchemeHandler crashes when sent errors with sync XHR
1790         https://bugs.webkit.org/show_bug.cgi?id=188358
1791
1792         Reviewed by Chris Dumez.
1793
1794         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
1795         (-[SyncErrorScheme webView:startURLSchemeTask:]):
1796         (-[SyncErrorScheme webView:stopURLSchemeTask:]):
1797         (-[SyncErrorScheme webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1798
1799 2018-08-09  Per Arne Vollan  <pvollan@apple.com>
1800
1801         REGRESSION(r234652): fast/scrolling/rtl-scrollbars-animation-property.html is failing
1802         https://bugs.webkit.org/show_bug.cgi?id=188397
1803
1804         Reviewed by Tim Horton.
1805
1806         After r234652, [NSScroller preferredScrollerStyle] is called in the UI process, and we need to set the same
1807         user defaults related to scrollbars in the UI process as we do in the WebProcess.
1808
1809         * WebKitTestRunner/mac/main.mm:
1810         (setDefaultsToConsistentValuesForTesting):
1811
1812 2018-08-09  Wenson Hsieh  <wenson_hsieh@apple.com>
1813
1814         [iOS WK2] Rename and refactor DataInteractionTests and DataInteractionSimulator
1815         https://bugs.webkit.org/show_bug.cgi?id=188439
1816
1817         Reviewed by Andy Estes and Megan Gardner.
1818
1819         Refactor DataInteractionSimulator (currently used for drag and drop testing on iOS) so that it exists across
1820         macOS and iOS, and rename it to DragAndDropSimulator. Additionally, rename DataInteractionTests to
1821         DragAndDropTests.
1822
1823         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1824         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1825         (TestWebKitAPI::TEST):
1826         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/DataInteractionTests.mm.
1827         (testIconImage):
1828         (testZIPArchive):
1829         (-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
1830         (-[TestWKWebView editorContainsImageElement]):
1831         (-[TestWKWebView editorValue]):
1832         (makeCGRectValue):
1833         (checkCGRectIsEqualToCGRectWithLogging):
1834         (checkSelectionRectsWithLogging):
1835         (checkRichTextTypePrecedesPlainTextType):
1836         (checkFirstTypeIsPresentAndSecondTypeIsMissing):
1837         (checkTypeIdentifierIsRegisteredAtIndex):
1838         (checkEstimatedSize):
1839         (checkSuggestedNameAndEstimatedSize):
1840         (checkStringArraysAreEqual):
1841         (checkDragCaretRectIsContainedInRect):
1842         (checkJSONWithLogging):
1843         (testIconImageData):
1844         (runTestWithTemporaryTextFile):
1845         (runTestWithTemporaryFolder):
1846         (TestWebKitAPI::TEST):
1847         (TestWebKitAPI::setUpTestWebViewForDataTransferItems):
1848         (TestWebKitAPI::testDragAndDropOntoTargetElements):
1849         (TestWebKitAPI::testIconImageData):
1850         * TestWebKitAPI/cocoa/DragAndDropSimulator.h: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.h.
1851         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm: Renamed from Tools/TestWebKitAPI/ios/DataInteractionSimulator.mm.
1852         (-[WKWebView dropInteractionDelegate]):
1853         (-[WKWebView dragInteractionDelegate]):
1854         (-[WKWebView dropInteraction]):
1855         (-[WKWebView dragInteraction]):
1856         (-[MockDragDropSession initWithItems:location:window:allowMove:]):
1857         (-[MockDragDropSession allowsMoveOperation]):
1858         (-[MockDragDropSession isRestrictedToDraggingApplication]):
1859         (-[MockDragDropSession hasItemsConformingToTypeIdentifiers:]):
1860         (-[MockDragDropSession canLoadObjectsOfClass:]):
1861         (-[MockDragDropSession canLoadObjectsOfClasses:]):
1862         (-[MockDragDropSession items]):
1863         (-[MockDragDropSession setItems:]):
1864         (-[MockDragDropSession addItems:]):
1865         (-[MockDragDropSession locationInView:]):
1866         (-[MockDropSession initWithProviders:location:window:allowMove:]):
1867         (-[MockDropSession isLocal]):
1868         (-[MockDropSession progress]):
1869         (-[MockDropSession setProgressIndicatorStyle:]):
1870         (-[MockDropSession progressIndicatorStyle]):
1871         (-[MockDropSession operationMask]):
1872         (-[MockDropSession localDragSession]):
1873         (-[MockDropSession hasItemsConformingToTypeIdentifier:]):
1874         (-[MockDropSession canCreateItemsOfClass:]):
1875         (-[MockDropSession loadObjectsOfClass:completion:]):
1876         (-[MockDragSession initWithWindow:allowMove:]):
1877         (-[MockDragSession localOperationMask]):
1878         (-[MockDragSession externalOperationMask]):
1879         (-[MockDragSession session]):
1880         (-[MockDragSession localContext]):
1881         (-[MockDragSession setLocalContext:]):
1882         (dragAndDropEventNames):
1883         (-[DragAndDropSimulatorApplication _cancelAllTouches]):
1884         (-[DragAndDropSimulator initWithWebView:]):
1885         (-[DragAndDropSimulator dealloc]):
1886         (-[DragAndDropSimulator _resetSimulatedState]):
1887         (-[DragAndDropSimulator observedEventNames]):
1888         (-[DragAndDropSimulator simulateAllTouchesCanceled:]):
1889         (-[DragAndDropSimulator runFrom:to:]):
1890         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
1891         (-[DragAndDropSimulator finalSelectionRects]):
1892         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
1893         (-[DragAndDropSimulator _enqueuePendingAdditionalItemRequestLocations]):
1894         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
1895         (-[DragAndDropSimulator _advanceProgress]):
1896         (-[DragAndDropSimulator _currentLocation]):
1897         (-[DragAndDropSimulator _scheduleAdvanceProgress]):
1898         (-[DragAndDropSimulator sourceItemProviders]):
1899         (-[DragAndDropSimulator externalItemProviders]):
1900         (-[DragAndDropSimulator setExternalItemProviders:]):
1901         (-[DragAndDropSimulator phase]):
1902         (-[DragAndDropSimulator liftPreviews]):
1903         (-[DragAndDropSimulator lastKnownDragCaretRect]):
1904         (-[DragAndDropSimulator waitForInputSession]):
1905         (-[DragAndDropSimulator insertedAttachments]):
1906         (-[DragAndDropSimulator removedAttachments]):
1907         (-[DragAndDropSimulator endDataTransfer]):
1908         (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
1909         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]):
1910         (-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
1911         (-[DragAndDropSimulator _webView:showCustomSheetForElement:]):
1912         (-[DragAndDropSimulator _webView:willPerformDropWithSession:]):
1913         (-[DragAndDropSimulator _webView:didInsertAttachment:]):
1914         (-[DragAndDropSimulator _webView:didRemoveAttachment:]):
1915         (-[DragAndDropSimulator _webView:focusShouldStartInputSession:]):
1916         (-[DragAndDropSimulator _webView:didStartInputSession:]):
1917         * TestWebKitAPI/ios/UIKitSPI.h:
1918         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm: Added.
1919         (-[DragAndDropSimulator initWithWebView:]):
1920         (-[DragAndDropSimulator dealloc]):
1921         (-[DragAndDropSimulator runFrom:to:]):
1922         (-[DragAndDropSimulator insertedAttachments]):
1923         (-[DragAndDropSimulator removedAttachments]):
1924
1925 2018-08-09  Sihui Liu  <sihui_liu@apple.com>
1926
1927         REGRESSION (r232083): WKWebView loses first-party cookies on iOS
1928         https://bugs.webkit.org/show_bug.cgi?id=188443
1929         <rdar://problem/42991584>
1930
1931         Reviewed by Chris Dumez.
1932
1933         Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
1934
1935         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1936
1937 2018-08-09  Ross Kirsling  <ross.kirsling@sony.com>
1938
1939         Unreviewed follow-up fix for r234720.
1940
1941         * Scripts/webkitpy/bindings/main.py:
1942         (BindingsTests.close_and_remove):
1943         (BindingsTests.main):
1944         Return to the original approach, since this seems to be the simplest cross-platform solution.
1945
1946 2018-08-09  Ali Juma  <ajuma@chromium.org>
1947
1948         Import WPTs for IntersectionObserver
1949         https://bugs.webkit.org/show_bug.cgi?id=188416
1950
1951         Reviewed by Simon Fraser.
1952
1953         Enable IntersectionObserver in DumpRenderTree. 
1954
1955         * DumpRenderTree/mac/DumpRenderTree.mm:
1956         (enableExperimentalFeatures):
1957         (setWebPreferencesForTestOptions):
1958         * WebKitTestRunner/TestController.cpp:
1959         (WTR::TestController::resetPreferencesToConsistentValues):
1960
1961 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
1962
1963         run-bindings-tests is not Win32-compatible
1964         https://bugs.webkit.org/show_bug.cgi?id=188424
1965
1966         Reviewed by Fujii Hironori.
1967
1968         * Scripts/webkitpy/bindings/main.py:
1969         (BindingsTests.main):
1970         Stop leaking file descriptors.
1971         (See https://www.logilab.org/blogentry/17873 for details, though the solution here is even simpler.)
1972
1973 2018-08-08  Alex Christensen  <achristensen@webkit.org>
1974
1975         Fix possible null dereference in WebBackForwardList::restoreFromState
1976         https://bugs.webkit.org/show_bug.cgi?id=188418
1977         <rdar://problem/42531726>
1978
1979         Reviewed by Chris Dumez.
1980
1981         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
1982         (TestWebKitAPI::TEST):
1983
1984 2018-08-08  Ross Kirsling  <ross.kirsling@sony.com>
1985
1986         run-builtins-generator-tests does not correctly handle CRLFs from stderr
1987         https://bugs.webkit.org/show_bug.cgi?id=188392
1988
1989         Reviewed by Fujii Hironori.
1990
1991         Background:
1992         file.write converts LF to os.linesep, so if the input string contains CRLF, we end up writing CRCRLF to the file.
1993
1994         * Scripts/webkitpy/common/system/executive.py:
1995         (Executive.run_command):
1996         Normalize CRLF to LF in decoded stdout/stderr data, so that we don't return consumers a platform-specific string.
1997
1998 2018-08-08  Aditya Keerthi  <akeerthi@apple.com>
1999
2000         Unreviewed, add myself to committers list.
2001
2002         * Scripts/webkitpy/common/config/contributors.json:
2003
2004 2018-08-08  Commit Queue  <commit-queue@webkit.org>
2005
2006         Unreviewed, rolling out r234314, r234320, and r234321.
2007         https://bugs.webkit.org/show_bug.cgi?id=188414
2008
2009         Caused email sign in issue (Requested by ryanhaddad on
2010         #webkit).
2011
2012         Reverted changesets:
2013
2014         "Remove unused WKNavigationDelegatePrivate
2015         decidePolicyForNavigationAction SPI"
2016         https://bugs.webkit.org/show_bug.cgi?id=188077
2017         https://trac.webkit.org/changeset/234314
2018
2019         "Fix API tests after r234314"
2020         https://bugs.webkit.org/show_bug.cgi?id=188077
2021         https://trac.webkit.org/changeset/234320
2022
2023         "Fix API tests after r234314"
2024         https://bugs.webkit.org/show_bug.cgi?id=188077
2025         https://trac.webkit.org/changeset/234321
2026
2027 2018-08-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2028
2029         [iOS] fast/events/ios/contenteditable-autocapitalize.html is a flaky failure
2030         https://bugs.webkit.org/show_bug.cgi?id=188401
2031         <rdar://problem/32542300>
2032
2033         Reviewed by Ryosuke Niwa.
2034
2035         When run individually, fast/events/ios/contenteditable-autocapitalize.html passes consistently; however, when
2036         run right after another layout test that finishes while the keyboard is shown, this test sometimes fails. This
2037         is because each of the three steps of this test ends when UIScriptController's `didHideKeyboardCallback` is
2038         invoked, and if the keyboard only begins to dismiss after the previous test completes, we have a race. When the
2039         keyboard finishes dismissing after the UI script is evaluated, it will trigger UI script completion early and
2040         skip over one of the steps in the layout test, resulting in a text diff failure.
2041
2042         To fix this, add a mechanism in WebKitTestRunner to wait until the keyboard is dismissed (with a short timeout)
2043         as a part of resetting test controller state, before moving on to the next layout test.
2044
2045         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
2046         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2047         (-[TestRunnerWKWebView didStartFormControlInteraction]):
2048         (-[TestRunnerWKWebView didEndFormControlInteraction]):
2049
2050         Use these hooks to keep track of whether the previous test is presenting any form input UI.
2051
2052         (-[TestRunnerWKWebView isInteractingWithFormControl]):
2053         * WebKitTestRunner/ios/TestControllerIOS.mm:
2054         (WTR::handleKeyboardWillHideNotification):
2055         (WTR::handleKeyboardDidHideNotification):
2056         (WTR::TestController::platformInitialize):
2057         (WTR::TestController::platformDestroy):
2058
2059         Register during initialization (and unregister during teardown) for keyboard hiding notifications, to keep track
2060         of when the keyboard dismissal animation ends.
2061
2062         (WTR::TestController::platformResetStateToConsistentValues):
2063
2064         Make a couple of tweaks here: (1) if form input UI is being shown, tell the web view to resign first responder,
2065         which causes the field to lose focus. (2) If necessary, wait for the current keyboard dismissal animation to
2066         finish. This includes any keyboard dismissal animations triggered as a result of step (1).
2067
2068 2018-08-05  Darin Adler  <darin@apple.com>
2069
2070         [Cocoa] More tweaks and refactoring to prepare for ARC
2071         https://bugs.webkit.org/show_bug.cgi?id=188245
2072
2073         Reviewed by Dan Bernstein.
2074
2075         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Use const void* for a
2076         CFTypeRef instead of void*.
2077
2078         * DumpRenderTree/TestNetscapePlugIn/PluginObjectMac.mm:
2079         (createCoreAnimationLayer): Use CFBridgingRetain.
2080
2081         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2082         (AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging casts.
2083         (AccessibilityUIElement::textMarkerRangeForElement): Ditto.
2084         (AccessibilityUIElement::selectedTextMarkerRange): Ditto.
2085         (AccessibilityUIElement::textMarkerRangeLength): Ditto.
2086         (AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
2087         (AccessibilityUIElement::indexForTextMarker): Ditto.
2088         (AccessibilityUIElement::textMarkerForIndex): Ditto.
2089         (AccessibilityUIElement::isTextMarkerValid): Ditto.
2090         (AccessibilityUIElement::previousTextMarker): Ditto.
2091         (AccessibilityUIElement::nextTextMarker): Ditto.
2092         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2093         (createJSStringRef): Ditto.
2094         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2095         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2096         (AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
2097         (AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
2098         (AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
2099         (AccessibilityUIElement::endTextMarkerForBounds): Ditto.
2100         (AccessibilityUIElement::startTextMarkerForBounds): Ditto.
2101         (AccessibilityUIElement::textMarkerForPoint): Ditto.
2102         (AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
2103         (AccessibilityUIElement::startTextMarker): Ditto.
2104         (AccessibilityUIElement::endTextMarker): Ditto.
2105         (AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
2106         (AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
2107         (AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
2108         (AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
2109         (AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
2110         (AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
2111         (AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
2112         (AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
2113         (AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
2114         (AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
2115         (AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
2116
2117         * DumpRenderTree/mac/DumpRenderTree.mm:
2118         (resetWebPreferencesToConsistentValues): Use bridging cast.
2119         (dumpFramesAsText): Ditto.
2120         (dumpBackForwardListForAllWindows): Use a modern for loop instead of
2121         CFArray functions to iterate the array.
2122         (dump): Use bridging cast.
2123         (runTest): Ditto.
2124
2125         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2126         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
2127         (toUTI): Return a RetainPtr<CFStringRef>.
2128         (-[LocalPasteboard types]): Use the above and bridging casts.
2129         (-[LocalPasteboard availableTypeFromArray:]): Ditto.
2130         (-[LocalPasteboard setData:forType:]): Ditto.
2131         (-[LocalPasteboard dataForType:]): Ditto.
2132         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
2133         instead of CFPropertyList.
2134         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
2135         CFStringCreateExternalRepresentation.
2136
2137         * DumpRenderTree/mac/MockGeolocationProvider.h: Put CFTypeRef in a HashSet
2138         instead of an Objective-C object pointer type.
2139         * DumpRenderTree/mac/MockGeolocationProvider.mm:
2140         (-[MockGeolocationProvider registerWebView:]): Update for above.
2141         (-[MockGeolocationProvider unregisterWebView:]): Ditto.
2142         (-[MockGeolocationProvider timerFired]): Ditto.
2143
2144         * DumpRenderTree/mac/MockWebNotificationProvider.h: Use CFTypeRef in
2145         HashMap and HashSet instead of an Objective-C object pointer type.
2146         * DumpRenderTree/mac/MockWebNotificationProvider.mm:
2147         (-[MockWebNotificationProvider registerWebView:]): Update for above.
2148         (-[MockWebNotificationProvider unregisterWebView:]): Ditto.
2149         (-[MockWebNotificationProvider showNotification:fromWebView:]): Ditto.
2150         (-[MockWebNotificationProvider cancelNotification:]): Ditto.
2151         (-[MockWebNotificationProvider simulateWebNotificationClick:]): Ditto.
2152
2153         * DumpRenderTree/mac/ObjCPlugin.m:
2154         (-[JSObjC retainObject:]): Use CFRetain instead of -[NSObject retain].
2155
2156         * DumpRenderTree/mac/TestRunnerMac.mm:
2157         (TestRunner::addDisallowedURL): Use bridging cast.
2158         (TestRunner::applicationCacheDiskUsageForOrigin): Ditto.
2159         (TestRunner::clearApplicationCacheForOrigin): Ditto.
2160         (originsArrayToJS): Ditto.
2161         (TestRunner::copyDecodedHostName): Ditto.
2162         (TestRunner::copyEncodedHostName): Ditto.
2163         (TestRunner::queueLoad): Ditto.
2164         (TestRunner::setDomainRelaxationForbiddenForURLScheme): Ditto.
2165         (TestRunner::setMockGeolocationPositionUnavailableError): Ditto.
2166         (TestRunner::setUserStyleSheetLocation): Ditto.
2167         (TestRunner::setValueForUser): Ditto.
2168         (TestRunner::overridePreference): Ditto.
2169         (TestRunner::execCommand): Ditto.
2170         (TestRunner::findString): Ditto.
2171         (TestRunner::isCommandEnabled): Ditto.
2172         (TestRunner::addOriginAccessWhitelistEntry): Ditto.
2173         (TestRunner::removeOriginAccessWhitelistEntry): Ditto.
2174         (TestRunner::addUserScript): Ditto.
2175         (TestRunner::addUserStyleSheet): Ditto.
2176         (TestRunner::evaluateInWebInspector): Ditto.
2177         (TestRunner::evaluateScriptInIsolatedWorld): Ditto.
2178         (TestRunner::authenticateSession): Ditto.
2179         (TestRunner::grantWebNotificationPermission): Ditto.
2180         (TestRunner::denyWebNotificationPermission): Ditto.
2181         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
2182         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Ditto.
2183
2184         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2185         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Use bridging cast.
2186         (WTR::AccessibilityUIElement::textMarkerRangeForElement): Ditto.
2187         (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
2188         (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
2189         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
2190         (WTR::AccessibilityUIElement::selectedTextMarkerRange): Ditto.
2191         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
2192         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
2193         (WTR::AccessibilityUIElement::endTextMarkerForBounds): Ditto.
2194         (WTR::AccessibilityUIElement::startTextMarkerForBounds): Ditto.
2195         (WTR::AccessibilityUIElement::textMarkerForPoint): Ditto.
2196         (WTR::AccessibilityUIElement::textMarkerForIndex): Ditto.
2197         (WTR::AccessibilityUIElement::startTextMarker): Ditto.
2198         (WTR::AccessibilityUIElement::endTextMarker): Ditto.
2199         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
2200         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
2201         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
2202         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
2203         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
2204         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
2205         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
2206         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
2207         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
2208         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
2209
2210         * WebKitTestRunner/PlatformMac.cmake: Added WebKitTestRunnerWindow.h and .mm files.
2211         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Ditto.
2212
2213         * WebKitTestRunner/mac/EventSenderProxy.mm: Add include of WebKitTestRunnerWindow.h
2214         so we can use the type and know it inherits from NSWindow.
2215
2216         * WebKitTestRunner/mac/PlatformWebViewMac.mm: Add include of WebKitTestRunnerWindow.h
2217         so we can use the type and know it inherits from NSWindow. Moved WebKitTestRunnerWindow
2218         class into a separate file.
2219         (WTR::PlatformWebView::keyWindow): Call +[WebKitTestRunnerWindow _WTR_keyWindow]
2220         instead of have a second copy of the implementation.
2221
2222         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm: Add include of WebKitTestRunnerWindow.h
2223         so we can use the type and know it inherits from NSWindow. Also removed "using namespace".
2224         (+[WebKitTestRunnerEvent mouseLocation]): Updated for above.
2225
2226         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
2227         (+[LocalPasteboard alloc]): Use class_createInstance instead of NSAllocateObject.
2228         (-[LocalPasteboard availableTypeFromArray:]): Use modern for loop.
2229         (-[LocalPasteboard setData:forType:]): Reordered method to be a tiny bit more efficient.
2230         (-[LocalPasteboard setPropertyList:forType:]): Use NSPropertyListSerialization
2231         instead of CFPropertyList.
2232         (-[LocalPasteboard setString:forType:]): Use NSString method instead of
2233         CFStringCreateExternalRepresentation.
2234
2235         * WebKitTestRunner/mac/WebKitTestRunnerWindow.h: Moved declaration of
2236         WebKitTestRunnerWindow here so it can be included by files that need to know
2237         what the type is and that it inherits from NSWindow.
2238
2239         * WebKitTestRunner/mac/WebKitTestRunnerWindow.mm: Added. Moved implementation here.
2240         (+[WebKitTestRunnerWindow _WTR_keyWindow]): Use modern for loop instead of the old,
2241         messier implementation.
2242
2243 2018-08-07  Alex Christensen  <achristensen@webkit.org>
2244
2245         Add a test for using SafeBrowsing
2246         https://bugs.webkit.org/show_bug.cgi?id=188290
2247
2248         Reviewed by Chris Dumez.
2249
2250         Swizzle out SSBLookupContext to write tests for how WebKit responds when it responds in different ways.
2251         We don't do anything with its results in WebKit yet, but when we do I'll add the expected behavior to this test.
2252
2253         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2254         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm: Added.
2255         (-[SafeBrowsingDelegate webView:didFinishNavigation:]):
2256         (TestWebKitAPI::TEST):
2257
2258 2018-08-07  Lucas Forschler  <lforschler@apple.com>
2259
2260         If there's a Radar in the ChangeLog, webkit-patch upload/create-bug should put the radar in the bug and set InRadar
2261         https://bugs.webkit.org/show_bug.cgi?id=188235
2262
2263         Reviewed by Daniel Bates, Kocsen Chung, and Aakash Jain.
2264
2265         * Scripts/webkitpy/common/checkout/changelog.py: 
2266         (ChangeLogEntry): Teach the ChangeLog tools how to parse a radar_id
2267         * Scripts/webkitpy/common/checkout/changelog_unittest.py: Test out the new _parse_radar_id functionality
2268         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2269         (Bugzilla.add_keyword_to_bug): Add logic to add keywords using the changeform
2270         * Scripts/webkitpy/tool/commands/upload.py:
2271         (Upload): Teach the upload step how to add radar information when creating a new bug.
2272         * Scripts/webkitpy/tool/steps/__init__.py:
2273         * Scripts/webkitpy/tool/steps/addradar.py: Added.
2274         (AddRadar):
2275         (AddRadar.run): Contains the logic to add the radar information to bugzilla.
2276         * Scripts/webkitpy/tool/steps/createbug.py:
2277         (CreateBug.run): set a "created_new_bug" state when creating a new bugzilla bug.
2278
2279 2018-08-07  Wenson Hsieh  <wenson_hsieh@apple.com>
2280
2281         Post-review feedback after r234614.
2282         https://bugs.webkit.org/show_bug.cgi?id=188322
2283         <rdar://problem/42455270>
2284
2285         Reviewed by Sam Weinig.
2286
2287         Use std::round instead of roundl — there's no reason to go from double to long double precision when rounding.
2288
2289         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2290         (rounded):
2291
2292 2018-08-07  Don Olmstead  <don.olmstead@sony.com>
2293
2294         [MiniBrowser][Win] Allow selection of recent user agents
2295         https://bugs.webkit.org/show_bug.cgi?id=188371
2296
2297         Reviewed by Fujii Hironori.
2298
2299         Updates the user agent spoofing strings to the latest released
2300         versions and adds Microsoft Edge's user agent.
2301
2302         Moves the menu item selection to the common base class, BrowserWindow
2303         to support user agent spoofing in a WebKitLegacyBrowserWindow and
2304         WebKitBrowserWindow.
2305
2306         * MiniBrowser/win/BrowserWindow.cpp: Added.
2307         (BrowserWindow::setUserAgent):
2308         * MiniBrowser/win/BrowserWindow.h:
2309         * MiniBrowser/win/CMakeLists.txt:
2310         * MiniBrowser/win/MainWindow.cpp:
2311         (MainWindow::toggleMenuItem):
2312         * MiniBrowser/win/MiniBrowserLib.rc:
2313         * MiniBrowser/win/MiniBrowserLibResource.h:
2314         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2315         * MiniBrowser/win/WebKitBrowserWindow.h:
2316         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
2317         (WebKitLegacyBrowserWindow::setUserAgent):
2318         * MiniBrowser/win/WebKitLegacyBrowserWindow.h:
2319
2320 2018-08-07  Yusuke Suzuki  <utatane.tea@gmail.com>
2321
2322         Unreviewed, add a new address to my configuration
2323
2324         * Scripts/webkitpy/common/config/contributors.json:
2325
2326 2018-08-06  David Quesada  <david_quesada@apple.com>
2327
2328         webkitdirs.pm should default to iPhone SE for 64-bit testing
2329         https://bugs.webkit.org/show_bug.cgi?id=188361
2330
2331         Reviewed by Daniel Bates.
2332
2333         Use iPhone SE as the default iOS Simulator device type. This corresponds to the change to webkitpy in r234467.
2334
2335         * Scripts/webkitdirs.pm:
2336         (findOrCreateSimulatorForIOSDevice):
2337         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2338         (parse_args):
2339             Update the help text for --device-type to reflect the new default device.
2340
2341 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2342
2343         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
2344         https://bugs.webkit.org/show_bug.cgi?id=188322
2345         <rdar://problem/42455270>
2346
2347         Reviewed by Tim Horton.
2348
2349         Fixes an API test added in r234600, which had incorrect test expectations — namely, the width of the caret rect
2350         was not in content view coordinates, unlike the x, y, and height.
2351
2352         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2353         (rounded):
2354         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
2355         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
2356         (TestWebKitAPI::TEST):
2357
2358 2018-08-06  Ryan Haddad  <ryanhaddad@apple.com>
2359
2360         Unreviewed, rolling out r234569.
2361
2362         Breaks internal builds.
2363
2364         Reverted changeset:
2365
2366         "We should cache the compiled sandbox profile in a data vault"
2367         https://bugs.webkit.org/show_bug.cgi?id=184991
2368         https://trac.webkit.org/changeset/234569
2369
2370 2018-08-06  Fujii Hironori  <Hironori.Fujii@sony.com>
2371
2372         [Win][DLLLauncher] Remove --highDPI switch
2373         https://bugs.webkit.org/show_bug.cgi?id=188255
2374
2375         Reviewed by Yusuke Suzuki.
2376
2377         Bug 149417 has added `--highDPI` switch to make MiniBrowser DPI
2378         aware. But, Bug 158733 has made MiniBrowser always DPI aware. It
2379         became useless since the change. Remove the switch.
2380
2381         This change fixes the issue all dump render tree tests are failing
2382         in WinCairo port if high DPI display is connected.
2383
2384         * MiniBrowser/win/Common.cpp:
2385         (parseCommandLine): Removed `--highDPI` switch.
2386         * win/DLLLauncher/DLLLauncherMain.cpp:
2387         (wWinMain): Do not call SetProcessDPIAware.
2388         (shouldUseHighDPI): Deleted.
2389
2390 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2391
2392         [iOS] Tests that try to interact with the QuickType bar time out on iOS 11+
2393         https://bugs.webkit.org/show_bug.cgi?id=188335
2394         <rdar://problem/32542437> and <rdar://problem/32542433>
2395
2396         Reviewed by Tim Horton.
2397
2398         Remove a UIScriptController helper method that attempted to wait for QuickType buttons to appear, and then send
2399         touch events to the buttons. These were only used for the two tests which this patch refactors. See the
2400         LayoutTests ChangeLog for more detail.
2401
2402         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2403         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
2404         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2405         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2406         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
2407         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
2408         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2409         * TestRunnerShared/spi/UIKitTestSPI.h:
2410
2411         Remove an internal class declaration that is now unnecessary.
2412
2413         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2414         (WTR::UIScriptController::selectTextCandidateAtIndex): Deleted.
2415         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex): Deleted.
2416
2417 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2418
2419         [iOS] Caret disappears after resigning and becoming first responder if active focus state is retained
2420         https://bugs.webkit.org/show_bug.cgi?id=188322
2421         <rdar://problem/42455270>
2422
2423         Reviewed by Tim Horton.
2424
2425         Adds plumbing in UIScriptController to grab the start and end selection handle rects for use in the new layout
2426         test. Also adds new API tests to verify that when a web view resigns first responder, both caret and range
2427         selection views are hidden, and when first responder status is restored, both caret and range selection views
2428         are made visible again.
2429
2430         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2431         (WTR::UIScriptController::selectionStartGrabberViewRect const):
2432         (WTR::UIScriptController::selectionEndGrabberViewRect const):
2433         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2434         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2435         (WTR::UIScriptController::selectionStartGrabberViewRect const):
2436         (WTR::UIScriptController::selectionEndGrabberViewRect const):
2437         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2438         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2439         (-[TestWKWebView waitForCaretViewFrameToBecome:]):
2440         (-[TestWKWebView waitForSelectionViewRectsToBecome:]):
2441         (webViewWithAutofocusedInput):
2442
2443         Pull out some common logic for creating a web view that allows programmatic focus to present the keyboard, and
2444         immediately loading a web page with an autofocusing text field.
2445
2446         (TestWebKitAPI::TEST):
2447         * TestWebKitAPI/cocoa/TestWKWebView.h:
2448         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2449         (-[TestWKWebView caretViewRectInContentCoordinates]):
2450         (-[TestWKWebView selectionViewRectsInContentCoordinates]):
2451         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2452         (WTR::UIScriptController::selectionStartGrabberViewRect const):
2453         (WTR::UIScriptController::selectionEndGrabberViewRect const):
2454
2455 2018-08-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2456
2457         [iOS] Layout tests that send HID events cause WebKitTestRunner to crash on recent SDKs
2458         https://bugs.webkit.org/show_bug.cgi?id=188334
2459         <rdar://problem/40630074>
2460
2461         Reviewed by Tim Horton.
2462
2463         To mark the end of previously dispatched IOHID events, HIDEventGenerator currently sends a vendor-defined event
2464         and stores the completion callback ID for the previously dispatched events as vendor-defined data. When this
2465         vendor-defined marker event is handled by the application, we then read the callback ID back from the event, map
2466         it to a completion block, and invoke the completion block to signal that the previous HID event has been
2467         processed.
2468
2469         This callback ID is an unsigned, so we tell IOKit that we need `sizeof(unsigned)` (4 bytes) to store it. On
2470         shipping software, IOKit clamps this to a minimum of 8 bytes, i.e. `sizeof(CFIndex)`. When we later call
2471         IOHIDEventGetIntegerValue to read the value of our vendor-defined data as a CFIndex, we get our expected
2472         callback ID because the buffer was clamped to 8 bytes.
2473
2474         However, on recent iOS SDKs that contain the fix for <rdar://problem/20082284>, IOKit no longer clamps the size
2475         of the vendor-defined data buffer to 8 bytes. This means that when we try to use IOHIDEventGetIntegerValue to
2476         read our callback ID back, we end up getting a CFIndex where the lower 4 bytes are the callback ID we wrote, and
2477         the upper 4 bytes are garbage. In the case where any of these upper 4 bytes are non-zero, we fail to map the
2478         callback ID to a completion handler, and so we never finish dispatching the HID event, causing an exception to
2479         be thrown.
2480
2481         To fix this, we adjust callback ID to be a CFIndex, which matches IOHIDEventGetIntegerValue's return type.
2482
2483         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2484         (+[HIDEventGenerator nextEventCallbackID]):
2485         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
2486
2487         Also refactor a bit of `-_sendMarkerHIDEventWithCompletionBlock:` by using auto and move semantics.
2488
2489 2018-08-03  Ben Richards  <benton_richards@apple.com>
2490
2491         We should cache the compiled sandbox profile in a data vault
2492         https://bugs.webkit.org/show_bug.cgi?id=184991
2493
2494         Reviewed by Ryosuke Niwa.
2495
2496         Added trace points for sandbox initialization
2497
2498         * Tracing/SystemTracePoints.plist:
2499
2500 2018-08-03  David Fenton  <david_fenton@apple.com>
2501
2502         Unreviewed, rolling out r234517.
2503
2504         Caused API test failures on iOS
2505
2506         Reverted changeset:
2507
2508         "[Cocoa] setCookie API fails to set session cookies for
2509         defaultDataStore if processPool created but not used"
2510         https://bugs.webkit.org/show_bug.cgi?id=188209
2511         https://trac.webkit.org/changeset/234517
2512
2513 2018-08-03  Ben Richards  <benton_richards@apple.com>
2514
2515         Add configuration for automatic process pre-warming
2516         https://bugs.webkit.org/show_bug.cgi?id=187108
2517
2518         Reviewed by Ryosuke Niwa.
2519
2520         Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
2521
2522         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2523         * TestWebKitAPI/Tests/WebKitCocoa/InitialWarmedProcessUsed.mm:
2524         (TEST):
2525         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2526         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm:
2527         (TEST):
2528
2529 2018-08-03  Aakash Jain  <aakash_jain@apple.com>
2530
2531         [ews-build] Add build step to Check Patch Relevance
2532         https://bugs.webkit.org/show_bug.cgi?id=188295
2533
2534         Reviewed by Lucas Forschler.
2535
2536         * BuildSlaveSupport/ews-build/steps.py:
2537         (CheckPatchRelevance): Added step to check patch relevance.
2538         (CheckPatchRelevance._patch_is_relevant): Checks if the patch is relevant.
2539         (CheckPatchRelevance._get_patch): Retrieves the patch from buildbot.
2540         (CheckPatchRelevance._addToLog): Add the log message.
2541         (CheckPatchRelevance.start):
2542         * BuildSlaveSupport/ews-build/factories.py: Added CheckPatchRelevance step appropriately.
2543
2544 2018-08-03  Jer Noble  <jer.noble@apple.com>
2545
2546         Unreviewed gardening; r234534 changed the policy for what audio session is set when a
2547         media element is paused. Updating the test to reflect the new policy.
2548
2549         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
2550         (TestWebKitAPI::TEST):
2551
2552 2018-08-03  Zalan Bujtas  <zalan@apple.com>
2553
2554         [LFC][Floating] Now that the document renderer belongs to "complicated cases", adjust viewport stretching.
2555         https://bugs.webkit.org/show_bug.cgi?id=188306
2556
2557         Reviewed by Antti Koivisto.
2558
2559         * LayoutReloaded/misc/LFC-passing-tests.txt:
2560
2561 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2562
2563         [WPE] Use the new key mapper API from WPEBackend
2564         https://bugs.webkit.org/show_bug.cgi?id=188216
2565
2566         Reviewed by Žan Doberšek.
2567
2568         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2569         (WTR::EventSenderProxy::keyDown): Use wpe_input_xkb_context_get_entries_for_key_code() to get the hardware key
2570         code.
2571         * wpe/backends/WindowViewBackend.cpp:
2572         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
2573         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
2574         (WPEToolingBackends::WindowViewBackend::modifiers const):
2575         * wpe/backends/WindowViewBackend.h:
2576
2577 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2578
2579         [WPE] Implement MouseEvent.buttons
2580         https://bugs.webkit.org/show_bug.cgi?id=187998
2581
2582         Reviewed by Žan Doberšek.
2583
2584         Pass modifiers to mouse events.
2585
2586         * WebKitTestRunner/EventSenderProxy.h:
2587         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2588         (WTR::senderButtonToWPEButton):
2589         (WTR::modifierForButton):
2590         (WTR::EventSenderProxy::mouseDown):
2591         (WTR::EventSenderProxy::mouseUp):
2592         (WTR::EventSenderProxy::mouseMoveTo):
2593         (WTR::EventSenderProxy::mouseScrollBy):
2594         (WTR::wkEventModifiersToWPE):
2595         (WTR::wpeKeySymForKeyRef):
2596         (WTR::EventSenderProxy::keyDown):
2597         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
2598         * wpe/backends/WindowViewBackend.cpp:
2599         (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
2600         (WPEToolingBackends::WindowViewBackend::modifiers const):
2601         * wpe/backends/WindowViewBackend.h:
2602
2603 2018-08-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2604
2605         [WPE] Use WPE key symbols and new API instead of xkbcommon and the key mapper
2606         https://bugs.webkit.org/show_bug.cgi?id=188093
2607
2608         Reviewed by Žan Doberšek.
2609
2610         * MiniBrowser/wpe/main.cpp: Use WPE key symbols.
2611         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2612         (WTR::wpeKeySymForKeyRef): Use WPE key symbols and wpe_unicode_to_key_code().
2613         (WTR::EventSenderProxy::keyDown): Do not set unicode char to the event since it was removed.
2614         * flatpak/org.webkit.WPE.yaml: Bump WPEBackend and WPEBackend-fdo versions.
2615         * wpe/backends/WindowViewBackend.cpp:
2616         (WPEToolingBackends::WindowViewBackend::handleKeyEvent): Do not set unicode char to the event since it was removed.
2617         * wpe/jhbuild.modules: Bump WPEBackend and WPEBackend-fdo versions.
2618
2619 2018-08-02  Nan Wang  <n_wang@apple.com>
2620
2621         AX: [iOS] add support to return the attributed string under the element
2622         https://bugs.webkit.org/show_bug.cgi?id=188276
2623         <rdar://problem/42872357>
2624
2625         Reviewed by Chris Fleizach.
2626
2627         * DumpRenderTree/AccessibilityUIElement.cpp:
2628         (attributedStringForElementCallback):
2629         (AccessibilityUIElement::getJSClass):
2630         * DumpRenderTree/AccessibilityUIElement.h:
2631         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2632         (AccessibilityUIElement::attributedStringForElement):
2633         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
2634         (WTR::AccessibilityUIElement::attributedStringForElement):
2635         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2636         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2637         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2638         (WTR::AccessibilityUIElement::attributedStringForElement):
2639
2640 2018-08-02  Ryan Haddad  <ryanhaddad@apple.com>
2641
2642         Skip API test DataInteractionTests.CustomActionSheetPopover on current SDKs.
2643         https://bugs.webkit.org/show_bug.cgi?id=175204
2644
2645         Unreviewed test gardening.
2646
2647         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2648
2649 2018-08-02  Sihui Liu  <sihui_liu@apple.com>
2650
2651         [Cocoa] setCookie API fails to set session cookies for defaultDataStore if processPool created but not used
2652         https://bugs.webkit.org/show_bug.cgi?id=188209
2653
2654         Reviewed by Geoffrey Garen.
2655
2656         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
2657         (TEST):
2658
2659 2018-08-02  Dan Bernstein  <mitz@apple.com>
2660
2661         Fixed WebKit.AttrStyle timing out on build.webkit.org.
2662
2663         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Changed from a URL that requires network
2664           access to one that doesn’t.
2665         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm:
2666         (TEST): Updated expected value.
2667
2668 2018-08-02  Wenson Hsieh  <wenson_hsieh@apple.com>
2669
2670         [iOS] Keyboard becomes unresponsive after pressing delete while pressing down on a character key with accents
2671         https://bugs.webkit.org/show_bug.cgi?id=188251
2672         <rdar://problem/37842108>
2673
2674         Reviewed by Tim Horton.
2675
2676         Adds a new API test to verify that clients (in this case, UIKit) is allowed to invoke
2677         -handleKeyWebEvent:withCompletionHandler: within the completion block of a prior invocation.
2678
2679         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2680         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm: Added.
2681         (TestWebKitAPI::TEST):
2682         * TestWebKitAPI/Tests/ios/TestInputDelegate.h: Added.
2683
2684         Pull some logic used to force an input session to start out from an existing API test file
2685         (WKWebViewAutofillTests) and into a separate helper class that is used by both the existing API tests and the
2686         new keyboard input test.
2687
2688         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2689         (-[AutofillTestView initWithFrame:]):
2690         (TestWebKitAPI::TEST):
2691         (-[TestInputDelegate init]): Deleted.
2692         (-[TestInputDelegate _webView:focusShouldStartInputSession:]): Deleted.
2693         * TestWebKitAPI/ios/UIKitSPI.h:
2694
2695         Add some UIKit SPI utilized by the new API test.
2696
2697 2018-08-01  Dan Bernstein  <mitz@apple.com>
2698
2699         Optionally expose Attr::style to JavaScript
2700         https://bugs.webkit.org/show_bug.cgi?id=188226
2701         <rdar://problem/42818113>
2702
2703         Reviewed by Darin Adler.
2704
2705         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2706         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.html: Added.
2707         * TestWebKitAPI/Tests/WebKitCocoa/AttrStyle.mm: Added.
2708         (TEST):
2709
2710 2018-08-02  David Fenton  <david_fenton@apple.com>
2711
2712         Unreviewed, rolling out r234489.
2713
2714         Caused 50+ crashes and 60+ API failures on iOS
2715
2716         Reverted changeset:
2717
2718         "[WTF] Rename String::format to String::deprecatedFormat"
2719         https://bugs.webkit.org/show_bug.cgi?id=188191
2720         https://trac.webkit.org/changeset/234489
2721
2722 2018-08-01  Ross Kirsling  <ross.kirsling@sony.com>
2723
2724         TestWTF.WTF_NeverDestroyed.Construct output differs for MSVC in Debug mode
2725         https://bugs.webkit.org/show_bug.cgi?id=188244
2726
2727         Reviewed by Daniel Bates.
2728
2729         Follow-up to r234179. MSVC chooses not to inline the lambda in Debug mode. 
2730
2731         * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
2732
2733 2018-08-01  Tomas Popela  <tpopela@redhat.com>
2734
2735         [WTF] Rename String::format to String::deprecatedFormat
2736         https://bugs.webkit.org/show_bug.cgi?id=188191
2737
2738         Reviewed by Darin Adler.
2739
2740         It should be replaced with string concatenation.
2741
2742         * DumpRenderTree/win/DumpRenderTree.cpp:
2743         (applicationId):
2744         (main):
2745         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
2746         (TestWebKitAPI::Util::createURLForResource):
2747         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2748         (WTR::cacheTestRunnerCallback):
2749         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
2750         (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
2751         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2752         (WTR::AccessibilityUIElement::attributedStringForRange):
2753         (WTR::AccessibilityUIElement::url):
2754         (WTR::stringAtOffset):
2755         * WebKitTestRunner/TestController.cpp:
2756         (WTR::TestController::didReceiveAuthenticationChallenge):
2757         (WTR::TestController::downloadDidFail):
2758         (WTR::originUserVisibleName):
2759         (WTR::userMediaOriginHash):
2760         (WTR::TestController::didNavigateWithNavigationData):
2761         (WTR::TestController::didPerformClientRedirect):
2762         (WTR::TestController::didPerformServerRedirect):
2763         (WTR::TestController::didUpdateHistoryTitle):
2764
2765 2018-08-01  Nan Wang  <n_wang@apple.com>
2766
2767         AX: AOM: Add ARIA IDL Attribute Reflection
2768         https://bugs.webkit.org/show_bug.cgi?id=184676
2769         <rdar://problem/39476882>
2770
2771         Reviewed by Chris Fleizach.
2772
2773         * DumpRenderTree/mac/DumpRenderTree.mm:
2774         (enableExperimentalFeatures):
2775         * WebKitTestRunner/TestController.cpp:
2776         (WTR::TestController::resetPreferencesToConsistentValues):
2777
2778 2018-08-01  Jonathan Bedard  <jbedard@apple.com>
2779
2780         Use iPhone SE as the default simulated device
2781         https://bugs.webkit.org/show_bug.cgi?id=188227
2782
2783         Reviewed by Aakash Jain.
2784
2785         * Scripts/webkitpy/port/ios_simulator.py:
2786         (IOSSimulatorPort):
2787
2788 2018-08-01  Commit Queue  <commit-queue@webkit.org>
2789
2790         Unreviewed, rolling out r234443 and r234445.
2791         https://bugs.webkit.org/show_bug.cgi?id=188224
2792
2793         Revision caused 3 api failures across all platforms.
2794         (Requested by Truitt on #webkit).
2795
2796         Reverted changesets:
2797
2798         "Add configuration for automatic process pre-warming"
2799         https://bugs.webkit.org/show_bug.cgi?id=187108
2800         https://trac.webkit.org/changeset/234443
2801
2802         "Add configuration for automatic process pre-warming"
2803         https://bugs.webkit.org/show_bug.cgi?id=187108
2804         https://trac.webkit.org/changeset/234445
2805
2806 2018-07-31  Ben Richards  <benton_richards@apple.com>
2807
2808         Add configuration for automatic process pre-warming
2809         https://bugs.webkit.org/show_bug.cgi?id=187108
2810
2811         Reviewed by Ryosuke Niwa.
2812
2813         Added new test case for setting maximum prewarmed process count and updated test case for process swap on navigation to set the maximum prewarmed process count to be 1 where relevant.
2814
2815         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2816         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2817         * TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm: Added.
2818         (TEST):
2819
2820 2018-07-31  John Wilander  <wilander@apple.com>
2821
2822         Resource Load Statistics: Remove partitioned cookies for reduced complexity, lower memory footprint, and ability to support more platforms
2823         https://bugs.webkit.org/show_bug.cgi?id=188109
2824         <rdar://problem/42664391>
2825
2826         Reviewed by Brent Fulgham, Chris Dumez, and Alex Christensen.
2827
2828         This patch removes cookie partitioning which reduces the model to just
2829         blocked cookies (in third-party contexts) and first-party cookie access.
2830
2831         Several of the changes are renaming to reflect that there are no more
2832         cookie partitions.
2833
2834         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2835            Removed or renamed functions to reflect that there are no more
2836            partitioned cookies.
2837         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2838         (WTR::InjectedBundle::didReceiveMessageToPage):
2839         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2840         (WTR::TestRunner::statisticsUpdateCookieBlocking):
2841         (WTR::TestRunner::statisticsCallDidSetBlockCookiesForHostCallback):
2842         (WTR::TestRunner::setCookieStoragePartitioningEnabled): Deleted.
2843         (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction): Deleted.
2844         (WTR::TestRunner::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
2845         (WTR::TestRunner::statisticsUpdateCookiePartitioning): Deleted.
2846         (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost): Deleted.
2847         (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
2848         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2849         * WebKitTestRunner/TestController.cpp:
2850         (WTR::TestController::statisticsUpdateCookieBlocking):
2851         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction): Deleted.
2852         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree): Deleted.
2853         (WTR::TestController::statisticsUpdateCookiePartitioning): Deleted.
2854         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost): Deleted.
2855         * WebKitTestRunner/TestController.h:
2856         * WebKitTestRunner/TestInvocation.cpp:
2857         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2858         (WTR::TestInvocation::didSetBlockCookiesForHost):
2859         (WTR::TestInvocation::didSetHasHadUserInteraction):
2860         (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
2861         (WTR::TestInvocation::didSetHasHadNonRecentUserInteraction): Deleted.
2862         * WebKitTestRunner/TestInvocation.h:
2863         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2864         (WTR::initializeWebViewConfiguration):
2865
2866 2018-07-31  Alex Christensen  <achristensen@webkit.org>
2867
2868         Build fix.  Remove unused variable.
2869
2870         * TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
2871         (TestWebKitAPI::TEST):
2872         transform was never used. It was introduced in r205871
2873         Apparently I'm the first one to build in a certain configuration that found it.
2874
2875 2018-07-31  Fujii Hironori  <Hironori.Fujii@sony.com>
2876
2877         server_process.py should print returncode in debug log if the process crashed
2878         https://bugs.webkit.org/show_bug.cgi?id=188160
2879
2880         Reviewed by Konstantin Tokarev.
2881
2882         * Scripts/webkitpy/port/server_process.py:
2883         (ServerProcess.has_crashed): Put self._proc.returncode into the debug log message.
2884
2885 2018-07-31  Tomas Popela  <tpopela@redhat.com>
2886
2887         [WTF] String::formatWithArguments() is unused
2888         https://bugs.webkit.org/show_bug.cgi?id=187955
2889
2890         Reviewed by Darin Adler.
2891
2892         Remove tests for WTF::String::formatWithArguments() as it's unused and
2893         we are removing it.
2894
2895         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
2896
2897 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
2898
2899         [ews-build] Fix typo in builder name for Bindings-tests-EWS.
2900
2901         * BuildSlaveSupport/ews-build/config.json: Changed 'tests' to 'Tests' to make it consistent with
2902         other builders.
2903
2904 2018-07-30 Aakash Jain  <aakash_jain@apple.com>
2905
2906         [ews-build] Add support for API tests in OpenSource EWS
2907         https://bugs.webkit.org/show_bug.cgi?id=188156
2908
2909         Reviewed by Lucas Forschler.
2910
2911         * BuildSlaveSupport/ews-build/config.json:
2912         * BuildSlaveSupport/ews-build/factories.py:
2913         (BuildFactory.__init__): Added triggers parameter.
2914         (BuildFactory): If trigger is defined, create and upload archive and trigger appropriate queues.
2915         (BuildFactory.propertiesToPassToTriggers): Pass all the required properties to triggered queue.
2916         (APITestsFactory): Factory for running API tests.
2917         * BuildSlaveSupport/ews-build/steps.py:
2918         (ConfigureBuild.start): Set the property only if property is defined in config.json. Also set the 
2919         source of the property.
2920
2921 2018-07-30  Aakash Jain  <aakash_jain@apple.com>
2922
2923         [ews-build] loadConfig should ensure that the triggers are valid
2924         https://bugs.webkit.org/show_bug.cgi?id=188134
2925
2926         Reviewed by Lucas Forschler.
2927
2928         * BuildSlaveSupport/ews-build/loadConfig.py:
2929         (checkValidBuilder): Added a check to ensure that the builder doesn't refernce non-existing scheduler.
2930         (checkValidSchedulers): Ensures that the scheduler is not un-used.
2931         * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-tests.
2932
2933 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
2934
2935         Unreviewed, fix typo in test expectations and mark another test as timing out
2936
2937         * TestWebKitAPI/glib/TestExpectations.json:
2938
2939 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
2940
2941         More unreviewed GTK test gardening
2942
2943         * TestWebKitAPI/glib/TestExpectations.json:
2944
2945 2018-07-27  Simon Fraser  <simon.fraser@apple.com>
2946
2947         Be more conservative with compositing layer creation when memory is low
2948         https://bugs.webkit.org/show_bug.cgi?id=187866
2949         rdar://problem/42366345
2950
2951         Reviewed by Zalan Bujtas.
2952         
2953         When process physical footprint is above a fraction of the jetsam limit, be more conservative in making
2954         compositing layers. We avoid compositing for these situations:
2955         1. Layers with 3D transforms which are affine (like translateZ(0)).
2956         2. Layers with will-change
2957         3. Layers for canvases (other than WebGL/WebGPU)
2958         
2959         We reuse some macOS code in MemoryPressureHandler() but choose different thresholds for iOS,
2960         falling into "conservative mode" at 50% of jetsam limit, and "strict mode" at 65%.
2961         Compositing chooses to be more conservative in either "conservative" or "strict" memory modes.
2962         
2963         Plumb through a "compositingPolicyOverride" both so that on-device testing isn't
2964         flakily falling into a different mode, and so that we can impose the conservative
2965         mode for testing.
2966
2967         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2968         (WTR::InjectedBundlePage::prepare):
2969
2970 2018-07-27  Michael Catanzaro  <mcatanzaro@igalia.com>
2971
2972         Unreviewed GTK test gardening
2973
2974         * TestWebKitAPI/glib/TestExpectations.json:
2975
2976 2018-07-27  Alex Christensen  <achristensen@webkit.org>
2977
2978         Fix API tests after r234314
2979         https://bugs.webkit.org/show_bug.cgi?id=188077
2980
2981         Make API tests use new delegate method.
2982
2983         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2984         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2985         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
2986
2987 2018-07-27  Alex Christensen  <achristensen@webkit.org>
2988
2989         Fix API tests after r234314
2990         https://bugs.webkit.org/show_bug.cgi?id=188077
2991
2992         Make API tests use new delegate method.
2993
2994         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2995         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2996         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2997         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2998         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2999         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
3000         (-[ContentBlockingWebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
3001         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
3002         (-[AsyncAutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
3003         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
3004         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
3005
3006 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
3007
3008         [INTL] Remove INTL sub-feature compile flags
3009         https://bugs.webkit.org/show_bug.cgi?id=188081
3010
3011         Reviewed by Michael Catanzaro.
3012
3013         * Scripts/webkitperl/FeatureList.pm:
3014         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3015
3016 2018-07-26  Chris Dumez  <cdumez@apple.com>
3017
3018         Loading a file URL and then issuing a reload right away causes the load to fail due to sandboxing
3019         https://bugs.webkit.org/show_bug.cgi?id=188078
3020         <rdar://problem/42562493>
3021
3022         Reviewed by Geoff Garen.
3023
3024         Add API test coverage. It exercises the right code path but unfortunately is not yet a regression
3025         test because TestWebKitAPI does not appear to be sandboxed (rdar://problem/42638129).
3026
3027         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3028         * TestWebKitAPI/Tests/WebKitCocoa/LoadFileThenReload.mm: Added.
3029         (-[LoadFileThenReloadDelegate webView:didFinishNavigation:]):
3030         (-[LoadFileThenReloadDelegate webView:didFailProvisionalNavigation:withError:]):
3031         (-[LoadFileThenReloadDelegate webView:didFailNavigation:withError:]):
3032         (TEST):
3033
3034 2018-07-26  Aaron Chu  <aaron_chu@apple.com>
3035
3036         Add Aaron Chu as a committer to contributors.json
3037         https://bugs.webkit.org/show_bug.cgi?id=188066
3038
3039         Unreviwed. Added myself as committer.
3040
3041         * Scripts/webkitpy/common/config/contributors.json:
3042
3043 2018-07-26  Aakash Jain  <aakash_jain@apple.com>
3044
3045         [ews-build] Add build step to run API Tests
3046         https://bugs.webkit.org/show_bug.cgi?id=188079
3047
3048         Reviewed by Lucas Forschler.
3049
3050         * BuildSlaveSupport/ews-build/steps.py:
3051         (TestWithFailureCount): Common class for various tests with failure count.
3052         (TestWithFailureCount.start): Configure Buildbot's logobserver.
3053         (TestWithFailureCount.commandComplete): Updates the failure count.
3054         (TestWithFailureCount.evaluateCommand): Set the step status appropriately.
3055         (TestWithFailureCount.getResultSummary): Set the step summary appropriately.
3056         (RunAPITests): Build step to run API tests.
3057         (RunAPITests.countFailures): Count the failures by parsing the output.
3058         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
3059
3060 2018-07-26  Ross Kirsling  <ross.kirsling@sony.com>
3061
3062         String(View) should have a splitAllowingEmptyEntries function instead of a flag parameter
3063         https://bugs.webkit.org/show_bug.cgi?id=187963
3064
3065         Reviewed by Alex Christensen.
3066
3067         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
3068         Add tests for String::split and String::splitAllowingEmptyEntries.
3069
3070         * TestWebKitAPI/Tests/WTF/StringView.cpp:
3071         * WebKitTestRunner/TestController.cpp:
3072         (WTR::updateTestOptionsFromTestHeader):
3073         Update split/splitAllowingEmptyEntries usage.
3074
3075 2018-07-26  Commit Queue  <commit-queue@webkit.org>
3076
3077         Unreviewed, rolling out r234181 and r234189.
3078         https://bugs.webkit.org/show_bug.cgi?id=188075
3079
3080         These are not needed right now (Requested by thorton on
3081         #webkit).
3082
3083         Reverted changesets:
3084
3085         "Enable Web Content Filtering on watchOS"
3086         https://bugs.webkit.org/show_bug.cgi?id=187979
3087         https://trac.webkit.org/changeset/234181
3088
3089         "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
3090         https://bugs.webkit.org/show_bug.cgi?id=187985
3091         https://trac.webkit.org/changeset/234189
3092
3093 2018-07-04  Darin Adler  <darin@apple.com>
3094
3095         Improve WebGPU implementation, including using Metal Objective-C protocols more simply and correctly
3096         https://bugs.webkit.org/show_bug.cgi?id=187333
3097
3098         Reviewed by Sam Weinig.
3099
3100         * TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm: Updated.
3101         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Updated.
3102         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm: Updated.
3103         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm: Updated.
3104         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm: Updated.
3105
3106 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
3107
3108         [ews-build] Add build steps DownloadBuiltProduct and ExtractBuiltProduct
3109         https://bugs.webkit.org/show_bug.cgi?id=188031
3110
3111         Reviewed by Lucas Forschler.
3112
3113         * BuildSlaveSupport/ews-build/steps.py:
3114         (DownloadBuiltProduct): Added build step DownloadBuiltProduct.
3115         (ExtractBuiltProduct): Added build step ExtractBuiltProduct.
3116         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
3117
3118 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
3119
3120         [ews-build] Add build step UploadBuiltProduct
3121         https://bugs.webkit.org/show_bug.cgi?id=188016
3122
3123         Reviewed by Lucas Forschler.
3124
3125         * BuildSlaveSupport/ews-build/steps.py:
3126         (UploadBuiltProduct): Added build step UploadBuiltProduct.
3127         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test.
3128
3129 2018-07-25  Aakash Jain  <aakash_jain@apple.com>
3130
3131         [ews-build] Add build step ArchiveBuiltProduct
3132         https://bugs.webkit.org/show_bug.cgi?id=188014
3133
3134         Reviewed by Lucas Forschler.
3135
3136         * BuildSlaveSupport/ews-build/steps.py:
3137         (ArchiveBuiltProduct): Added build step ArchiveBuiltProduct.
3138         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
3139
3140 2018-07-25  Chris Dumez  <cdumez@apple.com>
3141
3142         navigator.userAgent may return outdated value after webView.customUserAgent is set
3143         https://bugs.webkit.org/show_bug.cgi?id=188009
3144         <rdar://problem/42566456>
3145
3146         Reviewed by Alex Christensen.
3147
3148         Add API test coverage.
3149
3150         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3151         * TestWebKitAPI/Tests/WebKitCocoa/CustomUserAgent.mm: Added.
3152         (TEST):
3153
3154 2018-07-25  Charlie Turner  <cturner@igalia.com>
3155
3156         [Flatpak] Pass more environment variables to sandbox
3157         https://bugs.webkit.org/show_bug.cgi?id=188002
3158
3159         Reviewed by Michael Catanzaro.
3160
3161         * flatpak/flatpakutils.py:
3162         (WebkitFlatpak.run_in_sandbox):
3163
3164 2018-07-25  Zan Dobersek  <zdobersek@igalia.com>
3165
3166         [WPE] Switch ViewBackend to using wpe_view_backend_exportable_fdo_egl APIs
3167         https://bugs.webkit.org/show_bug.cgi?id=187997
3168
3169         Reviewed by Carlos Garcia Campos.
3170
3171         Instead of the raw wpe_view_backend_exportable_fdo API, switch to using
3172         the EGL-oriented API that simply serves EGLImageKHR objects instead of
3173         raw buffer resources. This allows us not to wrangle with creating and
3174         managing lifetime of the same EGLImageKHR by ourselves.
3175
3176         ViewBackend now defines a wpe_view_backend_exportable_fdo_egl_client
3177         struct and uses wpe_view_backend_exportable_fdo_egl_create() to create
3178         the exportable object. This means that for each frame we're served an
3179         EGLImageKHR object that is passed on to the displayBuffer()
3180         implementation.
3181
3182         HeadlessViewBackend now just manages the pending and committed image
3183         objects. Width and height values used during pixel data retrieval are
3184         gathered from the ViewBackend's size that was specified when
3185         constructed.
3186
3187         WindowViewBackend similarly only manages the committed image object,
3188         not having to create an equivalent EGLImageKHR object from the raw
3189         buffer resource anymore.
3190
3191         Unused EGL entrypoints in both HeadlessViewBackend and WindowViewBackend
3192         classes are removed, and destructors for both classes are made virtual.
3193
3194         The WPEBackend-fdo version is bumped in order to have the EGL-specific
3195         export API available.
3196
3197         * flatpak/org.webkit.WPE.yaml:
3198         * wpe/backends/HeadlessViewBackend.cpp:
3199         (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
3200         (WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
3201         (WPEToolingBackends::HeadlessViewBackend::createSnapshot):
3202         (WPEToolingBackends::HeadlessViewBackend::performUpdate):
3203         (WPEToolingBackends::HeadlessViewBackend::displayBuffer):
3204         * wpe/backends/HeadlessViewBackend.h:
3205         * wpe/backends/ViewBackend.cpp:
3206         (WPEToolingBackends::ViewBackend::initialize):
3207         * wpe/backends/ViewBackend.h:
3208         * wpe/backends/WindowViewBackend.cpp:
3209         (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
3210         (WPEToolingBackends::WindowViewBackend::~WindowViewBackend):
3211         (WPEToolingBackends::WindowViewBackend::displayBuffer):
3212         * wpe/backends/WindowViewBackend.h:
3213         * wpe/jhbuild.modules:
3214
3215 2018-07-24  Thomas Denney  <tdenney@apple.com>
3216
3217         Remove support for the double type from WHLSL
3218         https://bugs.webkit.org/show_bug.cgi?id=187977
3219
3220         Reviewed by Myles C. Maxfield.
3221
3222         * WebGPUShadingLanguageRI/All.js: Removed DoubleLiteral.js and DoubleLiteralType.js include.
3223         * WebGPUShadingLanguageRI/DoubleLiteral.js: Removed.
3224         * WebGPUShadingLanguageRI/DoubleLiteralType.js: Removed.
3225         * WebGPUShadingLanguageRI/Intrinsics.js: Removed double arithmetic functions.
3226         * WebGPUShadingLanguageRI/Parse.js:
3227         (parseTerm): Removed parsing of double literals.
3228         * WebGPUShadingLanguageRI/SPIRV.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
3229         * WebGPUShadingLanguageRI/SPIRVCodegen.js: Removed double type logic.
3230         * WebGPUShadingLanguageRI/StandardLibrary.js: Removed double type declarations.
3231         * WebGPUShadingLanguageRI/Test.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
3232         * WebGPUShadingLanguageRI/Test.js: Removed tests that test doubles or ported them to use floats.
3233         * WebGPUShadingLanguageRI/index.html: Removed DoubleLiteral.js and DoubleLiteralType.js include.
3234
3235 2018-07-24  Tim Horton  <timothy_horton@apple.com>
3236
3237         Enable Web Content Filtering on watchOS
3238         https://bugs.webkit.org/show_bug.cgi?id=187979
3239         <rdar://problem/42559346>
3240
3241         Reviewed by Wenson Hsieh.
3242
3243         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3244
3245 2018-07-24  Daniel Bates  <dabates@apple.com>
3246
3247         Move-constructing NeverDestroyed should move construct underlying object instead of copy constructing it
3248         https://bugs.webkit.org/show_bug.cgi?id=187971
3249
3250         Reviewed by Saam Barati.
3251
3252         Add unit tests to cover move constructing a NeverDestroyed with a non-const and const data type
3253         as well as invoking makeNeverDestroyed() with the result of a function that returns a move-only
3254         data type.
3255
3256         * TestWebKitAPI/CMakeLists.txt:
3257         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3258         * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.cpp: Added.
3259         (TestWebKitAPI::MoveOnlyLifecycleLogger::MoveOnlyLifecycleLogger):
3260         (TestWebKitAPI::MoveOnlyLifecycleLogger::~MoveOnlyLifecycleLogger):
3261         (TestWebKitAPI::MoveOnlyLifecycleLogger::operator=):
3262         (TestWebKitAPI::MoveOnlyLifecycleLogger::setName):
3263         (TestWebKitAPI::TEST):
3264         * TestWebKitAPI/Tests/WTF/MoveOnlyLifecycleLogger.h: Added.
3265         * TestWebKitAPI/Tests/WTF/NeverDestroyed.cpp:
3266         (TestWebKitAPI::TEST):
3267
3268 2018-07-24  Thomas Denney  <tdenney@apple.com>
3269         Minor changes to the WHLSL interpreter to support the new compiler
3270         https://bugs.webkit.org/show_bug.cgi?id=187728
3271
3272         Reviewed by Myles C. Maxfield.
3273
3274         This bug contains small changes that are make minor changes to the
3275         behaviour of the existing interpreter (the tests are unaffected and all
3276         still pass).
3277
3278         * WebGPUShadingLanguageRI/EnumType.js:
3279         (EnumType.prototype.get isEnum): Property added to EnumType and Type
3280         * WebGPUShadingLanguageRI/Evaluator.js: Correct typo
3281         * WebGPUShadingLanguageRI/Func.js:
3282         (Func.prototype.get isEntryPoint): Add boolean property
3283         * WebGPUShadingLanguageRI/FuncInstantiator.js:
3284         (FuncInstantiator.prototype.get instances): Public accessor for existing
3285         private field
3286         * WebGPUShadingLanguageRI/FunctionLikeBlock.js: Refactored the class so
3287         that it directly wraps a Func instance (therefore the only interface
3288         change is to the constructor and the addition of the func accessor).
3289         This change allows the de-inlining of functions.
3290         (FunctionLikeBlock):
3291         (FunctionLikeBlock.prototype.get func):
3292         (FunctionLikeBlock.prototype.get returnType):
3293         (FunctionLikeBlock.prototype.get parameters):
3294         (FunctionLikeBlock.prototype.get body):
3295         * WebGPUShadingLanguageRI/Inliner.js: Use the new FunctionLikeBlock
3296         constructor
3297         (Inliner.prototype.visitCallExpression):
3298         (Inliner):
3299         * WebGPUShadingLanguageRI/Intrinsics.js: Migrate the swizzle operators
3300         to native functions (with additional support in StandardLibrary.js).
3301         This reduces first-time compile-time from around 4s to around 0.1s.
3302         (Intrinsics):
3303         * WebGPUShadingLanguageRI/Lexer.js: Ensure that the parsing of multiline
3304         comments completes correctly
3305         (Lexer.prototype.next):
3306         (Lexer):
3307         * WebGPUShadingLanguageRI/MakeArrayRefExpression.js: Addition of type
3308         property, which is based on the type of the lValue and the semantics of
3309         the language (the @ operator yields an array reference with the thread
3310         scope).
3311         (MakeArrayRefExpression):
3312         (MakeArrayRefExpression.prototype.get type):
3313         * WebGPUShadingLanguageRI/NativeFunc.js: Add setter/getter for
3314         implementationData to support swizzle operator change
3315         (NativeFunc.prototype.get implementationData):
3316         (NativeFunc.prototype.set implementationData):
3317         * WebGPUShadingLanguageRI/Rewriter.js: Use new FunctionLikeBlock
3318         constructor
3319         (Rewriter.prototype.visitFunctionLikeBlock):
3320         * WebGPUShadingLanguageRI/StandardLibrary.js:
3321         (_generateSwizzle): Deleted.
3322         * WebGPUShadingLanguageRI/SwizzleOp.js: Introduces a new class for
3323         carrying metadata about swizzle operators so that they are implemented
3324         as native functions rather than generated at compile time.
3325         (SwizzleOp):
3326         (SwizzleOp.prototype.get outSize):
3327         (SwizzleOp.prototype.get components):
3328         (SwizzleOp.prototype.get inSize):
3329         (SwizzleOp.prototype.toString):
3330         (SwizzleOp.allSwizzleOperators.):
3331         (SwizzleOp.allSwizzleOperators):
3332         * WebGPUShadingLanguageRI/StandardLibrary.js: +        (SwizzleOp):
3333         (SwizzleOp.prototype.get outSize):
3334         (SwizzleOp.prototype.get components):
3335         (SwizzleOp.prototype.get inSize):
3336         (SwizzleOp.prototype.toString):
3337         (generateSwizzles):
3338         (_generateSwizzle): Deleted.
3339         * WebGPUShadingLanguageRI/Type.js: Addition of isEnum property, as
3340         above.
3341         (Type.prototype.get isEnum):
3342
3343 2018-07-24  Ryan Haddad  <ryanhaddad@apple.com>
3344
3345         Unreviewed, rolling out r234121.
3346
3347         Caused perf test failures.
3348
3349         Reverted changeset:
3350
3351         "We should cache the compiled sandbox profile in a data vault"
3352         https://bugs.webkit.org/show_bug.cgi?id=184991
3353         https://trac.webkit.org/changeset/234121
3354
3355 2018-07-24  Thibault Saunier  <tsaunier@igalia.com>
3356
3357         [Flatpak] Add openh264 as needed by WebRTC
3358         https://bugs.webkit.org/show_bug.cgi?id=187956
3359
3360         Reviewed by Philippe Normand.
3361
3362         * flatpak/org.webkit.WebKit.yaml:
3363
3364 2018-07-24  Ross Kirsling  <ross.kirsling@sony.com>
3365
3366         WebCore::URL::hostIsIPAddress needs a Windows implementation
3367         https://bugs.webkit.org/show_bug.cgi?id=187859
3368
3369         Reviewed by Fujii Hironori.
3370
3371         * TestWebKitAPI/Tests/WebCore/URL.cpp:
3372         Check for a few other ways an IP address could be invalid.
3373
3374 2018-07-24  Charlie Turner  <cturner@igalia.com>
3375
3376         [Flatpak] Avoid consuming unknown arguments in flatpak wrapper
3377         https://bugs.webkit.org/show_bug.cgi?id=187951
3378
3379         When running run-webkit-tests --wpe --debug, it was observed that
3380         both self.platform != 'wpe' and self.debug != True. This turned
3381         out to be because of the "args" argument consuming the remainder
3382         of future arguments that came after it. Since the first argument
3383         to load_from_args was the test script to run, it would end up
3384         never processing the other arguments supplied to the wrapper
3385         script.
3386
3387         Tested this by rebuilding GTK in debug mode, running the
3388         minibrowser with various extra options, and running some tests
3389         with various extra options.
3390
3391         Reviewed by Michael Catanzaro.
3392
3393         * flatpak/flatpakutils.py:
3394         (WebkitFlatpak.load_from_args):
3395
3396 2018-07-24  Thibault Saunier  <tsaunier@igalia.com>
3397
3398         [Flatpak] Remove now unnecessary 'hacks' for running tests
3399         https://bugs.webkit.org/show_bug.cgi?id=187608
3400
3401         Reviewed by Philippe Normand.
3402
3403         We used to need to not share X11 with the sandbox when running tests
3404         but it is not needed anymore as we do not mount `/tmp` on `/tmp` in the
3405         sandbox (we mount it on `/run/host/tmp` now).
3406
3407         This has the advantage of making running the MiniBrowser to display test
3408         results working again.
3409
3410         * flatpak/flatpakutils.py:
3411         (WebkitFlatpak.clean_args):
3412         (WebkitFlatpak.run_in_sandbox):
3413         (WebkitFlatpak._cleanup_faltpak_args_for_tests_if_needed): Deleted.
3414
3415 2018-07-23  Fujii Hironori  <Hironori.Fujii@sony.com>
3416
3417         webkitpy.port.server_process_unittest.TestServerProcess.test_basic failed on Windows Python
3418         https://bugs.webkit.org/show_bug.cgi?id=187581
3419
3420         Reviewed by Daniel Bates.
3421
3422         There are two failures in this test case:
3423         1. proc.poll() doesn't return 0.
3424         2. stderr is not output.
3425
3426         For failure #1, this is expected. the process should not exit at
3427         the time. proc.poll() should return None because the process is
3428         still alive.
3429
3430         This change added a new test to check proc.poll() becomes 0 after
3431         the process successfully exits.
3432
3433         For failure #2, stderr is not flushed even though stdout is
3434         flushed. This change uses '-u' command switch to force stdin,
3435         stdout and stderr to be totally unbuffered.
3436
3437         * Scripts/webkitpy/port/server_process_unittest.py:
3438         (TestServerProcess.test_basic): Added -u command switch. Do not
3439         flush stdout. Removed the special condition for Windows. Add a new
3440         test to check proc.poll() returns 0.
3441         (TestServerProcess.test_process_crashing): Added -u command
3442         switch. Do not flush stdout.
3443
3444 2018-07-23  Ross Kirsling  <ross.kirsling@sony.com>
3445
3446         WTF::StringView::split should have an allowEmptyEntries flag
3447         https://bugs.webkit.org/show_bug.cgi?id=187864
3448
3449         Reviewed by Konstantin Tokarev.
3450
3451         * TestWebKitAPI/Tests/WTF/StringView.cpp: Add test.
3452
3453 2018-07-23  Ben Richards  <benton_richards@apple.com>
3454
3455         We should cache the compiled sandbox profile in a data vault
3456         https://bugs.webkit.org/show_bug.cgi?id=184991
3457
3458         Reviewed by Ryosuke Niwa.
3459
3460         Added trace points for sandbox initialization
3461
3462         * Tracing/SystemTracePoints.plist:
3463
3464 2018-07-23  Zalan Bujtas  <zalan@apple.com>
3465
3466         DRT relies on [webView display] to call -viewWillDraw on the WebHTMLView
3467         https://bugs.webkit.org/show_bug.cgi?id=187924
3468         <rdar://problem/41745884>
3469
3470         Reviewed by Simon Fraser.
3471
3472         WebKit relies on -viewWillDraw getting called on WebHTMLView, even though that view has not been marked as needing display.
3473
3474         * DumpRenderTree/mac/PixelDumpSupportMac.mm:
3475         (createBitmapContextFromWebView):
3476
3477 2018-07-23  Chris Dumez  <cdumez@apple.com>
3478
3479         WebResourceLoadStatisticsStore fails to unregister itself as a MessageReceiver in its destructor
3480         https://bugs.webkit.org/show_bug.cgi?id=187910
3481         <rdar://problem/42356526>
3482
3483         Reviewed by Brent Fulgham.
3484
3485         Add API test coverage.
3486
3487         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3488         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3489         (-[DisableITPDuringNavigationDelegate webView:didCommitNavigation:]):
3490         (-[DisableITPDuringNavigationDelegate webView:didFinishNavigation:]):
3491         (TEST):
3492         * TestWebKitAPI/Tests/WebKitCocoa/notify-resourceLoadObserver.html: Added.
3493
3494 2018-07-23  Daniel Bates  <dabates@apple.com>
3495
3496         test-webkitpy should take configuration command line options
3497         https://bugs.webkit.org/show_bug.cgi?id=187872
3498
3499         Reviewed by David Kilzer.
3500
3501         Add --debug and --release optional command line options and teach the test bots to invoke test-webkitpy
3502         with the appropriate configuration. At the moment these options are only meaningful on Mac since they
3503         effect the configuration lldbWebKitTester is built with and we only build lldbWebKitTester on Mac.
3504
3505         * BuildSlaveSupport/build.webkit.org-config/steps.py:
3506         (RunPythonTests): Pass the configuration to test-webkitpy. On Mac this will effect
3507         how lldbWebKitTester is built. All other ports do not make use of the specified configuration.
3508         * Scripts/webkitpy/test/main.py:
3509         (_build_lldb_webkit_tester): Modified to take the configuration to build lldbWebKitTester. If
3510         the specified configuration is None then we fall back to using the default configuration (as set
3511         by script set-webkit-configuration).
3512         (Tester._parse_args): Add command line options --debug and --release to build lldbWebKitTester
3513         with a Debug configuration and a Release configuration, respectively
3514         (Tester._run_tests): Pass the configuration to build lldbWebKitTester that we parsed from
3515         the command line options. It may be None if neither --debug nor --release were passed.
3516
3517 2018-07-23  Commit Queue  <commit-queue@webkit.org>
3518
3519         Unreviewed, rolling out r233030.
3520         https://bugs.webkit.org/show_bug.cgi?id=187904
3521
3522         Broke tarball builds (Requested by mcatanzaro on #webkit).
3523
3524         Reverted changeset:
3525
3526         "run-gtk-tests (glib/common.py) cannot determine build
3527         directory when webKitBranchBuild=true"
3528         https://bugs.webkit.org/show_bug.cgi?id=185643
3529         https://trac.webkit.org/changeset/233030
3530
3531 2018-07-21  Simon Fraser  <simon.fraser@apple.com>
3532
3533         Fix lldb summarizers for HashMaps and HashSets
3534         https://bugs.webkit.org/show_bug.cgi?id=187883
3535
3536         Reviewed by Dan Bates.
3537         
3538         HashMap and HashSet summarizers were broken in various ways.
3539         
3540         The 'type summary add -x' regexp needs to match at the start and end of the string
3541         to avoid finding types nested inside other templates.
3542         
3543         The HashTable synthetic child code incorrectly used the type of the key, rather than
3544         the value when synthesizing children.
3545         
3546         Add HashMap and HashSet summarizers.
3547
3548         I tried to get synthetic children working directly for HashMap and HashSet, but was unable.
3549
3550         * lldb/lldbWebKitTester/main.cpp:
3551         (testSummaryProviders):
3552         * lldb/lldb_webkit.py:
3553         (__lldb_init_module):
3554         (__lldb_init_module.lldb_webkit):
3555         (WTFHashMap_SummaryProvider):
3556         (WTFHashSet_SummaryProvider):
3557         (WebCoreColorProvider._to_string_extended):
3558         (WebCoreURLProvider.to_string):
3559         (WTFHashMapProvider):
3560         (WTFHashMapProvider.__init__):
3561         (WTFHashMapProvider.tableSize):
3562         (WTFHashMapProvider.keyCount):
3563         (WTFHashSetProvider):
3564         (WTFHashSetProvider.__init__):
3565         (WTFHashSetProvider.tableSize):
3566         (WTFHashSetProvider.keyCount):
3567         (WTFHashTableProvider.tableSize):
3568         (WTFHashTableProvider):
3569         (WTFHashTableProvider.keyCount):
3570         (WTFHashTableProvider.get_child_at_index):
3571         (WTFHashTableProvider.update):
3572         * lldb/lldb_webkit_unittest.py:
3573         (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
3574         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
3575         (TestSummaryProviders):
3576         (TestSummaryProviders.serial_test_WTFHashMap_tablesize_and_size):
3577         (TestSummaryProviders.serial_test_WTFHashMap_of_vectors_tablesize_and_size):
3578         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
3579
3580 2018-07-21  Simon Fraser  <simon.fraser@apple.com>
3581
3582         Add lldb formatters for WebCore geometry types
3583         https://bugs.webkit.org/show_bug.cgi?id=187884
3584
3585         Reviewed by Daniel Bates.
3586         
3587         Add lldb formatters for IntPoint, IntSize, IntRect, FloatPoint, FloatSize, FloatRect
3588         and LayoutRect.
3589         
3590         Testing is blocked by webkit.org/b/187872.
3591
3592         * lldb/lldbWebKitTester/main.cpp:
3593         (testSummaryProviders):
3594         * lldb/lldb_webkit.py:
3595         (__lldb_init_module.lldb_webkit):
3596         (__lldb_init_module):
3597         (WebCoreLayoutRect_SummaryProvider):
3598         (WebCoreIntSize_SummaryProvider):
3599         (WebCoreIntPoint_SummaryProvider):
3600         (WebCoreFloatSize_SummaryProvider):
3601         (WebCoreFloatPoint_SummaryProvider):
3602         (WebCoreIntRect_SummaryProvider):
3603         (WebCoreFloatRect_SummaryProvider):
3604         (WebCoreLayoutRectProvider):
3605         (WebCoreLayoutRectProvider.__init__):
3606         (WebCoreLayoutRectProvider.get_x):
3607         (WebCoreLayoutRectProvider.get_y):
3608         (WebCoreLayoutRectProvider.get_width):
3609         (WebCoreLayoutRectProvider.get_height):
3610         (WebCoreIntPointProvider):
3611         (WebCoreIntPointProvider.__init__):
3612         (WebCoreIntPointProvider.get_x):
3613         (WebCoreIntPointProvider.get_y):
3614         (WebCoreIntSizeProvider):
3615         (WebCoreIntSizeProvider.__init__):
3616         (WebCoreIntSizeProvider.get_width):
3617         (WebCoreIntSizeProvider.get_height):
3618         (WebCoreIntRectProvider):
3619         (WebCoreIntRectProvider.__init__):
3620         (WebCoreIntRectProvider.get_x):
3621         (WebCoreIntRectProvider.get_y):
3622         (WebCoreIntRectProvider.get_width):
3623         (WebCoreIntRectProvider.get_height):
3624         (WebCoreFloatPointProvider):
3625         (WebCoreFloatPointProvider.__init__):
3626         (WebCoreFloatPointProvider.get_x):
3627         (WebCoreFloatPointProvider.get_y):
3628         (WebCoreFloatSizeProvider):
3629         (WebCoreFloatSizeProvider.__init__):
3630         (WebCoreFloatSizeProvider.get_width):
3631         (WebCoreFloatSizeProvider.get_height):
3632         (WebCoreFloatRectProvider):
3633         (WebCoreFloatRectProvider.__init__):
3634         (WebCoreFloatRectProvider.get_x):
3635         (WebCoreFloatRectProvider.get_y):
3636         (WebCoreFloatRectProvider.get_width):
3637         (WebCoreFloatRectProvider.get_height):
3638
3639 2018-07-20  John Wilander  <wilander@apple.com>
3640
3641         Resource Load Statistics: Enable basic functionality in experimental debug mode
3642         https://bugs.webkit.org/show_bug.cgi?id=187835
3643         <rdar://problem/42408590>
3644
3645         Reviewed by Chris Dumez.
3646
3647         This patch makes the experimental ITP Debug Mode feature work, at least
3648         to a basic level. All of the changes to TestRunner are to support the
3649         layout tests for the functionality.
3650
3651         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3652         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3653         (WTR::InjectedBundle::didReceiveMessageToPage):
3654         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3655         (WTR::TestRunner::setStatisticsDebugMode):
3656         (WTR::TestRunner::statisticsCallDidSetDebugModeCallback):
3657         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
3658         (WTR::TestRunner::statisticsCallDidSetPrevalentResourceForDebugModeCallback):
3659         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3660         * WebKitTestRunner/TestController.cpp:
3661         (WTR::TestController::setStatisticsDebugMode):
3662         (WTR::TestController::setStatisticsPrevalentResourceForDebugMode):
3663         * WebKitTestRunner/TestController.h:
3664         * WebKitTestRunner/TestInvocation.cpp:
3665         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3666         (WTR::TestInvocation::didSetStatisticsDebugMode):
3667         (WTR::TestInvocation::didSetPrevalentResourceForDebugMode):
3668         * WebKitTestRunner/TestInvocation.h:
3669
3670 2018-07-20  Ryosuke Niwa  <rniwa@apple.com>
3671
3672         Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
3673         https://bugs.webkit.org/show_bug.cgi?id=187846
3674
3675         Reviewed by Simon Fraser.
3676
3677         Fixed the bug that testRunner.execCommand was using the second argument as the value.
3678
3679         The second argument, aShowDefaultUI, should always be ignored in testRunner.execCommand,
3680         and the third argument should be used as the value. DumpRenderTree's implementation does this already.
3681
3682         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3683         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3684         (WTR::TestRunner::execCommand):
3685         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3686
3687 2018-07-20  Dean Jackson  <dino@apple.com>
3688
3689         Accidentally checked in the wrong version of these files.
3690
3691         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
3692         * lldb/lldbWebKitTester/main.cpp:
3693         (testSummaryProviders):
3694         * lldb/lldb_webkit_unittest.py:
3695         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
3696         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color): Deleted.
3697         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color): Deleted.
3698         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color): Deleted.
3699         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color): Deleted.
3700         (TestSummaryProviders.serial_test_WebCoreColorProvider_semantic_color): Deleted.
3701
3702 2018-07-20  Dean Jackson  <dino@apple.com>
3703
3704         Provide an lldb type summary for WebCore::Color
3705         https://bugs.webkit.org/show_bug.cgi?id=187776
3706
3707         Reviewed by Dan Bates.
3708
3709         This time without the tests because we don't want to build
3710         all of WebKit just for python tests.
3711
3712         * lldb/lldb_webkit.py: Add a Color summary provider.
3713         (__lldb_init_module):
3714         (WebCoreColor_SummaryProvider):
3715         (WebCoreColorProvider):
3716         (WebCoreColorProvider.__init__):
3717         (WebCoreColorProvider._is_extended):
3718         (WebCoreColorProvider._is_valid):
3719         (WebCoreColorProvider._is_semantic):
3720         (WebCoreColorProvider._to_string_extended):
3721         (WebCoreColorProvider.to_string):
3722
3723 2018-07-20  Brady Eidson  <beidson@apple.com>
3724
3725         Add WKNavigation/WKNavigationAction related SPI.
3726         https://bugs.webkit.org/show_bug.cgi?id=187826
3727
3728         Reviewed by Chris Dumez.
3729
3730         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
3731         (-[NavigationActionHasNavigationDelegate webView:didFinishNavigation:]):
3732         (-[NavigationActionHasNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
3733         (TEST):
3734
3735 2018-07-20  Commit Queue  <commit-queue@webkit.org>
3736
3737         Unreviewed, rolling out r233943, r233988, r234004, and
3738         r234012.
3739         https://bugs.webkit.org/show_bug.cgi?id=187856
3740
3741         webkitpy tests are failing to build lldbWebKitTester
3742         (Requested by ryanhaddad on #webkit).
3743
3744         Reverted changesets:
3745
3746         "Provide an lldb type summary for WebCore::Color"
3747         https://bugs.webkit.org/show_bug.cgi?id=187776
3748         https://trac.webkit.org/changeset/233943
3749
3750         "Provide an lldb type summary for WebCore::Color"
3751         https://bugs.webkit.org/show_bug.cgi?id=187776
3752         https://trac.webkit.org/changeset/233988
3753
3754         "Provide an lldb type summary for WebCore::Color"
3755         https://bugs.webkit.org/show_bug.cgi?id=187776
3756         https://trac.webkit.org/changeset/234004
3757
3758         "Provide an lldb type summary for WebCore::Color"
3759         https://bugs.webkit.org/show_bug.cgi?id=187776
3760         https://trac.webkit.org/changeset/234012
3761
3762 2018-07-20  Philippe Normand  <pnormand@igalia.com>
3763
3764         [GTK][WPE] enable-media-capabilities websetting
3765         https://bugs.webkit.org/show_bug.cgi?id=187847
3766
3767         Reviewed by Carlos Garcia Campos.
3768
3769         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
3770         (testWebKitSettings): Unit test for the new enable-media-capabilities setting.
3771
3772 2018-07-19  Carlos Garcia Campos  <cgarcia@igalia.com>
3773
3774         [GLIB] jsc_context_evaluate_in_object() should receive an instance when a JSCClass is given
3775         https://bugs.webkit.org/show_bug.cgi?id=187798
3776
3777         Reviewed by Michael Catanzaro.
3778
3779         Update test cases to the new API and use a destroy function and vtable in the test case of calling
3780         jsc_context_evaluate_in_object() with a JSCClass.
3781
3782         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3783         (testJSCEvaluateInObject):
3784
3785 2018-07-19  Ross Kirsling  <ross.kirsling@sony.com>
3786
3787         TestWTF.WTF.StringConcatenate_Unsigned fails for unsigned short on Windows
3788         https://bugs.webkit.org/show_bug.cgi?id=187712
3789
3790         Reviewed by Fujii Hironori.
3791
3792         * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
3793         Mark result of unsigned short test case as platform-specific,
3794         since Windows' behavior is actually *less* surprising here.
3795
3796 2018-07-19  Lucas Forschler  <lforschler@apple.com>
3797
3798         Teach the AWS Lambda to use the [minified]-platforms database
3799         https://bugs.webkit.org/show_bug.cgi?id=187817
3800         
3801         Reviewed by David Kilzer.
3802
3803         * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py:
3804         (lambda_handler): Add support for the platforms.webkit.org database
3805         * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py:
3806         (lambda_handler): Add support for the minified-platforms.webkit.org database
3807
3808 2018-07-19  Dean Jackson  <dino@apple.com>
3809
3810         Provide an lldb type summary for WebCore::Color
3811         https://bugs.webkit.org/show_bug.cgi?id=187776
3812
3813         Dan Bates helped me with this attempted fix. Fingers crossed!
3814
3815         * Scripts/build-lldbwebkittester:
3816
3817 2018-07-19  Stephan Szabo  <stephan.szabo@sony.com>
3818
3819         [WinCairo] Support DEVELOPER_MODE for allowing inspection of web inspector
3820         https://bugs.webkit.org/show_bug.cgi?id=187786
3821
3822         Reviewed by Fujii Hironori.
3823
3824         * Scripts/webkitdirs.pm:
3825         (generateBuildSystemFromCMakeProject): Turn on DEVELOPER_MODE
3826         for WinCairo builds.
3827
3828 2018-07-19  Dean Jackson  <dino@apple.com>
3829
3830         Provide an lldb type summary for WebCore::Color
3831         https://bugs.webkit.org/show_bug.cgi?id=187776
3832
3833         Another attempted build fix for Debug.
3834
3835         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
3836         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
3837
3838 2018-07-19  Thomas Denney  <tdenney@apple.com>
3839
3840         [WHLSL] The interpreter doesn't support boolean short-circuiting
3841         https://bugs.webkit.org/show_bug.cgi?id=187779
3842
3843         Reviewed by Alex Christensen.
3844
3845         * WebGPUShadingLanguageRI/Evaluator.js:
3846         (Evaluator.prototype.visitLogicalExpression): RHS is only evaluated when necessary
3847         * WebGPUShadingLanguageRI/Test.js:
3848         (tests.booleanShortcircuiting): Adds 4 tests for the evaluation of logical expresions
3849
3850 2018-07-19  Dean Jackson  <dino@apple.com>
3851
3852         Provide an lldb type summary for WebCore::Color
3853         https://bugs.webkit.org/show_bug.cgi?id=187776
3854
3855         Attempted build fix.
3856
3857         * lldb/lldbWebKitTester/Configurations/Base.xcconfig:
3858
3859 2018-07-19  Brady Eidson  <beidson@apple.com>
3860
3861         Add an SPI policy action to allow clients to explicitly ask for a new process on a navigation.
3862         https://bugs.webkit.org/show_bug.cgi?id=187789
3863
3864         Reviewed by Andy Estes.
3865
3866         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3867         (-[PSONNavigationDelegate init]):
3868         (-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
3869
3870 2018-07-19  Thibault Saunier  <tsaunier@igalia.com>
3871
3872         [Flatpak] Let flatpak process handle SIGINT
3873         https://bugs.webkit.org/show_bug.cgi?id=187521
3874
3875         Reviewed by Philippe Normand.
3876
3877         Ensuring that flatpak process ends properly and that the sandbox is teard down.
3878         It also avoids showing usless backtrace to the end user and makes gdb
3879         much more usable.
3880
3881         Also make flatpakutils not verbose by default
3882
3883         * flatpak/flatpakutils.py:
3884         (disable_signals):
3885         (WebkitFlatpak.run_in_sandbox):
3886         (WebkitFlatpak.run_gdb):
3887
3888 2018-07-18  Stephan Szabo  <stephan.szabo@sony.com>
3889
3890         Unreviewed. Fix contributors entry.
3891
3892         * Scripts/webkitpy/common/config/contributors.json:
3893
3894 2018-07-18  Dean Jackson  <dino@apple.com>
3895
3896         Provide an lldb type summary for WebCore::Color
3897         https://bugs.webkit.org/show_bug.cgi?id=187776
3898
3899         Reviewed by Dan Bates.
3900
3901         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
3902             to get to WebCore.
3903         * lldb/lldbWebKitTester/main.cpp:
3904         (testSummaryProviders): Create some Color objects for testing.
3905
3906         * lldb/lldb_webkit.py: Add a Color summary provider.
3907         (__lldb_init_module):
3908         (WebCoreColor_SummaryProvider):
3909         (WebCoreColorProvider):
3910         (WebCoreColorProvider.__init__):
3911         (WebCoreColorProvider._is_extended):
3912         (WebCoreColorProvider._is_valid):
3913         (WebCoreColorProvider._is_semantic):
3914         (WebCoreColorProvider._to_string_extended):
3915         (WebCoreColorProvider.to_string):
3916
3917         * lldb/lldb_webkit_unittest.py: Tests.
3918         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
3919         (TestSummaryProviders):
3920         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
3921         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
3922         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
3923         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
3924
3925 2018-07-18  Truitt Savell  <tsavell@apple.com>
3926
3927         Unreviewed, rolling out r233934.
3928
3929         Revision caused 5 webkitpy failures on Mac and broke webkitpy
3930         testing on iOS simulator
3931
3932         Reverted changeset:
3933
3934         "Provide an lldb type summary for WebCore::Color"
3935         https://bugs.webkit.org/show_bug.cgi?id=187776
3936         https://trac.webkit.org/changeset/233934
3937
3938 2018-07-18  Chris Dumez  <cdumez@apple.com>
3939
3940         REGRESSION (r233897): CrashTracer: com.apple.WebKit.WebContent.Development at com.apple.WebKit: WKBooleanGetValue + 9
3941         https://bugs.webkit.org/show_bug.cgi?id=187784
3942         <rdar://problem/42329230>
3943
3944         Reviewed by Brady Eidson.
3945
3946         When process swapping on navigation, WebPageProxy::reattachToWebProcess() unregisters the page as a MessageReceiver
3947         from the old WebProcessProxy and registers itself as a MessageReceiver for the new WebProcessProxy instead. This
3948         means that after this point, IPC sent by the previous WebProcess to its WebPageProxy will fail.
3949
3950         When we process swap, we also navigate the page in the old WebProcess to about:blank, when the navigation to
3951         about:blank would complete, the WebKitTestRunner's injected bundle would try and send IPC to the WebPageProxy
3952         which would fail and would cause WKBundlePagePostSynchronousMessageForTesting() to return a null result. WKTR
3953         would crash when dereferencing this null result. This patch addresses this by dealing with the potential null
3954         result.
3955
3956         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3957         (WTR::InjectedBundle::shouldProcessWorkQueue const):
3958
3959 2018-07-18  Dean Jackson  <dino@apple.com>
3960
3961         Provide an lldb type summary for WebCore::Color
3962         https://bugs.webkit.org/show_bug.cgi?id=187776
3963
3964         Reviewed by Dan Bates.
3965
3966         * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Link against WebKit
3967             to get to WebCore.
3968         * lldb/lldbWebKitTester/main.cpp:
3969         (testSummaryProviders): Create some Color objects for testing.
3970
3971         * lldb/lldb_webkit.py: Add a Color summary provider.
3972         (__lldb_init_module):
3973         (WebCoreColor_SummaryProvider):
3974         (WebCoreColorProvider):
3975         (WebCoreColorProvider.__init__):
3976         (WebCoreColorProvider._is_extended):
3977         (WebCoreColorProvider._is_valid):
3978         (WebCoreColorProvider._is_semantic):
3979         (WebCoreColorProvider._to_string_extended):
3980         (WebCoreColorProvider.to_string):
3981
3982         * lldb/lldb_webkit_unittest.py: Tests.
3983         (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
3984         (TestSummaryProviders):
3985         (TestSummaryProviders.serial_test_WebCoreColorProvider_invalid_color):
3986         (TestSummaryProviders.serial_test_WebCoreColorProvider_extended_color):
3987         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgb_color):
3988         (TestSummaryProviders.serial_test_WebCoreColorProvider_rgba_color):
3989
3990 2018-07-18  Stephan Szabo  <stephan.szabo@sony.com>
3991
3992         Adding myself to contributors.json
3993
3994         Unreviewed contributors.json change.
3995
3996         * Scripts/webkitpy/common/config/contributors.json:
3997
3998 2018-07-18  Jer Noble  <jer.noble@apple.com>
3999
4000         -_beginAnimatedResizeWithUpdates: can leave view in bad state if called during an existing animation
4001         https://bugs.webkit.org/show_bug.cgi?id=187739
4002         <rdar://problem/42304518>
4003
4004         Reviewed by Tim Horton.
4005
4006         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
4007         (TEST):
4008
4009 2018-07-18  Jer Noble  <jer.noble@apple.com>
4010
4011         PiP from Element Fullscreen should match AVKit's behavior
4012         https://bugs.webkit.org/show_bug.cgi?id=187623
4013         <rdar://problem/41212379>
4014
4015         Reviewed by Jon Lee.
4016
4017         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4018         * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.html: Added.
4019         * TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm: Added.
4020         (-[ExitFullscreenOnEnterPiPUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
4021         (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidEnterFullscreen:]):
4022         (-[ExitFullscreenOnEnterPiPUIDelegate _webViewDidExitFullscreen:]):
4023         (TestWebKitAPI::TEST):
4024
4025 2018-07-18  Aakash Jain  <aakash_jain@apple.com>
4026
4027         [ews-build] Add build step to run layout-test
4028         https://bugs.webkit.org/show_bug.cgi?id=187674
4029
4030         Reviewed by Lucas Forschler.
4031
4032         * BuildSlaveSupport/ews-build/steps.py:
4033         (RunWebKitTests): Added build step to run layout-tests. This is similar to current EWS.
4034         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
4035         * BuildSlaveSupport/ews-build/factories.py: Added build-step to run layout-test in iOSSimulatorFactory.
4036
4037 2018-07-18  Wenson Hsieh  <wenson_hsieh@apple.com>
4038
4039         Add SPI to defer running async script until after document load
4040         https://bugs.webkit.org/show_bug.cgi?id=187748
4041         <rdar://problem/42317378>
4042
4043         Reviewed by Ryosuke Niwa and Tim Horton.
4044
4045         Add an API test to verify that when the deferred async script configuration is set, async scripts will be
4046         executed after the DOMContentLoaded event.
4047
4048         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4049         * TestWebKitAPI/Tests/WebKitCocoa/RunScriptAfterDocumentLoad.mm: Added.
4050         (TEST):
4051
4052 2018-07-18  Charlie Turner  <cturner@igalia.com>
4053
4054         [WPE] Update WPEBackend in flatpak
4055         https://bugs.webkit.org/show_bug.cgi?id=187753
4056
4057         r233763 updated WPEBackend for the jhbuild, but not the flatpak. This
4058         caused WPE_BACKEND_CHECK_VERSION to not be defined, triggering a bug
4059         in the version guard,
4060
4061         #if defined(WPE_BACKEND_CHECK_VERSION) && WPE_BACKEND_CHECK_VERSION(0, 2, 0)
4062
4063         This doesn't work as intended, since the C preprocessor first expands
4064         all macro arguments in the #if expression before evaluating the
4065         expression. When WPE_BACKEND_CHECK_VERSION is not defined, this will
4066         lead to a syntax error and some head scratching.
4067
4068         A future patch should address the buggy macro check, when it is
4069         decided whether the assume the macro is always defined and bump
4070         the API requirements on WPEBackend, or to move the check into two
4071         conditionals to avoid the expansion problem.
4072
4073         Unreviewed build fix.
4074         
4075         * flatpak/org.webkit.WPE.yaml:
4076
4077 2018-07-18  Simon Fraser  <simon.fraser@apple.com>
4078
4079         Fix the parsing of colors in attributed string tests, and make it possible to dump the typing attributes
4080         https://bugs.webkit.org/show_bug.cgi?id=187747
4081
4082         Reviewed by Ryosuke Niwa.
4083         
4084         Add textInputController.attributedStringForTyping(), which returns a one-character
4085         attributed string whose attributes are the typing attributes, making it possible to
4086         test -[WebView typingAttributes].
4087         
4088         Sadly WebCore's convertObjcValueToValue() doesn't know how to convert NSDictionary,
4089         so we can't return -typingAttributes directly.
4090
4091         * DumpRenderTree/mac/TextInputControllerMac.m:
4092         (+[TextInputController isSelectorExcludedFromWebScript:]):
4093         (-[TextInputController attributedStringForTyping]):
4094
4095 2018-07-18  Carlos Garcia Campos  <cgarcia@igalia.com>
4096
4097         [GLIB] Add jsc_context_check_syntax() to GLib API
4098         https://bugs.webkit.org/show_bug.cgi?id=187694
4099
4100         Reviewed by Yusuke Suzuki.
4101
4102         Add a new test case.
4103
4104         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
4105         (testJSCCheckSyntax):
4106         (main):
4107
4108 2018-07-17  Sihui Liu  <sihui_liu@apple.com>
4109
4110         REGRESSION: [macOS Sierra] TestWebKitAPI.WebKit.WebsiteDataStoreCustomPaths is a flaky failure
4111         https://bugs.webkit.org/show_bug.cgi?id=187066
4112         <rdar://problem/41609065>
4113
4114         Reviewed by Chris Dumez.
4115
4116         In r232668 we started to do reload if web process crashes by default. As we killed the web 
4117         process explicitly in this test, if web page got reloaded, messages would be sent again, 
4118         and flag set in message handler could keep the test continue to evaluate the expectation 
4119         without waiting for removeDataOfTypes to finish.
4120
4121         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
4122         (-[WebsiteDataStoreCustomPathsMessageHandler webViewWebContentProcessDidTerminate:]):
4123         (TEST):
4124
4125 2018-07-17  Chris Dumez  <cdumez@apple.com>
4126
4127         Turn on PSON in WebKitTestRunner
4128         https://bugs.webkit.org/show_bug.cgi?id=186542
4129
4130         Reviewed by Brady Eidson.
4131
4132         Turn on PSON by default in WebKitTestRunner.
4133
4134         * WebKitTestRunner/TestOptions.h:
4135
4136 2018-07-17  Wenson Hsieh  <wenson_hsieh@apple.com>
4137
4138         Add an SPI hook to allow clients to yield document parsing and script execution
4139         https://bugs.webkit.org/show_bug.cgi?id=187682
4140         <rdar://problem/42207453>
4141
4142         Reviewed by Ryosuke Niwa.
4143
4144         Add a few tests to exercise the new document yield token SPI, verifying that clients can use the SPI to defer
4145         document load, and that doing so doesn't cause deferred `script` to execute in the wrong order (i.e. before
4146         synchronous script, or after "DOMContentLoaded").
4147
4148         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4149         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm: Added.
4150         (-[ParserYieldTokenPlugIn takeDocumentParserTokenAfterCommittingLoad]):
4151         (-[ParserYieldTokenPlugIn releaseDocumentParserToken]):
4152         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
4153         (-[ParserYieldTokenPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
4154         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishDocumentLoadForFrame:]):
4155         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
4156
4157         Add an injected bundle object that knows how to take and release multiple document parser yield tokens.
4158
4159         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.h: Added.
4160         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenTests.mm: Added.
4161         (+[ParserYieldTokenTestWebView webView]):
4162         (-[ParserYieldTokenTestWebView bundle]):
4163         (-[ParserYieldTokenTestWebView schemeHandler]):
4164         (-[ParserYieldTokenTestWebView didFinishDocumentLoad]):
4165         (-[ParserYieldTokenTestWebView didFinishLoad]):
4166         (waitForDelay):
4167         (TEST):
4168         * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.h: Added.
4169         * TestWebKitAPI/Tests/WebKitCocoa/TestURLSchemeHandler.mm: Added.
4170         (-[TestURLSchemeHandler webView:startURLSchemeTask:]):
4171         (-[TestURLSchemeHandler webView:stopURLSchemeTask:]):
4172         (-[TestURLSchemeHandler setStartURLSchemeTaskHandler:]):
4173         (-[TestURLSchemeHandler startURLSchemeTaskHandler]):
4174         (-[TestURLSchemeHandler setStopURLSchemeTaskHandler:]):
4175         (-[TestURLSchemeHandler stopURLSchemeTaskHandler]):
4176
4177         Add a new test helper class to handle custom schemes via a block-based API.
4178
4179         * TestWebKitAPI/Tests/WebKitCocoa/text-with-async-script.html: Added.
4180
4181         New test HTML page that contains a deferred script element, a synchronous script element, another deferred
4182         script element, and then some text, images, and links.
4183
4184         * TestWebKitAPI/Tests/WebKitCocoa/text-with-deferred-script.html: Added.
4185
4186 2018-07-17  Truitt Savell  <tsavell@apple.com>
4187
4188         Adding myself to Contributors.json
4189
4190         Unreviewed
4191
4192         * Scripts/webkitpy/common/config/contributors.json:
4193
4194 2018-07-17  Aditya Keerthi  <akeerthi@apple.com>
4195
4196         [macOS] TestWebKitAPI.PictureInPicture.WKUIDelegate is timing out
4197         https://bugs.webkit.org/show_bug.cgi?id=187730
4198
4199         Reviewed by Jer Noble.
4200
4201         This regression was introduced by r233865. PIP can now only be initiated from a
4202         window that is on screen.
4203
4204         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
4205         (TestWebKitAPI::TEST):
4206