[WebAuthN] Import CTAP HID message and packet structure from Chromium
[WebKit-https.git] / Tools / ChangeLog
1 2018-10-09  Jiewen Tan  <jiewen_tan@apple.com>
2
3         [WebAuthN] Import CTAP HID message and packet structure from Chromium
4         https://bugs.webkit.org/show_bug.cgi?id=189289
5         <rdar://problem/44120310>
6
7         Reviewed by Brent Fulgham.
8
9         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10         * TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp: Added.
11         (TestWebKitAPI::TEST):
12
13 2018-10-09  Chris Dumez  <cdumez@apple.com>
14
15         PSON: Doing a cross-site navigation via the URL bar does not swap process on iOS
16         https://bugs.webkit.org/show_bug.cgi?id=190378
17         <rdar://problem/45059466>
18
19         Reviewed by Geoffrey Garen.
20
21         Add API test coverage.
22
23         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
24
25 2018-10-09  Jer Noble  <jer.noble@apple.com>
26
27         ISOTrackEncryptionBox returns incorrect defaultKeyID
28         https://bugs.webkit.org/show_bug.cgi?id=190368
29
30         Reviewed by Eric Carlson.
31
32         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
33         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
34         (TestWebKitAPI::TEST):
35
36 2018-10-09  Philippe Normand  <pnormand@igalia.com>
37
38         [JHBuild] Update to GStreamer 1.14.4
39         https://bugs.webkit.org/show_bug.cgi?id=190395
40
41         Reviewed by Xabier Rodriguez-Calvar.
42
43         * gstreamer/jhbuild.modules: Remove patches merged in 1.14.4 and bump version of GStreamer modules.
44         * gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Removed.
45         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Removed.
46         * gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Removed.
47         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Removed.
48
49 2018-10-08  Wenson Hsieh  <wenson_hsieh@apple.com>
50
51         [macOS] API test DragAndDropTests.DropColor is failing on macOS 10.12
52         https://bugs.webkit.org/show_bug.cgi?id=190386
53
54         Reviewed by Ryosuke Niwa.
55
56         Unlike macOS 10.13 and 10.14, -[NSColor redColor] is not equivalent to a fully red color in sRGB on macOS 10.12.
57         Fix the test by dragging and dropping an NSColor that is equivalent to rgb(255, 0, 0) on all relevant versions
58         of macOS.
59
60         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
61         (TEST):
62
63 2018-10-08  Wenson Hsieh  <wenson_hsieh@apple.com>
64
65         [Cocoa] [WK2] Add support for text alignment and text lists in font attributes
66         https://bugs.webkit.org/show_bug.cgi?id=190342
67         <rdar://problem/44767118>
68
69         Reviewed by Tim Horton.
70
71         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
72         * TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm:
73
74         Add a new API test to check that the font attributes dictionary contains the correct NSParagraphStyles when
75         moving the selection around text inside nested list elements.
76
77         (TestWebKitAPI::checkParagraphStyles):
78
79         Add a new helper to check an NSParagraphStyle against expected results.
80
81         (TestWebKitAPI::webViewForTestingFontAttributes):
82
83         Allow each test to pass in the name of the test page to load.
84
85         (TestWebKitAPI::TEST):
86         * TestWebKitAPI/Tests/WebKitCocoa/nested-lists.html: Added.
87
88         Add a new test page that contains text enclosed in multiple levels of unordered and ordered lists.
89
90         * TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html:
91
92         Remove `text-align: left` from one of these elements, to test for NSTextAlignmentNatural.
93
94 2018-10-08  Justin Fan  <justin_fan@apple.com>
95
96         WebGPU: Rename old WebGPU prototype to WebMetal
97         https://bugs.webkit.org/show_bug.cgi?id=190325
98         <rdar://problem/44990443>
99
100         Reviewed by Dean Jackson.
101
102         Rename WebGPU prototype files to WebMetal in preparation for implementing the new (Oct 2018) WebGPU interface.
103
104         * DumpRenderTree/mac/DumpRenderTree.mm:
105         (enableExperimentalFeatures):
106         (resetWebPreferencesToConsistentValues):
107         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
108         * TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm:
109         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm:
110         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm:
111         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
112         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
113         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
114         (WTR::InjectedBundle::beginTesting):
115         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
116         (WTR::TestRunner::setWebMetalEnabled):
117         (WTR::TestRunner::setWebGPUEnabled): Deleted.
118         * WebKitTestRunner/InjectedBundle/TestRunner.h:
119
120 2018-10-08  Commit Queue  <commit-queue@webkit.org>
121
122         Unreviewed, rolling out r236941.
123         https://bugs.webkit.org/show_bug.cgi?id=190374
124
125         Causing API test failures in new test (Requested by jernoble
126         on #webkit).
127
128         Reverted changeset:
129
130         "ISOTrackEncryptionBox returns incorrect defaultKeyID"
131         https://bugs.webkit.org/show_bug.cgi?id=190368
132         https://trac.webkit.org/changeset/236941
133
134 2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
135
136         Make <input type=color> a runtime enabled (on-by-default) feature
137         https://bugs.webkit.org/show_bug.cgi?id=189162
138
139         Reviewed by Wenson Hsieh and Tim Horton.
140
141         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
142
143 2018-10-08  Jer Noble  <jer.noble@apple.com>
144
145         ISOTrackEncryptionBox returns incorrect defaultKeyID
146         https://bugs.webkit.org/show_bug.cgi?id=190368
147
148         Reviewed by Eric Carlson.
149
150         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
151         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
152         (TestWebKitAPI::TEST):
153
154 2018-10-08  Alex Christensen  <achristensen@webkit.org>
155
156         Remove WKBundleFileHandleRef
157         https://bugs.webkit.org/show_bug.cgi?id=190360
158
159         Reviewed by Tim Horton.
160
161         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
162         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp: Removed.
163         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp: Removed.
164
165 2018-10-08  Dan Bernstein  <mitz@apple.com>
166
167         Tools part of [Xcode] Update some build settings as recommended by Xcode 10
168         https://bugs.webkit.org/show_bug.cgi?id=190250
169
170         Reviewed by Anders Carlsson.
171
172         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
173
174         * DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
175           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
176           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
177
178         * DumpRenderTree/mac/DumpRenderTreeMac.h: Addressed the strict prototype warning.
179
180         * DumpRenderTree/mac/EditingDelegate.mm: Suppressed the deprecated implementations warning
181           around deprecated methods or categories on deprecated classes.
182         * DumpRenderTree/mac/FrameLoadDelegate.mm: Ditto.
183         (-[FrameLoadDelegate webView:windowScriptObjectAvailable:]):
184         * DumpRenderTree/mac/TestRunnerMac.mm: Ditto.
185         (-[SynchronousLoader connection:didReceiveAuthenticationChallenge:]):
186
187         * MiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
188           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
189           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
190
191         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
192
193         * MiniBrowser/mac/AppDelegate.h: Addressed the strict prototypes warning.
194         * MiniBrowser/mac/WK2BrowserWindowController.m: Removed an unused #import to avoid having to
195           address the fact that many of the WebKit C SPI headers trigger the strict prototypes warning.
196
197         * MobileMiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
198           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_SUSPICIOUS_MOVE (by fixing a typo),
199           CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF.
200
201         * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj: Let Xcode update
202           LastUpgradeCheck and remove the .xcconfig files from the Copy Bundle Resources build phase.
203
204         * TestWebKitAPI/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
205           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
206           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
207           Made the WebKit headers be treated as system headers to avoid dealing with the fact that
208           many C SPI headers trigger the strict prototypes warning.
209
210         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
211
212         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
213         (-[DownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
214         (-[BlobDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
215         (-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]):
216         (-[RedirectedDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
217         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
218         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
219         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
220         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
221         (-[AudioSessionCategoryUIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
222         * TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
223         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
224         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
225         * TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
226         (-[SetTimeoutFunctionWebViewDelegate webViewDidFinishLoad:]):
227         (-[SetTimeoutFunctionWebViewDelegate webView:didFailLoadWithError:]):
228         (-[SetTimeoutFunctionWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
229         * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm:
230         (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
231         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
232         (-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
233         * TestWebKitAPI/mac/SyntheticBackingScaleFactorWindow.m:
234         (-[SyntheticBackingScaleFactorWindow IGNORE_WARNINGS_END]):
235         (-[SyntheticBackingScaleFactorWindow userSpaceScaleFactor]): Deleted.
236         * TestWebKitAPI/mac/TestDraggingInfo.mm:
237         (-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
238
239         In all of the above, suppressed the deprecated implementations warning where needed.
240
241         * WebKitTestRunner/Configurations/Base.xcconfig: Enabled ENABLE_STRICT_OBJC_MSGSEND,
242           CLANG_WARN_BOOL_CONVERSION, CLANG_WARN_COMMA, CLANG_WARN_CONSTANT_CONVERSION,
243           CLANG_WARN_EMPTY_BODY, CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION,
244           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_UNREACHABLE_CODE, CLANG_WARN__DUPLICATE_METHOD_MATCH,
245           GCC_WARN_UNDECLARED_SELECTOR, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF,
246           CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
247           and GCC_NO_COMMON_BLOCKS.
248
249         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
250
251         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
252         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed
253           the deprecated implementations warning.
254
255         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
256         (WTR::UIScriptController::replaceTextAtRange): Addressed an int-conversion warning.
257
258 2018-10-07  Yacine Bandou  <yacine.bandou@softathome.com>
259
260         [GStreamer][EME][webm] Add the WebM encrypted content support in matroskademux
261         https://bugs.webkit.org/show_bug.cgi?id=189238
262
263         Reviewed by Xabier Rodriguez-Calvar.
264
265         Modifications on GStreamer, tracked in GStreamer bugzilla:
266         https://bugzilla.gnome.org/show_bug.cgi?id=797231
267         https://bugzilla.gnome.org/show_bug.cgi?id=765275
268
269         * gstreamer/jhbuild.modules: Add new patches.
270         * gstreamer/patches/gstreamer-0001-protection-Add-a-new-definition-for-unspecified-syst.patch: Added.
271         * gstreamer/patches/gstreamer-0002-protection-Fix-the-string-to-define-unspecified-syst.patch: Added.
272         * gstreamer/patches/gst-plugins-good-0011-matroska-Add-the-WebM-encrypted-content-support-in-m.patch: Added.
273         * gstreamer/patches/gst-plugins-good-0012-matroskdemux-do-not-use-MapInfo.data-after-unmapping.patch: Added.
274
275 2018-10-06  Dan Bernstein  <mitz@apple.com>
276
277         [Xcode] Never build yasm with ASAN
278         https://bugs.webkit.org/show_bug.cgi?id=190327
279
280         Reviewed by Youenn Fablet.
281
282         * asan/asan.xcconfig: Allow targets to opt out of building with ASAN by setting
283           the WK_ASAN_DISALLOWED build setting to YES (or, actually, anything other than NO or unset).
284
285 2018-10-05  Chris Dumez  <cdumez@apple.com>
286
287         Regression(r236862): Crash under DOMWindowExtension::willDetachGlobalObjectFromFrame()
288         https://bugs.webkit.org/show_bug.cgi?id=190320
289         <rdar://problem/45044814>
290
291         Reviewed by Geoffrey Garen.
292
293         Add API test coverage.
294
295         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
296         (TestWebKitAPI::TEST):
297         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
298         (TestWebKitAPI::DOMWindowExtensionBasic::willDestroyGlobalObjectForDOMWindowExtension):
299
300 2018-10-03  Jer Noble  <jer.noble@apple.com>
301
302         Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
303         https://bugs.webkit.org/show_bug.cgi?id=190266
304
305         Reviewed by Eric Carlson.
306
307         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
308         * TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
309         (TestWebKitAPI::TEST):
310
311 2018-10-05  Ryan Haddad  <ryanhaddad@apple.com>
312
313         Unreviewed, rolling out r236866.
314
315         Breaks internal builds.
316
317         Reverted changeset:
318
319         "Add support for reporting "display composited video frames"
320         through the VideoPlaybackQuality object."
321         https://bugs.webkit.org/show_bug.cgi?id=190266
322         https://trac.webkit.org/changeset/236866
323
324 2018-10-05  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
325
326         [WPE][JSC] Use Unified Sources for Platform-specific sources
327         https://bugs.webkit.org/show_bug.cgi?id=190300
328
329         Reviewed by Yusuke Suzuki.
330
331         Currently the GTK port already used Unified Sources with the same source files.
332         As WPE has conditional code using gmodule, we need to add GLIB_GMODULE_LIBRARIES
333         to the list of libraries to link with.
334
335         * TestWebKitAPI/PlatformWPE.cmake:
336
337 2018-10-05  Zach Li  <zachli@apple.com>
338
339         Expose whether WKWebProcessPlugInNodeHandle is a select element to clients
340         https://bugs.webkit.org/show_bug.cgi?id=190302
341         <rdar://problem/45031469>
342
343         Reviewed by Tim Horton.
344
345         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
346         * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsSelectElement.mm: Added.
347         (-[InjectedBundleNodeHandleIsSelectElement verifySelectElementForHTMLElementTag:document:jsContext:expectedResult:failedElementTags:]):
348         (-[InjectedBundleNodeHandleIsSelectElement webProcessPlugIn:didCreateBrowserContextController:]):
349         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
350         (-[InjectedBundleNodeHandleIsSelectElementDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
351         (TEST):
352
353 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
354
355         [iOS] [WK2] Expose some more editing SPI on WKWebView
356         https://bugs.webkit.org/show_bug.cgi?id=190232
357         <rdar://problem/44963368>
358
359         Reviewed by Tim Horton.
360
361         Adds new API tests to exercise the new SPIs.
362
363         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
364         * TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm: Added.
365         (-[TestWKWebView querySelectorExists:]):
366         (TestWebKitAPI::webViewForEditActionTesting):
367         (TestWebKitAPI::TEST):
368         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
369         (-[TestWKWebView collapseToStart]): Deleted.
370         (-[TestWKWebView collapseToEnd]): Deleted.
371         (-[TestWKWebView stylePropertyAtSelectionStart:]): Deleted.
372         (-[TestWKWebView stylePropertyAtSelectionEnd:]): Deleted.
373         * TestWebKitAPI/cocoa/TestWKWebView.h:
374         * TestWebKitAPI/cocoa/TestWKWebView.mm:
375         (-[TestWKWebView stylePropertyAtSelectionStart:]):
376         (-[TestWKWebView stylePropertyAtSelectionEnd:]):
377         (-[TestWKWebView collapseToStart]):
378         (-[TestWKWebView collapseToEnd]):
379
380         Pull some common testing helpers out of NSFontManager and into TestWKWebView.
381
382 2018-10-04  Jer Noble  <jer.noble@apple.com>
383
384         Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
385         https://bugs.webkit.org/show_bug.cgi?id=190266
386
387         Reviewed by Eric Carlson.
388
389         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
390         * TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
391         (TestWebKitAPI::TEST):
392
393 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
394
395         [Cocoa] Add SPI to expose typing attributes at the current selection on WKWebView
396         https://bugs.webkit.org/show_bug.cgi?id=190119
397         <rdar://problem/44767062>
398
399         Reviewed by Tim Horton.
400
401         Add a new API test that loads a document containing various rich text styles. This test moves the selection
402         around the document and checks the last set of font attributes received via the new UI delegate hook.
403
404         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
405         * TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm: Added.
406         (-[FontAttributesListener _webView:didChangeFontAttributes:]):
407         (-[FontAttributesListener lastFontAttributes]):
408         (-[TestWKWebView selectElementWithIdentifier:]):
409         (-[TestWKWebView fontAttributesAfterNextPresentationUpdate]):
410         (ColorExpectation::ColorExpectation):
411         (ShadowExpectation::ShadowExpectation):
412         (checkColor):
413         (checkShadow):
414         (checkFont):
415         (webViewForTestingFontAttributes):
416         * TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html: Added.
417
418 2018-10-04  Alan Coon  <alancoon@apple.com>
419
420         Unreviewed, add self as contributor.
421
422         * Scripts/webkitpy/common/config/contributors.json:
423
424 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
425
426         [macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2
427         https://bugs.webkit.org/show_bug.cgi?id=190289
428         <rdar://problem/45020806>
429
430         Reviewed by Ryosuke Niwa.
431
432         Add new API tests to exercise two corner cases when using NSFontOptions ("Font > Styles…") to change font
433         attributes at the current selection.
434
435         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
436         * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
437         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
438         (webViewForFontManagerTesting):
439         (TestWebKitAPI::TEST):
440         * TestWebKitAPI/mac/TestFontOptions.h: Copied from Source/WebCore/editing/cocoa/FontAttributesCocoa.mm.
441         * TestWebKitAPI/mac/TestFontOptions.mm: Added.
442
443         Introduce TestFontOptions, which wraps the shared NSFontOptions and swizzles `-sharedFontOptions` to return a
444         global instance of itself. TestFontOptions supports several testing helpers to add or remove font shadows,
445         foreground colors, and background colors.
446
447         (sharedFontOptionsForTesting):
448         (+[TestFontOptions sharedInstance]):
449         (-[TestFontOptions initWithFontOptions:]):
450         (-[TestFontOptions selectedAttributes]):
451         (-[TestFontOptions fontOptions]):
452         (-[TestFontOptions shadowWidth]):
453         (-[TestFontOptions setShadowWidth:]):
454         (-[TestFontOptions shadowHeight]):
455         (-[TestFontOptions setShadowHeight:]):
456         (-[TestFontOptions setShadowBlurRadius:]):
457         (-[TestFontOptions setHasShadow:]):
458         (-[TestFontOptions foregroundColor]):
459         (-[TestFontOptions setForegroundColor:]):
460         (-[TestFontOptions backgroundColor]):
461         (-[TestFontOptions setBackgroundColor:]):
462         (-[TestFontOptions _dispatchFontAttributeChanges]):
463         (-[TestFontOptions convertAttributes:]):
464         (-[TestFontOptions setSelectedAttributes:isMultiple:]):
465         (-[TestFontOptions forwardInvocation:]):
466
467 2018-10-04  Jiewen Tan  <jiewen_tan@apple.com>
468
469         [WebAuthN] Move time out control from WebProcess to UIProcess
470         https://bugs.webkit.org/show_bug.cgi?id=189642
471         <rdar://problem/44476765>
472
473         Reviewed by Chris Dumez.
474
475         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
476         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
477
478 2018-10-04  YUHAN WU  <yuhan_wu@apple.com>
479
480         Runtime flag and IDL for MediaRecorder
481         https://bugs.webkit.org/show_bug.cgi?id=190018
482
483         Reviewed by Youenn Fablet and Chris Dumez.
484
485         * DumpRenderTree/mac/DumpRenderTree.mm:
486         (enableExperimentalFeatures):
487
488 2018-10-04  Basuke Suzuki  <Basuke.Suzuki@sony.com>
489
490         [LayoutTests][Win] Stop wpt server correctly.
491         https://bugs.webkit.org/show_bug.cgi?id=190248
492
493         Reviewed by Fujii Hironori.
494
495         Use signal.CTRL_C_EVENT instead of signal.SIGINT for Windows.
496         Also refactoring the detection of Windows and cygwin environment check.
497
498         * Scripts/webkitpy/common/system/executive.py:
499         (Executive.__init__): Check environment once.
500         (Executive._should_close_fds):
501         (Executive.kill_process):
502         (Executive.check_running_pid):
503         (Executive.running_pids):
504         (Executive.interrupt): Use signal.CTRL_C_EVENT for Windows.
505         (Executive.kill_all):
506         (Executive._child_process_encoding):
507         (Executive._should_encode_child_process_arguments):
508         (Executive.popen):
509         (Executive.run_in_parallel):
510
511 2018-10-04  Michael Catanzaro  <mcatanzaro@igalia.com>
512
513         Convert tests to use navigation client
514         https://bugs.webkit.org/show_bug.cgi?id=190153
515
516         Reviewed by Alex Christensen.
517
518         Convert these tests from PagePolicyClient and PageLoaderClient to PageNavigationClient.
519
520         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
521         (TestWebKitAPI::decidePolicyForNavigationAction):
522         (TestWebKitAPI::setPagePolicyClient):
523         * TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback.cpp:
524         (TestWebKitAPI::didCommitNavigationCallback):
525         (TestWebKitAPI::TEST):
526         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
527
528 2018-10-03  Dan Bernstein  <mitz@apple.com>
529
530         [Cocoa] Let clients specify an NSFileWrapper subclassed to be used for _WKAttachment
531         https://bugs.webkit.org/show_bug.cgi?id=190270
532
533         Reviewed by Wenson Hsieh.
534
535         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
536         (TestWebKitAPI::TEST):
537
538 2018-10-03  Ryosuke Niwa  <rniwa@webkit.org>
539
540         Enable selectionAcrossShadowBoundariesEnabled by default in WebKitLegacy
541         https://bugs.webkit.org/show_bug.cgi?id=190238
542
543         Reviewed by Antti Koivisto.
544
545         * DumpRenderTree/TestOptions.h:
546         * DumpRenderTree/mac/DumpRenderTree.mm:
547         (resetWebPreferencesToConsistentValues):
548
549 2018-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
550
551         [WebKit2] Format > Bold and Format > Italic don't toggle between bold and italic style
552         https://bugs.webkit.org/show_bug.cgi?id=179787
553         <rdar://problem/35593389>
554
555         Reviewed by Tim Horton.
556
557         Add a test to verify that NSFontManager's selected font is updated when applying italic and bold styles using
558         menu items.
559
560         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
561         (webViewForFontManagerTesting):
562         (menuItemCellForFontAction):
563         (TestWebKitAPI::TEST):
564
565 2018-10-02  Chris Dumez  <cdumez@apple.com>
566
567         REGRESSION: TestWebKitAPI.WKWebView.ProvisionalURLNotChange API test is failing
568         https://bugs.webkit.org/show_bug.cgi?id=190176
569         <rdar://problem/44925871>
570
571         Reviewed by Alex Christensen.
572
573         Use a URL that is truly recognized as invalid by WebCore's URL parser.
574
575         * TestWebKitAPI/Tests/WebKitCocoa/ProvisionalURLNotChange.mm:
576         (TEST):
577
578 2018-10-02  Alex Christensen  <achristensen@webkit.org>
579
580         Remove ParsedURLString
581         https://bugs.webkit.org/show_bug.cgi?id=190154
582
583         Reviewed by Chris Dumez.
584
585         * TestWebKitAPI/Tests/WebCore/URL.cpp:
586         (TestWebKitAPI::TEST_F):
587         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
588         (TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
589         (TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
590         (TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
591         (TestWebKitAPI::TEST):
592
593 2018-10-02  Daniel Bates  <dabates@apple.com>
594
595         Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
596         (https://bugs.webkit.org/show_bug.cgi?id=190017)
597
598         For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
599             WKWebViewAutofillTests.AutofillRequiresInputSession
600             DragAndDropTests.ExternalSourceJPEGOnly
601             DragAndDropTests.ExternalSourceUTF8PlainTextOnly
602
603         so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
604         we will look to swizzle this method for all test by default.
605
606         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
607         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
608         (TestWebKitAPI::TEST):
609         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
610         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
611         (TestWebKitAPI::TEST):
612         * TestWebKitAPI/ios/UIKitSPI.h:
613
614 2018-10-02  Dawei Fenton  <realdawei@apple.com>
615
616         Unreviewed, rolling out r236751.
617
618         broke the iOS Build
619
620         Reverted changeset:
621
622         "Fix iOS TestWebKitAPI failures following
623         <https://trac.webkit.org/changeset/236619>"
624         https://bugs.webkit.org/show_bug.cgi?id=190017
625         https://trac.webkit.org/changeset/236751
626
627 2018-10-02  Daniel Bates  <dabates@apple.com>
628
629         Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
630         (https://bugs.webkit.org/show_bug.cgi?id=190017)
631
632         For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
633             WKWebViewAutofillTests.AutofillRequiresInputSession
634             DragAndDropTests.ExternalSourceJPEGOnly
635             DragAndDropTests.ExternalSourceUTF8PlainTextOnly
636
637         so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
638         we will look to swizzle this method for all test by default.
639
640         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
641         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
642         (TestWebKitAPI::TEST):
643         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
644         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
645         (TestWebKitAPI::TEST):
646         * TestWebKitAPI/ios/UIKitSPI.h:
647
648 2018-10-01  Dean Jackson  <dino@apple.com>
649
650         Remove CSS Animation Triggers
651         https://bugs.webkit.org/show_bug.cgi?id=190175
652         <rdar://problem/44925626>
653
654         Reviewed by Simon Fraser.
655
656         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
657
658 2018-10-02  Thibault Saunier  <tsaunier@igalia.com>
659
660         [Flatpak] Use our own check of flatpak repos
661         https://bugs.webkit.org/show_bug.cgi?id=190194
662
663         Allowing us to not mess up with user installation
664         and "--assumeyes" everywhere.
665
666         Reviewed by Michael Catanzaro.
667
668         * flatpak/flatpakutils.py:
669         (FlatpakPackage.__init__):
670         (FlatpakPackage.install):
671         (FlatpakPackage.update):
672         (WebkitFlatpak.load_from_args):
673         (WebkitFlatpak.__init__):
674         (WebkitFlatpak.clean_args):
675
676 2018-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
677
678         [macOS] Implement a way for the UI process to request typing attributes at the current selection
679         https://bugs.webkit.org/show_bug.cgi?id=189983
680         <rdar://problem/44648705>
681
682         Reviewed by Ryosuke Niwa.
683
684         Adds new FontManagerTests that exercise -typingAttributesWithCompletionHandler:. See below for more detail.
685
686         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
687         * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
688         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
689
690         Add a new test that exercises font attribute modification via inspector bar. Also, add a new test that checks
691         typing attributes when using subscript/superscript/unscript. Lastly, augment an existing NSFontPanel test to
692         additionally check that shadowed text and strike-through are reflected in typing attributes.
693
694         (-[FontManagerTestWKWebView inspectorBarItemIdentifiers]):
695         (-[TestWKWebView typingAttributes]):
696
697         Add a synchronous wrapper around `-typingAttributesWithCompletionHandler:` by spinning the runloop.
698
699         (-[TestWKWebView collapseToStart]):
700         (webViewForFontManagerTesting):
701         (TestWebKitAPI::TEST):
702         * TestWebKitAPI/cocoa/TestWKWebView.h:
703         * TestWebKitAPI/mac/TestInspectorBar.h: Copied from Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h.
704         * TestWebKitAPI/mac/TestInspectorBar.mm: Added.
705
706         Introduce subclasses of `__InspectorBarItemController` and `NSInspectorBar` for testing inspector bar interaction.
707
708         (-[TestInspectorBarItemController initWithInspectorBar:]):
709         (-[TestInspectorBarItemController inspectorBar]):
710         (-[TestInspectorBarItemController updateSelectedAttributes]):
711         (-[TestInspectorBar initWithWebView:]):
712         (+[TestInspectorBar standardItemControllerClass]):
713         (+[TestInspectorBar standardTextItemIdentifiers]):
714         (-[TestInspectorBar _setStyleControlSelected:atIndex:]):
715         (-[TestInspectorBar chooseFontSize:]):
716         (-[TestInspectorBar chooseFontFamily:]):
717         (-[TestInspectorBar _chooseColor:inColorWell:]):
718         (-[TestInspectorBar chooseForegroundColor:]):
719         (-[TestInspectorBar chooseBackgroundColor:]):
720         (-[TestInspectorBar formatBold:]):
721         (-[TestInspectorBar formatItalic:]):
722         (-[TestInspectorBar formatUnderline:]):
723
724         Add helper methods to TestInspectorBar to simulate interacting with various controls (e.g. color wells and font
725         styling controls).
726
727         (-[TestInspectorBar itemController]):
728         (-[TestInspectorBar setItemController:]):
729
730 2018-10-02  Thibault Saunier  <tsaunier@igalia.com>
731
732         [Flatpak] Implement icecream and ccache support
733         https://bugs.webkit.org/show_bug.cgi?id=190146
734
735         Reviewed by Alejandro G. Castro.
736
737         * flatpak/flatpakutils.py:
738         (WebkitFlatpak.load_from_args):
739         (WebkitFlatpak.__init__):
740         (WebkitFlatpak.clean_args):
741         (WebkitFlatpak.run_in_sandbox):
742         (WebkitFlatpak.save_config):
743         (WebkitFlatpak):
744         (WebkitFlatpak.setup_ccache):
745         (WebkitFlatpak.setup_icecc):
746         (WebkitFlatpak.setup_dev_env):
747         * flatpak/org.webkit.WebKit.yaml:
748
749 2018-10-02  Michael Catanzaro  <mcatanzaro@igalia.com>
750
751         Unreviewed, fix missing return value in TestController::keyExistsInKeychain
752
753         * WebKitTestRunner/TestController.cpp:
754         (WTR::TestController::keyExistsInKeychain):
755
756 2018-10-02  Basuke Suzuki  <Basuke.Suzuki@sony.com>
757
758         [WinCairo] Enable WPT tests environment.
759         https://bugs.webkit.org/show_bug.cgi?id=190128
760
761         Reviewed by Youenn Fablet.
762
763         Escaping backslash of the path not to confuse the JSON parser.
764
765         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
766         (WebPlatformTestServer._prepare_config):
767
768 2018-10-01  Ross Kirsling  <ross.kirsling@sony.com>
769
770         [Win][DRT] Actually set "experimental:WebAnimationsCSSIntegrationEnabled" when requested
771         https://bugs.webkit.org/show_bug.cgi?id=190150
772
773         Reviewed by Fujii Hironori.
774
775         * DumpRenderTree/win/DumpRenderTree.cpp:
776         (setWebPreferencesForTestOptions):
777         DRT has been recognizing this field, but not propagating its value to WebPreferences.
778
779 2018-10-01  Alex Christensen  <achristensen@webkit.org>
780
781         Unreviewed, rolling out r236551.
782
783         Fails URL validating too aggressively
784
785         Reverted changeset:
786
787         "URLWithUserTypedString should return nil for URLs deemed to
788         be invalid by WebCore::URL"
789         https://bugs.webkit.org/show_bug.cgi?id=189979
790         https://trac.webkit.org/changeset/236551
791
792 2018-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
793
794         [iOS] Add SPI to customize the input accessory view when focusing an element
795         https://bugs.webkit.org/show_bug.cgi?id=190152
796         <rdar://problem/42754975>
797
798         Reviewed by Dan Bernstein.
799
800         Add an API test to verify that setting a custom input accessory view and custom input view on the form input
801         session when focusing an element overrides the first responder's (i.e. WKContentView's) `-inputView` and
802         `-inputAccessoryView`.
803
804         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
805         (webViewWithAutofocusedInput):
806         (TestWebKitAPI::TEST):
807         * TestWebKitAPI/Tests/ios/TestInputDelegate.h:
808         * TestWebKitAPI/Tests/ios/TestInputDelegate.mm:
809         (-[TestInputDelegate setWillStartInputSessionHandler:]):
810         (-[TestInputDelegate willStartInputSessionHandler]):
811         (-[TestInputDelegate _webView:willStartInputSession:]):
812
813 2018-10-01  Sihui Liu  <sihui_liu@apple.com>
814
815         Remove StorageProcess
816         https://bugs.webkit.org/show_bug.cgi?id=189975
817
818         Reviewed by Geoffrey Garen.
819
820         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
821         (TEST):
822         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
823         * TestWebKitAPI/Tests/WebKitCocoa/WebProcessKillIDBCleanup.mm:
824         (TEST):
825         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
826         (TEST):
827         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
828         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
829         (WTR::TestRunner::terminateStorageProcess): Deleted.
830         * WebKitTestRunner/InjectedBundle/TestRunner.h:
831         * WebKitTestRunner/TestController.cpp:
832         (WTR::TestController::generatePageConfiguration):
833         (WTR::TestController::databaseProcessName): Deleted.
834         (WTR::TestController::databaseProcessDidCrash): Deleted.
835         (WTR::TestController::terminateStorageProcess): Deleted.
836         * WebKitTestRunner/TestController.h:
837         * WebKitTestRunner/TestInvocation.cpp:
838         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
839
840 2018-10-01  Jiewen Tan  <jiewen_tan@apple.com>
841
842         [WebAuthN] Import a JS CBOR coder
843         https://bugs.webkit.org/show_bug.cgi?id=189877
844         <rdar://problem/44701124>
845
846         Reviewed by Chris Dumez.
847
848         Add logic to only process privateKeyBase64, userCertificateBase64 and intermediateCACertificateBase64
849         only if acceptAttestation is true.
850
851         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
852         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
853
854 2018-10-01  Chris Dumez  <cdumez@apple.com>
855
856         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
857         https://bugs.webkit.org/show_bug.cgi?id=190052
858
859         Reviewed by Ryosuke Niwa.
860
861         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
862         to log those events. It also uses console.log() before sending those events to indicate what the test is about
863         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
864         so that it can log the message.
865         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
866         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
867         handler to be transformed into synchronous IPC.
868         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
869         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
870         messages may end up being out of order, leading to flakiness.
871
872         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicated
873         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
874         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
875
876         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
877         (WTR::InjectedBundle::outputText):
878
879 2018-10-01  Daniel Bates  <dabates@apple.com>
880
881         [iOS] Special keys are misidentified in DOM keyboard events
882         https://bugs.webkit.org/show_bug.cgi?id=189974
883
884         Reviewed by Wenson Hsieh.
885
886         Add support for testing keys Forward Delete and Num Lock / Clear.
887
888         * WebKitTestRunner/ios/HIDEventGenerator.mm:
889         (hidUsageCodeForCharacter):
890
891 2018-10-01  Alex Christensen  <achristensen@webkit.org>
892
893         URL should not use TextEncoding internally
894         https://bugs.webkit.org/show_bug.cgi?id=190111
895
896         Reviewed by Andy Estes.
897
898         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
899         (TestWebKitAPI::testUserPass):
900         (TestWebKitAPI::TEST_F):
901
902 2018-10-01  Daniel Bates  <dabates@apple.com>
903
904         LLDB tests may use wrong configuration of lldbWebKitTester
905         https://bugs.webkit.org/show_bug.cgi?id=189011
906
907         Reviewed by Dean Jackson.
908
909         Fixes an issue where the LLDB unit tests may use the wrong configuration of lldbWebKitTester.
910         Additionally, add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
911
912         Currently the unit tests pick the LLDBWebKitTester binary based on the configuration set by
913         script set-webkit-configuration. This may not be the same configuration specified to test-webkitpy.
914         So, the unit tests may use the wrong binary. Instead we have test-webkitpy store the path
915         to the correct lldbWebKitTester binary that the unit tests should use in an environment variable,
916         called LLDB_WEBKIT_TESTER_EXECUTABLE. (We use an environment variable because the test driver,
917         test-webkitpy, and the unit tests cannot talk to each other directly due the limitations of
918         the Python unittest module, the Python multiprocessing module, and the general principle of unit
919         tests - to test code in isolation). The unit tests make use of the value of this environment
920         variable to launch lldbWebKitTester binary.
921
922         * Scripts/build-lldbwebkittester: We only support building lldbWebKitTester on Mac for now. Error
923         out if this script is invoked for a non-Mac platform.
924         * Scripts/webkitpy/test/main.py:
925         (Tester._run_tests): Build lldbWebKitTester and store the path to it in the environment variable
926         LLDB_WEBKIT_TESTER_EXECUTABLE.
927         (_build_lldb_webkit_tester): Deleted.
928         * lldb/dump_class_layout_unittest.py:
929         (TestDumpClassLayout.shouldSkip): Use SystemHost() here and remove the _host global variable as
930         this is the only call site that needs the Host object now.
931         (TestDumpClassLayout.setUpClass): Take the path to the lldbWebKitTester binary from the value of
932         the environment variable LLDB_WEBKIT_TESTER_EXECUTABLE.
933         * lldb/lldbWebKitTester/main.cpp:
934         (testSummaryProviders): Add back unit test support infrastructure originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
935         * lldb/lldb_webkit_unittest.py:
936         (LLDBDebugSession.setup): Take the path to the lldbWebKitTester binary from the value of the environment
937         variable LLDB_WEBKIT_TESTER_EXECUTABLE.
938         (TestSummaryProviders):
939         (TestSummaryProviders.shouldSkip): Skip the tests on non-Mac platforms.
940         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
941         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
942         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
943         (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
944         (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
945         Add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
946
947 2018-10-01  Olivier Blin  <olivier.blin@softathome.com>
948
949         [WPE] Update install-dependencies
950         https://bugs.webkit.org/show_bug.cgi?id=190127
951
952         Reviewed by Michael Catanzaro.
953
954         * wpe/install-dependencies:
955         libxrandr-dev is needed for gstreamer-vaapi in jhbuild
956         It is used by gstvaapidisplay_x11.c.
957         Add it only for Apt, already ok for Pacman and DNF.
958
959         Install libevent-dev for WebRTC (like GTK)
960
961         Install libasound2-dev for WebRTC.
962         Add it only for Apt, already ok for Pacam and DNF.
963
964         Install libgbm-dev for HeadlessViewBackend, which uses gbm.h
965
966 2018-10-01  Thibault Saunier  <tsaunier@igalia.com>
967
968         [Flatpak] Add libunwind in the sandbox
969         https://bugs.webkit.org/show_bug.cgi?id=190123
970
971         Allowing us to get proper traces in GStreamer trace grabing
972         debug functions.
973
974         Reviewed by Philippe Normand.
975
976         * flatpak/org.webkit.WebKit.yaml:
977
978 2018-09-29  Commit Queue  <commit-queue@webkit.org>
979
980         Unreviewed, rolling out r236631.
981         https://bugs.webkit.org/show_bug.cgi?id=190112
982
983         Caused various eventSender tests, including fast/css/pseudo-
984         active-style-sharing*, to fail (Requested by smfr on #webkit).
985
986         Reverted changeset:
987
988         "Regression(r236512): http/tests/navigation/keyboard-events-
989         during-provisional-navigation.html is flaky"
990         https://bugs.webkit.org/show_bug.cgi?id=190052
991         https://trac.webkit.org/changeset/236631
992
993 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
994
995         [WHLSL] Fix build after r236635
996         https://bugs.webkit.org/show_bug.cgi?id=189210
997
998         Unreviewed.
999
1000         * WebGPUShadingLanguageRI/Intrinsics.js:
1001         (Intrinsics.):
1002         * WebGPUShadingLanguageRI/Test.js:
1003         (tests.atomicsNull):
1004         (tests.numThreads):
1005         (tests.textureDimensionsNull):
1006
1007 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
1008
1009         [WHLSL] Allow uniform buffers to be used in the interpreter
1010         https://bugs.webkit.org/show_bug.cgi?id=189210
1011
1012         Reviewed by Filip Pizlo.
1013
1014         Every lvalue is associated with an address space, and the propagation of these address spaces
1015         matches the propagation of lvalues. Luckily, there was already the infrastructure to do most
1016         of this, so this patch just goes the last few yards. It also updates the standard library to
1017         allow for writing into all writable address spaces for out-params.
1018
1019         * WebGPUShadingLanguageRI/Checker.js:
1020         (Checker.prototype.visitAssignment):
1021         (Checker.prototype._finishVisitingPropertyAccess):
1022         * WebGPUShadingLanguageRI/Intrinsics.js:
1023         (Intrinsics.):
1024         (Intrinsics.checkFalse):
1025         (Intrinsics):
1026         * WebGPUShadingLanguageRI/StandardLibrary.js:
1027         (let.standardLibrary):
1028         * WebGPUShadingLanguageRI/Test.js:
1029         (tests.threadArrayRefLoad):
1030         (tests.threadArrayRefLoadIntLiteral):
1031         (tests.deviceArrayRefLoad):
1032         (tests.threadArrayRefStore):
1033         (tests.deviceArrayRefStore):
1034         (tests.deviceArrayRefStoreIntLiteral):
1035         (tests.threadPointerLoad):
1036         (tests.threadPointerStore):
1037         (tests.devicePointerLoad):
1038         (tests.devicePointerStore):
1039         (tests.arrayLoad):
1040         (tests.constantAddressSpace):
1041         (tests.standardLibraryDevicePointers):
1042         (tests.threadArrayLoad): Deleted.
1043         (tests.threadArrayLoadIntLiteral): Deleted.
1044         (tests.deviceArrayLoad): Deleted.
1045         (tests.threadArrayStore): Deleted.
1046         (tests.deviceArrayStore): Deleted.
1047         (tests.deviceArrayStoreIntLiteral): Deleted.
1048
1049 2018-09-28  Wenson Hsieh  <wenson_hsieh@apple.com>
1050
1051         No DOM API to instantiate an attachment for an img element
1052         https://bugs.webkit.org/show_bug.cgi?id=189934
1053         <rdar://problem/44743222>
1054
1055         Reviewed by Ryosuke Niwa.
1056
1057         Adds 3 new API tests in WKAttachmentTests:
1058
1059         `AddAttachmentToConnectedImageElement` verifies that an image element that's already in the document can gain an
1060         attachment element via `HTMLAttachmentElement.getAttachmentIdentifier`.
1061
1062         `ChangeFileWrapperForPastedImage` verifies that an image that has been pasted produces a _WKAttachment in the UI
1063         process, and changing the file wrapper of that _WKAttachment changes the pasted image.
1064
1065         `ConnectImageWithAttachmentToDocument` verifies that script can create an image element, ensure that it has an
1066         attachment, and set a file wrapper for the generated _WKAttachment. Connecting the image to the document should
1067         then result in an image element with the contents of the _WKAttachment's file wrapper.
1068
1069         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1070         (-[TestWKWebView imageElementSize]):
1071         (-[TestWKWebView waitForImageElementSizeToBecome:]):
1072         (TestWebKitAPI::TEST):
1073         (-[TestWKWebView waitForAttachmentElementSizeToBecome:]): Deleted.
1074
1075 2018-09-28  Chris Dumez  <cdumez@apple.com>
1076
1077         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
1078         https://bugs.webkit.org/show_bug.cgi?id=190052
1079
1080         Reviewed by Ryosuke Niwa.
1081
1082         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
1083         to log those events. It also uses console.log() before sending those events to indicate what the test is about
1084         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
1085         so that it can log the message.
1086         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
1087         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
1088         handler to be transformed into synchronous IPC.
1089         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
1090         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
1091         messages may end up being out of order, leading to flakiness.
1092
1093         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicating
1094         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
1095         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
1096
1097         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1098         (WTR::InjectedBundle::outputText):
1099
1100 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
1101
1102         [WHLSL] Pointers should have automatically-generated equality checks
1103         https://bugs.webkit.org/show_bug.cgi?id=189986
1104
1105         Reviewed by Filip Pizlo.
1106
1107         C allows for pointer equality, and we need it so people can do null checks.
1108         This is generated the same way all our other NativeFuncs are generated - by Checker
1109         creating NativeFuncs inside CallExpression.resolve().
1110
1111         This patch also does some general cleanup.
1112
1113         * WebGPUShadingLanguageRI/All.js: Everything the late checker does is no longer necessary.
1114         The last thing it was doing was making sure that only primitive types are in resources, but
1115         it's totally reasonable to put structs and arrays in resources, so I removed this pass. We
1116         still have to add a check to make sure resources can't live within resources, but I expect
1117         that will be done in the same place that semantics are checked.
1118         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js:
1119         (allocateAtEntryPoints.updateFunction.UpdateFunctions.prototype._addVariableDeclaration):
1120         Name the global struct for debugging purposes.
1121         * WebGPUShadingLanguageRI/CallExpression.js: 
1122         (CallExpression.prototype._resolveByInstantiation): Cleanup
1123         (CallExpression.prototype._resolveWithOperatorAnderIndexer): Ditto
1124         (CallExpression.prototype._resolveWithOperatorLength): Ditto
1125         (CallExpression.prototype._resolveWithReferenceComparator): Add support to automatically
1126         generate pointer equality NativeFuncs.
1127         * WebGPUShadingLanguageRI/EPtr.js: Implement pointer equality in the interpreter.
1128         * WebGPUShadingLanguageRI/LateChecker.js: Removed.
1129         * WebGPUShadingLanguageRI/LayoutBuffers.js: Renamed from Tools/WebGPUShadingLanguageRI/LateCheckAndLayoutBuffers.js.
1130         (layoutBuffers):
1131         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:
1132         * WebGPUShadingLanguageRI/NativeFunc.js:
1133         * WebGPUShadingLanguageRI/OperatorArrayRefLength.js:
1134         (OperatorArrayRefLength.prototype.instantiateImplementation):
1135         (OperatorArrayRefLength):
1136         * WebGPUShadingLanguageRI/Prepare.js:
1137         (let.prepare):
1138         * WebGPUShadingLanguageRI/SPIRV.html:
1139         * WebGPUShadingLanguageRI/Test.html:
1140         * WebGPUShadingLanguageRI/Test.js:
1141         (tests.ternaryExpression):
1142         (tests.break): Speed up testing time
1143         (tests.doWhile): Ditto
1144         (tests.forLoop): Ditto
1145         (tests.atomics): Ditto
1146         (tests.atomicsNull): Ditto
1147         (tests.pointerEquality): Test pointer equality
1148         (tests.standardLibraryDevicePointers):
1149         (tests.devicePtrPtr): Deleted.
1150         (tests.threadgroupPtrPtr): Deleted.
1151         (tests.constantPtrPtr): Deleted.
1152         * WebGPUShadingLanguageRI/index.html:
1153
1154 2018-09-28  Jiewen Tan  <jiewen_tan@apple.com>
1155
1156         [WebAuthN] Polish WebAuthN auto-test environment
1157         https://bugs.webkit.org/show_bug.cgi?id=189283
1158         <rdar://problem/44117828>
1159
1160         Reviewed by Chris Dumez.
1161
1162         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1163         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
1164
1165 2018-09-28  Chris Dumez  <cdumez@apple.com>
1166
1167         Drop support for cross-origin-window-policy header
1168         https://bugs.webkit.org/show_bug.cgi?id=190081
1169
1170         Reviewed by Ryosuke Niwa.
1171
1172         190081_DropCrossOriginWindowPolicy
1173
1174         * DumpRenderTree/mac/DumpRenderTree.mm:
1175         (enableExperimentalFeatures):
1176         * DumpRenderTree/win/DumpRenderTree.cpp:
1177         (enableExperimentalFeatures):
1178         * WebKitTestRunner/TestController.cpp:
1179         (WTR::TestController::resetPreferencesToConsistentValues):
1180
1181 2018-09-28  Koby Boyango  <koby.b@mce.systems>
1182
1183         [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
1184         https://bugs.webkit.org/show_bug.cgi?id=189991
1185
1186         Reviewed by Yusuke Suzuki.
1187
1188         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
1189
1190 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1191
1192         Update flakiness dashboard configuration for Mojave queues
1193         https://bugs.webkit.org/show_bug.cgi?id=190068
1194
1195         Reviewed by Alexey Proskuryakov.
1196
1197         * TestResultServer/static-dashboards/builders.jsonp:
1198
1199 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1200
1201         Bring up queues for Mojave
1202         https://bugs.webkit.org/show_bug.cgi?id=189935
1203
1204         Unreviewed infrastructure fix.
1205
1206         * BuildSlaveSupport/build.webkit.org-config/config.json: Remove trigger, update bot assignment.
1207
1208 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
1209
1210         Bring up queues for Mojave
1211         https://bugs.webkit.org/show_bug.cgi?id=189935
1212
1213         Reviewed by Alexey Proskuryakov.
1214
1215         * BuildSlaveSupport/build.webkit.org-config/config.json:
1216         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1217         (WebKitBuildbot):
1218         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1219
1220 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1221
1222         Increase the timeout for iOS Simulator data migration
1223         https://bugs.webkit.org/show_bug.cgi?id=190059
1224
1225         Reviewed by Aakash Jain.
1226
1227         3 minutes isn't always enough time for the data migrator to complete
1228         when booting up multiple iOS Simulators. Change the timeout to 10 minutes.
1229
1230         * Scripts/webkitpy/xcode/simulated_device.py:
1231         (SimulatedDeviceManager): Create a constant for the default timeout.
1232         (SimulatedDeviceManager.initialize_devices): Use new constant.
1233         (SimulatedDeviceManager.swap): Ditto.
1234         (SimulatedDeviceManager.wait_until_data_migration_is_done): Ditto.
1235
1236 2018-09-27  Alex Christensen  <achristensen@webkit.org>
1237
1238         URLParser should use TextEncoding through an abstract class
1239         https://bugs.webkit.org/show_bug.cgi?id=190027
1240
1241         Reviewed by Andy Estes.
1242
1243         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1244         (TestWebKitAPI::checkURL):
1245         (TestWebKitAPI::TEST_F):
1246
1247 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1248
1249         iOS Simulator bots should pass '--dedicated-simulators' to run-webkit-tests
1250         https://bugs.webkit.org/show_bug.cgi?id=190042
1251
1252         Reviewed by Aakash Jain.
1253
1254         To make iOS Simulator bots resilient to issues that can arise from reusing
1255         existing simulators, ensure that dedicated simulators are created for each test run.
1256
1257         * Scripts/webkitpy/common/config/ports.py:
1258         (IOSSimulatorWK2Port.run_webkit_tests_command):
1259
1260 2018-09-27  Alex Christensen  <achristensen@webkit.org>
1261
1262         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
1263         https://bugs.webkit.org/show_bug.cgi?id=189979
1264
1265         Reviewed by Youenn Fablet.
1266
1267         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1268         (TestWebKitAPI::originalDataAsString):
1269         (TestWebKitAPI::TEST):
1270
1271 2018-09-27  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1272
1273         [Win][WebKit] Implement authentication dialog on MiniBrowser.
1274         https://bugs.webkit.org/show_bug.cgi?id=189846
1275
1276         Reviewed by Fujii Hironori.
1277
1278         It was implemented for WebKitLegacy, but not for WebKit.
1279         Also added text field to display Realm information.
1280
1281         * MiniBrowser/win/Common.cpp:
1282         (authDialogProc):
1283         (askCredential):
1284         (displayAuthDialog): Deleted.
1285         * MiniBrowser/win/Common.h:
1286         * MiniBrowser/win/MiniBrowserLib.rc:
1287         * MiniBrowser/win/MiniBrowserLibResource.h:
1288         * MiniBrowser/win/ResourceLoadDelegate.cpp:
1289         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
1290         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1291         (createString):
1292         (createUTF8String):
1293         (createWKString):
1294         (createWKURL):
1295         (WebKitBrowserWindow::WebKitBrowserWindow):
1296         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
1297         (toNullTerminatedUTF8): Deleted.
1298         * MiniBrowser/win/WebKitBrowserWindow.h:
1299
1300 2018-09-27  Youenn Fablet  <youenn@apple.com>
1301
1302         Enable getUserMedia in mini browser
1303         https://bugs.webkit.org/show_bug.cgi?id=190012
1304
1305         Reviewed by Eric Carlson.
1306
1307         Enable MediaDevices and mock capture devices.
1308         Grant mock devices access to any getUserMedia call.
1309         Covered by manual testing.
1310
1311         * MiniBrowser/mac/AppDelegate.m:
1312         (defaultConfiguration):
1313         * MiniBrowser/mac/WK2BrowserWindowController.m:
1314         (-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1315         (-[WK2BrowserWindowController _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1316
1317 2018-09-27  Antoine Quint  <graouts@apple.com>
1318
1319         [Web Animations] Turn Web Animations with CSS integration on
1320         https://bugs.webkit.org/show_bug.cgi?id=184819
1321         <rdar://problem/39597337>
1322
1323         Reviewed by Dean Jackson.
1324
1325         * DumpRenderTree/TestOptions.h:
1326
1327 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1328
1329         Unreviewed, rolling out r236524.
1330
1331         Broke API tests
1332
1333         Reverted changeset:
1334
1335         "URLWithUserTypedString should return nil for URLs deemed to
1336         be invalid by WebCore::URL"
1337         https://bugs.webkit.org/show_bug.cgi?id=189979
1338         https://trac.webkit.org/changeset/236524
1339
1340 2018-09-26  James Savage  <james.savage@apple.com>
1341
1342         Allow override of viewport configuration.
1343         https://bugs.webkit.org/show_bug.cgi?id=188772.
1344         <rdar://problem/43538892>.
1345
1346         Reviewed by Simon Fraser.
1347
1348         * WebKitTestRunner/TestController.cpp:
1349         (WTR::updateTestOptionsFromTestHeader): Parse new test option key from comments.
1350         * WebKitTestRunner/TestOptions.h:
1351         * WebKitTestRunner/ios/TestControllerIOS.mm:
1352         (WTR::TestController::platformConfigureViewForTest): Handle new test option by
1353         modifying the web view's preferences accordingly.
1354
1355 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1356
1357         URLs with mismatched surrogate pairs in the host should fail to parse
1358         https://bugs.webkit.org/show_bug.cgi?id=190005
1359
1360         Reviewed by Chris Dumez.
1361
1362         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1363         (TestWebKitAPI::TEST_F):
1364
1365 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1366
1367         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
1368         https://bugs.webkit.org/show_bug.cgi?id=189979
1369         <rdar://problem/44119696>
1370
1371         Reviewed by Chris Dumez.
1372
1373         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1374         (TestWebKitAPI::TEST):
1375
1376 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1377
1378         Selection should work across shadow boundary when initiated by a mouse drag
1379         https://bugs.webkit.org/show_bug.cgi?id=151380
1380         <rdar://problem/24363872>
1381
1382         Reviewed by Wenson Hsieh.
1383
1384         Added the support for internal:selectionAcrossShadowBoundariesEnabled test option.
1385
1386         * DumpRenderTree/TestOptions.cpp:
1387         (TestOptions::TestOptions):
1388         * DumpRenderTree/TestOptions.h:
1389         * DumpRenderTree/mac/DumpRenderTree.mm:
1390         (resetWebPreferencesToConsistentValues):
1391         (setWebPreferencesForTestOptions):
1392
1393 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1394
1395         MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features
1396         https://bugs.webkit.org/show_bug.cgi?id=189989
1397
1398         Reviewed by Simon Fraser.
1399
1400         When the preference isn't found in user defaults, use the default value of each feature's enabledness.
1401
1402         * MiniBrowser/mac/AppDelegate.m:
1403         (defaultConfiguration):
1404
1405 2018-09-26  Philippe Normand  <pnormand@igalia.com>
1406
1407         [Flatpak] Bump to apr 1.6.5
1408
1409         Version 1.6.3 is no longer available on Apache's website.
1410
1411         Rubber-stamped by Michael Catanzaro.
1412
1413         * flatpak/org.webkit.WebKit.yaml:
1414
1415 2018-09-25  Jiewen Tan  <jiewen_tan@apple.com>
1416
1417         [WebAuthN] Make AuthenticatorManager
1418         https://bugs.webkit.org/show_bug.cgi?id=189279
1419         <rdar://problem/44116792>
1420
1421         Reviewed by Chris Dumez.
1422
1423         Besides the functionality to set the WebAuthenticationMockConfiguration. Three operations are
1424         added to manipulate Keychain: addTestKeyToKeychain, cleanUpKeychain and keyExistedInKeychain.
1425
1426         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1427         * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm: Removed.
1428         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1429         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1430         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
1431         (WTR::TestRunner::addTestKeyToKeychain):
1432         (WTR::TestRunner::cleanUpKeychain):
1433         (WTR::TestRunner::isKeyExisted):
1434         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1435         * WebKitTestRunner/TestController.cpp:
1436         (WTR::TestController::addTestKeyToKeychain):
1437         (WTR::TestController::cleanUpKeychain):
1438         (WTR::TestController::isKeyExisted):
1439         (WTR::TestController::setWebAuthenticationMockConfiguration):
1440         * WebKitTestRunner/TestController.h:
1441         * WebKitTestRunner/TestInvocation.cpp:
1442         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1443         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1444         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1445         (WTR::TestController::addTestKeyToKeychain):
1446         (WTR::TestController::cleanUpKeychain):
1447         (WTR::TestController::keyExistedInKeychain):
1448
1449 2018-09-25  Sihui Liu  <sihui_liu@apple.com>
1450
1451         Move Service Worker Management from Storage Process to Network Process
1452         https://bugs.webkit.org/show_bug.cgi?id=189422
1453
1454         Reviewed by Youenn Fablet.
1455
1456         Change a check in ServiceWorkers.HasServiceWorkerRegistrationBit as storage process is not
1457         launched during service worker operations now.
1458
1459         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1460
1461 2018-09-25  Eric Carlson  <eric.carlson@apple.com>
1462
1463         [MediaStream] Update constraints supported by getDisplayMedia
1464         https://bugs.webkit.org/show_bug.cgi?id=189930
1465         <rdar://problem/44740305>
1466
1467         Unreviewed, fix test broken by r236465.
1468
1469         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
1470         (TestWebKitAPI::TEST_F):
1471
1472 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
1473
1474         [WHSL] Implement semantics
1475         https://bugs.webkit.org/show_bug.cgi?id=189134
1476
1477         Reviewed by Filip Pizlo.
1478
1479         This patch adds parsing support and adds the checks required to support HLSL-style semantics.
1480
1481         There are 3 places where semantics are allowed:
1482
1483         1. In a field in a struct. E.g.
1484
1485         struct R {
1486             float4 position : SV_Position;
1487         }
1488         vertex R foo() {
1489             ...
1490         }
1491
1492         2. In a parameter of a function. If the function is not an entry point, the semantic is ignored.
1493
1494         compute void foo(device float[] data : buffer(u0)) {
1495             ...
1496         }
1497
1498         3. On a function. This is so you don't have to create structs for the return types of simple vertex shaders.
1499
1500         vertex float4 foo() : SV_Position {
1501             ...
1502         }
1503
1504         The semantics are partitioned into 4 types:
1505
1506         1. Built-in variables. For example, : SV_Position.
1507         2. Resources. For example, : register(u0).
1508         3. Stage-in / stage-out variables. For example, : attribute(0).
1509         4. Specialization constants. For example, : specialized.
1510
1511         The semantics are validated according to a collection of rules:
1512
1513         - The same entry point can't list the same semantic twice
1514         - Each built-in type has an appropriate type that is listed in the spec. 
1515         - Each built-in is appropriate as either an input or an output of a particular shader stage
1516         - Resource semantics have to have the appropriate type (e.g. can't use register(s0) on a buffer)
1517         - Resources can't be output from entry points
1518         - The resource semantic mode must match the address space of the resource
1519         - Stage-in and stage-out variables have to be POD
1520         - Specialization constants can't be output from entry points, and have to be numbers
1521
1522         * WebGPUShadingLanguageRI/All.js:
1523         * WebGPUShadingLanguageRI/BuiltInSemantic.js: Added.
1524         (BuiltInSemantic):
1525         (BuiltInSemantic.prototype.get name):
1526         (BuiltInSemantic.prototype.get extraArguments):
1527         (BuiltInSemantic.prototype.isAcceptableType):
1528         (BuiltInSemantic.prototype.isAcceptableForShaderType):
1529         (BuiltInSemantic.prototype.toString):
1530         * WebGPUShadingLanguageRI/CallExpression.js:
1531         (CallExpression.prototype._resolveWithOperatorAnderIndexer):
1532         (CallExpression.prototype._resolveWithOperatorLength):
1533         * WebGPUShadingLanguageRI/Checker.js:
1534         (Checker):
1535         (Checker.prototype.visitProgram):
1536         (Checker.prototype._checkSemantics.Item):
1537         (Checker.prototype._checkSemantics.Item.prototype.get type):
1538         (Checker.prototype._checkSemantics.Item.prototype.get semantic):
1539         (Checker.prototype._checkSemantics.Gatherer):
1540         (Checker.prototype._checkSemantics.Gatherer.prototype.reset):
1541         (Checker.prototype._checkSemantics.Gatherer.prototype.set currentSemantic):
1542         (Checker.prototype._checkSemantics.Gatherer.prototype.get currentSemantic):
1543         (Checker.prototype._checkSemantics.Gatherer.prototype.get result):
1544         (Checker.prototype._checkSemantics.Gatherer.prototype.visitEnumType):
1545         (Checker.prototype._checkSemantics.Gatherer.prototype.visitVectorType):
1546         (Checker.prototype._checkSemantics.Gatherer.prototype.visitMatrixType):
1547         (Checker.prototype._checkSemantics.Gatherer.prototype.visitNativeType):
1548         (Checker.prototype._checkSemantics.Gatherer.prototype.visitStructType):
1549         (Checker.prototype._checkSemantics.Gatherer.prototype.visitTypeRef):
1550         (Checker.prototype._checkSemantics.Gatherer.prototype.visitPtrType):
1551         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayRefType):
1552         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayType):
1553         (Checker.prototype._checkSemantics.Gatherer.prototype.visitFuncParameter):
1554         (Checker.prototype._checkSemantics.checkDuplicateSemantics):
1555         (Checker.prototype._checkSemantics.checkSemanticTypes):
1556         (Checker.prototype._checkSemantics.checkSemanticForShaderType):
1557         (Checker.prototype._checkSemantics.PODChecker.prototype.visitEnumType):
1558         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayType):
1559         (Checker.prototype._checkSemantics.PODChecker.prototype.visitVectorType):
1560         (Checker.prototype._checkSemantics.PODChecker.prototype.visitMatrixType):
1561         (Checker.prototype._checkSemantics.PODChecker.prototype.visitNativeType):
1562         (Checker.prototype._checkSemantics.PODChecker.prototype.visitPtrType):
1563         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayRefType):
1564         (Checker.prototype._checkSemantics.PODChecker.prototype.visitStructType):
1565         (Checker.prototype._checkSemantics.PODChecker.prototype.visitTypeRef):
1566         (Checker.prototype._checkSemantics.PODChecker):
1567         (Checker.prototype._checkSemantics.checkPODData):
1568         (Checker.prototype._checkSemantics):
1569         (Checker.prototype._checkShaderType):
1570         (Checker.prototype._checkOperatorOverload):
1571         (Checker.prototype.visitFuncDef):
1572         (Checker.prototype.visitEnumType):
1573         (Checker.prototype.visitArrayType):
1574         (Checker.prototype.visitMakePtrExpression):
1575         (Checker.prototype.visitMakeArrayRefExpression):
1576         (Checker.prototype._finishVisitingPropertyAccess):
1577         (Checker.prototype.visitIndexExpression):
1578         (Checker.prototype.visitReturn):
1579         (Checker.prototype.visitSwitchStatement):
1580         (Checker.prototype.visitTernaryExpression):
1581         (Checker.prototype.visitCallExpression):
1582         * WebGPUShadingLanguageRI/Field.js:
1583         (Field):
1584         (Field.prototype.get semantic):
1585         (Field.prototype.toString):
1586         * WebGPUShadingLanguageRI/Func.js:
1587         (Func):
1588         (Func.prototype.get semantic):
1589         (Func.prototype.toDeclString):
1590         * WebGPUShadingLanguageRI/FuncDef.js:
1591         (FuncDef):
1592         * WebGPUShadingLanguageRI/FuncParameter.js:
1593         (FuncParameter):
1594         (FuncParameter.prototype.get semantic):
1595         (FuncParameter.prototype.toString):
1596         * WebGPUShadingLanguageRI/Intrinsics.js:
1597         * WebGPUShadingLanguageRI/LateChecker.js:
1598         (LateChecker.prototype.visitReferenceType):
1599         (LateChecker):
1600         (LateChecker.prototype._checkShaderType): Deleted.
1601         (LateChecker.prototype.visitFuncDef): Deleted.
1602         * WebGPUShadingLanguageRI/NativeFunc.js:
1603         (NativeFunc):
1604         * WebGPUShadingLanguageRI/Parse.js:
1605         (parseParameter):
1606         (parseFuncDecl):
1607         (parseFuncDef):
1608         (parseStageInOutSemantic):
1609         (parseResourceSemantic):
1610         (parseSpecializationConstantSemantic):
1611         (parseBuiltInSemantic):
1612         (parseField):
1613         (parseNativeFunc):
1614         * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
1615         (programWithUnnecessaryThingsRemoved):
1616         * WebGPUShadingLanguageRI/ResourceSemantic.js: Added.
1617         (ResourceSemantic):
1618         (ResourceSemantic.prototype.get resourceMode):
1619         (ResourceSemantic.prototype.get index):
1620         (ResourceSemantic.prototype.get space):
1621         (ResourceSemantic.prototype.isAcceptableType):
1622         (ResourceSemantic.prototype.isAcceptableForShaderType):
1623         (ResourceSemantic.prototype.toString):
1624         * WebGPUShadingLanguageRI/Rewriter.js:
1625         (Rewriter.prototype.visitFuncParameter):
1626         (Rewriter.prototype.visitField):
1627         (Rewriter.prototype.visitBuiltInSemantic):
1628         (Rewriter.prototype.visitResourceSemantic):
1629         (Rewriter.prototype.visitStageInOutSemantic):
1630         (Rewriter.prototype.visitSpecializationConstantSemantic):
1631         (Rewriter):
1632         * WebGPUShadingLanguageRI/SPIRV.html:
1633         * WebGPUShadingLanguageRI/Semantic.js: Added.
1634         (Semantic):
1635         (Semantic.prototype.get origin):
1636         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitBuiltInSemantic):
1637         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitResourceSemantic):
1638         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitStageInOutSemantic):
1639         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitSpecializationConstantSemantic):
1640         (Semantic.prototype.equalToOtherSemantic.Comparer):
1641         (Semantic.prototype.equalToOtherSemantic):
1642         * WebGPUShadingLanguageRI/SpecializationConstantSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/Field.js.
1643         (SpecializationConstantSemantic):
1644         (SpecializationConstantSemantic.prototype.isAcceptableType):
1645         (SpecializationConstantSemantic.prototype.isAcceptableForShaderType):
1646         (SpecializationConstantSemantic.prototype.toString):
1647         * WebGPUShadingLanguageRI/StageInOutSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1648         (StageInOutSemantic):
1649         (StageInOutSemantic.prototype.get index):
1650         (StageInOutSemantic.prototype.isAcceptableType):
1651         (StageInOutSemantic.prototype.isAcceptableForShaderType):
1652         (StageInOutSemantic.prototype.toString):
1653         * WebGPUShadingLanguageRI/StatementCloner.js:
1654         (StatementCloner.prototype.visitNativeFunc):
1655         * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js:
1656         (synthesizeArrayOperatorLength):
1657         * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js:
1658         (synthesizeCopyConstructorOperator):
1659         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
1660         (synthesizeDefaultConstructorOperator):
1661         * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js:
1662         (synthesizeEnumFunctions):
1663         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
1664         (setupAnder):
1665         (synthesizeStructAccessorsForStructType):
1666         * WebGPUShadingLanguageRI/Test.html:
1667         * WebGPUShadingLanguageRI/Test.js:
1668         (tests.shaderTypes):
1669         * WebGPUShadingLanguageRI/Visitor.js:
1670         (Visitor.prototype.visitFunc):
1671         (Visitor.prototype.visitFuncParameter):
1672         (Visitor.prototype.visitField):
1673         (Visitor.prototype.visitBuiltInSemantic):
1674         (Visitor.prototype.visitResourceSemantic):
1675         (Visitor.prototype.visitStageInOutSemantic):
1676         (Visitor.prototype.visitSpecializationConstantSemantic):
1677         (Visitor):
1678         * WebGPUShadingLanguageRI/index.html:
1679
1680 2018-09-25  Thomas Denney  <tdenney@apple.com>
1681
1682         [WHLSL] Test suite for Metal code generation
1683         https://bugs.webkit.org/show_bug.cgi?id=187738
1684
1685         Reviewed by Myles C. Maxfield.
1686
1687         This patch adds an Xcode project that contains a Cocoa app that can be
1688         used for running WHLSL shaders on the GPU. It also contains an Xcode
1689         test suite that runs all of the tests in Test.js on the GPU.
1690
1691         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/.gitignore: Added.
1692         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.h: Added.
1693         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m: Added.
1694         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/AppIcon.appiconset/Contents.json: Added.
1695         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/Contents.json: Added.
1696         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Base.lproj/Main.storyboard: Added.
1697         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.h: Added.
1698         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m: Added.
1699         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.h: Added.
1700         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m: Added.
1701         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.h: Added.
1702         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m: Added.
1703         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl: Added.
1704         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl: Added.
1705         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl: Added.
1706         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Info.plist: Added.
1707         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.h: Added.
1708         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m: Added.
1709         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h: Added.
1710         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m: Added.
1711         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.h: Added.
1712         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m: Added.
1713         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.h: Added.
1714         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m: Added.
1715         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.h: Added.
1716         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m: Added.
1717         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h: Added.
1718         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m: Added.
1719         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h: Added.
1720         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m: Added.
1721         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h: Added.
1722         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m: Added.
1723         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/WHLSL.entitlements: Added.
1724         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/_SharedMetal.txt: Added.
1725         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/main.m: Added.
1726         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj: Added.
1727         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/Info.plist: Added.
1728         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m: Added.
1729         * WebGPUShadingLanguageRI/Test.js:
1730         (tests.lotsOfLocalVariables):
1731
1732 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
1733
1734         Unreviewed build fix after r236455
1735         https://bugs.webkit.org/show_bug.cgi?id=189121
1736
1737         * WebGPUShadingLanguageRI/Test.js:
1738         (tests.shaderStages):
1739
1740 2018-09-24  Myles C. Maxfield  <mmaxfield@apple.com>
1741
1742         [WHLSL] Not all functions should be able to run in all shader stages
1743         https://bugs.webkit.org/show_bug.cgi?id=189121
1744
1745         Reviewed by Filip Pizlo.
1746
1747         ddx() and ddy() can only run in fragment shaders, and the barrier functions can only run in compute shaders.
1748         ddx_coarse() & friends are currently implemented as just calling ddx(), so we only need to modify those functions
1749         if/when we make them native.
1750
1751         The texture sampling functions that use implicit derivatives can run in any shader stage - they just use a LOD of
1752         0. Therefore, those functions are unchanged.
1753
1754         * WebGPUShadingLanguageRI/All.js:
1755         * WebGPUShadingLanguageRI/Intrinsics.js:
1756         * WebGPUShadingLanguageRI/LateChecker.js:
1757         (LateChecker.prototype._checkShaderType):
1758         * WebGPUShadingLanguageRI/NativeFunc.js:
1759         (NativeFunc):
1760         (NativeFunc.prototype.get stage):
1761         (NativeFunc.prototype.toDeclString):
1762         * WebGPUShadingLanguageRI/Parse.js:
1763         (parseFuncDecl):
1764         (parseNativeFunc):
1765         (parseNative):
1766         * WebGPUShadingLanguageRI/Prepare.js:
1767         (let.prepare):
1768         * WebGPUShadingLanguageRI/SPIRV.html:
1769         * WebGPUShadingLanguageRI/StandardLibrary.js:
1770         (let.standardLibrary):
1771         * WebGPUShadingLanguageRI/StatementCloner.js:
1772         (StatementCloner.prototype.visitNativeFunc):
1773         * WebGPUShadingLanguageRI/Test.html:
1774         * WebGPUShadingLanguageRI/Test.js:
1775         (tests.shaderStages):
1776         * WebGPUShadingLanguageRI/WSyntaxError.js:
1777         (WSyntaxError.prototype.toString):
1778         (WSyntaxError):
1779         * WebGPUShadingLanguageRI/index.html:
1780
1781 2018-09-24  Thomas Denney  <tdenney@apple.com>
1782
1783         [WHLSL] Implement trap statements in Metal code generation
1784         https://bugs.webkit.org/show_bug.cgi?id=189615
1785
1786         Reviewed by Myles C. Maxfield.
1787
1788         Each function called by an entry point now receives an additional
1789         boolean pointer parameter, which is set to false if the function traps.
1790         After each function call (to a non-native function) this trap parameter
1791         is checked. The behavior of the interpreter has also been updated so
1792         that a function entry point catches the trap and instead returns zero,
1793         matching the behavior of compiled code.
1794
1795         * WebGPUShadingLanguageRI/Evaluator.js: Adds a new flag to allow the
1796         test suite to check for traps and also returns zero from entry points
1797         whose invocation trapped.
1798         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Pass program to function
1799         declarations.
1800         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Update dependencies.
1801         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Add program
1802         property.
1803         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Ditto.
1804         * WebGPUShadingLanguageRI/Metal/MSLInsertTrapParameter.js: Added.
1805         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Conforms to the
1806         new trapping behavior.
1807         * WebGPUShadingLanguageRI/Test.js: Update tests that trap.
1808
1809 2018-09-24  Thomas Denney  <tdenney@apple.com>
1810
1811         [WHLSL] It shouldn’t be possible to use ternary expressions as l-values
1812         https://bugs.webkit.org/show_bug.cgi?id=189290
1813
1814         Reviewed by Myles C. Maxfield.
1815
1816         It is no longer possible for a ternary expression to be treated as an
1817         l-value. This patch adds several test cases to verify that this is the
1818         case.
1819
1820         * WebGPUShadingLanguageRI/Checker.js:
1821         (Checker.prototype.visitTernaryExpression): No longer check isLValue.
1822         * WebGPUShadingLanguageRI/NormalUsePropertyResolver:
1823         (NormalUsePropertyResolver.visitTernaryExpression): Deleted.
1824         * WebGPUShadingLanguageRI/Rewriter.js:
1825         (Rewriter.prototype.visitTernaryExpression): No longer copy isLValue.
1826         * WebGPUShadingLanguageRI/TernaryExpression.js:
1827         (TernaryExpression):
1828         (TernaryExpression.prototype.get elseExpression):
1829         (TernaryExpression.prototype.get isLValue): Deleted.
1830         (TernaryExpression.prototype.set isLValue): Deleted.
1831         * WebGPUShadingLanguageRI/Test.js:
1832         (tests.ternaryExpression): Add checks for failure if a failure is used
1833         as an l-value.
1834         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor.prototype.visitTernaryExpression): Deleted.
1835         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor): Deleted.
1836         (tests.ternaryExpressionIsLValue): Deleted.
1837
1838 2018-09-24  Jer Noble  <jer.noble@apple.com>
1839
1840         SharedBuffer should have an equality test
1841         https://bugs.webkit.org/show_bug.cgi?id=189919
1842
1843         Reviewed by Alex Christensen.
1844
1845         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
1846         (TestWebKitAPI::TEST_F):
1847
1848 2018-09-24  Alex Christensen  <achristensen@webkit.org>
1849
1850         Prepare to replace WKBundleFileHandleCreateWithPath with a version that takes a WKBundlePageRef
1851         https://bugs.webkit.org/show_bug.cgi?id=189929
1852
1853         Reviewed by Andy Estes.
1854
1855         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp:
1856
1857 2018-09-24  Thomas Denney  <tdenney@apple.com>
1858
1859         [WHLSL] Casting user-created types to themselves should always work
1860         https://bugs.webkit.org/show_bug.cgi?id=189113
1861
1862         Reviewed by Myles C. Maxfield.
1863
1864         Casting user-defined types to themselves worked already, but we didn't
1865         test it anywhere.
1866
1867         * WebGPUShadingLanguageRI/Test.js:
1868         (tests.selfCasts):
1869
1870 2018-09-24  Zan Dobersek  <zdobersek@igalia.com>
1871
1872         Unreviewed build fix for Jhbuild-using ports.
1873
1874         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch:
1875         Adjust the patch so it applies cleanly on the 1.14.3 version of the
1876         gst-plugins-good package.
1877
1878 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
1879
1880         Update flakiness dashboard configuration for iOS 12 queues
1881         https://bugs.webkit.org/show_bug.cgi?id=189688
1882
1883         Reviewed by Alexey Proskuryakov.
1884
1885         * TestResultServer/static-dashboards/builders.jsonp:
1886
1887 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1888
1889         [GStreamer] Unreviewed build fix.
1890
1891         A GStreamer patch was not applying cleanly on 1.14.3.
1892
1893         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch:
1894
1895 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1896
1897         [MSE][GStreamer] Use no-more-pads event for noticing initialization segments
1898         https://bugs.webkit.org/show_bug.cgi?id=189868
1899
1900         Reviewed by Xabier Rodriguez-Calvar.
1901
1902         Added patch from https://bugzilla.gnome.org/show_bug.cgi?id=797187
1903
1904         * gstreamer/jhbuild.modules:
1905         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Added.
1906
1907 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1908         [MSE][GStreamer] Add patch to jhbuild: matroskademux: Allow Matroska headers to be read more than once
1909         https://bugs.webkit.org/show_bug.cgi?id=185731
1910
1911         Reviewed by Xabier Rodriguez-Calvar.
1912
1913         Upstream bug in GStreamer: https://bugzilla.gnome.org/show_bug.cgi?id=793333
1914
1915         This fixes YTTV 35. AppendMultipleInitOpusAudio (and any other use
1916         case where two WebM initialization segments are appended on a row).
1917
1918         * gstreamer/jhbuild.modules:
1919         * gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Added.
1920         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Added.
1921         * gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Added.
1922
1923 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1924
1925         [WHSL] Need grammar to specify kernel group size
1926         https://bugs.webkit.org/show_bug.cgi?id=189108
1927
1928         Reviewed by Dean Jackson.
1929
1930         In HLSL, compute functions are annotated with their workgroup size.
1931         For example,
1932
1933         [numthreads(3, 4, 5)] compute void foo(...) { ... }
1934
1935         * WebGPUShadingLanguageRI/All.js:
1936         * WebGPUShadingLanguageRI/Func.js:
1937         (Func):
1938         (Func.prototype.get attributeBlock):
1939         * WebGPUShadingLanguageRI/FuncAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1940         (FuncAttribute):
1941         * WebGPUShadingLanguageRI/FuncDef.js:
1942         (FuncDef):
1943         * WebGPUShadingLanguageRI/FuncNumThreadsAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1944         (FuncNumThreadsAttribute):
1945         (FuncNumThreadsAttribute.prototype.get x):
1946         (FuncNumThreadsAttribute.prototype.get y):
1947         (FuncNumThreadsAttribute.prototype.get z):
1948         * WebGPUShadingLanguageRI/LateChecker.js:
1949         (LateChecker.prototype._checkShaderType):
1950         * WebGPUShadingLanguageRI/Parse.js:
1951         (parseAttributeBlock):
1952         (parseFuncDecl):
1953         (parseFuncDef):
1954         (parseNativeFunc):
1955         * WebGPUShadingLanguageRI/SPIRV.html:
1956         * WebGPUShadingLanguageRI/StatementCloner.js:
1957         (StatementCloner.prototype.visitFuncDef):
1958         (StatementCloner.prototype.visitFuncNumThreadsAttribute):
1959         (StatementCloner):
1960         * WebGPUShadingLanguageRI/Test.html:
1961         * WebGPUShadingLanguageRI/Test.js:
1962         (tests.numThreads):
1963         * WebGPUShadingLanguageRI/Visitor.js:
1964         (Visitor.prototype.visitFunc):
1965         (Visitor.prototype.visitFuncNumThreadsAttribute):
1966         (Visitor):
1967         * WebGPUShadingLanguageRI/index.html:
1968
1969 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1970
1971         Native functions which accept pointers need to do null checks
1972         https://bugs.webkit.org/show_bug.cgi?id=189883
1973
1974         Reviewed by Dean Jackson.
1975
1976         Simply guard all the places where we write through an author-provided pointer.
1977
1978         * WebGPUShadingLanguageRI/Intrinsics.js:
1979         (Intrinsics.):
1980         * WebGPUShadingLanguageRI/Test.js:
1981         (tests.textureDimensionsNull):
1982
1983 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1984
1985         [WHLSL] Implement atomic operations and barriers
1986         https://bugs.webkit.org/show_bug.cgi?id=189025
1987
1988         Reviewed by Dean Jackson.
1989
1990         In the interpreter, atomic operations don't need to be atomic.
1991
1992         * WebGPUShadingLanguageRI/Intrinsics.js:
1993         (Intrinsics.):
1994         * WebGPUShadingLanguageRI/StandardLibrary.js:
1995         (let.standardLibrary):
1996         * WebGPUShadingLanguageRI/Test.js:
1997         (tests.atomics):
1998
1999 2018-09-22  Thibault Saunier  <tsaunier@igalia.com>
2000
2001         [WPE] Be very permissive in the MiniBrowser.
2002         https://bugs.webkit.org/show_bug.cgi?id=189800
2003
2004         This is just a test tool and we should make
2005         it just work, security and privacy is not really
2006         a primary focus here.
2007
2008         Reviewed by Žan Doberšek.
2009
2010         * MiniBrowser/wpe/main.cpp:
2011         (decidePermissionRequest):
2012         (main):
2013
2014 2018-09-21  Thomas Denney  <tdenney@apple.com>
2015
2016         [WHLSL] Local variables should be statically allocated
2017         https://bugs.webkit.org/show_bug.cgi?id=188402
2018
2019         Reviewed by Myles C. Maxfield.
2020
2021         An additional preparation stage is now performed so that all local
2022         variables and function parameters are allocated in a single struct at
2023         entry points. A pointer to this struct is then passed for function
2024         calls.
2025
2026         * WebGPUShadingLanguageRI/All.js: Update dependencies.
2027         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js: Added new stage.
2028         * WebGPUShadingLanguageRI/CallExpression.js:
2029         (CallExpression.prototype.set argumentList): Add setter because
2030         allocateAtEntryPoints needs to change this.
2031         * WebGPUShadingLanguageRI/EBufferBuilder.js: Remove a redundant
2032         constructor that wasn't used anywhere.
2033         * WebGPUShadingLanguageRI/Func.js:
2034         (Func.prototype.set parameters): Add setter.
2035         * WebGPUShadingLanguageRI/FuncDef.js:
2036         (FuncDef.prototype.set body): Ditto.
2037         * WebGPUShadingLanguageRI/Prepare.js:
2038         (let.prepare): Add call to allocateAtEntryPoints. This call cannot
2039         happen any earlier because it depends on having types for call
2040         arguments.
2041         * WebGPUShadingLanguageRI/Rewriter.js:
2042         (Rewriter.prototype.visitReturn): Resolve issue where the return
2043         statement's function wasn't copied. A null check is required as the
2044         Rewriter might be used before this property is set.
2045         * WebGPUShadingLanguageRI/SPIRV.html: Update dependencies.
2046         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Abstracted logic
2047         into a separate function so that allocateAtEntryPoints can create the
2048         accessors for the struct type it introduces.
2049         * WebGPUShadingLanguageRI/Test.html: Update dependencies.
2050         * WebGPUShadingLanguageRI/Test.js: Add new tests to verify the static
2051         allocation transform works safely.
2052         * WebGPUShadingLanguageRI/index.html: Update dependencies.
2053
2054 2018-09-21  Jonathan Bedard  <jbedard@apple.com>
2055
2056         Bring up queues for iOS 12 (Build fix)
2057         https://bugs.webkit.org/show_bug.cgi?id=189683
2058
2059         Unreviewed build fix.
2060
2061         We should not build ImageDiff as x86 by default since 32 bit projects are
2062         deprecated in Xcode. ImageDiff should only be built once.
2063
2064         * Scripts/build-webkit:
2065         * Scripts/webkitdirs.pm:
2066         (argumentsForConfiguration):
2067
2068 2018-09-21  Adrian Perez de Castro  <aperez@igalia.com>
2069
2070         [WPE] Built RPM of WPE webkit fails to install with "nothing provides libWPEToolingBackends.so()"
2071         https://bugs.webkit.org/show_bug.cgi?id=189797
2072
2073         Reviewed by Žan Doberšek.
2074
2075         * wpe/backends/CMakeLists.txt: Make libWPEToolingBackends a static library to avoid
2076         the need for installing it. This works fine because the library only contains utility
2077         code intended to be reused from other various components (MiniBrowser, WebKitTestRunner).
2078
2079 2018-09-20  Daniel Bates  <dabates@apple.com>
2080
2081         Move IOKitSPI.h from TestRunnerShared to PAL
2082         https://bugs.webkit.org/show_bug.cgi?id=189804
2083
2084         Reviewed by Wenson Hsieh.
2085
2086         Towards fixing <https://bugs.webkit.org/show_bug.cgi?id=189604> move the IOKit SPI forward
2087         declarations to PAL so that they can be shared by WebKit, DumpRenderTree and WebKitTestRunner.
2088
2089         No functionality changed. So, no new tests.
2090
2091         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
2092         * TestRunnerShared/spi/UIKitTestSPI.h:
2093         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2094         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2095
2096 2018-09-20  Thomas Denney  <tdenney@apple.com>
2097
2098         [WHLSL] Metal code generation
2099         https://bugs.webkit.org/show_bug.cgi?id=187735
2100
2101         Reviewed by Myles C. Maxfield.
2102
2103         Adds support for generating Metal Shading Language from WHLSL. Clients
2104         should include the file MetalCodegenAll.js and then call whlslToMsl
2105         with their program source code to compile to Metal.
2106
2107         * WebGPUShadingLanguageRI/ArrayType.js:
2108         (ArrayType.prototype.get arrayRefType): Adds the arrayRefType method to
2109         all types to find the type of that expression when it is used in a
2110         MakeArrayRefExpression.
2111         * WebGPUShadingLanguageRI/MakeArrayRefExpression.js:
2112         (MakeArrayRefExpression):
2113         (MakeArrayRefExpression.prototype.get type): Uses the new arrayRefType
2114         getter on all types to find the type of the expression.
2115         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Added.
2116         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Added.
2117         * WebGPUShadingLanguageRI/Metal/MSLCompileResult.js: Added.
2118         * WebGPUShadingLanguageRI/Metal/MSLConstexprEmitter.js: Added.
2119         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Added.
2120         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Added.
2121         * WebGPUShadingLanguageRI/Metal/MSLFunctionForwardDeclaration.js: Added.
2122         * WebGPUShadingLanguageRI/Metal/MSLNameMangler.js: Added.
2123         * WebGPUShadingLanguageRI/Metal/MSLNativeFunctionCall.js: Added.
2124         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Added.
2125         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributes.js: Added.
2126         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributesMap.js: Added.
2127         * WebGPUShadingLanguageRI/Metal/MSLTypeUnifier.js: Added.
2128         * WebGPUShadingLanguageRI/Metal/TypeOf.js: Added.
2129         * WebGPUShadingLanguageRI/Metal/WhlslToMsl.js: Added.
2130         * WebGPUShadingLanguageRI/PropertyResolver.js:
2131         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
2132         * WebGPUShadingLanguageRI/Test.js: Added awkward tests for the compiler
2133         to generate code for.
2134         (tests.incrementAndDecrement):
2135         (tests.returnIntLiteralUint):
2136         (tests.returnIntLiteralFloat):
2137         (tests.nestedSubscriptWithArraysInStructs):
2138         (tests.nestedSubscript):
2139         (tests.lotsOfLocalVariables):
2140         * WebGPUShadingLanguageRI/Type.js:
2141         (Type.prototype.get arrayRefType): See above.
2142
2143 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
2144
2145         Bring up queues for iOS 12
2146         https://bugs.webkit.org/show_bug.cgi?id=189683
2147
2148         Unreviewed infrastructure fix.
2149
2150         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12@2x.png: Renamed from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png.
2151         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2152         (BubbleQueueServer): Move EWS bubbles to the iOS 12 section of the dashboard.
2153
2154 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
2155
2156         Bring up queues for iOS 12
2157         https://bugs.webkit.org/show_bug.cgi?id=189683
2158
2159         Reviewed by Aakash Jain.
2160
2161         * BuildSlaveSupport/build.webkit.org-config/config.json:
2162         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png: Added.
2163         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png: Added.
2164         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png: Added.
2165         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png: Added.
2166         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2167         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2168         (WebKitBuildbot):
2169         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2170         (table.queue-grid tr.platform.ios-simulator-12 img.logo):
2171         (table.queue-grid tr.platform.ios-12 img.logo):
2172         (table.queue-grid tr.platform.ios-simulator-11 img.logo): Deleted.
2173         (table.queue-grid tr.platform.ios-11 img.logo): Deleted.
2174         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2175         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2176         (_should_file_trigger_build):
2177         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
2178         (ShouldBuildTest):
2179         (ShouldBuildTest.test_should_build):
2180
2181 2018-09-20  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2182
2183         [Win] TestRunner::queueLoad() fails to generate correct url for some urls.
2184         https://bugs.webkit.org/show_bug.cgi?id=189679
2185
2186         Reviewed by Fujii Hironori.
2187
2188         Replace the implementation with correct API call.
2189
2190         * DumpRenderTree/win/TestRunnerWin.cpp:
2191         (TestRunner::queueLoad): Call UrlCombineW.
2192
2193 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2194
2195         [WPE] fails to build on ARM arches complaining about undefined reference to `epoxy_eglMakeCurrent'
2196         https://bugs.webkit.org/show_bug.cgi?id=189556
2197
2198         Reviewed by Konstantin Tokarev.
2199
2200         This is only a speculative build fix as I didn't attempt to reproduce. Explicitly link to
2201         libepoxy.
2202
2203         * wpe/backends/CMakeLists.txt:
2204
2205 2018-09-20  Daniel Bates  <dabates@apple.com>
2206
2207         [iOS] Support testing more hardware special keys
2208         https://bugs.webkit.org/show_bug.cgi?id=189793
2209
2210         Reviewed by Simon Fraser.
2211
2212         * TestRunnerShared/spi/IOKitSPI.h: Add more SPI constants.
2213         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2214         (keyCodeForDOMFunctionKey): Extracted out logic from hidUsageCodeForCharacter() to return the
2215         key code for the F1, F2, ..., F12 keys and extended the code to compute the key code for the
2216         F13, F14, ..., F24 keys.
2217         (hidUsageCodeForCharacter): Modified to call keyCodeForDOMFunctionKey().
2218
2219 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2220
2221         Unreviewed, remove accidentally-committed debugging changes from flatpakutils script
2222
2223         Aaaaaah maybe this is why changes are supposed to be reviewed.
2224
2225         * flatpak/flatpakutils.py:
2226         (WebkitFlatpak.clean_args):
2227
2228 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2229
2230         Unreviewed, manually rollout our switch to master runtime
2231
2232         Phil wants html5-codecs, which aren't available yet here. Let's switch back to 3.28 in the
2233         meantime, where we were already building GStreamer ourselves anyway. But use an updated
2234         SDK revision.
2235
2236         * flatpak/files/httpd-autogen.sh: Added.
2237         * flatpak/flatpakutils.py:
2238         (WebkitFlatpak.clean_args):
2239         * flatpak/org.webkit.GTK.yaml:
2240         * flatpak/org.webkit.WebKit.yaml:
2241         * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
2242         * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Added.
2243
2244 2018-09-20  Thibault Saunier  <tsaunier@igalia.com>
2245
2246         [WPE][GTK] webkit-flatpak intercepts --help for other commands
2247         https://bugs.webkit.org/show_bug.cgi?id=189058
2248
2249         The approach of run_in_sandbox_if_available is that we basically have the
2250         same set of arguments to setup the sandbox (ie. port name, build type, etc...)
2251         and we can pass those args first to setup the flatpak launcher object
2252         and then to the underlying script. That doesn't work well with the `--help` argument
2253         as once processed it 1. prints the help (which make no sense to the user of the calling script)
2254         2. exits the app - The solution is to just make sure that `--help` is not used when using
2255         flatpakutils from any script that is not `webkit-flatpak` itself.
2256
2257         Reviewed by Michael Catanzaro.
2258
2259         * flatpak/flatpakutils.py:
2260         (WebkitFlatpak.load_from_args):
2261         (run_in_sandbox_if_available):
2262
2263 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2264
2265         Unreviewed. Add W3C imported tests to the MSEEME watchlist.
2266
2267         * Scripts/webkitpy/common/config/watchlist:
2268
2269 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2270
2271         Unreviewed. Fix the Streams API watchlist.
2272
2273         * Scripts/webkitpy/common/config/watchlist:
2274
2275 2018-09-19  Chris Dumez  <cdumez@apple.com>
2276
2277         Crash under WebProcessProxy::suspendedPageWasDestroyed(WebKit::SuspendedPageProxy&)
2278         https://bugs.webkit.org/show_bug.cgi?id=189721
2279         <rdar://problem/44359788>
2280
2281         Reviewed by Geoffrey Garen.
2282
2283         Add API test coverage.
2284
2285         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2286
2287 2018-09-19  Thomas Denney  <tdenney@apple.com>
2288
2289         [WHLSL] Improve test suite type safety
2290         https://bugs.webkit.org/show_bug.cgi?id=189502
2291
2292         Reviewed by Myles C. Maxfield.
2293
2294         Each of the 'makeT' functions now call the relevant cast function on the
2295         value before hand. The checkNumber function has also been removed and
2296         its uses have been replaced with functions that also check the type.
2297         Some of the arithmetic checks have been updated to reflect that the
2298         casts happen outside of WHLSL evaluation. Other tests have also been
2299         updated to reflect that some values cannot be precisely expressed in
2300         32-bit floating point.
2301
2302         * WebGPUShadingLanguageRI/Casts.js:
2303         (castToBool): Added.
2304         (castAndCheckValue): Added.
2305         (isBitwiseEquivalent): Moved from Intrinsics.js.
2306         * WebGPUShadingLanguageRI/Intrinsics.js: Ditto.
2307         * WebGPUShadingLanguageRI/SPIRV.html: Update depdencies.
2308         * WebGPUShadingLanguageRI/Test.html: Ditto.
2309         * WebGPUShadingLanguageRI/Test.js: Update makeT functions to do a cast
2310         and check the result. Some tests were also updated to reflect the change
2311         in the behavior of these functions.
2312         * WebGPUShadingLanguageRI/index.html: Update dependencies.
2313
2314 2018-09-19  John Wilander  <wilander@apple.com>
2315
2316         Resource Load Statistics: Add optional cap on partitioned cache max age
2317         https://bugs.webkit.org/show_bug.cgi?id=189711
2318         <rdar://problem/39246837>
2319
2320         Reviewed by Antti Koivisto and Chris Dumez.
2321
2322         This change adds infrastructure for layout tests of capped cache max age.
2323
2324         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2325         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2326         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
2327         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2328         * WebKitTestRunner/TestController.cpp:
2329         (WTR::TestController::setStatisticsCacheMaxAgeCap):
2330         * WebKitTestRunner/TestController.h:
2331         * WebKitTestRunner/TestInvocation.cpp:
2332         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2333
2334 2018-09-19  Dawei Fenton  <realdawei@apple.com>
2335
2336        Unreviewed. Update my email and alias in list of contributors.
2337
2338         * Scripts/webkitpy/common/config/contributors.json:
2339
2340 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2341
2342         [WPE][GTK] Unreviewed, try #3 to fix a typo
2343
2344         I feel like Charlie Brown, how hard this has been for me....
2345
2346         * Scripts/run-minibrowser:
2347         * Scripts/webkitdirs.pm:
2348         (runInFlatpakIfAvailable):
2349         (runInFlatpakIfAvailible): Deleted.
2350
2351 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2352
2353         [WPE][GTK] Unreviewed, fix that typo in more places
2354
2355         It got copied into webkitdirs.pm!
2356
2357         * Scripts/webkitdirs.pm:
2358         (runInFlatpakIfAvailible):
2359         (runInFlatpakIfAvalaible): Deleted.
2360
2361 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2362
2363         [WPE][GTK] Unreviewed, fix a pervasive typo in the webkit-flatpak script
2364
2365         * flatpak/flatpakutils.py:
2366         (WebkitFlatpak.load_from_args):
2367         (WebkitFlatpak.__init__):
2368         (WebkitFlatpak.run):
2369
2370 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2371
2372         [WPE][GTK] Unreviewed, update to latest GNOME SDK
2373
2374         * flatpak/org.webkit.WebKit.yaml:
2375
2376 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2377
2378         Unreviewed, rolling out r235500.
2379
2380         Time to switch back to master runtime
2381
2382         Reverted changeset:
2383
2384         "Unreviewed, rolling out r235114."
2385         https://bugs.webkit.org/show_bug.cgi?id=188731
2386         https://trac.webkit.org/changeset/235500
2387
2388 2018-09-19  Adrian Perez de Castro  <aperez@igalia.com>
2389
2390         Unreviewed. Add Pablo Saavedra to the list of contributors.
2391
2392         * Scripts/webkitpy/common/config/contributors.json:
2393
2394 2018-09-19  Philippe Normand  <pnormand@igalia.com>
2395
2396         [GStreamer] Add support for AV1 decoding
2397         https://bugs.webkit.org/show_bug.cgi?id=189647
2398
2399         Reviewed by Žan Doberšek.
2400
2401         Add patches required for AV1 decoding support. They're all
2402         upstream already and will be shipped in GStreamer 1.16. The aom
2403         GStreamer plugin depends on the aom library for which there's no
2404         official release yet.
2405
2406         * gstreamer/jhbuild.modules:
2407         * gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Added.
2408         * gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Added.
2409         * gstreamer/patches/gst-plugins-good-0001-qtdemux-Detect-and-expose-CEA-608-708-Closed-Caption.patch: Added. This one is unrelated but an implicit dependency of the next one.
2410         * gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Added.
2411         * gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Added.
2412         * gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Added.
2413
2414 2018-09-18  Jonathan Bedard  <jbedard@apple.com>
2415
2416         webkitpy: Clobbering and building occurs multiple times for iOS Simulator ports
2417         https://bugs.webkit.org/show_bug.cgi?id=189702
2418         <rdar://problem/44541704>
2419
2420         Reviewed by Aakash Jain.
2421
2422         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2423         (Manager._set_up_run): Move build check and clobbering to run, since set up is
2424         run multiple times for iOS simulator.
2425         (Manager.run):
2426
2427 2018-09-18  Chris Dumez  <cdumez@apple.com>
2428
2429         "DidFirstVisuallyNonEmptyLayout" callback does not get called when restoring a page from PageCache
2430         https://bugs.webkit.org/show_bug.cgi?id=189681
2431         <rdar://problem/44526171>
2432
2433         Reviewed by Alex Christensen and Zalan Bujtas.
2434
2435         Add API test coverage.
2436
2437         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
2438         (TestWebKitAPI::didFinishNavigation):
2439         (TestWebKitAPI::TEST):
2440
2441 2018-09-18  Claudio Saavedra  <csaavedra@igalia.com>
2442
2443         [WPE] Implement mouse event modifiers
2444         https://bugs.webkit.org/show_bug.cgi?id=189697
2445
2446         Reviewed by Carlos Garcia Campos.
2447
2448         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2449         (WTR::wkEventModifiersToWPE):
2450         (WTR::EventSenderProxy::mouseDown):
2451         (WTR::EventSenderProxy::mouseUp):
2452
2453 2018-09-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2454
2455         [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
2456         https://bugs.webkit.org/show_bug.cgi?id=185339
2457
2458         Reviewed by Mark Lam.
2459
2460         * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
2461         (TestWebKitAPI::ToUpperConverter::stopProducing):
2462         (TestWebKitAPI::ToUpperConverter::stopConsuming):
2463
2464 2018-09-17  Simon Fraser  <simon.fraser@apple.com>
2465
2466         Many modern media control tests leak documents in testing
2467         https://bugs.webkit.org/show_bug.cgi?id=189437
2468
2469         Reviewed by Darin Adler.
2470         
2471         In order to accurately detect leaks in media controls tests which use lots of
2472         SVGImages, we have to:
2473         - Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer
2474           to clear references to elements.
2475         - Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources()
2476           to drop the last handle to the CachedResource for an SVGImage.
2477         - Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources()
2478           to run again after that timer has fired.
2479         
2480         This should fix most of the spurious leak reports involving SVGImage documents.
2481
2482         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2483         (WTR::InjectedBundle::reportLiveDocuments):
2484         (WTR::InjectedBundle::didReceiveMessageToPage):
2485
2486 2018-09-17  Chris Dumez  <cdumez@apple.com>
2487
2488         PSON: window.open() with 'noopener' should only process-swap cross-site, not cross-origin
2489         https://bugs.webkit.org/show_bug.cgi?id=189602
2490         <rdar://problem/44430549>
2491
2492         Reviewed by Geoff Garen.
2493
2494         Add API test coverage.
2495
2496         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2497
2498 2018-09-17  Philippe Normand  <pnormand@igalia.com>
2499
2500         [JHBuild] Update to GStreamer 1.14.3
2501         https://bugs.webkit.org/show_bug.cgi?id=189450
2502
2503         Reviewed by Xabier Rodriguez-Calvar.
2504
2505         * gstreamer/jhbuild.modules: Bump GStreamer modules from 1.14.1 to 1.14.3.
2506
2507 2018-09-17  Philippe Normand  <pnormand@igalia.com>
2508
2509         [JHBuild] Doesn't check sha256 sums
2510         https://bugs.webkit.org/show_bug.cgi?id=189646
2511
2512         Reviewed by Michael Catanzaro.
2513
2514         * gstreamer/jhbuild.modules: Properly set the sha256: prefix on hashes.
2515
2516 2018-09-17  Sihui Liu  <sihui_liu@apple.com>
2517
2518         Move IndexedDB to Network Process
2519         https://bugs.webkit.org/show_bug.cgi?id=189415
2520         <rdar://problem/44396973>
2521
2522         Reviewed by Chris Dumez.
2523
2524         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
2525         (TEST):
2526         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
2527         (TEST):
2528         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
2529         (TEST):
2530         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
2531         (TEST):
2532         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
2533         (TEST):
2534
2535 2018-09-08  Darin Adler  <darin@apple.com>
2536
2537         Streamline JSRetainPtr, fix leaks of JSString and JSGlobalContext
2538         https://bugs.webkit.org/show_bug.cgi?id=189455
2539
2540         Reviewed by Keith Miller.
2541
2542         There is a lot of copied and pasted code for WebKit vs. Legacy WebKit
2543         testing and even for macOS vs. iOS vs. Windows platform-specific code.
2544         For now, this patch just makes corresponding changes to the copied code.
2545         Later we might get better results by merging more code instead of having
2546         all these separate copies.
2547
2548         * DumpRenderTree/AccessibilityController.cpp:
2549         (AccessibilityController::makeWindowObject): Use the adopt function
2550         instead of the special Adopt constructor of JSRetainPtr.
2551
2552         * DumpRenderTree/AccessibilityTextMarker.cpp: Removed unneeded include.
2553
2554         * DumpRenderTree/AccessibilityUIElement.cpp: Ditto.
2555         (allAttributesCallback): Don't adopt at this level; changed the
2556         underlying function to return a JSRetainPtr so the adopt is right next
2557         to the call to the create or copy function.
2558         (attributesOfLinkedUIElementsCallback): Ditto.
2559         (attributesOfDocumentLinksCallback): Ditto.
2560         (attributesOfChildrenCallback): Ditto.
2561         (parameterizedAttributeNamesCallback): Ditto.
2562         (attributesOfColumnHeadersCallback): Ditto.
2563         (attributesOfRowHeadersCallback): Ditto.
2564         (attributesOfColumnsCallback): Ditto.
2565         (attributesOfRowsCallback): Ditto.
2566         (attributesOfVisibleCellsCallback): Ditto.
2567         (attributesOfHeaderCallback): Ditto.
2568         (rowIndexRangeCallback): Ditto.
2569         (columnIndexRangeCallback): Ditto.
2570         (rangeForLineCallback): Ditto.
2571         (boundsForRangeCallback): Ditto.
2572         (rangeForPositionCallback): Ditto.
2573         (stringForRangeCallback): Ditto.
2574         (attributedStringForRangeCallback): Ditto.
2575         (uiElementCountForSearchPredicateCallback): Use the free adopt
2576         function instead of the adopt member function.
2577         (uiElementForSearchPredicateCallback): Ditto.
2578         (selectTextWithCriteriaCallback): Don't adopt at this level.
2579         (attributedStringForElementCallback): Ditto.
2580         (setValueCallback): Use free adopt.
2581         (stringAttributeValueCallback): Don't adopt at this level.
2582         (uiElementArrayAttributeValueCallback): Ditto.
2583         (uiElementAttributeValueCallback): Ditto.
2584         (stringForTextMarkerRangeCallback): Ditto.
2585         (attributedStringForTextMarkerRangeCallback): Ditto.
2586         (attributedStringForTextMarkerRangeWithOptionsCallback): Ditto.
2587         (getARIADropEffectsCallback): Ditto.
2588         (getClassListCallback): Ditto.
2589         (getRoleCallback): Ditto.
2590         (getSubroleCallback): Ditto.
2591         (getRoleDescriptionCallback): Ditto.
2592         (getComputedRoleStringCallback): Ditto.
2593         (getTitleCallback): Ditto.
2594         (getDescriptionCallback): Ditto.
2595         (getStringValueCallback): Ditto.
2596         (getLanguageCallback): Ditto.
2597         (getHelpTextCallback): Ditto.
2598         (getOrientationCallback): Ditto.
2599         (getPathDescriptionCallback): Ditto.
2600         (getSelectedTextRangeCallback): Ditto.
2601         (speakAsCallback): Ditto.
2602         (getValueDescriptionCallback): Ditto.
2603         (getAccessibilityValueCallback): Ditto.
2604         (getDocumentEncodingCallback): Ditto.
2605         (getDocumentURICallback): Ditto.
2606         (getURLCallback): Ditto.
2607         (characterAtOffsetCallback): Ditto.
2608         (wordAtOffsetCallback): Ditto.
2609         (lineAtOffsetCallback): Ditto.
2610         (sentenceAtOffsetCallback): Ditto.
2611         (stringForSelectionCallback): Ditto.
2612         (getIdentifierCallback): Ditto.
2613         (getTraitsCallback): Ditto.
2614         (supportedActionsCallback): Ditto.
2615         (mathPostscriptsDescriptionCallback): Ditto.
2616         (mathPrescriptsDescriptionCallback): Ditto.
2617         (AccessibilityUIElement::rangeForLine): Updated to return JSRetainPtr.
2618         (AccessibilityUIElement::rangeForPosition): Ditto.
2619         (AccessibilityUIElement::speakAs): Ditto.
2620         (AccessibilityUIElement::pathDescription const): Ditto.
2621         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2622         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2623         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2624
2625         * DumpRenderTree/AccessibilityUIElement.h: Use JSRetainPtr instead of
2626         raw pointers for the results of the functions that create strings.
2627         The old way was difficult to get right; the functions didn't even follow
2628         the create/copy naming rule.
2629
2630         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
2631         (_platformTypeConstructor): Use the adopt function instead of the
2632         JSRetainPtr adopt constructor. Also nullptr instead of 0.
2633
2634         * DumpRenderTree/GCController.cpp:
2635         (GCController::makeWindowObject): Use adopt function instead of constructor.
2636
2637         * DumpRenderTree/TestRunner.cpp:
2638         (pathToLocalResourceCallback): Use adopt function instead of constructor.
2639         (addDisallowedURLCallback): Ditto.
2640         (addURLToRedirectCallback): Ditto.
2641         (clearApplicationCacheForOriginCallback): Ditto.
2642         (applicationCacheDiskUsageForOriginCallback): Ditto.
2643         (decodeHostNameCallback): Don't adopt at this level.
2644         (encodeHostNameCallback): Ditto.
2645         (execCommandCallback): Use adopt instead of JSRetainPtr::adopt.
2646         (findStringCallback): Use adopt function instead of constructor.
2647         (isCommandEnabledCallback): Ditto.
2648         (overridePreferenceCallback): Ditto.
2649         (queueLoadCallback): Ditto.
2650         (queueLoadHTMLStringCallback): Ditto.
2651         (queueLoadingScriptCallback): Ditto.
2652         (queueNonLoadingScriptCallback): Ditto.
2653         (setAuthenticationPasswordCallback): Ditto.
2654         (setAuthenticationUsernameCallback): Ditto.
2655         (setDomainRelaxationForbiddenForURLSchemeCallback): Ditto.
2656         (setMockGeolocationPositionUnavailableErrorCallback): Ditto.
2657         (setPOSIXLocaleCallback): Ditto.
2658         (setPersistentUserStyleSheetLocationCallback): Ditto.
2659         (setUserStyleSheetLocationCallback): Ditto.
2660         (setValueForUserCallback): Ditto.
2661         (setWillSendRequestClearHeaderCallback): Ditto.
2662         (setPageVisibilityCallback): Ditto.
2663         (evaluateInWebInspectorCallback): Ditto.
2664         (evaluateScriptInIsolatedWorldCallback): Ditto.
2665         (evaluateScriptInIsolatedWorldAndReturnValueCallback): Ditto.
2666         (addOriginAccessWhitelistEntryCallback): Ditto.
2667         (removeOriginAccessWhitelistEntryCallback): Ditto.
2668         (setScrollbarPolicyCallback): Ditto.
2669         (addUserScriptCallback): Ditto.
2670         (addUserStyleSheetCallback): Ditto.
2671         (apiTestNewWindowDataLoadBaseURLCallback): Ditto.
2672         (authenticateSessionCallback): Ditto.
2673         (getTitleTextDirectionCallback): Ditto.
2674         (getInspectorTestStubURLCallback): Ditto.
2675         (simulateLegacyWebNotificationClickCallback): Ditto.
2676         (setTextDirectionCallback): Ditto.
2677         (grantWebNotificationPermissionCallback): Ditto.
2678         (denyWebNotificationPermissionCallback): Ditto.
2679         (accummulateLogsForChannel): Ditto.
2680         (runUIScriptCallback): Ditto.
2681         (TestRunner::makeWindowObject): Ditto.
2682         (TestRunner::uiScriptDidComplete): Ditto.
2683         (TestRunner::setOpenPanelFiles): Ditto.
2684
2685         * DumpRenderTree/TestRunner.h: Use JSRetainPtr instead of
2686         raw pointers for the results of the functions that create strings.
2687
2688         * DumpRenderTree/ios/AccessibilityControllerIOS.mm:
2689         (AccessibilityController::platformName const): Use the adopt
2690         function instead of the adopt constructor.
2691
2692         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2693         (createEmptyJSString): Added. This helper function makes reduces the
2694         repetitive code to create empty strings.
2695         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
2696         (AccessibilityUIElement::identifier): Ditto.
2697         (AccessibilityUIElement::traits): Ditto.
2698         (AccessibilityUIElement::url): Ditto.
2699         (AccessibilityUIElement::speakAs): Ditto.
2700         (AccessibilityUIElement::stringForSelection): Ditto.
2701         (AccessibilityUIElement::stringForRange): Ditto.
2702         (AccessibilityUIElement::attributedStringForRange): Ditto.
2703         (AccessibilityUIElement::attributedStringForElement): Ditto.
2704         (AccessibilityUIElement::pathDescription const): Ditto.
2705         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2706         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2707         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2708         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2709         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2710         (AccessibilityUIElement::attributesOfChildren): Ditto.
2711         (AccessibilityUIElement::allAttributes): Ditto.
2712         (AccessibilityUIElement::stringAttributeValue): Ditto.
2713         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2714         (AccessibilityUIElement::role): Ditto.
2715         (AccessibilityUIElement::subrole): Ditto.
2716         (AccessibilityUIElement::roleDescription): Ditto.
2717         (AccessibilityUIElement::computedRoleString): Ditto.
2718         (AccessibilityUIElement::title): Ditto.
2719         (AccessibilityUIElement::description): Ditto.
2720         (AccessibilityUIElement::orientation const): Ditto.
2721         (AccessibilityUIElement::stringValue): Ditto.
2722         (AccessibilityUIElement::language): Ditto.
2723         (AccessibilityUIElement::helpText const): Ditto.
2724         (AccessibilityUIElement::valueDescription): Ditto.
2725         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2726         (AccessibilityUIElement::boundsForRange): Ditto.
2727         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2728         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2729         (AccessibilityUIElement::attributesOfColumns): Ditto.
2730         (AccessibilityUIElement::attributesOfRows): Ditto.
2731         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2732         (AccessibilityUIElement::attributesOfHeader): Ditto.
2733         (AccessibilityUIElement::rowIndexRange): Ditto.
2734         (AccessibilityUIElement::columnIndexRange): Ditto.
2735         (AccessibilityUIElement::selectedTextRange): Ditto.
2736         (AccessibilityUIElement::accessibilityValue const): Ditto.
2737         (AccessibilityUIElement::documentEncoding): Ditto.
2738         (AccessibilityUIElement::documentURI): Ditto.
2739         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2740         (AccessibilityUIElement::classList const): Ditto.
2741
2742         * DumpRenderTree/mac/AccessibilityCommonMac.h: Changed the
2743         createJSStringRef method to return a JSRetainPtr.
2744         * DumpRenderTree/mac/AccessibilityCommonMac.mm:
2745         (-[NSString createJSStringRef]): Ditto.
2746         (searchPredicateParameterizedAttributeForSearchCriteria): Use the
2747         adopt function instead of the adopt constructor.
2748         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
2749         (AccessibilityController::platformName const): Ditto.
2750
2751         * DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
2752         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2753         (makeValueRefForValue): Updated for the above, no adopt needed here now.
2754         (makeObjectRefForDictionary): Ditto.
2755         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
2756
2757         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2758         (createEmptyJSString): Added. This helper function makes reduces the
2759         repetitive code to create empty strings.
2760         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
2761         (descriptionOfElements): Ditto.
2762         (selectTextParameterizedAttributeForCriteria): Ditto.
2763         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2764         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2765         (AccessibilityUIElement::attributesOfChildren): Ditto.
2766         (AccessibilityUIElement::allAttributes): Ditto.
2767         (AccessibilityUIElement::stringAttributeValue): Ditto.
2768         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2769         (AccessibilityUIElement::role): Ditto.
2770         (AccessibilityUIElement::subrole): Ditto.
2771         (AccessibilityUIElement::roleDescription): Ditto.
2772         (AccessibilityUIElement::computedRoleString): Ditto.
2773         (AccessibilityUIElement::title): Ditto.
2774         (AccessibilityUIElement::description): Ditto.
2775         (AccessibilityUIElement::orientation const): Ditto.
2776         (AccessibilityUIElement::stringValue): Ditto.
2777         (AccessibilityUIElement::language): Ditto.
2778         (AccessibilityUIElement::helpText const): Ditto.
2779         (AccessibilityUIElement::valueDescription): Ditto.
2780         (AccessibilityUIElement::speakAs): Ditto.
2781         (AccessibilityUIElement::classList const): Ditto.
2782         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2783         (AccessibilityUIElement::rangeForLine): Ditto.
2784         (AccessibilityUIElement::rangeForPosition): Ditto.
2785         (AccessibilityUIElement::boundsForRange): Ditto.
2786         (AccessibilityUIElement::stringForRange): Ditto.
2787         (AccessibilityUIElement::attributedStringForRange): Ditto.
2788         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2789         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2790         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2791         (AccessibilityUIElement::attributesOfColumns): Ditto.
2792         (AccessibilityUIElement::attributesOfRows): Ditto.
2793         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2794         (AccessibilityUIElement::attributesOfHeader): Ditto.
2795         (AccessibilityUIElement::rowIndexRange): Ditto.
2796         (AccessibilityUIElement::columnIndexRange): Ditto.
2797         (AccessibilityUIElement::pathDescription const): Ditto.
2798         (AccessibilityUIElement::selectedTextRange): Ditto.
2799         (AccessibilityUIElement::accessibilityValue const): Ditto.
2800         (AccessibilityUIElement::documentEncoding): Ditto.
2801         (AccessibilityUIElement::documentURI): Ditto.
2802         (AccessibilityUIElement::url): Ditto.
2803         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2804         (createJSStringRef): Ditto.
2805         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2806         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2807         (AccessibilityUIElement::supportedActions): Ditto.
2808         (AccessibilityUIElement::mathPostscriptsDescription const): Ditto.
2809         (AccessibilityUIElement::mathPrescriptsDescription const): Ditto.
2810
2811         * DumpRenderTree/mac/FrameLoadDelegate.mm:
2812         (-[FrameLoadDelegate didClearWindowObjectForFrame:inIsolatedWorld:]):
2813         Use the adopt function instead of the adopt constructor.
2814         * DumpRenderTree/mac/TestRunnerMac.mm:
2815         (originsArrayToJS): Ditto.
2816         (TestRunner::copyDecodedHostName): Return a JSRetainPtr.
2817         (TestRunner::copyEncodedHostName): Ditto.
2818         (TestRunner::pathToLocalResource): Ditto.
2819         (TestRunner::queueLoad): Use adopt function instead of constructor.
2820         (TestRunner::findString): Ditto.
2821         (TestRunner::inspectorTestStubURL): Return a JSRetainPtr.
2822
2823         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
2824         (AccessibilityController::winNotificationReceived): Use adopt function
2825         instead of adopt constructor.
2826         (AccessibilityController::platformName const): Ditto.
2827
2828         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
2829         (createEmptyJSString): Added. This helper function makes reduces the
2830         repetitive code to create empty strings.
2831         (AccessibilityUIElement::allAttributes): Changed to return a JSRetainPtr.
2832         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2833         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2834         (AccessibilityUIElement::attributesOfChildren): Ditto.
2835         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2836         (AccessibilityUIElement::role): Ditto.
2837         (AccessibilityUIElement::subrole): Ditto.
2838         (AccessibilityUIElement::roleDescription): Ditto.
2839         (AccessibilityUIElement::computedRoleString): Ditto.
2840         (AccessibilityUIElement::title): Ditto.
2841         (AccessibilityUIElement::description): Ditto.
2842         (AccessibilityUIElement::stringValue): Ditto.
2843         (AccessibilityUIElement::language): Ditto.
2844         (AccessibilityUIElement::helpText const): Ditto.
2845         (AccessibilityUIElement::valueDescription): Ditto.
2846         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2847         (AccessibilityUIElement::orientation const): Ditto.
2848         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2849         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2850         (AccessibilityUIElement::attributesOfColumns): Ditto.
2851         (AccessibilityUIElement::attributesOfRows): Ditto.
2852         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2853         (AccessibilityUIElement::attributesOfHeader): Ditto.
2854         (AccessibilityUIElement::rowIndexRange): Ditto.
2855         (AccessibilityUIElement::columnIndexRange): Ditto.
2856         (AccessibilityUIElement::boundsForRange): Ditto.
2857         (AccessibilityUIElement::stringForRange): Ditto.
2858         (AccessibilityUIElement::attributedStringForRange): Ditto.
2859         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2860         (AccessibilityUIElement::selectedTextRange): Ditto.
2861         (AccessibilityUIElement::stringAttributeValue): Ditto.
2862         (AccessibilityUIElement::accessibilityValue const): Ditto.
2863         (AccessibilityUIElement::documentEncoding): Ditto.
2864         (AccessibilityUIElement::documentURI): Ditto.
2865         (AccessibilityUIElement::url): Ditto.
2866         (AccessibilityUIElement::classList const): Ditto.
2867
2868         * DumpRenderTree/win/TestRunnerWin.cpp:
2869         (TestRunner::copyDecodedHostName): Changed to return a JSRetainPtr.
2870         (TestRunner::copyEncodedHostName): Ditto.
2871         (TestRunner::pathToLocalResource): Ditto.
2872         (TestRunner::queueLoad): Ditto.
2873         (TestRunner::findString): Ditto.
2874         (TestRunner::inspectorTestStubURL): Ditto.
2875
2876         * TestRunnerShared/Bindings/JSWrapper.h:
2877         (WTR::setProperty): Use adopt function instead of constructor.
2878         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
2879         (UIScriptContext::UIScriptContext): Ditto.
2880         (UIScriptContext::runUIScript): Ditto.
2881         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2882         (WTR::toDeviceOrientation): Ditto.
2883
2884         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
2885         (nsTextCheckingType): Changed this function to not take an rvalue
2886         reference to a JSRetainPtr since it doesn't take ownership.
2887         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Updated
2888         for the above change.
2889
2890         * TestWebKitAPI/JavaScriptTest.cpp:
2891         (TestWebKitAPI::javaScriptCallback): Use adopt function instead of
2892         adopt member function.
2893
2894         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp: Removed unneeded include.
2895         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm: Ditto.
2896         * TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Use adopt function instead of
2897         adopt constructor.
2898         * TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm: Ditto.
2899
2900         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2901         Removed unneeded includes.
2902         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Ditto.
2903         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Ditto.
2904         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Ditto.
2905
2906         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
2907         (_platformTypeConstructor): Use the adopt function instead of the
2908         JSRetainPtr adopt constructor. Also nullptr instead of 0.
2909
2910         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2911         (WTR::arrayLength): Use adopt function instead of constructor.
2912         (WTR::parseModifierArray): Ditto.
2913         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2914         (WTR::propertyValue): Ditto.
2915         (WTR::dumpPath): Ditto.
2916         (WTR::toJS): Ditto.
2917         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2918         (WTR::TestRunner::findString): Ditto.
2919         (WTR::TestRunner::statisticsDidRunTelemetryCallback): Ditto.
2920         (WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback): Ditto.
2921         (WTR::TestRunner::setOpenPanelFiles): Ditto.
2922         * WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
2923         (WTR::AccessibilityController::platformName): Ditto.
2924
2925         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2926         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2927         This fixes storage leaks in many functions below, which were using
2928         the create function and putting the value right into a JSRetainPtr
2929         without adoption.
2930         (WTR::createEmptyJSString): Added. This helper function reduces the
2931         repetitive code to create empty strings.
2932         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2933         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
2934         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2935         (WTR::AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2936         (WTR::AccessibilityUIElement::attributesOfChildren): Ditto.
2937         (WTR::AccessibilityUIElement::allAttributes): Ditto.
2938         (WTR::AccessibilityUIElement::stringAttributeValue): Ditto.
2939         (WTR::AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2940         (WTR::AccessibilityUIElement::role): Ditto.
2941         (WTR::AccessibilityUIElement::subrole): Ditto.
2942         (WTR::AccessibilityUIElement::roleDescription): Ditto.
2943         (WTR::AccessibilityUIElement::computedRoleString): Ditto.
2944         (WTR::AccessibilityUIElement::title): Ditto.
2945         (WTR::AccessibilityUIElement::orientation const): Ditto.
2946         (WTR::AccessibilityUIElement::language): Ditto.
2947         (WTR::AccessibilityUIElement::valueDescription): Ditto.
2948         (WTR::AccessibilityUIElement::ariaDropEffects const): Ditto.
2949         (WTR::AccessibilityUIElement::boundsForRange): Ditto.
2950         (WTR::AccessibilityUIElement::stringForRange): Removed unneeded null check.
2951         (WTR::AccessibilityUIElement::attributedStringForRange): Ditto.
2952         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
2953         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2954         (WTR::AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2955         (WTR::AccessibilityUIElement::attributesOfColumns): Ditto.
2956         (WTR::AccessibilityUIElement::attributesOfRows): Ditto.
2957         (WTR::AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2958         (WTR::AccessibilityUIElement::attributesOfHeader): Ditto.
2959         (WTR::AccessibilityUIElement::selectedTextRange): Ditto.
2960         (WTR::AccessibilityUIElement::accessibilityValue const): Ditto.
2961         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2962         (WTR::AccessibilityUIElement::documentURI): Ditto.
2963         (WTR::AccessibilityUIElement::stringForSelection): Removed unneeded
2964         null check.
2965         (WTR::AccessibilityUIElement::stringForTextMarkerRange):
2966         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2967
2968         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h:
2969         Use JSRetainPtr for the return value of createJSStringRef.
2970         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
2971         (-[NSString createJSStringRef]): Ditto.
2972         (WTR::searchPredicateParameterizedAttributeForSearchCriteria): Use the
2973         adopt function instead of the adopt constructor.
2974         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
2975         (WTR::AccessibilityController::platformName): Ditto
2976
2977         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
2978         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2979         (makeValueRefForValue): Updated for above by removing adopt.
2980         (makeObjectRefForDictionary): Ditto.
2981         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
2982
2983         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2984         (WTR::createEmptyJSString): Added. This helper function makes reduces the
2985         repetitive code to create empty strings.
2986         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2987         (WTR::descriptionOfElements): Ditto.
2988         (WTR::selectTextParameterizedAttributeForCriteria): Ditto.
2989         (WTR::AccessibilityUIElement::accessibilityValue const): Use createEmptyJSString,
2990         fixing a storage leak due to missing adoption.
2991         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2992         (WTR::AccessibilityUIElement::documentURI): Ditto.
2993         (WTR::createJSStringRef): Return a JSRetainPtr.
2994
2995         * WebKitTestRunner/StringFunctions.h:
2996         (WTR::toWK): Take a const& to eliminate a little bit of reference count churn.
2997         (WTR::toJS): Use the adopt function instead of the constructor.
2998
2999 2018-09-14  Dean Jackson  <dino@grorg.org>
3000
3001         Add Justin Michaud.
3002
3003         * Scripts/webkitpy/common/config/contributors.json:
3004
3005 2018-09-14  Ryan Haddad  <ryanhaddad@apple.com>
3006
3007         bots should pass --clobber-old-results to run-webkit-tests
3008         https://bugs.webkit.org/show_bug.cgi?id=189623
3009
3010         Reviewed by Aakash Jain.
3011
3012         In order to ensure that bots to not produce confusing results due to transient execptions,
3013         or run out of space if they continually hit an exception, old layout test results should be clobbered.
3014
3015         * BuildSlaveSupport/build.webkit.org-config/steps.py:
3016         (RunWebKitTests):
3017
3018 2018-09-13  Ryan Haddad  <ryanhaddad@apple.com>
3019
3020         Unreviewed, rolling out r235954.
3021
3022         Breaks the watchOS build.
3023
3024         Reverted changeset:
3025
3026         "Move IndexedDB to Network Process"
3027         https://bugs.webkit.org/show_bug.cgi?id=189415
3028         https://trac.webkit.org/changeset/235954
3029
3030 2018-09-13  Daniel Bates  <dabates@apple.com>
3031
3032         Add Copy WebKit Permalink plugin for Sublime Text
3033         https://bugs.webkit.org/show_bug.cgi?id=189589
3034
3035         Rubber-stamped by Joseph Pecoraro.
3036
3037         Port the Copy WebKit Permalink Automator service to a Sublime Text plugin. Once installed you can
3038         use the plugin to copy to the Clipboard a trac.webkit.org hyperlink to the selected line in the
3039         active document with or without blame annotations.
3040
3041         Once installed, you can Control-click (on Mac) or right-click (on Windows and Linux) on a line and
3042         choose Copy WebKit Permalink or Copy WebKit Permalink to Blame from the context menu to copy to the
3043         Clipboard a permanent hyperlink to the selected line without or with blame annotations, respectively.
3044         On Mac you can also invoke the same functionality using the keyboard shortcuts Command + Shift + Control + C
3045         and Command + Shift + Control + Option + C, respectively.
3046
3047         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Context.sublime-menu: Added.
3048         * CopyPermalink/Sublime Text/CopyWebKitPermalink/CopyWebKitPermalink.py: Added.
3049         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Default (OSX).sublime-keymap: Added.
3050         * CopyPermalink/Sublime Text/INSTALL: Added.
3051         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/Info.plist: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/Info.plist.
3052         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/document.wflow: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow.
3053         * CopyPermalink/Xcode/INSTALL: Renamed from Tools/CopyPermalink/README.
3054
3055 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
3056
3057         Unreviewed. Fix WebDriver tests after r235225.
3058
3059         Use wpt serve command to run the http server.
3060
3061         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
3062         (WebDriverW3CWebServer.__init__):
3063         (WebDriverW3CWebServer.start):
3064         (WebDriverW3CWebServer.stop):
3065
3066 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
3067
3068         [GTK][WPE] Allow to run script dialogs asynchronously in the UI process
3069         https://bugs.webkit.org/show_bug.cgi?id=189544
3070
3071         Reviewed by Michael Catanzaro.
3072
3073         Add test cases for the new API.
3074
3075         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3076         (testWebViewJavaScriptDialogs):
3077
3078 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
3079
3080         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
3081         https://bugs.webkit.org/show_bug.cgi?id=189496
3082         <rdar://problem/44370981>
3083
3084         Unreviewed warning fix.
3085
3086         r235929 has introduced a new compilation warning:
3087         > Tools/ImageDiff/cairo/PlatformImageCairo.cpp:34:70: warning: unused parameter ‘imageSize’ [-Wunused-parameter]
3088
3089         * ImageDiff/cairo/PlatformImageCairo.cpp:
3090         (ImageDiff::PlatformImage::createFromStdin): Removed the variable name.
3091
3092 2018-09-12  Dan Bernstein  <mitz@apple.com>
3093
3094         [Cocoa] Complete support for Paste as Quotation
3095         https://bugs.webkit.org/show_bug.cgi?id=189504
3096
3097         Reviewed by Wenson Hsieh.
3098
3099         * MiniBrowser/mac/MainMenu.xib: Added a Paste as Quotation command in the Edit menu.
3100
3101 2018-09-12  Sihui Liu  <sihui_liu@apple.com>
3102
3103         Move IndexedDB to Network Process
3104         https://bugs.webkit.org/show_bug.cgi?id=189415
3105
3106         Reviewed by Geoffrey Garen.
3107
3108         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
3109         (TEST):
3110         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
3111         (TEST):
3112         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
3113         (TEST):
3114         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
3115         (TEST):
3116         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
3117         (TEST):
3118
3119 2018-09-12  Chris Dumez  <cdumez@apple.com>
3120
3121         PSON: No process swap on back navigation after URL bar navigation
3122         https://bugs.webkit.org/show_bug.cgi?id=189557
3123         <rdar://problem/44353108>
3124
3125         Reviewed by Alex Christensen.
3126
3127         Add API test coverage.
3128
3129         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3130
3131 2018-09-11  Dean Jackson  <dino@apple.com>
3132
3133         Header parsing for experimental and internal debug features
3134         https://bugs.webkit.org/show_bug.cgi?id=189486
3135         <rdar://problem/44320618>
3136
3137         Reviewed by Tim Horton.
3138
3139         Keep track of experimental and internal debug features in TestOptions, and
3140         allow webkit-test-runner headers to toggle them by name.
3141
3142         * DumpRenderTree/TestOptions.cpp:
3143         (TestOptions::TestOptions):
3144         * WebKitTestRunner/TestController.cpp:
3145         (WTR::TestController::resetPreferencesToConsistentValues):
3146         (WTR::updateTestOptionsFromTestHeader):
3147         * WebKitTestRunner/TestOptions.h:
3148         (WTR::TestOptions::hasSameInitializationOptions const):
3149
3150 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
3151
3152         [Win][Clang][DumpRenderTree] 0 and nullptr can't be implicitly converted to AccessibilityUIElement
3153         https://bugs.webkit.org/show_bug.cgi?id=189492
3154
3155         Reviewed by Alex Christensen.
3156
3157         0 and nullptr can't be implicitly converted to
3158         AccessibilityUIElement because only Windows port typedefs
3159         PlatformUIElement as COMPtr<IAccessible> not a pointer.
3160
3161         Replaced "return 0" and "return nullptr" with "return { nullptr }".
3162
3163         * DumpRenderTree/AccessibilityUIElement.cpp:
3164         (AccessibilityUIElement::horizontalScrollbar const):
3165         (AccessibilityUIElement::verticalScrollbar const):
3166         (AccessibilityUIElement::uiElementAttributeValue const):
3167         (AccessibilityUIElement::accessibilityElementForTextMarker):
3168         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
3169         (AccessibilityController::elementAtPoint):
3170         (AccessibilityController::accessibleElementById):
3171         (AccessibilityController::focusedElement):
3172         (AccessibilityController::rootElement):
3173         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
3174         (AccessibilityUIElement::elementAtPoint):
3175         (AccessibilityUIElement::linkedUIElementAtIndex):
3176         (AccessibilityUIElement::getChildAtIndex):
3177         (AccessibilityUIElement::titleUIElement):
3178         (AccessibilityUIElement::parentElement):
3179         (AccessibilityUIElement::uiElementForSearchPredicate):
3180         (AccessibilityUIElement::cellForColumnAndRow):
3181         (AccessibilityUIElement::disclosedRowAtIndex):
3182         (AccessibilityUIElement::ariaOwnsElementAtIndex):
3183         (AccessibilityUIElement::ariaFlowToElementAtIndex):
3184         (AccessibilityUIElement::ariaControlsElementAtIndex):
3185         (AccessibilityUIElement::selectedRowAtIndex):
3186         (AccessibilityUIElement::rowAtIndex):
3187         (AccessibilityUIElement::disclosedByRow):
3188         (AccessibilityUIElement::selectedChildAtIndex const):
3189
3190 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3191
3192         FontManagerTests.ChangeFontColorWithColorPanel fails on macOS Sierra
3193         https://bugs.webkit.org/show_bug.cgi?id=189382
3194
3195         Reviewed by Ryosuke Niwa.
3196
3197         Fix the test by specifying colors in RGB colorspace.
3198
3199         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
3200         (TestWebKitAPI::TEST):
3201
3202 2018-09-11  Fujii Hironori  <Hironori.Fujii@sony.com>
3203
3204         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
3205         https://bugs.webkit.org/show_bug.cgi?id=189496
3206
3207         Reviewed by Alex Christensen.
3208
3209         * ImageDiff/cairo/PlatformImageCairo.cpp:
3210         (ImageDiff::PlatformImage::createFromStdin): Removed unnecessary ReadContext struct.
3211         (ImageDiff::PlatformImage::writeAsPNGToStdout): Use '%lu' format type specifier for unsigned long.
3212
3213 2018-09-07  Dean Jackson  <dino@apple.com>
3214
3215         Add and expose Internal features from WebKit
3216         https://bugs.webkit.org/show_bug.cgi?id=189442
3217         <rdar://problem/44243404>
3218
3219         Reviewed by Simon Fraser.
3220
3221         Update MiniBrowser to expose an Internal feature menu.
3222
3223         * MiniBrowser/mac/AppDelegate.m:
3224         (defaultConfiguration):
3225         * MiniBrowser/mac/SettingsController.m:
3226         (-[SettingsController _populateMenu]):
3227         (-[SettingsController validateMenuItem:]):
3228         (-[SettingsController toggleExperimentalFeature:]):
3229         (-[SettingsController toggleInternalDebugFeature:]):
3230
3231 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3232
3233         [macOS] [WK2] Support changing foreground colors via color panel
3234         https://bugs.webkit.org/show_bug.cgi?id=189382
3235         <rdar://problem/44227311>
3236
3237         Reviewed by Ryosuke Niwa.
3238
3239         Add an API test that uses NSColorPanel to change the color of selected text, and also apply typing styles when
3240         the selection is collapsed. The test also exercises switching between opaque colors (alpha = 1) and transparent
3241         colors, as well as making different parts of a word different colors.
3242
3243         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
3244         (-[TestWKWebView collapseToEnd]):
3245         (webViewForFontManagerTesting):
3246         (TestWebKitAPI::TEST):
3247         * TestWebKitAPI/cocoa/TestWKWebView.h:
3248
3249 == Rolled over to ChangeLog-2018-09-11 ==