Blob references for System Previews don't get a correct file extension
[WebKit-https.git] / Tools / ChangeLog
1 2019-01-08  Dean Jackson  <dino@apple.com>
2
3         Blob references for System Previews don't get a correct file extension
4         https://bugs.webkit.org/show_bug.cgi?id=193268
5         <rdar://problem/47133037>
6
7         Reviewed by Tim Horton.
8
9         New test that a Blob download of a USDZ file gets named correctly.
10
11         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
12         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
13         (-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
14         (-[BlobWithUSDZExtensionDownloadDelegate _downloadDidFinish:]):
15         (TEST):
16         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreviewBlobNaming.html: Added.
17
18 2019-01-08  Jiewen Tan  <jiewen_tan@apple.com>
19
20         [WebAuthN] Support U2F HID Authenticators on macOS
21         https://bugs.webkit.org/show_bug.cgi?id=191535
22         <rdar://problem/47102027>
23
24         Reviewed by Brent Fulgham.
25
26         This patch:
27         1) adds support for U2F mocking mechanism;
28         2) updates tests to reflect U2fCommandConstructor changes.
29
30         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
31         (TestWebKitAPI::TEST):
32         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
33         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
34         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
35
36 2019-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
37
38         [iOS] Dispatch a synthetic mousedown event prior to starting drags
39         https://bugs.webkit.org/show_bug.cgi?id=193229
40         <rdar://problem/46717097>
41
42         Reviewed by Tim Horton.
43
44         Add a cross-platform drag and drop test to verify that calling `preventDefault()` on the mousedown event
45         prevents a drag from starting.
46
47         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
48         * TestWebKitAPI/Tests/WebKitCocoa/link-and-target-div.html:
49
50         Tweak this test to make it robust when dragging the link to the target element multiple times in a single test.
51
52 2019-01-08  Zhifei Fang  <zhifei_fang@apple.com>
53   
54         Layout test will generate a perf metric file to results dir.
55         https://bugs.webkit.org/show_bug.cgi?id=192030
56         <rdar://problem/32779516>
57
58         Reviewed by Aakash Jain.
59
60         Layout test running time will be collected to a perf metric file.
61         For now, instead of outputing running time of all tests (which is huge),
62         we aggregate them by test directories which are at most two level deep. 
63
64         * Scripts/webkitpy/layout_tests/controllers/manager.py:
65         (Manager._end_test_run):
66         (Manager._output_perf_metrics):
67         (Manager._print_expectation_line_for_test):
68         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
69         (add_test_perf_metric):
70         (test_perf_metrics):
71         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
72         (JSONGeneratorTest.test_test_timings_trie):
73         (JSONGeneratorTest):
74         (JSONGeneratorTest.test_test_perf_metrics):
75         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
76         (RebaselineTest.test_reset_results):
77         (RebaselineTest.test_missing_results):
78         (RebaselineTest.test_new_baseline):
79
80 2019-01-08  Patrick Griffis  <pgriffis@igalia.com>
81
82         [WPE][GTK] Add php-json to install-dependencies
83         https://bugs.webkit.org/show_bug.cgi?id=193233
84
85         Reviewed by Michael Catanzaro.
86
87         * gtk/install-dependencies:
88         * wpe/install-dependencies:
89
90 2019-01-08  Chris Dumez  <cdumez@apple.com>
91
92         Regression(PSON-r239182): Blank view when navigating back and forth between google.com and stack overflow
93         https://bugs.webkit.org/show_bug.cgi?id=193224
94         <rdar://problem/47097726>
95
96         Reviewed by Alex Christensen.
97
98         Add API test coverage.
99
100         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
101
102 2019-01-07  David Kilzer  <ddkilzer@apple.com>
103
104         Leak of ScrollCompletionCallbackData (16 bytes) in com.apple.WebKit.WebContent running WebKit layout tests
105         <https://webkit.org/b/193222>
106         <rdar://problem/46862309>
107
108         Reviewed by Joseph Pecoraro.
109
110         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
111         (WTR::executeCallback): Fix camel case of variable name.
112         (WTR::EventSendingController::callAfterScrollingCompletes): If
113         WKBundlePageRegisterScrollOperationCompletionCallback() returns
114         false, make sure to release the ScrollCompletionCallbackData
115         object.  This fixes the leak.
116
117 2019-01-07  Fujii Hironori  <Hironori.Fujii@sony.com>
118
119         [Win] EWS: wincairo-ews cannot apply a patch with *.png
120         https://bugs.webkit.org/show_bug.cgi?id=193044
121
122         Reviewed by Daniel Bates.
123
124         WinCairo EWS bots are using Windows Perl. Binary files should be
125         opened as binary mode.
126
127         * Scripts/svn-apply:
128         (handleGitBinaryChange): Use 'binmode' for binary file handles.
129
130 2019-01-07  Don Olmstead  <don.olmstead@sony.com>
131
132         [CMake] Add ENABLE_CSS_TYPED_OM option
133         https://bugs.webkit.org/show_bug.cgi?id=193216
134
135         Reviewed by Michael Catanzaro.
136
137         * Scripts/webkitperl/FeatureList.pm:
138
139 2019-01-07  David Kilzer  <ddkilzer@apple.com>
140
141         Prefer RetainPtr<NSObject> to RetainPtr<NSObject *>
142         <https://webkit.org/b/193056>
143
144         Reviewed by Alex Christensen.
145
146         * Scripts/webkitpy/style/checker.py:
147         - Ignore use of new runtime/retainptr check in
148           Tools/TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm since it
149           contains tests to ensure RetainPtr<NSObject *> is compatible
150           with RetainPtr<NSObject>.
151
152         * Scripts/webkitpy/style/checkers/cpp.py:
153         (check_language):
154         (CppChecker):
155         - Add checker for use of '*' in RetainPtr<> type.  A for loop
156           was used instead of a single regex so that angle brackets
157           could be matched up when checking the type contained within
158           the RetainPtr<> type.
159
160         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
161         (CppStyleTest):
162         - Add unit test for new runtime/retainptr check.
163
164         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.h:
165         * TestWebKitAPI/EditingTestHarness.h:
166         - Remove '*' from RetainPtr<> type.
167
168         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
169         - Add cf/RetainPtr.cpp back to TestWTFLibrary target!  This
170           regressed in r201938.
171
172         * TestWebKitAPI/Tests/WTF/cf/RetainPtr.cpp:
173         (TestWebKitAPI::TEST):
174         - Update tests to match RetainPtr.mm tests (except for the
175           `*SimilarNSType` tests since there is no CF equivalent of
176           RetainPtr<NSString> and RetainPtr<NSString *>).
177
178         * TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm:
179         (TestWebKitAPI::TEST):
180         - Update tests to:
181           - Not conflict by name with equivalent CF tests in
182             RetainPtr.cpp.
183           - Add test cases for RetainPtr<NSObject>,
184             RetainPtr<NSObject *> and RetainPtr<id> were appropriate.
185           - Add `*SimilarNSType` tests for converting between
186             RetainPtr<NSObject> and RetainPtr<NSObject *>.
187           - Change `0` to `nil` as appropriate.
188           - Re-alphabetize the tests by name.
189           - Add Optional<RetainPtr<>> tests.
190           - Add retainPtr() tests.
191
192         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
193         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
194         * TestWebKitAPI/Tests/WebKitCocoa/IconLoadingDelegate.mm:
195         (TEST):
196         - Remove '*' from RetainPtr<> type.
197
198         * TestWebKitAPI/Tests/WebKitCocoa/JITEnabled.mm:
199         (TEST(WebKit, JITEnabled)):
200         - Add missing WTFMove().  Apparently a temporary was being
201           created before in the argument list due to mismatched
202           RetainPtr<> types.
203
204         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
205         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
206         (TestWebKitAPI::setUpWebViewForTestingVideoControlsManager):
207         (TestWebKitAPI::TEST):
208         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
209         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
210         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
211         (WTR::resourcesDirectoryURL):
212         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
213         (WTR::InjectedBundle::platformInitialize):
214         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
215         - Remove '*' from RetainPtr<> type.
216
217 2019-01-07  Eric Carlson  <eric.carlson@apple.com>
218
219         A MediaTime timescale must never be zero
220         https://bugs.webkit.org/show_bug.cgi?id=193156
221         <rdar://problem/32504501>
222
223         Reviewed by Jer Noble.
224
225         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
226         (TestWebKitAPI::TEST): Add tests for zero timescale.
227
228 2019-01-07  Youenn Fablet  <youenn@apple.com>
229
230         API test broken: TestWebKitAPI.WebKit.CustomDataStorePathsVersusCompletionHandlers
231         https://bugs.webkit.org/show_bug.cgi?id=193175
232
233         Reviewed by Chris Dumez.
234
235         Updated API test as we bumped the SW schema to version 4.
236
237         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
238         * TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-4.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3.
239         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
240         (TEST):
241
242 2019-01-06  Fujii Hironori  <Hironori.Fujii@sony.com>
243
244         [Win][Clang] Fix compilation warnings of MiniBrowser
245         https://bugs.webkit.org/show_bug.cgi?id=193029
246
247         Reviewed by Ross Kirsling.
248
249         * MiniBrowser/win/MiniBrowserWebHost.h: Removed unused m_oldFont
250         and m_URLBarFont. Reorder member variables to fix -Wreorder
251         warning.
252         * MiniBrowser/win/PageLoadTestClient.cpp:
253         (PageLoadTestClient::PageLoadTestClient): Reorder the member initializer list.
254         * MiniBrowser/win/PageLoadTestClient.h: Removed 'virtual' of
255         pageLoadStartedAtTime and pageLoadEndedAtTime. Removed unused
256         m_currentURLIndex.
257         * MiniBrowser/win/WebKitBrowserWindow.cpp:
258         (WebKitBrowserWindow::WebKitBrowserWindow): Initialize
259         navigationClient with '{ }' to fix the missing field warning.
260         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
261         (initDocStruct): Changed the argument type docname to const.
262
263 2019-01-06  Jiewen Tan  <jiewen_tan@apple.com>
264
265         [WebAuthN] Import U2F command/response converters from Chromium
266         https://bugs.webkit.org/show_bug.cgi?id=193150
267         <rdar://problem/47054028>
268
269         Reviewed by Brent Fulgham.
270
271         Adds API tests.
272
273         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
274         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
275         (TestWebKitAPI::getTestAttestedCredentialDataBytes):
276         (TestWebKitAPI::getTestAuthenticatorDataBytes):
277         (TestWebKitAPI::getTestAttestationObjectBytes):
278         (TestWebKitAPI::getTestSignResponse):
279         (TestWebKitAPI::getTestU2fRegisterResponse):
280         (TestWebKitAPI::TEST):
281         (TestWebKitAPI::convertToVector): Deleted.
282         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
283         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp: Added.
284         (TestWebKitAPI::constructMakeCredentialRequest):
285         (TestWebKitAPI::constructGetAssertionRequest):
286         (TestWebKitAPI::TEST):
287
288 2019-01-05  Oriol Brufau  <obrufau@igalia.com>
289
290         [GTK] Add python3-setuptools, libunistring-dev, bison and flex dependencies
291         https://bugs.webkit.org/show_bug.cgi?id=193136
292
293         Reviewed by Michael Catanzaro.
294
295         * gtk/install-dependencies:
296         Add python3-setuptools, libunistring-dev, bison and flex to install-dependencies,
297         they are needed by update-webkitgtk-libs.
298
299 2019-01-05  Aakash Jain  <aakash_jain@apple.com>
300
301         Unreviewed follow-up fix to r239650
302         https://bugs.webkit.org/show_bug.cgi?id=193140
303         <rdar://problem/47063037>
304
305         Typecast patch_id to string.
306
307         * BuildSlaveSupport/ews-build/steps.py:
308         (ValidatePatch._is_patch_obsolete):
309
310 2019-01-04  Daniel Bates  <dabates@apple.com>
311
312         [lldb-webkit]: Add support for pretty-printing raw bitmask types
313         https://bugs.webkit.org/show_bug.cgi?id=193024
314
315         Reviewed by Jer Noble.
316
317         Add support infrastructure to pretty-print a raw bitmask type. Included is a pretty-printer
318         for the bitmask type WebEventFlags as an example.
319
320         Exposed a new function lldb_webkit.addSummaryAndSyntheticFormattersForRawBitmaskType()
321         that can be used to register summary and synthetic child formatters for a bitmask type.
322         For example, consider the following enum and bitmask typedefs:
323
324         typedef enum {
325             A = 1 << 0,
326             B = 1 << 1,
327             C = 1 << 2,
328         } SpecialFlagValues;
329         typedef unsigned SpecialFlags;
330
331         To teach lldb-webkit how to pretty print SpecialFlags types, add the following code inside
332         __lldb_init_module():
333
334             addSummaryAndSyntheticFormattersForRawBitmaskType(debugger, "SpecialFlags", {
335                     1 << 0: "A",
336                     1 << 1: "B",
337                     1 << 2: "C",
338             })
339
340         * lldb/lldb_webkit.py:
341         (addSummaryAndSyntheticFormattersForRawBitmaskType):
342         (addSummaryAndSyntheticFormattersForRawBitmaskType.GeneratedRawBitmaskProvider):
343         (addSummaryAndSyntheticFormattersForRawBitmaskType.raw_bitmask_summary_provider):
344         (addSummaryAndSyntheticFormattersForRawBitmaskType.lldb_webkit):
345         A convenience function to dynamically creaste a synthetic formatter class and summary
346         string function for the specified bitmask type and enumerator value to name map. This
347         function register the dynamically created class and function with LLDB.
348
349         (__lldb_init_module):
350         (FlagEnumerationProvider):
351         (FlagEnumerationProvider._enumerator_value_to_name_map):
352         (FlagEnumerationProvider._bitmask):
353         (FlagEnumerationProvider._update):
354         (FlagEnumerationProvider.has_children):
355         (FlagEnumerationProvider.num_children):
356         (FlagEnumerationProvider.get_child_index):
357         (FlagEnumerationProvider.get_child_at_index):
358         (FlagEnumerationProvider.update):
359         Extract out provider logic from WTFOptionSetProvider into a base class that can be shared.
360
361         (WTFOptionSetProvider):
362         (WTFOptionSetProvider._enumerator_value_to_name_map):
363         (WTFOptionSetProvider._bitmask):
364         (WTFOptionSetProvider._update):
365         Write in terms of the base class.
366
367         (RawBitmaskProviderBase):
368         (RawBitmaskProviderBase._enumerator_value_to_name_map):
369         (RawBitmaskProviderBase._bitmask):
370         Added. Base synthetic formatter class for a raw bitmask type. Derived classes are expected to
371         override the class variable ENUMERATOR_VALUE_TO_NAME_MAP with a dictionary of the form:
372         {
373             1 << 0: "A",
374             1 << 1: "B",
375             1 << 2: "C",
376         }
377         It is not necessary to instantiate such a derived class directory. Instead use the convenience
378         function addSummaryAndSyntheticFormattersForRawBitmaskType.
379
380         (WTFOptionSetProvider.has_children): Deleted.
381         (WTFOptionSetProvider.num_children): Deleted.
382         (WTFOptionSetProvider.get_child_index): Deleted.
383         (WTFOptionSetProvider.get_child_at_index): Deleted.
384         (WTFOptionSetProvider.update): Deleted.
385
386 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
387
388         [ews-build] Add build step to validate the patch before processing it
389         https://bugs.webkit.org/show_bug.cgi?id=193140
390
391         Reviewed by Lucas Forschler.
392
393         * BuildSlaveSupport/ews-build/factories.py:
394         (Factory.__init__): Added ValidatePatch step.
395         * BuildSlaveSupport/ews-build/steps.py:
396         (ValidatePatch):
397         (ValidatePatch.fetch_data_from_url): Fetch data from a url.
398         (ValidatePatch.get_patch_json): Get patch json data.
399         (ValidatePatch.get_bug_json): Get bug json data.
400         (ValidatePatch.get_bug_id_from_patch): Get bug id from a patch id.
401         (ValidatePatch._is_patch_obsolete): Check if the patch is obsolete.
402         (ValidatePatch._is_patch_review_denied): Check if the patch is marked r-.
403         (ValidatePatch._is_bug_closed): Check if the bug is already closed.
404         (ValidatePatch.skip_build): Skip the build.
405         (ValidatePatch.start):
406
407 2019-01-04  Alex Christensen  <achristensen@webkit.org>
408
409         Progress towards fixing Mac CMake build
410         https://bugs.webkit.org/show_bug.cgi?id=193105
411
412         Reviewed by Don Olmstead.
413
414         * TestWebKitAPI/PlatformMac.cmake:
415
416 2019-01-04  Alex Christensen  <achristensen@webkit.org>
417
418         Fix API test after r239631
419         https://bugs.webkit.org/show_bug.cgi?id=193118
420
421         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
422         (TestWebKitAPI::TEST):
423         This test relied on m_maximumProcessCount being set to 1 in ProcessPoolConfiguration::createWithLegacyOptions.
424         Do the same thing via the API to fix the test.
425
426 2019-01-04  Jer Noble  <jer.noble@apple.com>
427
428         [WebKitLegacy] Media playback pauses on scroll
429         https://bugs.webkit.org/show_bug.cgi?id=192829
430
431         Reviewed by Eric Carlson.
432
433         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
434         * TestWebKitAPI/Tests/WebKitCocoa/StopSuspendResumeAllMedia.mm: Added.
435         (TestWebKitAPI::TEST):
436         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm: Added.
437         (-[ScrollingDoesNotPauseMediaDelegate webViewDidFinishLoad:]):
438         (-[ScrollingDoesNotPauseMediaDelegate uiWebView:didCommitLoadForFrame:]):
439         (-[ScrollingDoesNotPauseMediaDelegate handleEvent:]):
440         (TestWebKitAPI::TEST):
441
442 2019-01-04  Chris Dumez  <cdumez@apple.com>
443
444         Add support for toggling device orientation API support per site
445         https://bugs.webkit.org/show_bug.cgi?id=193143
446         <rdar://problem/46605724>
447
448         Reviewed by Alex Christensen.
449
450         Add API test coverage.
451
452         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
453         (-[DataMappingSchemeHandler setTaskHandler:]):
454         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
455         (-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationEventEnabled:]):
456         (-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
457         (-[WebsitePoliciesDeviceOrientationDelegate webView:didFinishNavigation:]):
458
459 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
460
461         [ews-build] use svn-apply script to apply the patches
462         https://bugs.webkit.org/show_bug.cgi?id=193138
463
464         Reviewed by Lucas Forschler.
465
466         * BuildSlaveSupport/ews-build/factories.py:
467         (Factory.__init__): Add the ApplyPatch step.
468         * BuildSlaveSupport/ews-build/steps.py:
469         (CheckOutSource): Added step name.
470         (CheckOutSource.__init__): Used alwaysUseLatest so that it doesn't apply patch.
471         (ApplyPatch): Build step to apply patch using svn-apply script.
472         (UnApplyPatchIfRequired):
473         (UnApplyPatchIfRequired.__init__): Deleted, since the alwaysUseLatest parameter is now in base class.
474
475 2019-01-04  Alex Christensen  <achristensen@webkit.org>
476
477         Deprecate WKContextCreate
478         https://bugs.webkit.org/show_bug.cgi?id=193118
479
480         Reviewed by Brady Eidson.
481
482         * MiniBrowser/win/WebKitBrowserWindow.cpp:
483         (WebKitBrowserWindow::WebKitBrowserWindow):
484         * TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
485         (TestWebKitAPI::TEST):
486         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
487         (TestWebKitAPI::TEST):
488         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
489         (TestWebKitAPI::TEST):
490         * TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
491         (TestWebKitAPI::TEST):
492         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
493         (TestWebKitAPI::TEST):
494         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
495         (TestWebKitAPI::TEST):
496         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
497         (TestWebKitAPI::TEST):
498         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
499         (TestWebKitAPI::TEST):
500         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
501         (TestWebKitAPI::TEST):
502         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
503         (TestWebKitAPI::TEST):
504         * TestWebKitAPI/Tests/WebKit/Find.cpp:
505         (TestWebKitAPI::TEST):
506         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
507         (TestWebKitAPI::TEST):
508         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
509         (TestWebKitAPI::TEST):
510         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
511         (TestWebKitAPI::TEST):
512         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
513         (TestWebKitAPI::TEST):
514         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
515         (TestWebKitAPI::TEST):
516         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
517         (TestWebKitAPI::TEST):
518         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
519         (TestWebKitAPI::TEST):
520         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
521         (TestWebKitAPI::loadAlternateHTMLString):
522         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
523         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
524         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
525         (TestWebKitAPI::buildAndPerformTest):
526         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
527         (TestWebKitAPI::TEST):
528         * TestWebKitAPI/Tests/WebKit/NavigationClientDefaultCrypto.cpp:
529         (TestWebKitAPI::TEST):
530         * TestWebKitAPI/Tests/WebKit/PageGroup.cpp:
531         (TestWebKitAPI::TEST):
532         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
533         (TestWebKitAPI::TEST):
534         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
535         (TestWebKitAPI::TEST):
536         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
537         (TestWebKitAPI::TEST):
538         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
539         (TestWebKitAPI::TEST):
540         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
541         (TestWebKitAPI::TEST):
542         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
543         (TestWebKitAPI::TEST):
544         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
545         (TestWebKitAPI::TEST):
546         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
547         (TestWebKitAPI::TEST):
548         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
549         (TestWebKitAPI::TEST):
550         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
551         (TestWebKitAPI::TEST):
552         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
553         (TestWebKitAPI::TEST):
554         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
555         (TestWebKitAPI::TEST):
556         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
557         (TestWebKitAPI::TEST):
558         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
559         (TestWebKitAPI::TEST):
560         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
561         (TestWebKitAPI::TEST):
562         * TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
563         (TestWebKitAPI::TEST):
564         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
565         (TestWebKitAPI::TEST):
566         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
567         (TestWebKitAPI::TEST):
568         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
569         (TestWebKitAPI::TEST):
570         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
571         (TestWebKitAPI::TEST):
572         * TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp:
573         (TestWebKitAPI::TEST):
574         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
575         (TestWebKitAPI::TEST):
576         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
577         (TestWebKitAPI::TEST):
578         * TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
579         (WebKit2_CommandBackForwardTestWKView::SetUp):
580         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
581         (TestWebKitAPI::TEST):
582         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
583         (TestWebKitAPI::TEST):
584         * TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm:
585         (TestWebKitAPI::TEST):
586         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
587         (TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
588
589 2019-01-03  Matt Rajca  <mrajca@apple.com>
590
591         Make DidPlayMediaPreventedFromPlaying autoplay event more generic.
592         https://bugs.webkit.org/show_bug.cgi?id=193128
593         rdar://34554231
594
595         Reviewed by Jer Noble.
596
597         Today, the "DidPlayMediaPreventedFromPlaying" autoplay event is only sent for
598         media prevented from autoplaying. It could be generalized to a "DidPlayMediaWithUserGesture"
599         event along with a flag that indicates whether or not autoplay was actually prevented.
600
601         Tests: existing API tests were updated to reflect the new names. New API tests
602         were added for the new case in which the "DidPlayMediaWithUserGesture" event is sent.
603
604         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
605         * TestWebKitAPI/Tests/WebKit/long-test.mp4: Added.
606         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
607         (TEST):
608         * TestWebKitAPI/Tests/WebKitCocoa/audio-with-play-button.html: Added.
609         * TestWebKitAPI/Tests/WebKitCocoa/video-with-play-button.html: Added.
610
611 2019-01-04  Chris Dumez  <cdumez@apple.com>
612
613         [PSON] Calling history.back() from inside the load event handler prevents process-swapping
614         https://bugs.webkit.org/show_bug.cgi?id=193120
615
616         Reviewed by Alex Christensen.
617
618         Add API test coverage.
619
620         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
621
622 2019-01-04  Chris Dumez  <cdumez@apple.com>
623
624         Crash under WebProcessPool::addSuspendedPage()
625         https://bugs.webkit.org/show_bug.cgi?id=193110
626
627         Reviewed by Youenn Fablet.
628
629         Add API test coverage.
630
631         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
632
633 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
634
635         [ews-build] Check patch relevance before applying the patch
636         https://bugs.webkit.org/show_bug.cgi?id=193102
637
638         Reviewed by Lucas Forschler.
639
640         * BuildSlaveSupport/ews-build/factories.py:
641         (Factory.__init__): Moved CheckPatchRelevance step to base class.
642
643 2019-01-04  Aakash Jain  <aakash_jain@apple.com>
644
645         [ews-build] Check patch relevance step should print patch id
646         https://bugs.webkit.org/show_bug.cgi?id=193137
647
648         Reviewed by Lucas Forschler.
649
650         * BuildSlaveSupport/ews-build/steps.py:
651         (CheckPatchRelevance.start): Update the status to include patch id.
652
653 2019-01-04  Jonathan Bedard  <jbedard@apple.com>
654
655         webkitpy: Increase simulator teardown timeout
656         https://bugs.webkit.org/show_bug.cgi?id=193141
657         <rdar://problem/46174217>
658
659         Rubber-stamped by Aakash Jain.
660
661         * Scripts/webkitpy/xcode/simulated_device.py:
662         (SimulatedDeviceManager.tear_down): Use SIMULATOR_BOOT_TIMEOUT.
663
664 2019-01-03  Ross Kirsling  <ross.kirsling@sony.com>
665
666         test262-runner misbehaves when test file YAML has a trailing space
667         https://bugs.webkit.org/show_bug.cgi?id=193053
668
669         Reviewed by Yusuke Suzuki.
670
671         * Scripts/test262/Runner.pm:
672         (parseData):
673         Accept trailing space when parsing a test file's YAML block.
674
675 2019-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
676
677         UserMedia test should use WKPageNavigationClient
678         https://bugs.webkit.org/show_bug.cgi?id=192913
679
680         Reviewed by Youenn Fablet.
681
682         The test currently uses the deprecated WKPageLoaderClient. It should use
683         WKPageNavigationClient instead, which provides the same callback under a similar name.
684
685         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
686         (TestWebKitAPI::TEST):
687
688 2019-01-02  Alex Christensen  <achristensen@webkit.org>
689
690         Homograph with LATIN SMALL LETTER R WITH FISHHOOK
691         https://bugs.webkit.org/show_bug.cgi?id=192944
692
693         Reviewed by Tim Horton.
694
695         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
696         (TestWebKitAPI::TEST):
697
698 2019-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
699
700         Add support for using the current text selection as the find string on iOS
701         https://bugs.webkit.org/show_bug.cgi?id=193034
702         <rdar://problem/45138739>
703
704         Reviewed by Tim Horton.
705
706         Add a new API test to verify that the new WebKit SPI (_stringForFind, _takeFindStringFromSelection:, and
707         _setStringForFind) works as expected.
708
709         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
710         * TestWebKitAPI/Tests/WebKitCocoa/UseSelectionAsFindString.mm: Added.
711
712 2019-01-02  Aakash Jain  <aakash_jain@apple.com>
713
714         [ews-build] Use git on OpenSource EWS bots
715         https://bugs.webkit.org/show_bug.cgi?id=193092
716
717         Reviewed by Lucas Forschler.
718
719         * BuildSlaveSupport/ews-build/steps.py:
720         (CheckOutSource): Use git instead of svn.
721         (CheckOutSource.__init__): Use timeout of 2 hours since the initial checkout might take a long time.
722
723 2019-01-02  Daniel Bates  <dabates@apple.com>
724
725         [lldb-webkit] Remove broken code to print WTF::OptionSet::m_storage
726         https://bugs.webkit.org/show_bug.cgi?id=193023
727
728         Reviewed by Simon Fraser.
729
730         The code to print WTF::OptionSet::m_storage as an item in the set never worked and does
731         not seem meaningful to fix because WTF::OptionSet::m_storage is just the sum of the printed
732         enumerator values. We should just remove this code.
733
734         * lldb/lldb_webkit.py:
735         (WTFOptionSetProvider.has_children):
736         (WTFOptionSetProvider.num_children):
737         (WTFOptionSetProvider.get_child_index):
738         (WTFOptionSetProvider.get_child_at_index):
739
740 2018-12-29  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
741
742         .ycm_extra_conf.py should handle XXXInlines.h
743         https://bugs.webkit.org/show_bug.cgi?id=193055
744
745         Reviewed by Carlos Garcia Campos.
746
747         compile_commands.json database only records flags and options for cpp source files.
748         So, when we open headers, this database does not have any information for that.
749         Our .ycm_extra_conf.py alleviates this by using XXX.cpp's configuration for XXX.h.
750         But this mitigation does not handle XXXInlines.h well since we do not have XXXInlines.cpp.
751         This patch adds support for XXXInlines.h in .ycm_extra_conf.py. When XXXInlines.h is queried,
752         we attempt to find XXX.cpp and use the configuration if it exists.
753
754         * gtk/ycm_extra_conf.py:
755         (getImplementationFilename):
756         (FlagsForFile):
757
758 2018-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
759
760         Unreviewed. Support PHP 7.3 in Debian.
761
762         Add 7.3 to the list of php versions supported in Debian.
763
764         * Scripts/webkitpy/port/base.py:
765         (Port._debian_php_version):
766
767 2018-12-27  Alex Christensen  <achristensen@webkit.org>
768
769         Resurrect Mac CMake build
770         https://bugs.webkit.org/show_bug.cgi?id=192658
771
772         Reviewed by Yusuke Suzuki.
773
774         * DumpRenderTree/PlatformMac.cmake:
775         * MiniBrowser/mac/CMakeLists.txt:
776         * TestWebKitAPI/PlatformMac.cmake:
777
778 2018-12-26  Adrian Perez de Castro  <aperez@igalia.com>
779
780         [Tools] Remove references to Bison and Flex
781         https://bugs.webkit.org/show_bug.cgi?id=193033
782
783         Reviewed by Michael Catanzaro.
784
785         The Bison and Flex tools are not needed anymore since r209883.
786
787         * CygwinDownloader/cygwin-downloader.py:
788         * EWSTools/ubuntu-ews-packages:
789         * Scripts/filter-build-webkit:
790         (shouldIgnoreLine):
791         * gtk/install-dependencies:
792         * wpe/install-dependencies:
793
794 2018-12-22  Carlos Garcia Campos  <cgarcia@igalia.com>
795
796         WebDriver: warn about non existing tests when parsing expectations
797         https://bugs.webkit.org/show_bug.cgi?id=192979
798
799         Reviewed by Michael Catanzaro.
800
801         It's common to update web driver tests and forget updating the test expectations in case of tests removed or
802         renamed.
803
804         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
805         (WebDriverTestRunner.__init__):
806
807 2018-12-21  Chris Dumez  <cdumez@apple.com>
808
809         navigator.userAgent in service workers does not reflect customUserAgent set by client
810         https://bugs.webkit.org/show_bug.cgi?id=192951
811
812         Reviewed by Youenn Fablet.
813
814         Extend API test coverage.
815
816         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
817         (-[SWCustomUserAgentDelegate initWithUserAgent:]):
818         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
819         (-[SWUserAgentMessageHandler initWithExpectedMessage:]):
820         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
821
822 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
823
824         [WebAuthN] userPresence should always be true
825         https://bugs.webkit.org/show_bug.cgi?id=192835
826         <rdar://problem/46538788>
827
828         Reviewed by Brent Fulgham.
829
830         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
831         (TestWebKitAPI::TEST):
832
833 2018-12-19  Simon Fraser  <simon.fraser@apple.com>
834
835         Add support to run-benchmark to use non-default copies of the browser apps
836         https://bugs.webkit.org/show_bug.cgi?id=192905
837         rdar://problem/46845840
838
839         Reviewed by Dewei Zhu.
840         
841         Add support for a --browser-path argument to run-benchmark, which allows you to use
842         a custom app bundle for a given browser (only implemented for Safari at present).
843
844         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
845         (BenchmarkRunner.__init__):
846         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
847         (BrowserDriver.__init__):
848         * Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver_factory.py:
849         (BrowserDriverFactory.create):
850         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
851         (OSXBrowserDriver._launch_process):
852         (OSXBrowserDriver._launch_process_with_caffeinate): Fix spelling.
853         (OSXBrowserDriver._launch_process_with_caffinate): Deleted.
854         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
855         (OSXChromeCanaryDriver.launch_url):
856         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
857         (OSXFirefoxNightlyDriver.launch_url):
858         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
859         (OSXSafariDriver.__init__):
860         (OSXSafariDriver.launch_url):
861         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
862         (parse_args):
863         (run_benchmark_plan):
864         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
865         (WebServerBenchmarkRunner.__init__):
866         * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py:
867         (FakeBenchmarkRunner.__init__):
868
869 2018-12-21  Jiewen Tan  <jiewen_tan@apple.com>
870
871         [WebAuthN] Import an APDU coder from Chromium
872         https://bugs.webkit.org/show_bug.cgi?id=192949
873         <rdar://problem/46879933>
874
875         Reviewed by Brent Fulgham.
876
877         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
878         * TestWebKitAPI/Tests/WebCore/ApduTest.cpp: Added.
879         (TestWebKitAPI::TEST):
880
881 2018-12-21  Wenson Hsieh  <wenson_hsieh@apple.com>
882
883         Setting the file wrapper and content type of an attachment to a PDF should update its image
884         https://bugs.webkit.org/show_bug.cgi?id=192984
885         <rdar://problem/46798028>
886
887         Reviewed by Tim Horton.
888
889         Add an API test to verify that setting the file wrapper for a _WKAttachment with an enclosing image element with
890         PDF data correctly updates the image element.
891
892         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
893
894 2018-12-21  Michael Catanzaro  <mcatanzaro@igalia.com>
895
896         Add JSCOnly to bot dashboard
897         https://bugs.webkit.org/show_bug.cgi?id=192964
898
899         Reviewed by Alexey Proskuryakov.
900
901         Apparently we have five JSCOnly test bots and multiple developers working on keeping them in
902         good shape. Sadly, they are hidden bots not exposed in the dashboard. They would be more
903         useful if they were not so secret, so add them.
904
905         There appear to be no build-only bots, so the first column is blank. And of course there are
906         no WebKit1 or WebKit2 bots, because this is JSCOnly, so the second and third columns are
907         blank too. That's OK. This will be the last bot on the dashboard, so it won't look too bad,
908         and there's plenty of room in the final column for all the bots.
909
910         I had a hard time picking a logo to use, because the JavaScript language does not have an
911         official logo. But I believe I've found one that will be satisfactory.
912
913         I will sneak in one bonus change: WPE's EWS queue was missing, and has been added.
914
915         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish.png: Added.
916         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish@2x.png: Added.
917         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
918         (BubbleQueueServer):
919         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
920         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
921         (WebKitBuildbot):
922         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
923         (table.queue-grid tr.platform.linux-jsconly img.logo):
924
925 2018-12-21  Benjamin Poulain  <benjamin@webkit.org>
926
927         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
928         https://bugs.webkit.org/show_bug.cgi?id=192821
929
930         Reviewed by Chris Dumez.
931
932         * DumpRenderTree/mac/DumpRenderTree.mm:
933         (createWebViewAndOffscreenWindow):
934         * TestWebKitAPI/mac/WebKitAgnosticTest.mm:
935
936 2018-12-20  Fujii Hironori  <Hironori.Fujii@sony.com>
937
938         [Win][Clang] Fix compilation warnings of DumpRenderTree
939         https://bugs.webkit.org/show_bug.cgi?id=192924
940
941         Reviewed by Alex Christensen.
942
943         * DumpRenderTree/AccessibilityController.h: Added member variable initializations in the class definition.
944         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
945         (AccessibilityController::AccessibilityController): Moved member variable initializations to the class definition.
946         * DumpRenderTree/win/DumpRenderTree.cpp:
947         (dumpHistoryItem): String literals can't be converted non-const type. Use auto for them.
948         (resetWebPreferencesToConsistentValues): Pass a temporal _bstr_t
949         object to the argument of setDefaultTextEncodingName instead of a
950         const string literal.
951         (createWebViewAndOffscreenWindow): Use %lx for HRESULT (aka 'long').
952         (main): Exit if _dup2 fails. Use %lu for'DWORD'(aka 'unsigned long').
953         (setCacheFolder): Deleted.
954         * DumpRenderTree/win/DumpRenderTreeWin.h: Fix class/struct mismatch of FrameLoadDelegate and PolicyDelegate declarations.
955         * DumpRenderTree/win/EditingDelegate.cpp:
956         (dump): Use %d for int.
957         * DumpRenderTree/win/FrameLoadDelegate.cpp: Removed unused variable g_delegateWaitingOnTimer.
958         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
959         (BSTRFromString): Deleted unused function.
960         * DumpRenderTree/win/TestRunnerWin.cpp:
961         (TestRunner::setDatabaseQuota): Pass a temporal _bstr_t object to
962         the arguemnt of setQuota instead of const string literal.
963         * DumpRenderTree/win/WorkQueueItemWin.cpp:
964         (jsStringRefToWString): Deleted unused function.
965
966 2018-12-20  Chris Dumez  <cdumez@apple.com>
967
968         Add API test coverage for customUserAgent client setting and service workers
969         https://bugs.webkit.org/show_bug.cgi?id=192952
970
971         Reviewed by Alex Christensen.
972
973         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
974         (-[SWMessageHandler userContentController:didReceiveScriptMessage:]):
975         (-[SWSchemes webView:startURLSchemeTask:]):
976         (-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
977         (-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
978
979 2018-12-20  Chris Dumez  <cdumez@apple.com>
980
981         Use Optional::hasValue() instead of Optional::has_value()
982         https://bugs.webkit.org/show_bug.cgi?id=192948
983
984         Reviewed by Tim Horton.
985
986         * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
987         (TestWebKitAPI::TEST):
988         * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
989         (TestWebKitAPI::TEST):
990         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
991         (TestWebKitAPI::TEST_F):
992
993 2018-12-20  Chris Dumez  <cdumez@apple.com>
994
995         Add style script rule to check for uses of std::optional<>
996         https://bugs.webkit.org/show_bug.cgi?id=192931
997
998         Reviewed by Tim Horton.
999
1000         * Scripts/webkitpy/style/checkers/cpp.py:
1001         (check_wtf_optional):
1002         (check_style):
1003
1004 2018-12-20  Jiewen Tan  <jiewen_tan@apple.com>
1005
1006         [WebAuthN] Add a runtime flag for local authenticator
1007         https://bugs.webkit.org/show_bug.cgi?id=192792
1008         <rdar://problem/46798738>
1009
1010         Reviewed by Brent Fulgham.
1011
1012         * DumpRenderTree/TestOptions.cpp:
1013         (TestOptions::TestOptions):
1014         * DumpRenderTree/TestOptions.h:
1015         * DumpRenderTree/mac/DumpRenderTree.mm:
1016         (enableExperimentalFeatures):
1017         (setWebPreferencesForTestOptions):
1018         * WebKitTestRunner/TestController.cpp:
1019         (WTR::TestController::resetPreferencesToConsistentValues):
1020         (WTR::updateTestOptionsFromTestHeader):
1021         * WebKitTestRunner/TestOptions.h:
1022         (WTR::TestOptions::hasSameInitializationOptions const):
1023
1024 2018-12-20  Jonathan Bedard  <jbedard@apple.com>
1025
1026         webkitpy: Autoinstall package URLs have changed
1027         https://bugs.webkit.org/show_bug.cgi?id=192909
1028         <rdar://problem/46860359>
1029
1030         Rubber-stamped by Alexey Proskuryakov.
1031
1032         PyPi urls have been moved around, we need to update our auto-installed packages.
1033
1034         We should check for Selenium before asking PyPi for the latest version.
1035
1036         * Scripts/webkitpy/thirdparty/__init__.py:
1037         (AutoinstallImportHook._install_mechanize): Update with new pypi url.
1038         (AutoinstallImportHook._install_keyring): Ditto.
1039         (AutoinstallImportHook._install_pep8): Ditto.
1040         (AutoinstallImportHook._install_mozlog): Ditto.
1041         (AutoinstallImportHook._install_mozprocess): Ditto.
1042         (AutoinstallImportHook._install_pytest_timeout): Ditto.
1043         (AutoinstallImportHook._install_pytest): Ditto.
1044         (AutoinstallImportHook._install_pylint): Ditto.
1045         (AutoinstallImportHook._install_buildbot): Ditto.
1046         (AutoinstallImportHook._install_coverage): Ditto.
1047         (AutoinstallImportHook._install_twisted_15_5_0): Ditto.
1048         (AutoinstallImportHook._install_selenium): Update with new pypi url, only check
1049         for new Selenium if the installed version isn't sufficient.
1050         (AutoinstallImportHook.get_latest_pypi_url): Update with new pypi url.
1051
1052 2018-12-20  Chris Dumez  <cdumez@apple.com>
1053
1054         Use Optional::valueOr() instead of Optional::value_or()
1055         https://bugs.webkit.org/show_bug.cgi?id=192933
1056
1057         Reviewed by Geoffrey Garen.
1058
1059         * TestWebKitAPI/Tests/WTF/URLParser.cpp:
1060         (TestWebKitAPI::checkURL):
1061         (TestWebKitAPI::checkRelativeURL):
1062         (TestWebKitAPI::checkURLDifferences):
1063         (TestWebKitAPI::checkRelativeURLDifferences):
1064         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
1065         (TestWebKitAPI::checkURL):
1066
1067 2018-12-20  Ryan Haddad  <ryanhaddad@apple.com>
1068
1069         Unreviewed, rolling out r239417.
1070
1071         Introduced two API test failures on macOS.
1072
1073         Reverted changeset:
1074
1075         "<rdar://problem/46194315> macOS: WebKit1 does not handle
1076         occlusion changes"
1077         https://bugs.webkit.org/show_bug.cgi?id=192821
1078         https://trac.webkit.org/changeset/239417
1079
1080 2018-12-20  Devin Rousso  <drousso@apple.com>
1081
1082         Web Inspector: UIString should take an optional key and description to aid localization
1083         https://bugs.webkit.org/show_bug.cgi?id=153962
1084         <rdar://problem/24542505>
1085
1086         Reviewed by Brian Burg.
1087
1088         * Scripts/extract-localizable-js-strings:
1089
1090 2018-12-20  Tim Horton  <timothy_horton@apple.com>
1091
1092         Unparented WKWebView can't retrieve main resource data for a main frame plugin
1093         https://bugs.webkit.org/show_bug.cgi?id=192923
1094         <rdar://problem/46859068>
1095
1096         Reviewed by Wenson Hsieh.
1097
1098         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1099         * TestWebKitAPI/WebKitCocoa/GetResourceData.mm:
1100         Add a test ensuring that both parented and unparented WKWebViews can
1101         retrieve main resource data when loading a PDF.
1102
1103 2018-12-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1104
1105         [GTK][WPE] Bump webkitgtk-test-fonts to 0.0.8
1106         https://bugs.webkit.org/show_bug.cgi?id=192852
1107
1108         Reviewed by Michael Catanzaro.
1109
1110         EmojiOne font was replaced by Noto Color Emoji.
1111
1112         * WebKitTestRunner/gtk/fonts/fonts.conf: Use Noto Color Emoji when Apple Color Emoji font family is used in tests.
1113         * gtk/jhbuild.modules:
1114         * wpe/jhbuild.modules:
1115
1116 2018-12-19  Chris Dumez  <cdumez@apple.com>
1117
1118         wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
1119         https://bugs.webkit.org/show_bug.cgi?id=192728
1120         <rdar://problem/46746779>
1121
1122         Reviewed by Geoff Garen.
1123
1124         * DumpRenderTree/*:
1125         * MiniBrowser/*:
1126         * TestRunnerShared/*:
1127         * TestWebKitAPI/*:
1128         * WebGPUAPIStructure/*:
1129         * WebKitTestRunner/*:
1130
1131 2018-12-19  Benjamin Poulain  <benjamin@webkit.org>
1132
1133         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
1134         https://bugs.webkit.org/show_bug.cgi?id=192821
1135
1136         Reviewed by Chris Dumez.
1137
1138         * DumpRenderTree/mac/DumpRenderTree.mm:
1139         (createWebViewAndOffscreenWindow):
1140
1141 2018-12-19  Alex Christensen  <achristensen@webkit.org>
1142
1143         Navigations away from the SafeBrowsing interstitial show a flash of old content
1144         https://bugs.webkit.org/show_bug.cgi?id=192676
1145
1146         Reviewed by Chris Dumez.
1147
1148         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1149         (safeBrowsingView):
1150         (TEST):
1151         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
1152
1153 2018-12-19  Adrian Perez de Castro  <aperez@igalia.com>
1154
1155         [GTK][WPE] Unify TestController::platformRunUntil() and honor condition flag
1156         https://bugs.webkit.org/show_bug.cgi?id=192855
1157
1158         Reviewed by Michael Catanzaro.
1159
1160         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
1161         (WTR::TestController::notifyDone): Use the WPE implementation.
1162         (WTR::TestController::platformRunUntil): Use the WPE implementation.
1163         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
1164         (WTR::TestController::platformRunUntil): Honor the condition flag.
1165
1166 2018-12-19  Megan Gardner  <megan_gardner@apple.com>
1167
1168         Allow clients to set the navigator platform
1169         https://bugs.webkit.org/show_bug.cgi?id=192735
1170
1171         Reviewed by Tim Horton.
1172
1173         Add a test for setting a custom navigator platform.
1174
1175         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1176         (-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1177         (-[CustomNavigatorPlatformDelegate webView:didFinishNavigation:]):
1178
1179 2018-12-19  Truitt Savell  <tsavell@apple.com>
1180
1181         Unreviewed, rolling out r239358.
1182
1183         Revision caused imported/w3c/web-platform-tests/IndexedDB/ to
1184         crash on Debug bots
1185
1186         Reverted changeset:
1187
1188         "Clean up IndexedDB files between tests"
1189         https://bugs.webkit.org/show_bug.cgi?id=192796
1190         https://trac.webkit.org/changeset/239358
1191
1192 2018-12-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1193
1194         [iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
1195         https://bugs.webkit.org/show_bug.cgi?id=192842
1196         <rdar://problem/46823586>
1197
1198         Reviewed by Tim Horton.
1199
1200         Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
1201         item provider when dragging a rich text selection.
1202
1203         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1204
1205 2018-12-18  David Quesada  <david_quesada@apple.com>
1206
1207         REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
1208         https://bugs.webkit.org/show_bug.cgi?id=192810
1209         <rdar://problem/46812536>
1210
1211         Reviewed by Alex Christensen.
1212
1213         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
1214         (-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
1215             After releasing our reference to the web view, wait until the next turn of the runloop
1216             before checking that the originatingWebView has been zeroed, since the web view might
1217             still be referenced in the autorelease pool. This _WKDownload unit test isn't about
1218             testing general memory management of WKWebViews, only that _WKDownload does not retain
1219             its web view via the 'originatingWebView' property.
1220
1221 2018-12-18  Sihui Liu  <sihui_liu@apple.com>
1222
1223         Clean up IndexedDB files between tests
1224         https://bugs.webkit.org/show_bug.cgi?id=192796
1225
1226         Reviewed by Geoffrey Garen.
1227
1228         * DumpRenderTree/mac/DumpRenderTree.mm:
1229         (runTest):
1230         * WebKitTestRunner/TestController.cpp:
1231         (WTR::TestController::resetStateToConsistentValues):
1232         (WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
1233         (WTR::RemoveAllIndexedDatabasesCallback):
1234         (WTR::TestController::ClearIndexedDatabases):
1235         * WebKitTestRunner/TestController.h:
1236
1237 2018-12-18  Alex Christensen  <achristensen@webkit.org>
1238
1239         Fix API test introduced in r239339 on iOS.
1240         https://bugs.webkit.org/show_bug.cgi?id=192675
1241
1242         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1243         (TEST):
1244         The iOS implementation of the safe browsing warning is a little different.
1245         It does some element creation when it is added to the window so it knows how big it is.
1246         To test these elements, we need to simulate adding it to the window.
1247         A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
1248
1249 2018-12-18  Jonathan Bedard  <jbedard@apple.com>
1250
1251         webkitpy: Ignore device type for test when using --force
1252         https://bugs.webkit.org/show_bug.cgi?id=192786
1253         <rdar://problem/46794894>
1254
1255         Reviewed by Daniel Bates.
1256
1257         It is sometimes the case that a contributor will wish to run a test on a specific device,
1258         despite expectations which indicate a test should not be run on that device.
1259
1260         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1261         (parse_args):
1262         * Scripts/webkitpy/port/device_port.py:
1263         (DevicePort.default_child_processes): Strip device type information when using --force.
1264         (DevicePort.setup_test_run): Only allow incomplete match when using --force.
1265
1266 2018-12-18  Alex Christensen  <achristensen@webkit.org>
1267
1268         WKWebView has old URL while displaying SafeBrowsing interstitial, for link-click navigations
1269         https://bugs.webkit.org/show_bug.cgi?id=192675
1270
1271         Reviewed by Geoffrey Garen.
1272
1273         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1274         (goBack):
1275         (TEST):
1276         (visitUnsafeSite):
1277         (-[SafeBrowsingHelper observeValueForKeyPath:ofObject:change:context:]):
1278         (-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1279
1280 2018-12-18  Chris Dumez  <cdumez@apple.com>
1281
1282         Regression(r239182) SuspendedPage's process reuse for link navigation optimization sometimes broken
1283         https://bugs.webkit.org/show_bug.cgi?id=192772
1284
1285         Reviewed by Antti Koivisto.
1286
1287         Add API test coverage.
1288
1289         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1290
1291 2018-12-18  Philippe Normand  <pnormand@igalia.com>
1292
1293         Unreviewed, JHBuild GTK build fix attempt
1294
1295         * gtk/jhbuild.modules: There's no libffi in this moduleset anymore.
1296         There's no ninja module either, it should be provided by the
1297         host system.
1298
1299 2018-12-17  Chris Dumez  <cdumez@apple.com>
1300
1301         Allow passing nil as session state to [WKWebView _restoreSessionState:]
1302         https://bugs.webkit.org/show_bug.cgi?id=192789
1303         <rdar://problem/46755277>
1304
1305         Reviewed by Alex Christensen.
1306
1307         Add API test coverage.
1308
1309         * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
1310         (TEST):
1311
1312 2018-12-17  Simon Fraser  <simon.fraser@apple.com>
1313
1314         Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled
1315         https://bugs.webkit.org/show_bug.cgi?id=192780
1316         rdar://problem/43394387
1317
1318         Reviewed by Tim Horton.
1319
1320         No need to set "AppleFontSmoothing" defaults for WK2.
1321
1322         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
1323         (WTR::InjectedBundle::platformInitialize):
1324
1325 2018-12-17  Jonathan Bedard  <jbedard@apple.com>
1326
1327         webkitpy: Handle case where stdout and stderr don't accept unicode
1328         https://bugs.webkit.org/show_bug.cgi?id=192775
1329         <rdar://problem/46497303>
1330
1331         Reviewed by Stephanie Lewis.
1332
1333         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
1334         (MeteredStream.write): If unicode cannot be written to the stream, replace unicode
1335         characters with '?'.
1336         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
1337         (RegularTest.test_stream_with_encoding):
1338
1339 2018-12-17  Daniel Bates  <dabates@apple.com>
1340
1341         Support concatenating StringView with other string types
1342         https://bugs.webkit.org/show_bug.cgi?id=177566
1343
1344         Reviewed by Darin Adler.
1345
1346         Add some tests to ensure we do not regress the number of allocations needed when performing
1347         string concatenation with string views.
1348
1349         * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
1350         (TestWebKitAPI::TEST):
1351
1352 2018-12-17  Commit Queue  <commit-queue@webkit.org>
1353
1354         Unreviewed, rolling out r239265 and r239274.
1355         https://bugs.webkit.org/show_bug.cgi?id=192765
1356
1357         unorm_normalize is deprecated, and broke an internal build
1358         (Requested by Truitt on #webkit).
1359
1360         Reverted changesets:
1361
1362         "[GTK][WPE] Need a function to convert internal URI to display
1363         ("pretty") URI"
1364         https://bugs.webkit.org/show_bug.cgi?id=174816
1365         https://trac.webkit.org/changeset/239265
1366
1367         "Fix the Apple Internal Mac build with a newer SDK"
1368         https://trac.webkit.org/changeset/239274
1369
1370 2018-12-17  Daniel Bates  <dabates@apple.com>
1371
1372         Implement UIScriptController::toggleCapsLock() for iOS
1373         https://bugs.webkit.org/show_bug.cgi?id=191815
1374
1375         Reviewed by Andy Estes.
1376
1377         Add support for toggling the caps lock state in WebKitTestRunner on iOS.
1378
1379         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1380         * WebKitTestRunner/TestController.cpp:
1381         (WTR::TestController::resetStateToConsistentValues): Clear the current modifier state
1382         before running a test. This ensures that the caps lock state does not persist between
1383         tests should a test enable caps lock and not disable it.
1384         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1385         (hidUsageCodeForCharacter): Map "capsLock" to the Caps Lock key usage code.
1386         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1387         (WTR::createUIPhysicalKeyboardEvent): Modified to take the keyboard input flags to use to
1388         create the event. Also substituted NSString* for const String& as the data type for the first
1389         two parameters to avoid conversions in the implementation of UIScriptController::toggleCapsLock()
1390         below.
1391         (WTR::UIScriptController::keyDown): Update as needed due to changes to prototype of createUIPhysicalKeyboardEvent().
1392         (WTR::UIScriptController::toggleCapsLock): Dispatch a UIEvent to toggle caps lock.
1393
1394 2018-12-17  Daniel Bates  <dabates@apple.com>
1395
1396         [iOS] Remove -[WebEvent initWithKeyEventType:...:characterSet:]
1397         https://bugs.webkit.org/show_bug.cgi?id=192633
1398
1399         Reviewed by Wenson Hsieh.
1400
1401         Update code to use the modern initializer.
1402
1403         * DumpRenderTree/mac/EventSendingController.mm:
1404         (-[EventSendingController keyDown:withModifiers:withLocation:]):
1405
1406 2018-12-17  Matt Lewis  <jlewis3@apple.com>
1407
1408         Unreviewed, rolling out r239254.
1409
1410         This broke the Windows 10 Debug build
1411
1412         Reverted changeset:
1413
1414         "Replace many uses of String::format with more type-safe
1415         alternatives"
1416         https://bugs.webkit.org/show_bug.cgi?id=192742
1417         https://trac.webkit.org/changeset/239254
1418
1419 2018-12-17  David Kilzer  <ddkilzer@apple.com>
1420
1421         clang-tidy: loop variable is copied but only used as const reference in WebCore, WebKit, Tools
1422         <https://webkit.org/b/192751>
1423         <rdar://problem/46771623>
1424
1425         Reviewed by Daniel Bates.
1426
1427         Change loop variables to const references to avoid unnecessary
1428         copies.
1429
1430         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1431         (-[LocalPasteboard pasteboardItems]):
1432
1433 2018-12-17  Ms2ger  <Ms2ger@igalia.com>
1434
1435         [GTK][WPE] Need a function to convert internal URI to display ("pretty") URI
1436         https://bugs.webkit.org/show_bug.cgi?id=174816
1437
1438         Reviewed by Michael Catanzaro.
1439
1440         Add tests for userVisibleString() and (for GTK and WPE) webkit_uri_for_display().
1441
1442         * TestWebKitAPI/CMakeLists.txt:
1443         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1444         * TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Added.
1445         (TestWebKitAPI::TEST):
1446         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitURIUtilities.cpp: Added.
1447         (testURIForDisplayUnaffected):
1448         (testURIForDisplayAffected):
1449         (beforeAll):
1450         (afterAll):
1451         * TestWebKitAPI/glib/CMakeLists.txt:
1452
1453 2018-12-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1454
1455         [WPE] Add API to notify about frame displayed view backend callback
1456         https://bugs.webkit.org/show_bug.cgi?id=192224
1457
1458         Reviewed by Michael Catanzaro.
1459
1460         Add a test case to check the new API.
1461
1462         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1463         (testWebViewFrameDisplayed):
1464         (beforeAll):
1465         * wpe/jhbuild.modules: Bump WPEBackend-fdo to 1.1.0.
1466
1467 2018-12-16  Adrian Perez de Castro  <aperez@igalia.com>
1468
1469         Unreviewed build fix after r239253
1470
1471         * gtk/jhbuild.modules: Fix typo in libpsl dependency name.
1472
1473 2018-12-15  Darin Adler  <darin@apple.com>
1474
1475         Use warning-ignoring macros more consistently and simply
1476         https://bugs.webkit.org/show_bug.cgi?id=192743
1477
1478         Reviewed by Mark Lam.
1479
1480         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
1481         (handleEventCarbon): Use ALLOW_DEPRECATED_DECLARATIONS_BEGIN/END.
1482         * DumpRenderTree/mac/TextInputControllerMac.m:
1483         (-[TextInputController interpretKeyEvents:withSender:]): Use
1484         IGNORE_WARNINGS_BEGIN/END.
1485         * WebKitTestRunner/mac/EventSenderProxy.mm:
1486         (WTR::EventSenderProxy::mouseForceClick): Use
1487         IGNORE_NULL_CHECK_WARNINGS_BEGIN/END.
1488         (WTR::EventSenderProxy::startAndCancelMouseForceClick): Ditto.
1489         (WTR::EventSenderProxy::mouseForceDown): Ditto.
1490         (WTR::EventSenderProxy::mouseForceUp): Ditto.
1491         (WTR::EventSenderProxy::mouseForceChanged): Ditto.
1492
1493 2018-12-15  Darin Adler  <darin@apple.com>
1494
1495         Replace many uses of String::format with more type-safe alternatives
1496         https://bugs.webkit.org/show_bug.cgi?id=192742
1497
1498         Reviewed by Mark Lam.
1499
1500         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1501         (WTR::cacheTestRunnerCallback): Use makeString.
1502         * WebKitTestRunner/TestController.cpp:
1503         (WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
1504         (WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
1505
1506 2018-12-15  Adrian Perez de Castro  <aperez@igalia.com>
1507
1508         [WPE][GTK] Add libpsl to JHBuild module sets
1509         https://bugs.webkit.org/show_bug.cgi?id=192740
1510
1511         Reviewed by Michael Catanzaro.
1512
1513         * gtk/jhbuild.modules: Add libpsl module.
1514         * wpe/jhbuild.modules: Ditto.
1515
1516 2018-12-14  Alexey Proskuryakov  <ap@apple.com>
1517
1518         Add a style checker rule for Xcode version macros use
1519         https://bugs.webkit.org/show_bug.cgi?id=192703
1520
1521         Reviewed by Alex Christensen.
1522
1523         * Scripts/webkitpy/style/checkers/cpp.py:
1524         (check_os_version_checks):
1525         (process_line):
1526         (CppChecker):
1527         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1528         (WebKitStyleTest.test_os_version_checks):
1529
1530 2018-12-14  Chris Dumez  <cdumez@apple.com>
1531
1532         [PSON] Process-swapping on a loadHTMLString causes duplicate decidePolicyForNavigationAction delegate calls
1533         https://bugs.webkit.org/show_bug.cgi?id=192704
1534
1535         Reviewed by Geoffrey Garen.
1536
1537         Extend existing API test to reproduce the problem.
1538
1539         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1540
1541 2018-12-14  Chris Dumez  <cdumez@apple.com>
1542
1543         [PSON] WebsitePolicies are lost on process-swap
1544         https://bugs.webkit.org/show_bug.cgi?id=192694
1545         <rdar://problem/46715748>
1546
1547         Reviewed by Brady Eidson.
1548
1549         Extend existing API test to reproduce the issue.
1550
1551         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1552
1553 2018-12-14  Michael Catanzaro  <mcatanzaro@igalia.com>
1554
1555         [GTK] Error writing data to TLS socket in some sites when using the jhbuild
1556         https://bugs.webkit.org/show_bug.cgi?id=192678
1557
1558         Reviewed by Carlos Garcia Campos.
1559
1560         Update our ancient versions of libsoup and glib-networking.
1561
1562         * gtk/install-dependencies:
1563         * gtk/jhbuild.modules:
1564         * gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Removed.
1565         * gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Removed.
1566         * gtk/patches/libsoup-soup-message-io-Do-not-fail-when-there-s-no-empty-li.patch: Removed.
1567         * gtk/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
1568         * wpe/install-dependencies:
1569         * wpe/jhbuild.modules:
1570         * wpe/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
1571
1572 2018-12-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1573
1574         [WPE] Use new view state API from libwpe
1575         https://bugs.webkit.org/show_bug.cgi?id=191906
1576
1577         Reviewed by Žan Doberšek.
1578
1579         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1580         (beforeAll): Enable /webkit/WebKitWebView/page-visibility in WPE.
1581         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1582         (Test::createWebViewBackend): Make the view initially hidden for consistency with GTK+ tests.
1583         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1584         * TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
1585         (WebViewTest::showInWindow): Add wpe_view_activity_state_visible, wpe_view_activity_state_in_window and
1586         wpe_view_activity_state_focused state flags.
1587         (WebViewTest::hideView): Remove wpe_view_activity_state_visible and wpe_view_activity_state_focused state flags.
1588         * wpe/backends/HeadlessViewBackend.cpp:
1589         (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend): Assume view is always visible, focused and in window.
1590         * wpe/backends/WindowViewBackend.cpp:
1591         (WPEToolingBackends::WindowViewBackend::WindowViewBackend): Update the view state flags depending on state
1592         received in configure callback.
1593         * wpe/jhbuild.modules: Bump libwpe to 1.1.0
1594
1595 2018-12-13  Fujii Hironori  <Hironori.Fujii@sony.com>
1596
1597         [WinCairo][Clang] DLLLauncherMain.cpp: warning: unused function 'prependPath' and 'appleApplicationSupportDirectory'
1598         https://bugs.webkit.org/show_bug.cgi?id=192688
1599
1600         Reviewed by Ross Kirsling.
1601
1602         * win/DLLLauncher/DLLLauncherMain.cpp:
1603         (copyEnvironmentVariable): Moved.
1604         (getStringValue): Enclosed with #if !defined(WIN_CAIRO).
1605         (applePathFromRegistry): Ditto.
1606         (appleApplicationSupportDirectory): Ditto.
1607         (prependPath): Ditto.
1608
1609 2018-12-13  Don Olmstead  <don.olmstead@sony.com>
1610
1611         Unreviewed. Changed my status to a reviewer.
1612
1613         * Scripts/webkitpy/common/config/contributors.json:
1614
1615 2018-12-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1616
1617         [iOS] Support dropping contact card data (public.vcard) in editable content
1618         https://bugs.webkit.org/show_bug.cgi?id=192570
1619         <rdar://problem/35626913>
1620
1621         Reviewed by Tim Horton.
1622
1623         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1624
1625         Add API tests to verify that registering `MKMapItem`s and `CNContact`s to item providers and dropping them in
1626         attachment-enabled rich text editable areas inserts attachment elements (and in the case of `MKMapItem`,
1627         additionally inserts a link).
1628
1629         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1630         (TestWebKitAPI::createMapItemForTesting):
1631         (TestWebKitAPI::createContactItemForTesting):
1632
1633         Add API tests to verify that dropping map items and contact items into rich and plain editable areas behaves as
1634         expected (in the case where a URL is present, e.g. dropping a map item, we insert the URL as an anchor, and when
1635         there is no other suitable representation in the item provider, we do nothing at all, which is the case for the
1636         dropped `CNContact`). Also, add a test to verify that drag and drop can be used to upload these items as .vcf
1637         files.
1638
1639 2018-12-13  Ross Kirsling  <ross.kirsling@sony.com>
1640
1641         Unreviewed -- update my status to "reviewer".
1642
1643         * Scripts/webkitpy/common/config/contributors.json:
1644
1645 2018-12-13  Youenn Fablet  <youenn@apple.com>
1646
1647         On page close, WebPage::m_userMediaPermissionRequestManager is nullified too early
1648         https://bugs.webkit.org/show_bug.cgi?id=192657
1649
1650         Reviewed by Eric Carlson.
1651
1652         Add a test that loads a page registering ondevicechange,
1653         load another page in the same process, closes the first page.
1654         Ensure that the process does not crash in that case.
1655
1656         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1657         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
1658         (TestWebKitAPI::TEST):
1659         (TestWebKitAPI::didCrashCallback):
1660         * TestWebKitAPI/Tests/WebKit/ondevicechange.html: Added.
1661
1662 2018-12-13  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
1663
1664         [GStreamer][JHBuild] update-webkit{gtk,wpe}-libs fails with libfdk-2.0.0
1665         https://bugs.webkit.org/show_bug.cgi?id=192643
1666
1667         Reviewed by Philippe Normand.
1668
1669         This problem happens with Arch Linux users which have libfdk-2.0.0
1670         installed (which is anybody with gst-plugins-bad 1.14.4 installed).
1671
1672         The problem has already been solved upstream at
1673         https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/77.
1674
1675         Adding patches while this problem is not in a release yet.
1676
1677         * gstreamer/jhbuild.modules: Add patches to fix build of gst-plugins-bad with libfdk-2.0.0.
1678         * gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Added.
1679         * gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Added.
1680
1681 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1682
1683         [FreeType] Add initial implementation of variation fonts
1684         https://bugs.webkit.org/show_bug.cgi?id=192151
1685
1686         Reviewed by Michael Catanzaro.
1687
1688         Add cairo patch to avoid crashes.
1689
1690         * gtk/jhbuild.modules:
1691         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
1692
1693 2018-12-12  Fujii Hironori  <Hironori.Fujii@sony.com>
1694
1695         [Win][Clang][WebKitLegacy] WebFrame.cpp: warning: delete called on non-final 'WebFrame' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
1696         https://bugs.webkit.org/show_bug.cgi?id=192618
1697
1698         Reviewed by Alex Christensen.
1699
1700         * DumpRenderTree/win/DRTDataObject.cpp:
1701         * DumpRenderTree/win/DRTDataObject.h:
1702         * DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
1703         * DumpRenderTree/win/DRTDropSource.h:
1704         * DumpRenderTree/win/EditingDelegate.h:
1705         * DumpRenderTree/win/PolicyDelegate.h:
1706         * DumpRenderTree/win/UIDelegate.h:
1707
1708 2018-12-12  Ryosuke Niwa  <rniwa@webkit.org>
1709
1710         Make TextInputController.legacyAttributedString take DOM nodes and offsets
1711         https://bugs.webkit.org/show_bug.cgi?id=192653
1712
1713         Reviewed by Wenson Hsieh.
1714
1715         Updated TextInputController.legacyAttributedString to take DOM nodes and offsets instead of
1716         a DOM Range object in preparation to add layout tests for HTMLConverter which crosses
1717         shadow boundaries.
1718
1719         * DumpRenderTree/mac/TextInputControllerMac.m:
1720         (+[TextInputController isSelectorExcludedFromWebScript:]): Updated the selector signature.
1721         (+[TextInputController webScriptNameForSelector:]): Ditto.
1722         (-[TextInputController legacyAttributedString:offset:to:offset:]): Made this function take
1723         start node and offset then end node and offset pairs.
1724
1725 2018-12-12  Alex Christensen  <achristensen@webkit.org>
1726
1727         Implement safe browsing in WebKit on WatchOS
1728         https://bugs.webkit.org/show_bug.cgi?id=192641
1729         <rdar://problem/46376188>
1730
1731         Reviewed by Geoff Garen.
1732
1733         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1734         (-[SafeBrowsingNavigationDelegate _webViewDidShowSafeBrowsingWarning:]):
1735         (safeBrowsingView):
1736         Add a test that the new delegate callback is called.
1737
1738 2018-12-12  Michael Catanzaro  <mcatanzaro@igalia.com>
1739
1740         Unreviewed manual rollout of r239100-r239102 and r239116
1741         https://bugs.webkit.org/show_bug.cgi?id=192151
1742         <rdar://problem/46655586>
1743
1744         * gtk/jhbuild.modules:
1745         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Removed.
1746
1747 2018-12-12  Commit Queue  <commit-queue@webkit.org>
1748
1749         Unreviewed, rolling out r239103.
1750         https://bugs.webkit.org/show_bug.cgi?id=192627
1751
1752         It broke the built because it depends on another patch that
1753         didn't land yet (Requested by KaL on #webkit).
1754
1755         Reverted changeset:
1756
1757         "[WPE] Add API to notify about frame displayed view backend
1758         callback"
1759         https://bugs.webkit.org/show_bug.cgi?id=192224
1760         https://trac.webkit.org/changeset/239103
1761
1762 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1763
1764         [WPE] Add API to notify about frame displayed view backend callback
1765         https://bugs.webkit.org/show_bug.cgi?id=192224
1766
1767         Reviewed by Michael Catanzaro.
1768
1769         Add a test case to check the new API.
1770
1771         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1772         (testWebViewFrameDisplayed):
1773         (beforeAll):
1774
1775 2018-12-12  Carlos Garcia Campos  <cgarcia@igalia.com>
1776
1777         [FreeType] Add initial implementation of variation fonts
1778         https://bugs.webkit.org/show_bug.cgi?id=192151
1779
1780         Reviewed by Michael Catanzaro.
1781
1782         Add cairo patch to avoid crashes.
1783
1784         * gtk/jhbuild.modules:
1785         * gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
1786
1787 2018-12-11  Justin Michaud  <justin_michaud@apple.com>
1788
1789         Implement feature flag for CSS Typed OM
1790         https://bugs.webkit.org/show_bug.cgi?id=192610
1791
1792         Reviewed by Ryosuke Niwa.
1793
1794         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1795
1796 2018-12-11  Chris Dumez  <cdumez@apple.com>
1797
1798         Unreviewed, fix bad check in API test added in r239080.
1799
1800         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1801
1802 2018-12-11  Fujii Hironori  <Hironori.Fujii@sony.com>
1803
1804         [Win][Clang] Fix warning -Wmissing-field-initializers
1805         https://bugs.webkit.org/show_bug.cgi?id=192584
1806
1807         Reviewed by Yusuke Suzuki.
1808
1809         Initialize a struct with '{ }' instead of '= {0}'.
1810
1811         * DumpRenderTree/win/DumpRenderTree.cpp:
1812         (runTest):
1813         * DumpRenderTree/win/EventSender.cpp:
1814         (makeMsg):
1815         (replaySavedEvents):
1816         (beginDragWithFilesCallback):
1817         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
1818         (createBitmapContextFromWebView):
1819         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
1820         (updateMenuItemForHistoryItem):
1821         * MiniBrowser/win/WinMain.cpp:
1822         (wWinMain):
1823         * TestWebKitAPI/win/HostWindow.cpp:
1824         (TestWebKitAPI::HostWindow::clientRect const):
1825         (TestWebKitAPI::HostWindow::registerWindowClass):
1826         * TestWebKitAPI/win/PlatformWebViewWin.cpp:
1827         (TestWebKitAPI::PlatformWebView::registerWindowClass):
1828         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
1829         (WTR::registerWindowClass):
1830         (WTR::PlatformWebView::windowFrame):
1831         (WTR::PlatformWebView::windowSnapshotImage):
1832
1833 2018-12-11  Chris Dumez  <cdumez@apple.com>
1834
1835         PSON logic gets confused by concurrent decidePolicyForNavigationAction requests
1836         https://bugs.webkit.org/show_bug.cgi?id=192482
1837         <rdar://problem/46470145>
1838
1839         Reviewed by Antti Koivisto.
1840
1841         Add API test coverage.
1842
1843         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1844
1845 2018-12-11  Andy Estes  <aestes@apple.com>
1846
1847         Introduce makeBlockPtr for lambdas
1848         https://bugs.webkit.org/show_bug.cgi?id=192594
1849
1850         Reviewed by Alex Christensen.
1851
1852         Adopted makeBlockPtr and added API tests.
1853
1854         * DumpRenderTree/TestRunner.cpp:
1855         (TestRunner::callUIScriptCallback):
1856         * TestWebKitAPI/Tests/WTF/BlockPtr.mm:
1857         (TestWebKitAPI::TEST):
1858         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
1859         (-[DownloadProgressTestRunner init]):
1860         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
1861
1862 2018-12-11  Chris Dumez  <cdumez@apple.com>
1863
1864         REGRESSION (r238764-238783): TestWTF.WTF.StringOperators is failing
1865         https://bugs.webkit.org/show_bug.cgi?id=192361
1866         <rdar://problem/46524903>
1867
1868         Reviewed by Alex Christensen.
1869
1870         Compile StringOperators.cpp with -O1 optimization level instead of -Os. This
1871         fixes the failures for me locally.
1872
1873         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1874
1875 2018-12-11  Philippe Normand  <pnormand@igalia.com>
1876
1877         Unreviewed, WPE build fix after r239028
1878
1879         The FLATPAK_USER_DIR env var is not set early enough, leading to:
1880
1881         Traceback (most recent call last):
1882         File "/home/phil/WebKit/Tools/Scripts/webkit-flatpak", line 28, in <module>
1883           sys.exit(WebkitFlatpak.load_from_args().run())
1884         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 761, in run
1885           if not self.clean_args():
1886         File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 574, in clean_args
1887           _log.debug("Using flatpak user dir: %s" % os.environ["FLATPAK_USER_DIR"])
1888         File "/usr/lib/python2.7/UserDict.py", line 40, in __getitem__
1889           raise KeyError(key)
1890         KeyError: 'FLATPAK_USER_DIR'
1891
1892         * flatpak/flatpakutils.py:
1893         (WebkitFlatpak.clean_args):
1894
1895 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1896
1897         Move ENABLE_RESOURCE_LOAD_STATISTICS to FeatureDefines.xcconfig
1898         https://bugs.webkit.org/show_bug.cgi?id=192573
1899
1900         Reviewed by Simon Fraser.
1901
1902         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1903
1904 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1905
1906         [CMake] Add ENABLE_RESOURCE_LOAD_STATISTICS to WebKitFeatures.cmake
1907         https://bugs.webkit.org/show_bug.cgi?id=192574
1908
1909         Reviewed by Michael Catanzaro.
1910
1911         * Scripts/webkitperl/FeatureList.pm:
1912
1913 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1914
1915         Sync FeatureList.pm
1916         https://bugs.webkit.org/show_bug.cgi?id=192565
1917
1918         Reviewed by Michael Catanzaro.
1919
1920         * Scripts/webkitperl/FeatureList.pm:
1921
1922 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1923
1924         [iOS] Unable to upload data that conforms to "public.item" but not "public.content"
1925         https://bugs.webkit.org/show_bug.cgi?id=192555
1926         <rdar://problem/35204990>
1927
1928         Reviewed by Tim Horton.
1929
1930         Add a test to verify that `.p12` files may be uploaded as files via drag and drop. "com.rsa.pkcs-12" is an
1931         example of a data type that conforms to "public.item", but not "public.content"; before this patch, we would
1932         only support uploading "public.content", so files such as these would not be accepted when dropping into file
1933         inputs, or be exposed as files on DataTransfer.
1934
1935         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1936         (TestWebKitAPI::TEST):
1937
1938 2018-12-10  David Kilzer  <ddkilzer@apple.com>
1939
1940         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
1941         <https://webkit.org/b/192481>
1942         <rdar://problem/46539059>
1943
1944         Follow-up to address Darin's feedback.
1945
1946         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1947         (WTR::TestRunner::shouldDumpPixels const):
1948         (WTR::TestRunner::whatToDump const):
1949         (WTR::TestRunner::shouldWaitUntilDone const):
1950         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
1951         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
1952         (WTR::TestRunner::secureEventInputIsEnabled const):
1953         (WTR::TestRunner::isStatisticsPrevalentResource):
1954         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
1955         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
1956         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
1957         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
1958         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
1959         (WTR::TestRunner::isStatisticsGrandfathered):
1960         (WTR::TestRunner::hasDOMCache):
1961         (WTR::TestRunner::keyExistsInKeychain):
1962
1963 2018-12-10  Jonathan Bedard  <jbedard@apple.com>
1964
1965         webkitpy: Ref tests don't respect platform specific expectations
1966         https://bugs.webkit.org/show_bug.cgi?id=192515
1967         <rdar://problem/46564839>
1968
1969         Reviewed by Lucas Forschler.
1970
1971         * Scripts/webkitpy/port/base.py:
1972         (Port._expected_baselines_for_suffixes): Accept multiple suffixes so ref tests can use this function.
1973         (Port.expected_baselines): Move implementation to _expected_baselines_for_suffixes.
1974         (Port.expected_filename): Remove irrelevant FIXME, code clean-up.
1975         (Port.reference_files): Instead of just searching a single directory, use _expected_baselines_for_suffixes to
1976         search all platform expectations as well.
1977         * Scripts/webkitpy/port/base_unittest.py:
1978         (test_ref_tests_platform_directory):
1979
1980 2018-12-10  Chris Dumez  <cdumez@apple.com>
1981
1982         Add SPI to allow the client to set the user-agent at main frame level, from the UIProcess
1983         https://bugs.webkit.org/show_bug.cgi?id=192509
1984         <rdar://problem/46500832>
1985
1986         Reviewed by Alex Christensen.
1987
1988         Add API test coverage.
1989
1990         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1991         (-[DataMappingSchemeHandler addMappingFromURLString:toData:]):
1992         (-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
1993         (-[DataMappingSchemeHandler webView:stopURLSchemeTask:]):
1994         (-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
1995         (-[CustomUserAgentDelegate webView:didFinishNavigation:]):
1996
1997 2018-12-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1998
1999         [iOS] Caret is obscured by finger when dragging over an editable element
2000         https://bugs.webkit.org/show_bug.cgi?id=192499
2001         <rdar://problem/46570101>
2002
2003         Reviewed by Tim Horton.
2004
2005         Augment some existing API tests to check that the `precise` flag is either on or off on `UIDropProposal`.
2006
2007         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2008         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
2009         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2010         (-[DragAndDropSimulator _resetSimulatedState]):
2011         (-[DragAndDropSimulator lastKnownDropProposal]):
2012
2013         Rename `currentDropProposal` to `lastKnownDropProposal`, and expose it as a readonly property.
2014
2015         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
2016         (-[DragAndDropSimulator _advanceProgress]):
2017         (-[DragAndDropSimulator setShowCustomActionSheetBlock:]):
2018         (-[DragAndDropSimulator showCustomActionSheetBlock]):
2019         (-[DragAndDropSimulator setConvertItemProvidersBlock:]):
2020         (-[DragAndDropSimulator convertItemProvidersBlock]):
2021         (-[DragAndDropSimulator setOverridePerformDropBlock:]):
2022         (-[DragAndDropSimulator overridePerformDropBlock]):
2023         (-[DragAndDropSimulator setOverrideDragUpdateBlock:]):
2024         (-[DragAndDropSimulator overrideDragUpdateBlock]):
2025         (-[DragAndDropSimulator setDropCompletionBlock:]):
2026         (-[DragAndDropSimulator dropCompletionBlock]):
2027
2028         Refactor these properties to return and take normal Objective-C blocks, rather than `BlockPtr`s. However, use
2029         `BlockPtr` instance variables to manage the lifetimes of these blocks.
2030
2031         (-[DragAndDropSimulator _webView:willUpdateDropProposalToProposal:forSession:]):
2032         (-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]): Deleted.
2033
2034         Update this to use the new WebKit delegate hook for overriding the drop proposal.
2035
2036 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2037
2038         [WPE][GTK] run-minibrowser improperly creates webkit-flatpak environment
2039         https://bugs.webkit.org/show_bug.cgi?id=190241
2040
2041         Reviewed by Carlos Garcia Campos.
2042
2043         run-minibrowser calls into webkit-flatpak to check if a flatpak environment is available.
2044         Currently this actually creates the directories needed for the flatpak environment. Fix it.
2045
2046         * flatpak/flatpakutils.py:
2047         (WebkitFlatpak.clean_args):
2048         (WebkitFlatpak.run):
2049
2050 2018-12-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2051
2052         [GTK] Don't use the slice allocator
2053         https://bugs.webkit.org/show_bug.cgi?id=192360
2054
2055         Reviewed by Carlos Garcia Campos.
2056
2057         * MiniBrowser/gtk/main.c:
2058         (aboutDataRequestFree):
2059         (aboutDataRequestNew):
2060
2061 2018-12-10  Tim Horton  <timothy_horton@apple.com>
2062
2063         WKWebView should support custom tintColor
2064         https://bugs.webkit.org/show_bug.cgi?id=192518
2065         <rdar://problem/37243261>
2066
2067         Reviewed by Wenson Hsieh.
2068
2069         * TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
2070         (TestWebKitAPI::TEST):
2071         Add a test that tintColor affects UITextInputTraits' interaction colors.
2072
2073 2018-12-09  Wenson Hsieh  <wenson_hsieh@apple.com>
2074
2075         [iOS] DragAndDropTests.RespectsExternalSourceFidelityRankings is flaky
2076         https://bugs.webkit.org/show_bug.cgi?id=192524
2077
2078         Reviewed by Ryosuke Niwa.
2079
2080         This test started failing on certain builds of iOS where UIKit now attempts to reveal the selection by scrolling
2081         (see <rdar://problem/28300343>). This API test simulates two drops from external sources, both from the point
2082         (300, 400) to (100, 300) in window coordinates. On these aforementioned builds of iOS, what happens is that the
2083         first drop inserts text that overflows the editable region by an enormous amount, which creates an extremely
2084         wide selection rect and increases the width of the document; revealing this selection causes the web view to
2085         scroll horizontally, such that the second attempt to simulate a drag from (300, 400) to (100, 300) fails, since
2086         these window coordinates no longer correspond to the drop destination element in the document.
2087
2088         To fix this test, we simply mark the drop destination as `overflow: hidden` to ensure that we don't try and
2089         scroll horizontally after the first drop.
2090
2091         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
2092
2093 2018-12-08  Daniel Bates  <dabates@apple.com>
2094
2095         Fix lldb_webkit.py following r238771
2096         (https://bugs.webkit.org/show_bug.cgi?id=190234)
2097
2098         Substitute WTFURLProvider for WebCoreURLProvider in one call site that was inadvertently
2099         missed in r238771.
2100
2101         * lldb/lldb_webkit.py:
2102         (WebCoreDocumentProvider.url):
2103
2104 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2105
2106         [ews-build] check-patch-relevance failure should not mark the overall build as failure
2107         https://bugs.webkit.org/show_bug.cgi?id=192510
2108
2109         Reviewed by Lucas Forschler.
2110
2111         * BuildSlaveSupport/ews-build/steps.py:
2112         (CheckPatchRelevance.start):
2113
2114 2018-12-07  Chris Dumez  <cdumez@apple.com>
2115
2116         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
2117         https://bugs.webkit.org/show_bug.cgi?id=192362
2118         <rdar://problem/46460360>
2119
2120         Reviewed by Ryosuke Niwa.
2121
2122         Move the call to _setCookieAcceptPolicy *after* we've constructed a WKWebView and thus
2123         *after* we know for sure we have a network process to communicate the policy to.
2124         This should address the failures on iOS.
2125
2126         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2127
2128 2018-12-07  Jiewen Tan  <jiewen_tan@apple.com>
2129
2130         Add keychain access entitlement to WebKitTestRunnerApp
2131         https://bugs.webkit.org/show_bug.cgi?id=192489
2132         <rdar://problem/45057952>
2133
2134         Reviewed by Alexey Proskuryakov.
2135
2136         * WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
2137
2138 2018-12-07  Saam Barati  <sbarati@apple.com>
2139
2140         WKWebProcessPlugInLoadDelegate should have API for saying which rendering events it wants to listen for
2141         https://bugs.webkit.org/show_bug.cgi?id=192473
2142
2143         Reviewed by Andy Estes.
2144
2145         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2146         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgress.mm: Added.
2147         (-[DidFirstMeaningfulPaintRemoteObject didFirstMeaningfulPaint]):
2148         (TEST):
2149         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressPlugIn.mm: Added.
2150         (-[RenderingProgressPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2151         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextControllerRenderingProgressEvents:]):
2152         (-[RenderingProgressPlugIn webProcessPlugInBrowserContextController:renderingProgressDidChange:]):
2153         * TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressProtocol.h: Added.
2154
2155 2018-12-07  Jonathan Bedard  <jbedard@apple.com>
2156
2157         REGRESSION: run-webkit-tests may fail when using booted simulators (Follow-up fix)
2158         https://bugs.webkit.org/show_bug.cgi?id=192470
2159         <rdar://problem/46532001>
2160
2161         Unreviewed infrastructure fix.
2162
2163         * Scripts/webkitpy/port/device_port.py:
2164         (DevicePort.setup_test_run): Check that the number of initialized devices matches the
2165         number of child processes.
2166
2167 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2168
2169         [ews-app] Send bug id as a build property
2170         https://bugs.webkit.org/show_bug.cgi?id=192494
2171
2172         Reviewed by Lucas Forschler.
2173
2174         * BuildSlaveSupport/ews-app/ews/fetcher.py:
2175         (BugzillaPatchFetcher.fetch):
2176
2177 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2178
2179         [ews-build] Builds should have a link to patch and bug
2180         https://bugs.webkit.org/show_bug.cgi?id=192492
2181
2182         Reviewed by Lucas Forschler.
2183
2184         * BuildSlaveSupport/ews-build/steps.py:
2185         (ConfigureBuild.add_patch_id_url): Method to add Patch URL.
2186         (ConfigureBuild.add_bug_id_url): Method to add Bug URL.
2187         (ConfigureBuild.getPatchURL): Method to get Patch URL.
2188         (ConfigureBuild.getBugURL): Method to get Bug URL.
2189
2190 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2191
2192         [ews-app] Configure logfile for ews-app logs
2193         https://bugs.webkit.org/show_bug.cgi?id=192493
2194
2195         Reviewed by Lucas Forschler.
2196
2197         * BuildSlaveSupport/ews-app/ews/__init__.py:
2198
2199 2018-12-07  Aakash Jain  <aakash_jain@apple.com>
2200
2201         Style queue exception on some security bugs
2202         https://bugs.webkit.org/show_bug.cgi?id=190793
2203
2204         Reviewed by Lucas Forschler.
2205
2206         * Scripts/webkitpy/tool/steps/applywatchlist.py:
2207         (ApplyWatchList.run):
2208
2209 2018-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
2210
2211         [Attachment Support] Cloned attachment elements lose their unique identifiers
2212         https://bugs.webkit.org/show_bug.cgi?id=192483
2213
2214         Reviewed by Tim Horton.
2215
2216         Introduce a new API test.
2217
2218         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2219         (TestWebKitAPI::TEST):
2220
2221 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2222
2223         Consecutive DumpRenderTree crashes are happening again on WinCairo BuildBots since r238903
2224         https://bugs.webkit.org/show_bug.cgi?id=192486
2225
2226         Unreviewed infrastructure fix.
2227
2228         WinCairo bots define WEBKIT_TEST_CHILD_PROCESSES to run less processes due to RAM restrictions.
2229
2230         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2231         (_set_up_derived_options):
2232
2233 2018-12-06  David Kilzer  <ddkilzer@apple.com>
2234
2235         Injected bundle for WebKitTestRunner leaks WKTypeRef objects
2236         <https://webkit.org/b/192481>
2237         <rdar://problem/46539059>
2238
2239         Reviewed by Simon Fraser.
2240
2241         This patch:
2242         - Fixes leaks in various injected bundle methods that return +1
2243           retained WKTypeRef objects via pointer.
2244         - Asserts the returned object is the expected WKTypeRef.
2245         - Replaces 0 with nullptr in many places.
2246
2247         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2248         (WTR::InjectedBundle::didCreatePage):
2249         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2250         (WTR::TestRunner::shouldDumpPixels const):
2251         (WTR::TestRunner::whatToDump const):
2252         (WTR::TestRunner::shouldWaitUntilDone const):
2253         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
2254         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
2255         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
2256         (WTR::TestRunner::secureEventInputIsEnabled const):
2257         (WTR::TestRunner::isStatisticsPrevalentResource):
2258         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
2259         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
2260         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2261         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2262         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2263         (WTR::TestRunner::isStatisticsGrandfathered):
2264         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
2265         (WTR::TestRunner::statisticsUpdateCookieBlocking):
2266         (WTR::TestRunner::statisticsSubmitTelemetry):
2267         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
2268         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
2269         (WTR::TestRunner::statisticsResetToConsistentState):
2270         (WTR::TestRunner::getAllStorageAccessEntries):
2271         (WTR::TestRunner::hasDOMCache):
2272         (WTR::TestRunner::domCacheSize):
2273         (WTR::TestRunner::injectUserScript):
2274         (WTR::TestRunner::keyExistsInKeychain):
2275
2276 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2277
2278         REGRESSION: run-webkit-tests may fail when using booted simulators
2279         https://bugs.webkit.org/show_bug.cgi?id=192470
2280         <rdar://problem/46532001>
2281
2282         Reviewed by Lucas Forschler.
2283
2284         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2285         (Manager.run): Logging uses the number of child processes to print out information about how efficiently tests
2286         were sharded after the fact. This number is the most meaningful if it is the maximum number of child processes used.
2287         * Scripts/webkitpy/port/base.py:
2288         (Port.max_child_processes): By default, Ports do not support running on any specific kind of device.
2289         * Scripts/webkitpy/port/device_port.py:
2290         (DevicePort.default_child_processes): Rather than using the currently initialized devices as a proxy for how many
2291         child processes are being used, check the device manager every time. Regardless of which devices are attached or
2292         available, iOS cannot boot watchOS devices and vice-versa. dedicated_simulators is not a known argument to
2293         device_count_for_type, use use_booted_simulator instead.
2294         (DevicePort.max_child_processes): Simulators can boot more devices than what is specified by device_count_for_type,
2295         but, if no devices are available, then max_child_processes should return 0 even for simulators.
2296         * Scripts/webkitpy/port/ios_device_unittest.py:
2297         (IOSDeviceTest):
2298         (IOSDeviceTest.test_max_child_processes):
2299         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2300         (IOSSimulatorTest):
2301         (IOSSimulatorTest.test_max_child_processes):
2302         * Scripts/webkitpy/port/port_testcase.py:
2303         (PortTestCase):
2304         (PortTestCase.test_max_child_processes):
2305         * Scripts/webkitpy/port/watch_simulator_unittest.py:
2306         (WatchSimulatorTest):
2307         (WatchSimulatorTest.test_max_child_processes):
2308
2309 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2310
2311         webkitpy: Ignore case when comparing device types (Follow-up fix)
2312         https://bugs.webkit.org/show_bug.cgi?id=192409
2313         <rdar://problem/46491558>
2314
2315         Unreviewed typo fix.
2316
2317         * Scripts/webkitpy/xcode/device_type_unittest.py:
2318         (DeviceTypeTest.test_comparison_lower_case):
2319         (DeviceTypeTest.test_comparsion_lower_case): Deleted.
2320
2321 2018-12-06  Jonathan Bedard  <jbedard@apple.com>
2322
2323         webkitpy: Create device given lower-case DeviceType
2324         <https://bugs.webkit.org/show_bug.cgi?id=192472>
2325         <rdar://problem/46532650>
2326
2327         Reviewed by Lucas Forschler.
2328
2329         * Scripts/webkitpy/xcode/simulated_device.py:
2330         (SimulatedDeviceManager._get_device_identifier_for_type): Comparing simctl device identifiers with DeviceTypes
2331         should be letter-case agnostic.
2332         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
2333         (test_lower_case_device_type):
2334
2335 2018-12-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2336
2337         [iOS] WKWebView should match UITextView behavior when editing text with an RTL keyboard
2338         https://bugs.webkit.org/show_bug.cgi?id=187554
2339         <rdar://problem/42075638>
2340
2341         Reviewed by Tim Horton.
2342
2343         Add support for simulating the keyboard input mode in layout tests using UIScriptController, as well as a new
2344         `TestOption` to make the web view editable.
2345
2346         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2347         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
2348         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2349         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2350         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
2351         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2352         * WebKitTestRunner/PlatformWebView.h:
2353         * WebKitTestRunner/TestController.cpp:
2354         (WTR::updateTestOptionsFromTestHeader):
2355         * WebKitTestRunner/TestController.h:
2356         (WTR::TestController::overriddenKeyboardInputMode const):
2357         * WebKitTestRunner/TestOptions.h:
2358         (WTR::TestOptions::hasSameInitializationOptions const):
2359         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2360         (WTR::TestController::platformCreateWebView):
2361         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2362         (WTR::PlatformWebView::setEditable):
2363         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2364         (WTR::PlatformWebView::setEditable):
2365         * WebKitTestRunner/ios/TestControllerIOS.mm:
2366         (WTR::TestController::platformResetStateToConsistentValues):
2367         (WTR::swizzleCurrentInputMode):
2368         (WTR::TestController::setKeyboardInputModeIdentifier):
2369
2370         Swizzle out several `UIKeyboardInputModeController` methods in order to convince UIKit that the user has
2371         selected a `UIKeyboardInputMode` corresponding to the given identifier. The call to
2372         `-prepareKeyboardInputModeFromPreferences:` is also necessary on iOS 12 in order to update cached writing
2373         direction state in UIKit.
2374
2375         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2376         (WTR::UIScriptController::setKeyboardInputModeIdentifier):
2377         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2378         (WTR::PlatformWebView::setEditable):
2379         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
2380         (WTR::PlatformWebView::setEditable):
2381         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
2382         (WTR::PlatformWebView::setEditable):
2383
2384 2018-12-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2385
2386         [Cocoa] Share ClassMethodSwizzler and InstanceMethodSwizzler between TestWebKitAPI and WebKitTestRunner
2387         https://bugs.webkit.org/show_bug.cgi?id=192437
2388
2389         Reviewed by Tim Horton.
2390
2391         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2392         * TestRunnerShared/cocoa/ClassMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.h.
2393         * TestRunnerShared/cocoa/ClassMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.mm.
2394         (ClassMethodSwizzler::ClassMethodSwizzler):
2395         (ClassMethodSwizzler::~ClassMethodSwizzler):
2396         * TestRunnerShared/cocoa/InstanceMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.h.
2397         * TestRunnerShared/cocoa/InstanceMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm.
2398         (InstanceMethodSwizzler::InstanceMethodSwizzler):
2399         (InstanceMethodSwizzler::~InstanceMethodSwizzler):
2400
2401         Move these swizzling helper classes into TestRunnerShared.
2402
2403         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2404         * TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
2405         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2406         (safeBrowsingView):
2407         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDefaultNavigationDelegate.mm:
2408         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2409         (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
2410
2411         Remove namespacing around ClassMethodSwizzler and InstanceMethodSwizzler in a few API tests.
2412
2413         * TestWebKitAPI/mac/TestFontOptions.mm:
2414         * WebKitTestRunner/TestController.h:
2415         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2416         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2417         (WTR::ClassMethodSwizzler::ClassMethodSwizzler): Deleted.
2418         (WTR::ClassMethodSwizzler::~ClassMethodSwizzler): Deleted.
2419
2420         Remove this duplicate implementation of ClassMethodSwizzler in WebKitTestRunner.
2421
2422 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
2423
2424         webkitpy: Clean-up apple_additions
2425         https://bugs.webkit.org/show_bug.cgi?id=192413
2426         <rdar://problem/46493491>
2427
2428         Reviewed by Lucas Forschler.
2429
2430         After the addition of watchOS, some functions which were originally iOS specific were
2431         generalized to include all devices.
2432
2433         * Scripts/webkitpy/port/ios_device.py:
2434         (IOSDevicePort._driver_class): Replace iOS specific call with generalized device call.
2435         (IOSDevicePort.path_to_crash_logs): Ditto.
2436         (IOSDevicePort.clean_up_test_run): Ditto.
2437
2438 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
2439
2440         webkitpy: Ignore case when comparing device types
2441         https://bugs.webkit.org/show_bug.cgi?id=192409
2442         <rdar://problem/46491558>
2443
2444         Reviewed by Lucas Forschler.
2445
2446         This allows DeviceTypes constructed with lowercase strings to correctly compare
2447         against DeviceTypes coming from the simulator runtime.
2448
2449         * Scripts/webkitpy/xcode/device_type.py:
2450         (DeviceType.__eq__):
2451         (DeviceType.__contains__):
2452         * Scripts/webkitpy/xcode/device_type_unittest.py:
2453         (DeviceTypeTest):
2454         (DeviceTypeTest.test_comparsion_lower_case):
2455
2456 2018-12-05  Jonathan Bedard  <jbedard@apple.com>
2457
2458         webkitpy: Sort tests by associated device type
2459         https://bugs.webkit.org/show_bug.cgi?id=192161
2460         <rdar://problem/46345392>
2461
2462         Reviewed by Lucas Forschler.
2463
2464         Sort tests by device type and make an effort to run each specified device type.
2465         Do not run tests if their specified device is not available.
2466
2467         * Scripts/webkitpy/common/system/platforminfo.py:
2468         (PlatformInfo.is_watchos): Add watchos bits to platform info.
2469         (PlatformInfo._determine_os_name): Ditto.
2470         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2471         (Manager.run): Assign each test a device type. Then, generate a list of
2472         device types to sequentially iterate through. Note that a test will run
2473         on the first device which matches.
2474         (Manager._end_test_run): Handle the case where no devices are available and no
2475         tests are run.
2476         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2477         (_set_up_derived_options): Manage child processes in manager.
2478         * Scripts/webkitpy/port/base.py:
2479         (Port):
2480         (Port.default_child_processes): Accept additional arguments.
2481         (Port.max_child_processes): Add upper limit for number of child processes.
2482         * Scripts/webkitpy/port/device_port.py:
2483         (DevicePort):
2484         (DevicePort._device_type_with_version): Adds version to the DeviceType.
2485         (DevicePort.default_child_processes): Allows default_child_processes to be
2486         attached to a device type.
2487         (DevicePort.max_child_processes): Add upper limit to the maximum number of child processes.
2488         (DevicePort.setup_test_run): Use _device_type_with_version.
2489         * Scripts/webkitpy/port/ios_device.py:
2490         (IOSDevicePort):
2491         (IOSDevicePort.default_child_processes): Deleted.
2492         * Scripts/webkitpy/port/ios_simulator.py:
2493         (IOSSimulatorPort.default_child_processes): Deleted.
2494         (IOSSimulatorPort.check_sys_deps): Deleted.
2495         * Scripts/webkitpy/port/mac.py:
2496         (MacPort.default_child_processes): Accept additional arguments.
2497         * Scripts/webkitpy/port/test.py:
2498         * Scripts/webkitpy/port/watch_device.py:
2499         (WatchDevicePort):
2500         (WatchDevicePort.default_child_processes): Deleted.
2501         * Scripts/webkitpy/port/watch_simulator.py:
2502         (WatchSimulatorPort.default_child_processes): Deleted.
2503         (WatchSimulatorPort.check_sys_deps): Deleted.
2504         * Scripts/webkitpy/xcode/simulated_device.py:
2505         (SimulatedDeviceManager):
2506         (SimulatedDeviceManager.device_count_for_type): Count the number of devices
2507         available for a specific device type.
2508
2509 2018-12-05  Devin Rousso  <drousso@apple.com>
2510
2511         Unreviewed, add myself to some watch lists.
2512
2513         * Scripts/webkitpy/common/config/watchlist:
2514
2515 2018-12-05  Alicia Boya García  <aboya@igalia.com>
2516
2517         [MSE][GStreamer] Remove the AppendPipeline state machine
2518         https://bugs.webkit.org/show_bug.cgi?id=192204
2519
2520         Reviewed by Xabier Rodriguez-Calvar.
2521
2522         Updated AbortableTaskQueue tests:
2523
2524         Added test: AbortedBySyncTaskHandler.
2525
2526         Renamed test: AbortDuringSyncTask -> AbortBeforeSyncTaskRun (in
2527         order to avoid confusion with the new test).
2528
2529         Added checks for the correct destruction of response objects.
2530
2531         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
2532         (TestWebKitAPI::FancyResponse::FancyResponse):
2533         (TestWebKitAPI::FancyResponse::~FancyResponse):
2534         (TestWebKitAPI::TEST):
2535
2536 2018-12-04  Chris Dumez  <cdumez@apple.com>
2537
2538         ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
2539         https://bugs.webkit.org/show_bug.cgi?id=192362
2540
2541         Reviewed by Alex Christensen.
2542
2543         Set the cookie policy to Accept to make sure the cookies are saved.
2544
2545         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2546
2547 2018-12-04  Michael Catanzaro  <mcatanzaro@igalia.com>
2548
2549         [WPE][GTK] Update GLib
2550         https://bugs.webkit.org/show_bug.cgi?id=191222
2551
2552         Reviewed by Žan Doberšek.
2553
2554         When I try running API tests locally, they crash with:
2555
2556         GLib-GIO-WARNING **: unknown schema extension 'd'
2557
2558         We need to update our old glib to support the 'd' value type, otherwise schemas that may
2559         exist on the host using this type will cause instant crashes.
2560
2561         Also, switch the GLib build to use meson. This requires updating meson as well.
2562
2563         * gtk/jhbuild.modules:
2564         * gtk/patches/glib-cast-function-type.patch: Removed.
2565         * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Removed.
2566         * wpe/jhbuild.modules:
2567         * wpe/patches/glib-cast-function-type.patch: Removed.
2568         * wpe/patches/glib-revert-wakeup-changes.patch: Removed.
2569
2570 2018-12-04  Aakash Jain  <aakash_jain@apple.com>
2571
2572         [ews-app] Run BugzillaPatchFetcher periodically
2573         https://bugs.webkit.org/show_bug.cgi?id=192241
2574
2575         Reviewed by Lucas Forschler.
2576
2577         * BuildSlaveSupport/ews-app/ews/__init__.py:
2578         * BuildSlaveSupport/ews-app/ews/apps.py:
2579         (EwsConfig.ready): This method is called by Django on startup.
2580         * BuildSlaveSupport/ews-app/ews/fetcher.py:
2581         (FetchLoop): Class which invokes BugzillaPatchFetcher every 60s.
2582
2583 2018-12-04  Jonathan Bedard  <jbedard@apple.com>
2584
2585         webkitpy: Support unicode in MeteredStream
2586         https://bugs.webkit.org/show_bug.cgi?id=192260
2587
2588         Reviewed by Aakash Jain.
2589
2590         It's possible that the test runner returns unicode characters to be logged when
2591         running layout tests.
2592
2593         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2594         (MeteredStream.write): Print message without attempting to encode/decode it.
2595         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
2596         (RegularTest.test_unicode):
2597
2598 2018-12-04  Keith Rollin  <krollin@apple.com>
2599
2600         Update scripts for generating .xcfilelist files
2601         https://bugs.webkit.org/show_bug.cgi?id=192081
2602         <rdar://problem/46312290>
2603
2604         Reviewed by Brent Fulgham.
2605
2606         The initial pass at generate-xcfilelists (a script for
2607         creating/updating the .xcfilelist files needed for various Generate
2608         Foo Source build phases in Xcode) only generated the .xcfilelist files
2609         that held the output files; it did not generate the list of input
2610         files. As well, for the sources generated by DerivedSources.make
2611         makefiles, the script accomplished this via the implementation of a
2612         convention in the makefile that allowed the printing of these output
2613         files when invoked with the 'print_all_generated_files' target. Use of
2614         this convention is inconvenient and error-prone.
2615
2616         The script is now updated to address both of these issues. First, it
2617         generates for the input and output sets of files. Second, it does away
2618         with the convention in the DerivedSources.make makefiles and instead
2619         works from the dependency output information printed when `make` is
2620         invoked with --debug. This second part is implemented in the new
2621         script extract-dependencies-from-makefile.
2622
2623         * Scripts/extract-dependencies-from-makefile: Added.
2624         (Parser):
2625         (Parser.__init__):
2626         (Parser.nextLine):
2627         (Parser.addTarget):
2628         (Parser.addPrereq):
2629         (Parser.doParse):
2630         (Parser.printInputs):
2631         (Parser.printOutputs):
2632         (parseArgs):
2633         (main):
2634         * Scripts/generate-xcfilelists:
2635
2636 2018-12-04  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
2637
2638         [WPE] Add gtk-doc
2639         https://bugs.webkit.org/show_bug.cgi?id=178900
2640
2641         Reviewed by Michael Catanzaro.
2642
2643         Add gtk-doc to WPE port. This patch tries to reuse as much code from
2644         WebKitGTK+ as possible.
2645
2646         * gtkdoc/generate-gtkdoc: Renamed from Tools/gtk/generate-gtkdoc.
2647         (get_gtkdoc_module_paths): Add GDK and GTK only if building for GTK.
2648         (prepare_environment_for_gtkdoc_generation):
2649         (build_gtkdoc_for_wpe): Code to generate doc for WPE.
2650         (build_gtkdoc_for_wkgtk): Code to generate doc for WebKitGTK+. Moved from main.
2651         * gtkdoc/gtkdoc.py: Renamed from Tools/gtk/gtkdoc.py.
2652         (GTKDoc.__init__): Initialized required variables according to pylint.
2653         (GTKDoc.api_missing_documentation):
2654         * wpe/install-dependencies: Add gtkdoc dependency.
2655
2656 2018-12-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2657
2658         [SOUP] Move URLSoup back to WebCore after r238771
2659         https://bugs.webkit.org/show_bug.cgi?id=192306
2660
2661         Reviewed by Michael Catanzaro.
2662
2663         Include GUniquePtrSoup from WebCore again.
2664
2665         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2666
2667 2018-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2668
2669         [GTK] Bump freetype, fontconfig, harfbuzz, cairo and icu in jhbuild
2670         https://bugs.webkit.org/show_bug.cgi?id=192310
2671
2672         Reviewed by Michael Catanzaro.
2673
2674         Update those dependencies to their latest stable versions.
2675
2676         * gtk/jhbuild.modules:
2677
2678 2018-12-03  Tomas Popela  <tpopela@redhat.com>
2679
2680         [GTK] Can't run MiniBrowser due to missing python2-yaml
2681         https://bugs.webkit.org/show_bug.cgi?id=192308
2682
2683         Reviewed by Michael Catanzaro.
2684
2685         * gtk/install-dependencies:
2686
2687 2018-12-03  Chris Dumez  <cdumez@apple.com>
2688
2689         Regression(PSON) Google OAuth is broken in private sessions
2690         https://bugs.webkit.org/show_bug.cgi?id=192337
2691         <rdar://problem/46353558>
2692
2693         Reviewed by Alex Christensen.
2694
2695         Add API test coverage.
2696
2697         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2698         * TestWebKitAPI/Tests/WebKitCocoa/GetSessionCookie.html: Added.
2699         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2700         * TestWebKitAPI/Tests/WebKitCocoa/SetSessionCookie.html: Added.
2701
2702 2018-12-03  Chris Dumez  <cdumez@apple.com>
2703
2704         [PSON] Request by the client to process-swap is ignored if the window has an opener
2705         https://bugs.webkit.org/show_bug.cgi?id=192267
2706         <rdar://problem/46386886>
2707
2708         Reviewed by Brady Eidson.
2709
2710         Add API test coverage.
2711
2712         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2713
2714 2018-12-03  Keith Rollin  <krollin@apple.com>
2715
2716         Add .xcfilelist files
2717         https://bugs.webkit.org/show_bug.cgi?id=192082
2718         <rdar://problem/46312533>
2719
2720         Reviewed by Brent Fulgham.
2721
2722         Add .xcfilelist files for Generate Derived Sources and Generate
2723         Unified Sources build phases in Xcode. These are just being staged for
2724         now; they'll be added to the Xcode projects later.
2725
2726         * DumpRenderTree/DerivedSources-input.xcfilelist: Added.
2727         * DumpRenderTree/DerivedSources-output.xcfilelist: Added.
2728         * WebKitTestRunner/DerivedSources-input.xcfilelist: Added.
2729         * WebKitTestRunner/DerivedSources-output.xcfilelist: Added.
2730
2731 2018-12-03  Alex Christensen  <achristensen@webkit.org>
2732
2733         Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
2734         https://bugs.webkit.org/show_bug.cgi?id=192272
2735
2736         Reviewed by Brady Eidson.
2737
2738         * TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
2739         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]):
2740         (-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
2741
2742 2018-12-03  Wenson Hsieh  <wenson_hsieh@apple.com>
2743
2744         [iOSMac] Unable to upload non-image files using drag and drop in WKWebView
2745         https://bugs.webkit.org/show_bug.cgi?id=192283
2746         <rdar://problem/46399461>
2747
2748         Reviewed by Ryosuke Niwa.
2749
2750         Add a new API test to check that an item provider which contains plain text data and a file URL (but is not
2751         marked as an attachment) is still treated as an attachment upon drop. Furthermore, verify that "text/uri-list"
2752         does not expose the actual file URL written to the item provider.
2753
2754         Additionally, rebaseline an existing API test to remove an extraneous "text/uri-list" type that appears in
2755         `DataTransfer.types`, but whose data is inaccessible via `getData` anyways.
2756
2757         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2758
2759 2018-12-01  Don Olmstead  <don.olmstead@sony.com>
2760
2761         Cleanup WebKit Features
2762         https://bugs.webkit.org/show_bug.cgi?id=192262
2763
2764         Reviewed by Michael Catanzaro.
2765
2766         Removes obsolete ENABLE options and variable names. Syncs the option's
2767         descriptions with what is present in WebKitFeatures.cmake. Sorts the
2768         options based on the associated define.
2769
2770         * Scripts/webkitperl/FeatureList.pm:
2771
2772 2018-12-01  Chris Dumez  <cdumez@apple.com>
2773
2774         [PSON] process-swapping may occur even though opener has handle to openee
2775         https://bugs.webkit.org/show_bug.cgi?id=192277
2776
2777         Reviewed by Antti Koivisto.
2778
2779         Add API test coverage.
2780
2781         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2782
2783 2018-12-01  Jonathan Bedard  <jbedard@apple.com>
2784
2785         Unreviewed, rolling out r238764.
2786
2787         Breaks existing layout tests
2788
2789         Reverted changeset:
2790
2791         "webkitpy: Support unicode in MeteredStream"
2792         https://bugs.webkit.org/show_bug.cgi?id=192260
2793         https://trac.webkit.org/changeset/238764
2794
2795 2018-12-01  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
2796
2797         Move URL tests from TestWebKitAPI to TestWTF
2798         https://bugs.webkit.org/show_bug.cgi?id=192275
2799
2800         Reviewed by Keith Miller.
2801
2802         Since URL is moved from WebCore to WTF, we also move tests for them from TestWebKitAPI (TestWebCore) to TestWTF.
2803         But we still have some tests in TestWebCore since only WebCore implements TextEncoding. That part is now decoupled
2804         from URLParser tests and new URLParserTextEncoding.cpp is created.
2805
2806         * TestWebKitAPI/CMakeLists.txt:
2807         * TestWebKitAPI/PlatformGTK.cmake:
2808         * TestWebKitAPI/PlatformWPE.cmake:
2809         * TestWebKitAPI/PlatformWin.cmake:
2810         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2811         * TestWebKitAPI/Tests/WTF/URL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URL.cpp.
2812         (TestWebKitAPI::TEST_F):
2813         * TestWebKitAPI/Tests/WTF/URLParser.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp.
2814         (TestWebKitAPI::TEST_F):
2815         * TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm.
2816         (TestWebKitAPI::TEST):
2817         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp: Added.
2818         (TestWebKitAPI::ExpectedParts::isInvalid const):
2819         (TestWebKitAPI::eq):
2820         (TestWebKitAPI::insertTabAtLocation):
2821         (TestWebKitAPI::invalidParts):
2822         (TestWebKitAPI::checkURL):
2823         (TestWebKitAPI::TEST_F):
2824
2825 2018-11-30  Zalan Bujtas  <zalan@apple.com>
2826
2827         Unreviewed LFC passing test list update.
2828
2829         * LayoutReloaded/misc/LFC-passing-tests.txt:
2830
2831 2018-11-30  Alex Christensen  <achristensen@webkit.org>
2832
2833         Move URL from WebCore to WTF
2834         https://bugs.webkit.org/show_bug.cgi?id=190234
2835
2836         Reviewed by Keith Miller.
2837
2838         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2839         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
2840         * TestWebKitAPI/Tests/WebCore/URL.cpp:
2841         (TestWebKitAPI::createURL):
2842         (TestWebKitAPI::TEST_F):
2843         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2844         (TestWebKitAPI::checkURL):
2845         (TestWebKitAPI::checkRelativeURL):
2846         (TestWebKitAPI::checkURLDifferences):
2847         (TestWebKitAPI::checkRelativeURLDifferences):
2848         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2849         * TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
2850         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
2851         (TestWebKitAPI::originalDataAsString):
2852         (TestWebKitAPI::userVisibleString):
2853         (TestWebKitAPI::literalURL):
2854         (TestWebKitAPI::TEST):
2855         * TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
2856         (TEST):
2857         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
2858         (literalURL):
2859         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2860         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
2861         (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
2862         * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
2863         * TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
2864         (TestWebKitAPI::Util::createURLForResource):
2865         * lldb/lldb_webkit.py:
2866         (__lldb_init_module):
2867         (WTFURL_SummaryProvider):
2868         (WTFURLProvider):
2869         (WebCoreURL_SummaryProvider): Deleted.
2870         (WebCoreURLProvider): Deleted.
2871         (WebCoreURLProvider.__init__): Deleted.
2872         (WebCoreURLProvider.to_string): Deleted.
2873
2874 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2875
2876         webkitpy: Support unicode in MeteredStream
2877         https://bugs.webkit.org/show_bug.cgi?id=192260
2878
2879         Reviewed by Stephanie Lewis.
2880
2881         It's possible that the test runner returns unicode characters to be logged when
2882         running layout tests.
2883
2884         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2885         (MeteredStream.write): Message written to metered stream should be unicode.
2886         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
2887         (RegularTest.test_unicode):
2888
2889 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2890
2891         REGRESSION (r238749): run-api-tests dies with AttributeError: 'IOSSimulatorPort' object has no attribute 'DEFAULT_DEVICE_CLASS'
2892         https://bugs.webkit.org/show_bug.cgi?id=192257
2893         <rdar://problem/46384671>
2894
2895         Reviewed by Stephanie Lewis.
2896
2897         Follow-up fix for r238749.
2898
2899         * Scripts/webkitpy/api_tests/manager.py:
2900         (Manager._initialize_devices): Use DEFAULT_DEVICE_TYPE instead of DEFAULT_DEVICE_CLASS.
2901
2902 2018-11-30  Chris Dumez  <cdumez@apple.com>
2903
2904         [PSON] We are sometimes swapping processes even though there is an opened window with an opener link to us
2905         https://bugs.webkit.org/show_bug.cgi?id=192242
2906
2907         Reviewed by Geoffrey Garen.
2908
2909         Add API test coverage.
2910
2911         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2912
2913 2018-11-30  Don Olmstead  <don.olmstead@sony.com>
2914
2915         Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
2916         https://bugs.webkit.org/show_bug.cgi?id=192197
2917
2918         Reviewed by Jiewen Tan.
2919
2920         * Scripts/webkitperl/FeatureList.pm:
2921         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2922
2923 2018-11-30  Dean Jackson  <dino@apple.com>
2924
2925         Add first-class support for .mjs files in jsc binary
2926         https://bugs.webkit.org/show_bug.cgi?id=192190
2927         <rdar://problem/46375715>
2928
2929         Reviewed by Keith Miller.
2930
2931         Add .mjs files to the regexp looking for all JS files.
2932
2933         * Scripts/run-jsc-stress-tests:
2934
2935 2018-11-30  Jonathan Bedard  <jbedard@apple.com>
2936
2937         webkitpy: Use DeviceType instead of str to represent device class
2938         https://bugs.webkit.org/show_bug.cgi?id=192160
2939         <rdar://problem/46344845>
2940
2941         Rubber-stamped by Aakash Jain.
2942
2943         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2944         (Manager._custom_device_for_test): Use DeviceTypes instead of strings to represent device type.
2945         (Manager._set_up_run): Do not set _options.device_class, use device_type instead of device_class.
2946         (Manager.run): Use device_type instead of device_class.
2947         (Manager._print_expectations_for_subset): Ditto.
2948         (Manager.print_expectations): Ditto.
2949         * Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
2950         (ManagerTest.test_uses_custom_device): Use DeviceType and actual device definition.
2951         * Scripts/webkitpy/layout_tests/views/printing.py:
2952         (Printer.print_workers_and_shards): Outputting the device suffix doesn't really help, and means
2953         device type needs to be passed around.
2954         * Scripts/webkitpy/port/apple.py:
2955         (ApplePort.setup_test_run): Use device_type instead of device_class.
2956         * Scripts/webkitpy/port/base.py:
2957         (Port):
2958         (Port.setup_test_run): Use device_type instead of device_class.
2959         * Scripts/webkitpy/port/device_port.py:
2960         (DevicePort):
2961         (DevicePort.setup_test_run): Receive device_type as DeviceType object.
2962         (DevicePort._create_devices): Deleted.
2963         * Scripts/webkitpy/port/gtk.py:
2964         (GtkPort.setup_test_run): Use device_type instead of device_class.
2965         * Scripts/webkitpy/port/ios.py:
2966         (IOSPort):
2967         * Scripts/webkitpy/port/ios_simulator.py:
2968         (IOSSimulatorPort):
2969         (IOSSimulatorPort.__init__): Deleted.
2970         (IOSSimulatorPort._set_device_class): Deleted.
2971         * Scripts/webkitpy/port/test.py:
2972         * Scripts/webkitpy/port/watch.py:
2973         (WatchPort):
2974         * Scripts/webkitpy/port/watch_simulator.py:
2975         (WatchSimulatorPort):
2976         (WatchSimulatorPort.__init__): Deleted.
2977         (WatchSimulatorPort._set_device_class): Deleted.
2978         * Scripts/webkitpy/port/win.py:
2979         (WinPort.setup_test_run): Use device_type instead of device_class.
2980         * Scripts/webkitpy/xcode/simulated_device.py:
2981         (SimulatedDeviceManager._disambiguate_device_type): Using the existing devices for this is
2982         a problem if no such device exists yet. Use the _device_identifier_to_name dictionary instead
2983         since this should have hardware types in the device names.
2984
2985 2018-11-30  David Quesada  <david_quesada@apple.com>
2986
2987         -[WKProcessPool _downloadURLRequest:] should allow specifying the initiating web view
2988         https://bugs.webkit.org/show_bug.cgi?id=192212
2989         rdar://problem/46363706
2990
2991         Reviewed by Alex Christensen.
2992
2993         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
2994         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
2995
2996 2018-11-30  Zalan Bujtas  <zalan@apple.com>
2997
2998         [LFC][BFC] Compute min/maxHeight margins only when they are needed.
2999         https://bugs.webkit.org/show_bug.cgi?id=192223
3000
3001         Reviewed by Antti Koivisto.
3002
3003         * LayoutReloaded/misc/LFC-passing-tests.txt:
3004
3005 2018-11-30  Zalan Bujtas  <zalan@apple.com>
3006
3007         [LFC][BFC][MarginCollapsing] Do not use computed display box values for border and padding
3008         https://bugs.webkit.org/show_bug.cgi?id=192214
3009
3010         Reviewed by Antti Koivisto.
3011
3012         * LayoutReloaded/misc/LFC-passing-tests.txt:
3013
3014 2018-11-30  Thibault Saunier  <tsaunier@igalia.com>
3015
3016         [GTK][MiniBrowser] Handle Device Info permission requests
3017         https://bugs.webkit.org/show_bug.cgi?id=191585
3018
3019         Reviewed by Carlos Garcia Campos.
3020
3021         * MiniBrowser/gtk/BrowserTab.c:
3022         (permissionRequestDataNew):
3023         (permissionRequestDataFree):
3024         (permissionRequestDialogResponse):
3025         (decidePermissionRequest):
3026         (browserTabConstructed):
3027
3028 2018-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3029
3030         Unreviewed GTK+ gardening. Stop running tests without complex text enforced
3031
3032         We have enforced complex text in GTK+ for one release cycle without noticing any major issue nor performance
3033         regression.
3034
3035         * WebKitTestRunner/gtk/main.cpp:
3036         (main):
3037
3038 2018-11-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3039
3040         REGRESSION (r238635): Dragging a text selection within WKWebView causes the selection highlight to get into a bad state
3041         https://bugs.webkit.org/show_bug.cgi?id=192165
3042         <rdar://problem/46346682>
3043
3044         Reviewed by Daniel Bates.
3045
3046         Fixes 11 API tests that started failing or timing out after r238635. See below for more details.
3047
3048         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
3049         (TestWebKitAPI::webViewForEditActionTesting):
3050         (TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
3051
3052         Ensure that the web view becomes first responder before executing edit actions.
3053
3054         * TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
3055         * TestWebKitAPI/Tests/WebKitCocoa/contenteditable-and-textarea.html:
3056
3057         Tweak these tests to allow selected content to overflow the width of the web view. Without this change,
3058         ContentEditableToContentEditable and ContentEditableToTextarea will sometimes fail because the content causes
3059         the body to scroll horizontally, so we miss the drop destination.
3060
3061         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3062         (loadTestPageAndEnsureInputSession):
3063
3064         Add a new helper to load a test page with a given name, become first responder, and wait until an input session
3065         starts. Use this in various drag and drop tests to reduce code duplication.
3066
3067         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
3068         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3069         (-[DragAndDropSimulator initWithWebView:]):
3070         (-[DragAndDropSimulator _resetSimulatedState]):
3071         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
3072         (-[DragAndDropSimulator _advanceProgress]):
3073
3074         To more accurately emulate UIKit behavior, begin focus preservation when starting a drag, and attempt to clear
3075         the focus preservation token when the drag session ends. This allows us to simulate and test the scenario that
3076         regressed with r238635.
3077
3078         (-[DragAndDropSimulator ensureInputSession]):
3079         (-[DragAndDropSimulator _webView:didStartInputSession:]):
3080         (-[DragAndDropSimulator waitForInputSession]): Deleted.
3081
3082         Refactored into -ensureInputSession. Instead of assuming that an input session has not yet been started, simply
3083         wait for an input session to start if needed.
3084
3085         * TestWebKitAPI/ios/UIKitSPI.h:
3086
3087         Add a new SPI declaration.
3088
3089 2018-11-29  Tim Horton  <timothy_horton@apple.com>
3090
3091         Inform clients when editable image attachment backing data changes
3092         https://bugs.webkit.org/show_bug.cgi?id=192206
3093         <rdar://problem/46350277>
3094
3095         Reviewed by Wenson Hsieh.
3096
3097         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3098         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3099         (-[AttachmentUpdateObserver init]):
3100         (-[AttachmentUpdateObserver dataInvalidated]):
3101         (-[AttachmentUpdateObserver _webView:didInvalidateDataForAttachment:]):
3102         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentInvalidation):
3103         (webViewForTestingAttachments):
3104         (TestWebKitAPI::forEachViewInHierarchy):
3105         (TestWebKitAPI::findEditableImageCanvas):
3106         (TestWebKitAPI::drawSquareInEditableImage):
3107         (TestWebKitAPI::TEST):
3108         * TestWebKitAPI/ios/PencilKitTestSPI.h: Added.
3109         Add a test ensuring that we get an invalidation callback when an editable image is changed.
3110
3111 2018-11-29  Fujii Hironori  <Hironori.Fujii@sony.com>
3112
3113         REGRESSION(r238445)[Buildbot] Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
3114         https://bugs.webkit.org/show_bug.cgi?id=192143
3115
3116         Reviewed by Philippe Normand.
3117
3118         Buildbot can't start since r238445.
3119
3120         > Configuration Errors:
3121         >   Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
3122         >   Unknown builder 'GTK Linux ARM Release' in scheduler 'trunk'
3123
3124         * BuildSlaveSupport/build.webkit.org-config/config.json: Removed deprecated builders.
3125
3126 2018-11-29  David Quesada  <david_quesada@apple.com>
3127
3128         Add SPI to publish NSProgress on active downloads
3129         https://bugs.webkit.org/show_bug.cgi?id=192021
3130         rdar://problem/44405661
3131
3132         Reviewed by Alex Christensen.
3133
3134         Add API tests to exercise the progress-publishing functionality in a variety of scenarios.
3135
3136         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3137         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm: Added.
3138         (+[DownloadProgressTestProtocol registerProtocolForTestRunner:]):
3139         (+[DownloadProgressTestProtocol unregisterProtocol]):
3140         (+[DownloadProgressTestProtocol canInitWithRequest:]):
3141         (+[DownloadProgressTestProtocol canonicalRequestForRequest:]):
3142         (+[DownloadProgressTestProtocol requestIsCacheEquivalent:toRequest:]):
3143         (-[DownloadProgressTestProtocol startLoading]):
3144         (-[DownloadProgressTestProtocol stopLoading]):
3145         (-[DownloadProgressTestRunner init]):
3146         (-[DownloadProgressTestRunner startLoadingWithProtocol:]):
3147         (-[DownloadProgressTestRunner tearDown]):
3148         (-[DownloadProgressTestRunner _didGetProgress:]):
3149         (-[DownloadProgressTestRunner _didLoseProgress]):
3150         (-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
3151         (-[DownloadProgressTestRunner waitToLoseProgress]):
3152         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
3153         (-[DownloadProgressTestRunner publishProgress]):
3154         (-[DownloadProgressTestRunner receiveData:]):
3155         (-[DownloadProgressTestRunner finishDownloadTask]):
3156         (-[DownloadProgressTestRunner failDownloadTask]):
3157         (-[DownloadProgressTestRunner waitForDownloadDidCreateDestination]):
3158         (-[DownloadProgressTestRunner waitForDownloadFinished]):
3159         (-[DownloadProgressTestRunner waitForDownloadCanceled]):
3160         (-[DownloadProgressTestRunner waitForDownloadFailed]):
3161         (-[DownloadProgressTestRunner waitForUpdatedCompletedUnitCount]):
3162         (-[DownloadProgressTestRunner observeValueForKeyPath:ofObject:change:context:]):
3163         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationResponse:decisionHandler:]):
3164         (-[DownloadProgressTestRunner webView:decidePolicyForNavigationAction:decisionHandler:]):
3165         (-[DownloadProgressTestRunner _downloadDidStart:]):
3166         (-[DownloadProgressTestRunner _download:didCreateDestination:]):
3167         (-[DownloadProgressTestRunner _downloadDidFinish:]):
3168         (-[DownloadProgressTestRunner _downloadDidCancel:]):
3169         (-[DownloadProgressTestRunner _download:didFailWithError:]):
3170         (-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
3171         (TEST):
3172
3173 2018-11-29  Alexey Proskuryakov  <ap@apple.com>
3174
3175         Exception in bot watcher's dashboard if a hidden platform in no longer configured for display
3176         https://bugs.webkit.org/show_bug.cgi?id=185527
3177
3178         Reviewed by Aakash Jain.
3179
3180         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
3181         (updateHiddenPlatforms):
3182
3183 2018-11-29  Zalan Bujtas  <zalan@apple.com>
3184
3185         [LFC][BFC][Quirk] Body and html height stretching.
3186         https://bugs.webkit.org/show_bug.cgi?id=192154
3187
3188         Reviewed by Antti Koivisto.
3189
3190         * LayoutReloaded/misc/LFC-passing-tests.txt:
3191
3192 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3193
3194         webkitpy: Unify device creation
3195         https://bugs.webkit.org/show_bug.cgi?id=192158
3196         <rdar://problem/46344757>
3197
3198         Reviewed by Lucas Forschler.
3199
3200         * Scripts/webkitpy/port/device_port.py:
3201         (DevicePort):
3202         (DevicePort.setup_test_run): Use DEVICE_MANAGER to create devices based on the specified device class.
3203         * Scripts/webkitpy/port/ios.py:
3204         (IOSPort): Add DEFAULT_DEVICE_CLASS.
3205         * Scripts/webkitpy/port/ios_device.py:
3206         (IOSDevicePort):
3207         (IOSDevicePort._create_devices): Deleted.
3208         * Scripts/webkitpy/port/ios_simulator.py:
3209         (IOSSimulatorPort._create_devices): Deleted.
3210         * Scripts/webkitpy/port/watch.py:
3211         (WatchPort): Add DEFAULT_DEVICE_CLASS.
3212         * Scripts/webkitpy/port/watch_device.py:
3213         (WatchDevicePort):
3214         (WatchDevicePort._create_devices): Deleted.
3215         * Scripts/webkitpy/port/watch_simulator.py:
3216         (WatchSimulatorPort._create_devices): Deleted.
3217         * Scripts/webkitpy/xcode/device_type_unittest.py:
3218         (DeviceTypeTest.test_from_string): Test that DeviceTypes without hardware types can be constructed
3219         from strings.
3220
3221 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3222
3223         EWS iOS-sim bots sometimes fails to shutdown simulator
3224         https://bugs.webkit.org/show_bug.cgi?id=191864
3225
3226         Reviewed by Aakash Jain.
3227
3228         * Scripts/webkitpy/xcode/simulated_device.py:
3229         (SimulatedDevice._shut_down): Increase time to wait for simulated device to
3230         shut down, ignore exit code indicating a device is already shut down.
3231
3232 2018-11-29  Jonathan Bedard  <jbedard@apple.com>
3233
3234         webkitpy: Unify ios_version/watchos_version code
3235         https://bugs.webkit.org/show_bug.cgi?id=192153
3236         <rdar://problem/46343642>
3237
3238         Reviewed by Lucas Forschler.
3239
3240         Treating watchOS and iOS versions differently makes it harder to share code between the similar ports.
3241
3242         * Scripts/webkitpy/port/device_port.py:
3243         (DevicePort):
3244         (DevicePort.device_version): Added.
3245         * Scripts/webkitpy/port/ios.py:
3246         (IOSPort.default_baseline_search_path): Use device_version() instead of ios_version().
3247         (IOSPort.ios_version): Deleted.
3248         * Scripts/webkitpy/port/ios_device.py:
3249         (IOSDevicePort.device_version): Renamed from ios_version().
3250         (IOSDevicePort.ios_version): Deleted.
3251         * Scripts/webkitpy/port/ios_simulator.py:
3252         (IOSSimulatorPort.device_version): Renamed from ios_version().
3253         (IOSSimulatorPort.default_child_processes.booted_ios_devices_filter): Use device_version() instead of ios_version().
3254         (IOSSimulatorPort._create_devices): Ditto.
3255         (IOSSimulatorPort.check_sys_deps): Ditto.
3256         (IOSSimulatorPort.ios_version): Deleted.
3257         * Scripts/webkitpy/port/watch.py:
3258         (WatchPort.default_baseline_search_path): Use device_version() instead of watchos_version().
3259         (WatchPort.watchos_version): Deleted.
3260         * Scripts/webkitpy/port/watch_device.py:
3261         (WatchDevicePort.device_version): Renamed from watchos_version().
3262         (WatchDevicePort.watchos_version): Deleted.
3263         * Scripts/webkitpy/port/watch_simulator.py:
3264         (WatchSimulatorPort.device_version): Renamed from watchos_version().
3265         (WatchSimulatorPort.default_child_processes.filter_booted_watchos_devices): Use device_version() instead of watchos_version().
3266         (WatchSimulatorPort._create_devices): Ditto.
3267         (WatchSimulatorPort.check_sys_deps): Ditto.
3268         (WatchSimulatorPort.watchos_version): Deleted.
3269
3270 2018-11-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3271
3272         [iOSMac] Dropping text selections from web content into editable elements crashes the web process
3273         https://bugs.webkit.org/show_bug.cgi?id=192113
3274         <rdar://problem/46323701>
3275
3276         Reviewed by Ryosuke Niwa.
3277
3278         Add a test to verify that, when dropping an item with both "com.apple.webarchive" and "public.utf8-plain-text"
3279         representations, the higher fidelity web archive data is used when handling the drop.
3280
3281         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
3282
3283 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3284
3285         [ews-app] Fetch bugs from Bugzilla and submit to Buildbot
3286         https://bugs.webkit.org/show_bug.cgi?id=191947
3287
3288         Reviewed by Lucas Forschler.
3289
3290         * BuildSlaveSupport/ews-app/ews/fetcher.py: Added.
3291
3292 2018-11-28  Alex Christensen  <achristensen@webkit.org>
3293
3294         Fix iOS API test after r238585
3295         https://bugs.webkit.org/show_bug.cgi?id=192022
3296
3297         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3298         (TEST):
3299         On iOS, a safe browsing warning over a WKWebView with frame of {0, 0, 0, 0} has a size of {0, 0}, which is fine.
3300         The test was added to catch a bug on Mac platforms, so testing it only on Mac will catch any regression.
3301
3302 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3303
3304         [ews-app] Configure python logging
3305         https://bugs.webkit.org/show_bug.cgi?id=192005
3306
3307         Reviewed by Lucas Forschler.
3308
3309         * BuildSlaveSupport/ews-app/ews/__init__.py: Configured logging.
3310
3311 2018-11-28  Keith Rollin  <krollin@apple.com>
3312
3313         Update generate-{derived,unified}-sources scripts to support generating .xcfilelist files
3314         https://bugs.webkit.org/show_bug.cgi?id=192031
3315         <rdar://problem/46286816>
3316
3317         Reviewed by Alex Christensen.
3318
3319         The Generate Derived Sources and Generate Unified Sources build phases
3320         in Xcode need to have their inputs and outputs specified. This
3321         specification will come in the form of .xcfilelist files that will be
3322         attached to these build phases. There is one .xcfilelist file that
3323         lists the input file and one that lists the output files. As part of
3324         this work, the various generate-{derived,unified}-sources scripts that
3325         are executed in these Generate build phases are modified to help in
3326         the creation of these .xcfilelist files. In particular, they can now
3327         be invoked with command-line parameters. These parameters are then
3328         used to alter the normal execution of these scripts, causing them to
3329         produce the .xcfilelist files as opposed to actually generating the
3330         files that are listed in those files.
3331
3332         * DumpRenderTree/Scripts/generate-derived-sources.sh:
3333         * WebKitTestRunner/Scripts/generate-derived-sources.sh:
3334
3335 2018-11-28  Keith Rollin  <krollin@apple.com>
3336
3337         Revert print_all_generated_files work in r238008; tighten up target specifications
3338         https://bugs.webkit.org/show_bug.cgi?id=192025
3339         <rdar://problem/46284301>
3340
3341         Reviewed by Alex Christensen.
3342
3343         In r238008, I added a facility for DerivedSources.make makefiles to
3344         print out the list of files that they generate. This output was used
3345         in the generation of .xcfilelist files used to specify the output of
3346         the associated Generate Derived Sources build phases in Xcode. This
3347         approach worked, but it meant that people would need to follow a
3348         specific convention to keep this mechanism working.
3349
3350         Instead of continuing this approach, I'm going to implement a new
3351         facility based on the output of `make` when passed the -d flag (which
3352         prints dependency information). This new mechanism is completely
3353         automatic and doesn't need maintainers to follow a convention. To that
3354         end, remove most of the work performed in r238008 that supports the
3355         print_all_generated_files target.
3356
3357         At the same time, it's important for the sets of targets and their
3358         dependencies to be complete and correct. Therefore, also include
3359         changes to bring those up-to-date. As part of that, you'll see
3360         prevalent use of a particular technique. Here's an example:
3361
3362             BYTECODE_FILES = \
3363                 Bytecodes.h \
3364                 BytecodeIndices.h \
3365                 BytecodeStructs.h \
3366                 InitBytecodes.asm \
3367             #
3368             BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
3369
3370             all : $(BYTECODE_FILES)
3371
3372             $(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb
3373                 ...
3374
3375         These lines indicate a set of generated files (those specified in
3376         BYTECODE_FILES). These files are generated by the BytecodeList.rb
3377         tool. But, as opposed to the normal rule where a single foo.output is
3378         generated by foo.input plus some additional dependencies, this rule
3379         produces multiple output files from a tool whose connection to the
3380         output files is not immediately clear. A special approach is needed
3381         where a single rule produces multiple output files. The normal way to
3382         implement this is to use an .INTERMEDIATE target. However, we used
3383         this approach in the past and ran into a problem with it, addressing
3384         it with an alternate approach in r210507. The above example shows this
3385         approach. The .'s in the list of target files are replaced with %'s,
3386         and the result is used as the left side of the dependency rule.
3387
3388         * DumpRenderTree/DerivedSources.make:
3389         * WebKitTestRunner/DerivedSources.make:
3390
3391 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3392
3393         [ews-app] Add support to get list of Bugzilla patches needing review
3394         https://bugs.webkit.org/show_bug.cgi?id=191942
3395
3396         Reviewed by Lucas Forschler.
3397
3398         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
3399         (Bugzilla.get_list_of_patches_needing_reviews): Get list of patches needing review.
3400         (BugzillaBeautifulSoup.fetch_attachment_ids_from_review_queue): Copied from Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py
3401         (BugzillaBeautifulSoup._load_query): Ditto.
3402         (BugzillaBeautifulSoup._parse_attachment_ids_request_query): Ditto.
3403
3404 2018-11-28  Daniel Bates  <dabates@apple.com>
3405
3406         [iOS] Page not defocused when Find-in-page becomes first responder
3407         https://bugs.webkit.org/show_bug.cgi?id=192084
3408         <rdar://problem/46146777>
3409
3410         Reviewed by Tim Horton.
3411
3412         Add tests for both Mac and iOS to ensure that when finding a string on the page
3413         that we do not start an input session if a match is found in an <input> and the
3414         WKWebView is not the first responder.
3415
3416         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3417         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm: Added.
3418         (-[WKWebViewFindStringInputDelegate _webView:didStartInputSession:]):
3419         (-[WKWebViewFindStringFindDelegate findString]):
3420         (-[WKWebViewFindStringFindDelegate _webView:didCountMatches:forString:]):
3421         (-[WKWebViewFindStringFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
3422         (-[WKWebViewFindStringFindDelegate _webView:didFailToFindString:]):
3423         (returnNo):
3424         (returnYes):
3425         (viewIsFirstResponder):
3426         (TestWebKitAPI::TEST):
3427         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3428         (WTR::PlatformWebView::PlatformWebView): Make the view the first responder before the
3429         window key. This matches the ordering used in PlatformWebView::focus(). No behavior change.
3430
3431 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3432
3433         [ews-app] Add BeautifulSoup
3434         https://bugs.webkit.org/show_bug.cgi?id=191994
3435
3436         Reviewed by Lucas Forschler.
3437
3438         * BuildSlaveSupport/ews-app/ews/thirdparty: Added.
3439         * BuildSlaveSupport/ews-app/ews/thirdparty/BeautifulSoup.py: Added.
3440         * BuildSlaveSupport/ews-app/ews/thirdparty/__init__.py: Added.
3441
3442 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3443
3444         [ews-app] Add support to download Patch from Bugzilla
3445         https://bugs.webkit.org/show_bug.cgi?id=191943
3446
3447         Reviewed by Lucas Forschler.
3448
3449         * BuildSlaveSupport/ews-app/ews/common/bugzilla.py: Added.
3450         (Bugzilla.retrieve_attachment): Retreives the attachment from Bugzilla and saves to disk.
3451         (Bugzilla._fetch_attachment_json):
3452         (Bugzilla.file_path_for_patch):
3453         * BuildSlaveSupport/ews-app/ews/common/util.py: Added.
3454         (fetch_data_from_url): Method to fetch data from given url.
3455         * BuildSlaveSupport/ews-app/ews/config.py:
3456
3457 2018-11-28  Aakash Jain  <aakash_jain@apple.com>
3458
3459         [ews-app] Add methods to update Patch fields
3460         https://bugs.webkit.org/show_bug.cgi?id=191931
3461
3462         Reviewed by Lucas Forschler.
3463
3464         * BuildSlaveSupport/ews-app/ews/models/patch.py:
3465         (Patch.set_sent_to_buildbot):
3466         (Patch.set_bug_id):
3467         (Patch.set_obsolete):
3468
3469 2018-11-28  Yongjun Zhang  <yongjun_zhang@apple.com>
3470
3471         Allow WebKit clients to specify a minimum effective width for layout.
3472         https://bugs.webkit.org/show_bug.cgi?id=191499
3473         <rdar://problem/45362678>
3474
3475         Reviewed by Wenson Hsieh.
3476
3477         Allow UIScriptController to set WKWebView's minimum effective width with a new `setMinimumEffectiveWidth` method.
3478
3479         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3480         (WTR::UIScriptController::setMinimumEffectiveWidth):
3481         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3482         (WTR::UIScriptController::setViewScale):
3483         (WTR::UIScriptController::setMinimumEffectiveWidth):
3484         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3485         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3486         (WTR::UIScriptController::setMinimumEffectiveWidth):
3487         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3488         * WebKitTestRunner/UIScriptControllerCocoa.mm:
3489         (WTR::UIScriptController::setMinimumEffectiveWidth):
3490         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3491         (WTR::TestController::cocoaResetStateToConsistentValues):
3492
3493 2018-11-28  Lucas Forschler  <lforschler@apple.com>
3494
3495         Fix webkitbot hi command.
3496         https://bugs.webkit.org/show_bug.cgi?id=192080
3497
3498         Reviewed by Alexey Proskuryakov.
3499
3500         * Scripts/webkitpy/tool/bot/irc_command.py:
3501         (Hi.execute):
3502
3503 2018-11-28  Zalan Bujtas  <zalan@apple.com>
3504
3505         [LFC][Quirk] Use non-collapsed vertical margin values when the container is stretched to the size of the ICB.
3506         https://bugs.webkit.org/show_bug.cgi?id=192078
3507
3508         Reviewed by Antti Koivisto.
3509
3510         * LayoutReloaded/misc/LFC-passing-tests.txt:
3511
3512 2018-11-28  Zalan Bujtas  <zalan@apple.com>
3513
3514         [LFC] Add support for quirk container's collapsing top margin in quirks mode.
3515         https://bugs.webkit.org/show_bug.cgi?id=192070
3516
3517         Reviewed by Antti Koivisto.
3518
3519         * LayoutReloaded/misc/LFC-passing-tests.txt:
3520
3521 2018-11-28  Thibault Saunier  <tsaunier@igalia.com>
3522
3523         [WebRTC][GStreamer] Make sure to have the default microphone on the top of the list
3524         https://bugs.webkit.org/show_bug.cgi?id=192026
3525
3526         Reviewed by Philippe Normand.
3527
3528         Otherwise we might end up picking a useless one in some applications
3529         (not sure what those application do though).
3530
3531         GStreamer patch proposed as https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/34/diffs
3532
3533         * flatpak/org.webkit.CommonModules.yaml:
3534         * gstreamer/jhbuild.modules:
3535         * gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Added.
3536
3537 2018-11-28  Tomas Popela  <tpopela@redhat.com>
3538
3539         [GTK] Silence compilation warnings in glib unittests
3540         https://bugs.webkit.org/show_bug.cgi?id=192009
3541
3542         Reviewed by Michael Catanzaro.
3543
3544         Mark the destructor as virtual.
3545
3546         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3547         (Test::~Test):
3548
3549 2018-11-27  Mark Lam  <mark.lam@apple.com>
3550
3551         ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
3552         https://bugs.webkit.org/show_bug.cgi?id=192055
3553         <rdar://problem/46288783>
3554
3555         Reviewed by Saam Barati.
3556
3557         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3558
3559 2018-11-27  Alex Christensen  <achristensen@webkit.org>
3560
3561         Make synchronous IPC introduced in r237267 asynchronous
3562         https://bugs.webkit.org/show_bug.cgi?id=190757
3563
3564         Reviewed by Chris Dumez.
3565
3566         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3567
3568 2018-11-27  Jonathan Bedard  <jbedard@apple.com>
3569
3570         webkitpy: Add watchOS ports
3571         https://bugs.webkit.org/show_bug.cgi?id=191974
3572         <rdar://problem/46251051>
3573
3574         Reviewed by Aakash Jain.
3575
3576         * Scripts/webkitpy/port/factory.py:
3577         (PortFactory): Add WatchDevice and WatchSimulator ports.
3578         * Scripts/webkitpy/port/watch.py: Added.
3579         (WatchPort): Base class for watchOS ports.
3580         * Scripts/webkitpy/port/watch_device.py: Added.
3581         (WatchDevicePort): Class for running layout tests on a watchOS device.
3582         * Scripts/webkitpy/port/watch_simulator.py: Added.
3583         (WatchSimulatorPort): Class for running layout tests on a watchOS simulator.
3584         * Scripts/webkitpy/port/watch_simulator_unittest.py: Added.
3585         (WatchSimulatorTest):
3586         * Scripts/webkitpy/port/watch_testcase.py: Added.
3587         (WatchTest):
3588
3589 2018-11-27  Alex Christensen  <achristensen@webkit.org>
3590
3591         Safe browsing warning text needs to be visible on High Sierra
3592         https://bugs.webkit.org/show_bug.cgi?id=192022
3593
3594         Reviewed by Tim Horton.
3595
3596         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
3597         (TEST):
3598
3599 2018-11-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3600
3601         Unreviewed, fix the watchOS engineering build
3602
3603         Disable a newly added API test, since DDScannerResult is unavailable on watchOS.
3604
3605         * TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
3606
3607 2018-11-27  Chris Dumez  <cdumez@apple.com>
3608
3609         Regression(PSON) crash under WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame()
3610         https://bugs.webkit.org/show_bug.cgi?id=191983
3611         <rdar://problem/46246863>
3612
3613         Reviewed by Geoffrey Garen.
3614
3615         Add API test coverage.
3616
3617         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3618
3619 2018-11-27  Aakash Jain  <aakash_jain@apple.com>
3620
3621         [ews-app] Add support to communicate with Buildbot (Follow-up fix)
3622         https://bugs.webkit.org/show_bug.cgi?id=191935
3623         <rdar://problem/46262314>
3624
3625         Unreviewed infrastructure fix.
3626
3627         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
3628         (Buildbot.send_patch_to_buildbot):
3629
3630 2018-11-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3631
3632         [Cocoa] No way for clients to tell whether the content view is in the responder chain when the web view is
3633         https://bugs.webkit.org/show_bug.cgi?id=169212
3634         <rdar://problem/30899656>
3635
3636         Reviewed by Tim Horton.
3637