ba58825011c9da4d13ebd1992a12a534c9189b39
[WebKit-https.git] / Tools / ChangeLog
1 2016-12-13  Jer Noble  <jer.noble@apple.com>
2
3         Fullscreen in WebKit2 does not restore topContentInset upon exiting; leaves top of page not visible
4         https://bugs.webkit.org/show_bug.cgi?id=165697
5
6         Reviewed by Tim Horton.
7
8         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.mm:
9         (TestWebKitAPI::TEST):
10
11 2016-12-13  Andy Estes  <aestes@apple.com>
12
13         [Cocoa] Implement -shouldInsertText: on WKWebProcessPlugInEditingDelegate
14         https://bugs.webkit.org/show_bug.cgi?id=165785
15         <rdar://problem/26929398>
16
17         Reviewed by Darin Adler.
18
19         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
20         (-[BundleEditingDelegateRemoteObject shouldInsertText:replacingRange:givenAction:]): Added
21         expectations for the text, range, and action.
22         (TEST): Set the "EditingDelegateShouldInsertText" bundle parameter to NO so that the plug-in
23         will return NO in -_webProcessPlugInBrowserContextController:willInsertText:. Added a
24         plain-text string to the pasteboard, executed a paste action, and verified that the selected
25         text in the web view did not change.
26         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
27         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]): Set
28         _editingDelegateShouldInsertText according to the "EditingDelegateShouldInsertText" bundle
29         parameter.
30         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:shouldInsertText:replacingRange:givenAction:]):
31         Added. Called -shouldInsertText:replacingRange:givenAction: on the remote object proxy
32         and returned the value of _editingDelegateShouldInsertText.
33         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Declared
34         -shouldInsertText:replacingRange:givenAction:.
35
36 2016-12-13  Chris Dumez  <cdumez@apple.com>
37
38         Unreviewed, rolling out r209544.
39
40         Looks like r209489 did not cause the performance regression
41         after all
42
43         Reverted changeset:
44
45         "Unreviewed, rolling out r209489."
46         https://bugs.webkit.org/show_bug.cgi?id=165550
47         http://trac.webkit.org/changeset/209544
48
49 2016-12-12  Sam Weinig  <sam@webkit.org>
50
51         [WebIDL] Remove use of Dictionary in ApplePaySession
52         https://bugs.webkit.org/show_bug.cgi?id=165787
53
54         Reviewed by Anders Carlsson.
55
56         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
57         (WTR::initializeWebViewConfiguration):
58         (WTR::TestController::platformCreateWebView):
59         Enable ApplePay for the tests (where supported).
60
61 2016-12-13  Eric Carlson  <eric.carlson@apple.com>
62
63         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
64         https://bugs.webkit.org/show_bug.cgi?id=165251
65
66         Reviewed by Youenn Fablet.
67
68         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
69         (TestWebKitAPI::TEST): Enable MediaStream, create web view from the page group upon which
70         the preferences have been set.
71
72 2016-12-08  Antti Koivisto  <antti@apple.com>
73
74         Enable network cache speculative revalidation in MiniBrowser
75         https://bugs.webkit.org/show_bug.cgi?id=165616
76
77         Reviewed by Darin Adler.
78
79         Match Safari. Also add a menu item to disable it.
80
81         * MiniBrowser/mac/AppDelegate.m:
82         (defaultConfiguration):
83         * MiniBrowser/mac/SettingsController.h:
84         * MiniBrowser/mac/SettingsController.m:
85         (-[SettingsController _populateMenu]):
86         (-[SettingsController validateMenuItem:]):
87         (-[SettingsController networkCacheSpeculativeRevalidationDisabled]):
88         (-[SettingsController toggleNetworkCacheSpeculativeRevalidationDisabled:]):
89
90 2016-12-12  Alexey Proskuryakov  <ap@apple.com>
91
92         ChangeLogs become readonly after resolving a conflict
93         https://bugs.webkit.org/show_bug.cgi?id=165440
94         rdar://problem/29491002
95
96         Reviewed by Darin Adler.
97
98         * Scripts/resolve-ChangeLogs: (resolveChangeLog): Set correct permissions when
99         moving the file.
100
101 2016-12-12  Filip Pizlo  <fpizlo@apple.com>
102
103         Re-enable collectContinuously since it doesn't crash anymore
104
105         Rubber stamped by Michael Saboff.
106
107         * Scripts/run-jsc-stress-tests:
108
109 2016-12-11  Konstantin Tokarev  <annulen@yandex.ru>
110
111         Unreviewed attempt to fix EFL and Mac/cmake builds after r209665.
112         https://bugs.webkit.org/show_bug.cgi?id=165686
113
114         * DumpRenderTree/CMakeLists.txt: WebKit2 should precede other target
115         so that right config.h comes first in include path.
116
117 2016-12-11  Dave Hyatt  <hyatt@apple.com>
118
119         [CSS Parser] Make sure content extensions initialize AtomicString
120         https://bugs.webkit.org/show_bug.cgi?id=165737
121
122         Reviewed by Darin Adler.
123
124         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
125         (TestWebKitAPI::makeBackend):
126
127 2016-12-08  Dave Hyatt  <hyatt@apple.com>
128
129         [CSS Parser] Remove the old CSS Parser
130         https://bugs.webkit.org/show_bug.cgi?id=165645
131
132         Reviewed by Daniel Bates.
133
134         * TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
135         (TestWebKitAPI::TEST):
136
137 2016-12-10  Konstantin Tokarev  <annulen@yandex.ru>
138
139         [cmake] Include WTF, JSC, and WebCore headers automatically to targers using them
140         https://bugs.webkit.org/show_bug.cgi?id=165686
141
142         Reviewed by Michael Catanzaro.
143
144         This change reduces duplication of include path lists between modules,
145         and reduces future need for fixes like r209605 (broken build because of
146         WebCore header suddenly becoming used in WebKit2).
147
148         * DumpRenderTree/CMakeLists.txt:
149         * DumpRenderTree/PlatformMac.cmake:
150         * ImageDiff/CMakeLists.txt:
151         * MiniBrowser/gtk/CMakeLists.txt:
152         * MiniBrowser/mac/CMakeLists.txt:
153         * MiniBrowser/win/CMakeLists.txt:
154         * TestWebKitAPI/CMakeLists.txt:
155         * TestWebKitAPI/PlatformEfl.cmake:
156         * TestWebKitAPI/PlatformJSCOnly.cmake:
157         * TestWebKitAPI/PlatformMac.cmake:
158         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
159         * WebKitTestRunner/CMakeLists.txt:
160         * WebKitTestRunner/PlatformGTK.cmake:
161         * WebKitTestRunner/PlatformMac.cmake:
162
163 2016-12-09  Csaba Osztrogonác  <ossy@webkit.org>
164
165         Unreviewed buildfix after r209630.
166
167         * Scripts/build-jsc: Remove building the non-existing testWASM.
168
169 2016-12-09  Eric Carlson  <eric.carlson@apple.com>
170
171         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
172         https://bugs.webkit.org/show_bug.cgi?id=165251
173
174         Reviewed by Dean Jackson.
175
176         Based on a patch by Dr Alex Gouaillard <agouaillard@gmail.com>
177
178         * DumpRenderTree/mac/DumpRenderTree.mm:
179         (resetWebPreferencesToConsistentValues): Enable MediaStream and PeerConnection.
180
181         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
182         (WTR::InjectedBundle::beginTesting): Ditto.
183
184         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
185         (WTR::TestRunner::setMediaStreamEnabled): New.
186         (WTR::TestRunner::setPeerConnectionEnabled): New.
187         * WebKitTestRunner/InjectedBundle/TestRunner.h:
188
189 2016-12-09  Brady Eidson  <beidson@apple.com> 
190  
191         Re-landing:
192         Add _WKIconLoadingDelegate SPI. 
193         https://bugs.webkit.org/show_bug.cgi?id=164894 
194  
195         Reviewed by Alex Christensen. 
196         
197         Add MiniBrowser support for this new SPI, configurable with a setting. 
198  
199         * MiniBrowser/mac/SettingsController.h: 
200         * MiniBrowser/mac/SettingsController.m: 
201         (-[SettingsController _populateMenu]): 
202         (-[SettingsController validateMenuItem:]): 
203         (-[SettingsController loadsAllSiteIcons]): 
204         (-[SettingsController toggleLoadsAllSiteIcons:]): 
205         * MiniBrowser/mac/WK2BrowserWindowController.m: 
206         (-[WK2BrowserWindowController awakeFromNib]): 
207         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): 
208
209 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
210
211         Fix the 32-bit build.
212
213         Unreviewed build fix.
214
215         * MiniBrowser/mac/SettingsController.h:
216
217 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
218
219         Fedora also needs a PHP7 config file alternative
220         https://bugs.webkit.org/show_bug.cgi?id=165606
221
222         Reviewed by Michael Catanzaro.
223
224         * Scripts/webkitpy/port/base.py:
225         (Port._is_fedora_php_version_7): check for the php7 library.
226         (Port._fedora_php_version): get the appropriate filename for Fedora.
227         (Port._apache_config_file_name_for_platform):
228
229 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
230
231         Complete the revert of r208865.
232         https://bugs.webkit.org/show_bug.cgi?id=164894
233
234         Unreviewed build fix.
235
236         * MiniBrowser/mac/SettingsController.h:
237         * MiniBrowser/mac/SettingsController.m:
238         (-[SettingsController _populateMenu]):
239         (-[SettingsController validateMenuItem:]):
240         (-[SettingsController loadsAllSiteIcons]): Deleted.
241         (-[SettingsController toggleLoadsAllSiteIcons:]): Deleted.
242         * MiniBrowser/mac/WK2BrowserWindowController.m:
243         (-[WK2BrowserWindowController awakeFromNib]):
244         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): Deleted.
245
246 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
247
248         [GTK] Force GDK backend to x11 when running with XvfbDriver
249         https://bugs.webkit.org/show_bug.cgi?id=165612
250
251         Reviewed by Michael Catanzaro.
252
253         When the developer is running a Wayland session, GDK may get confused
254         and try to use its Wayland backend (which is higher priority) instead.
255         This ensures it will use the appropriate backend when running under
256         Xvfb.
257
258         * Scripts/webkitpy/port/gtk.py:
259         (GtkPort.setup_environ_for_server): when running with XvfbDriver,
260         force GDK_BACKEND to x11.
261
262 2016-12-08  Keith Miller  <keith_miller@apple.com>
263
264         Add 64-bit signed LEB decode method
265         https://bugs.webkit.org/show_bug.cgi?id=165630
266
267         Reviewed by Ryosuke Niwa.
268
269         Add tests for LEB int64 and uint64 decode since I guess
270         I forgot to add tests before.
271
272         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp:
273         (TestWebKitAPI::testUInt32LEBDecode):
274         (TestWebKitAPI::TEST):
275         (TestWebKitAPI::testUInt64LEBDecode):
276         (TestWebKitAPI::testInt32LEBDecode):
277         (TestWebKitAPI::testInt64LEBDecode):
278         (TestWebKitAPI::testUnsignedLEBDecode): Deleted.
279
280 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
281
282         Make it easy to enable --force-collectContinuously
283         https://bugs.webkit.org/show_bug.cgi?id=165638
284
285         Reviewed by Keith Miller.
286
287         * Scripts/run-javascriptcore-tests:
288         (runJSCStressTests):
289
290 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
291
292         Disable the collectContinuously mode until I investigate failures.
293
294         Rubber stamped by Keith Miller.
295         
296         I'm seeing collectContinuously crashes on some platforms. Disabling that testing mode
297         while I investigate.
298
299         * Scripts/run-jsc-stress-tests:
300
301 2016-12-08  Alex Christensen  <achristensen@webkit.org>
302
303         REGRESSION (URL parser): Relative URLs aren’t resolved correctly when the base URL is an applewebdata: URL
304         https://bugs.webkit.org/show_bug.cgi?id=165621
305
306         Reviewed by Dan Bernstein.
307
308         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
309         (TestWebKitAPI::TEST_F):
310
311 2016-12-06  Filip Pizlo  <fpizlo@apple.com>
312
313         Concurrent GC should be stable enough to land enabled
314         https://bugs.webkit.org/show_bug.cgi?id=164990
315
316         Reviewed by Geoffrey Garen.
317         
318         Add a new mode that runs GC continuously. Also made eager modes run GC continuously.
319         
320         It's clear that this works just fine in release, but I'm still trying to figure out if it's
321         safe for debug. It might be too slow for debug.
322
323         * Scripts/run-jsc-stress-tests:
324
325 2016-12-08  Alex Christensen  <achristensen@webkit.org>
326
327         Add SPI for sending WebsiteSettings to WebProcess during navigation
328         https://bugs.webkit.org/show_bug.cgi?id=165517
329         <rdar://29341068>
330
331         Reviewed by Anders Carlsson.
332
333         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
334         * TestWebKitAPI/Tests/WebKit2/contentBlockerCheck.html: Added.
335         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm: Added.
336         (-[WebsitePoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
337         (-[WebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
338         (-[WebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
339         (TEST):
340
341 2016-12-08  Chris Dumez  <cdumez@apple.com>
342
343         Unreviewed, rolling out r209489.
344
345         Likely caused large regressions on JetStream, Sunspider and
346         Speedometer
347
348         Reverted changeset:
349
350         "Add system trace points for JavaScript VM entry/exit"
351         https://bugs.webkit.org/show_bug.cgi?id=165550
352         http://trac.webkit.org/changeset/209489
353
354 2016-12-08  Keith Miller  <keith_miller@apple.com>
355
356         Move LEB tests to API tests
357         https://bugs.webkit.org/show_bug.cgi?id=165586
358
359         Reviewed by Saam Barati.
360
361         Move the tests from testWasm.cpp and make them functions
362         rather than macros.
363
364         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
365         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp: Added.
366         (TestWebKitAPI::testUnsignedLEBDecode):
367         (TestWebKitAPI::TEST):
368         (TestWebKitAPI::testInt32LEBDecode):
369
370 2016-12-08  Chris Dumez  <cdumez@apple.com>
371
372         Support running the layout tests offline
373         https://bugs.webkit.org/show_bug.cgi?id=165534
374
375         Reviewed by Ryosuke Niwa.
376
377         * Scripts/webkitpy/common/system/autoinstall.py:
378         (AutoInstaller._download_to_stream):
379         getcode() returns None for file URLs so handle this.
380
381         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
382         (WebPlatformTestServer._install_modules):
383         Deal with local path in the json file and resolve them into file URLs
384         before using AutoInstall.
385
386 2016-12-08  Alex Christensen  <achristensen@webkit.org>
387
388         Fix CMake build.
389
390         * DumpRenderTree/PlatformMac.cmake:
391         Remove CheckedMalloc.cpp after r209516.
392
393 2016-12-07  Mark Lam  <mark.lam@apple.com>
394
395         DumpRenderTree should stop using CheckedMalloc.
396         https://bugs.webkit.org/show_bug.cgi?id=165563
397         <rdar://problem/28945820>
398
399         Reviewed by Geoffrey Garen.
400
401         1. WebKitTestRunner does not have equivalent behavior to that which is implemented
402            in CheckedMalloc.
403         2. bmalloc does not honor the settings of CheckedMalloc.
404
405         The only time CheckedMalloc comes into play is when DRT uses gmalloc or system
406         malloc.  As a result, DRT exhibits different behavior from the normal way we run
407         our tests.  We should obsolete CheckedMalloc and make DRT behave consistently
408         with WKTR.
409
410         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
411         * DumpRenderTree/mac/CheckedMalloc.cpp: Removed.
412         * DumpRenderTree/mac/CheckedMalloc.h: Removed.
413         * DumpRenderTree/mac/DumpRenderTree.mm:
414         (prepareConsistentTestingEnvironment):
415
416 2016-12-07  Dean Jackson  <dino@apple.com>
417
418         Remove runtime toggle for pointer-lock
419         https://bugs.webkit.org/show_bug.cgi?id=165577
420         <rdar://problems/29566996>
421
422         Reviewed by Jon Lee.
423
424         Remove any runtime calls to check if pointer-lock is enabled. It's
425         either compiled in or out.
426
427         * DumpRenderTree/mac/DumpRenderTree.mm:
428         (resetWebPreferencesToConsistentValues):
429         * WebKitTestRunner/TestController.cpp:
430         (WTR::TestController::resetPreferencesToConsistentValues):
431
432 2016-12-07  Eric Carlson  <eric.carlson@apple.com>
433
434         [MediaStream][Mac] Revoke sandbox extensions when capture ends
435         https://bugs.webkit.org/show_bug.cgi?id=165476
436
437         Reviewed by Brady Eidson.
438         
439         Add a test which loads a page that calls navigator.mediaDevices.enumerateDevices, kills the
440         page, and loads the same page again to ensure that the WK2 UserMediaPermissionRequestManagerProxy
441         is reset and recreated when a web page exits and is reloaded.
442
443         * TestWebKitAPI/PlatformGTK.cmake:
444         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
445         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp: Added.
446         (TestWebKitAPI::checkUserMediaPermissionCallback):
447         (TestWebKitAPI::TEST):
448         * TestWebKitAPI/Tests/WebKit2/enumerateMediaDevices.html: Added.
449
450 2016-12-07  Jeremy Jones  <jeremyj@apple.com>
451
452         One esc to exit fullscreen and pointer lock
453         https://bugs.webkit.org/show_bug.cgi?id=165416
454         rdar://problem/29430711
455
456         Reviewed by Jer Noble.
457
458         Implement WKPageUIClientV8 for pointer lock support.
459         Add "escape" key support in EventSenderProxy.
460
461         * WebKitTestRunner/TestController.cpp:
462         (WTR::requestPointerLock):
463         (WTR::TestController::createOtherPage):
464         (WTR::TestController::createWebViewWithOptions):
465         * WebKitTestRunner/mac/EventSenderProxy.mm:
466         (WTR::EventSenderProxy::keyDown):
467
468 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
469
470         Add system trace points for JavaScript VM entry/exit
471         https://bugs.webkit.org/show_bug.cgi?id=165550
472
473         Reviewed by Tim Horton.
474
475         Add trace points for entry/exit into/out of the JS VM.
476
477         * Tracing/SystemTracePoints.plist:
478
479 2016-12-07  ChangSeok Oh  <changseok@webkit.org>
480
481         [GTK] Cannot build GTK+ with CUPS 2.* versions
482         https://bugs.webkit.org/show_bug.cgi?id=163591
483
484         Reviewed by Michael Catanzaro.
485
486         GTK+ build has failed on the system which CUPS 2.x is installed in. GTK+ 3.16.4
487         does not assume to use the recent CUPS thus it fails to detect the CUPS in configuration.
488         GTK+ upstream fixed this issue but it is not easy to apply the original patch to our
489         old gtk+ since it requires not only bumping up glib accordingly and its consequence
490         causes many printing test failures. So, I propose to fix the configuration issue by
491         applying the change to the configure file directly. By doing this, we don't need to
492         upgrade glib and worry about any test failures as a consequence of the upgraded glib.
493
494         * gtk/jhbuild.modules:
495         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Added.
496
497 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
498
499         Fix use of enum in a WK2 C SPI header.
500         rdar://problem/28725583
501
502         Followup to correctly prefix the enum values.
503
504         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
505         (WTR::InjectedBundlePage::prepare):
506
507 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
508
509         Fix use of enum in a WK2 C SPI header.
510         rdar://problem/28725583
511
512         Reviewed by Dan Bernstein.
513
514         Use correct enum style for a C SPI header and fix the callers.
515
516         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
517         (WTR::InjectedBundlePage::prepare):
518
519 2016-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
520
521         Add a new project for recording and playing back editing commands in editable web content
522         https://bugs.webkit.org/show_bug.cgi?id=165114
523         <rdar://problem/29408135>
524
525         Reviewed by Beth Dakin.
526
527         Adds a new Xcode project containing work towards rewinding and playing back editing commands. This work is
528         wrapped in an Xcode project to take advantage of the XCTest framework. To manually test recording, open the
529         capture test harness, edit the contenteditable body, and then hit cmd-S. This downloads a .json file which may
530         then be dragged into the playback test harness.
531
532         Also adds 3 new unit tests in EditingHistoryTests/RewindAndPlaybackTests.m. These tests carry out the following
533         steps:
534
535         1. Load the capture harness and perform test-specific editing on the web view.
536         2. Let originalState be a dump of the DOM at this point in time.
537         3. Extract the JSON-serialized editing history data and load the playback harness with this data.
538         4. Rewind all editing to the beginning.
539         5. Playback all editing to the end.
540         6. Dump the state of the DOM. This should be identical to originalState.
541
542         * EditingHistory/EditingHistory.xcodeproj/project.pbxproj: Added.
543         * EditingHistory/EditingHistory/Info.plist: Added.
544         * EditingHistory/EditingHistory/Resources/CaptureHarness.html: Added.
545         * EditingHistory/EditingHistory/Resources/DOMTestingUtil.js: Added.
546         * EditingHistory/EditingHistory/Resources/PlaybackHarness.html: Added.
547         * EditingHistory/EditingHistory/TestRunner.h: Added.
548         * EditingHistory/EditingHistory/TestRunner.m: Added.
549         (injectedMessageEventHandlerScript):
550         (-[TestRunner init]):
551         (-[TestRunner deleteBackwards:]):
552         (-[TestRunner typeString:]):
553         (-[TestRunner bodyElementSubtree]):
554         (-[TestRunner bodyTextContent]):
555         (-[TestRunner editingHistoryJSON]):
556         (-[TestRunner loadPlaybackTestHarnessWithJSON:]):
557         (-[TestRunner numberOfUpdates]):
558         (-[TestRunner jumpToUpdateIndex:]):
559         (-[TestRunner expectEvents:afterPerforming:]):
560         (-[TestRunner loadCaptureTestHarness]):
561         (-[TestRunner setTextObfuscationEnabled:]):
562         (-[TestRunner isDoneWaitingForPendingEvents]):
563         (-[TestRunner userContentController:didReceiveScriptMessage:]):
564
565         The TestRunner provides utilities that a unit test should use to drive the test forward (e.g. loading harnesses)
566         or inspect the state of the loaded page (e.g. extracting JSON editing history data from the capture harness).
567
568         * EditingHistory/EditingHistory/TestUtil.h: Added.
569         * EditingHistory/EditingHistory/TestUtil.m: Added.
570         (waitUntilWithTimeout):
571         (waitUntil):
572
573         Provides utilities for running tests. For now, this is just spinning the runloop on a given condition.
574
575         * EditingHistory/EditingHistory/WKWebViewAdditions.h: Added.
576         * EditingHistory/EditingHistory/WKWebViewAdditions.m: Added.
577         (-[WKWebView loadPageFromBundleNamed:]):
578         (-[WKWebView typeCharacter:]):
579         (-[WKWebView keyPressWithCharacters:keyCode:]):
580         (-[WKWebView stringByEvaluatingJavaScriptFromString:]):
581
582         Provides utilities for simulating interaction in a web view.
583
584         * EditingHistory/EditingHistory/main.m: Added.
585         (main):
586         * EditingHistory/EditingHistoryTests/Info.plist: Added.
587         * EditingHistory/EditingHistoryTests/RewindAndPlaybackTests.m: Added.
588         (-[RewindAndPlaybackTests setUp]):
589         (-[RewindAndPlaybackTests tearDown]):
590         (-[RewindAndPlaybackTests testTypingSingleLineOfText]):
591         (-[RewindAndPlaybackTests testTypingMultipleLinesOfText]):
592         (-[RewindAndPlaybackTests testTypingAndDeletingText]):
593         (-[RewindAndPlaybackTests rewindAndPlaybackEditingInPlaybackTestHarness]):
594         (-[RewindAndPlaybackTests originalBodySubtree:isEqualToFinalSubtree:]):
595
596 2016-12-07  Philippe Normand  <pnormand@igalia.com>
597
598         [GTK][jhbuild] missing dependency on libvpx in gst-plugins-good
599         https://bugs.webkit.org/show_bug.cgi?id=165525
600
601         Reviewed by Carlos Garcia Campos.
602
603         * gtk/jhbuild.modules: gst-plugins-good should depend on the
604         libvpx package built within jhbuild.
605
606 2016-12-07  Philippe Normand  <pnormand@igalia.com>
607
608         [GTK][jhbuild] gst-plugins-bad fails to build with OpenSSL 1.1.0
609         https://bugs.webkit.org/show_bug.cgi?id=165520
610
611         Reviewed by Carlos Garcia Campos.
612
613         * gtk/jhbuild.modules: Added missing dependency on openh264 in
614         gst-plugins-bad, along with 2 upstream patches fixing the build
615         against OpenSSL 1.1.0.
616         * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
617         * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
618
619 2016-12-06  Alexey Proskuryakov  <ap@apple.com>
620
621         Correct SDKROOT values in xcconfig files
622         https://bugs.webkit.org/show_bug.cgi?id=165487
623         rdar://problem/29539209
624
625         Reviewed by Dan Bernstein.
626
627         Fix suggested by Dan Bernstein.
628
629         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
630         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
631         * MiniBrowser/Configurations/DebugRelease.xcconfig:
632         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
633         * WebEditingTester/Configurations/DebugRelease.xcconfig:
634         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
635
636 2016-12-06  Daniel Bates  <dabates@apple.com>
637
638         WebKitTestRunner: Plugins are disabled in new windows
639         https://bugs.webkit.org/show_bug.cgi?id=165410
640
641         Reviewed by Alex Christensen.
642
643         Currently WebKitTestRunner only enables plugins in the main window. So, a test that opens
644         a new window and loads a plugin will fail. We should enable plugins in all windows by
645         default. Moreover toggling testRunner.setPluginsEnabled() should effect all windows.
646
647         Making these changes is a step towards running plugins/open-and-close-window-with-plugin.html
648         in WebKitTestRunner (we still need to fix <https://bugs.webkit.org/show_bug.cgi?id=46714>) and
649         will make the behavior of WebKitTestRunner more closely match the behavior DumpRenderTree.
650
651         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
652         (WTR::InjectedBundle::beginTesting): Call TestRunner::setPluginsEnabled() instead of
653         WKBundleSetPluginsEnabled().
654         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
655         (WTR::TestRunner::setPluginsEnabled): Take a similar approach as TestRunner::setXSSAuditorEnabled()
656         and make use of WKBundleOverrideBoolPreferenceForTestRunner().
657
658 2016-12-05  Dean Jackson  <dino@apple.com>
659
660         pointer lock needs to be feature detectable
661         https://bugs.webkit.org/show_bug.cgi?id=165426
662         <rdar://problem/29486715>
663
664         Reviewed by Antoine Quint.
665
666         Expose the comment line to turn on/off pointer lock.
667
668         * DumpRenderTree/TestOptions.h:
669         * DumpRenderTree/TestOptions.mm:
670         (TestOptions::TestOptions):
671         * DumpRenderTree/mac/DumpRenderTree.mm:
672         (resetWebPreferencesToConsistentValues):
673         * WebKitTestRunner/TestController.cpp:
674         (WTR::TestController::resetPreferencesToConsistentValues):
675         (WTR::updateTestOptionsFromTestHeader):
676         * WebKitTestRunner/TestOptions.h:
677         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
678         (WTR::PlatformWebView::viewSupportsOptions):
679         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
680         (WTR::PlatformWebView::viewSupportsOptions):
681
682 2016-12-05  Jonathan Bedard  <jbedard@apple.com>
683
684         Make it possible to use an existing simulator instance for one-off testing
685         https://bugs.webkit.org/show_bug.cgi?id=164568
686         <rdar://problem/29189133>
687
688         Reviewed by Daniel Bates.
689
690         With this patch, if a simulator is currently running on the machine and
691         '--dedicated-simulators' is not passed into the application, only one simulator
692         instance will be used, and this instance will be the existing instance.
693         If no simulator is running or '--dedicated-simulators' is passed to the script,
694         previous behavior will be used.
695
696         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
697         (parse_args):
698         * Scripts/webkitpy/port/ios.py:
699         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
700         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
701         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
702         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
703         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
704         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
705         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
706         * Scripts/webkitpy/xcode/simulator.py:
707         (Simulator.refresh): Check if xcode_simctl_list returned None instead of a generator.
708         (Simulator.current_device): Get currently running device.
709
710 2016-12-05  Dan Bernstein  <mitz@apple.com>
711
712         Disable a crashing test on iOS.
713
714         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
715
716 2016-12-04  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
717
718         Fix a build break on EFL since r209303.
719
720         Unreviewed build fix.
721
722         * Scripts/webkitperl/FeatureList.pm: Disable SS Device Adaptation temporarily.
723
724 2016-12-03  Yusuke Suzuki  <utatane.tea@gmail.com>
725
726         Refactor SymbolImpl layout
727         https://bugs.webkit.org/show_bug.cgi?id=165247
728
729         Reviewed by Darin Adler.
730
731         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
732         (TestWebKitAPI::TEST):
733
734 2016-12-03  Dan Bernstein  <mitz@apple.com>
735
736         Fixed the build after r209307.
737
738         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
739         (TEST):
740
741 2016-12-03  Dan Bernstein  <mitz@apple.com>
742
743         [Cocoa] Expose InjectedBundlePageEditorClient via the Objective-C bundle SPI
744         https://bugs.webkit.org/show_bug.cgi?id=165276
745         <rdar://problem/29467040>
746
747         Reviewed by Darin Adler.
748
749         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
750         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm: Added.
751         (-[BundleEditingDelegateRemoteObject willWriteToPasteboard:]):
752         (-[BundleEditingDelegateRemoteObject didWriteToPasteboard]):
753         (TEST):
754         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm: Added.
755         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
756         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:willWriteRangeToPasteboard:]):
757         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:pasteboardDataForRange:]):
758         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextControllerDidWriteToPasteboard:]):
759         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Added.
760
761 2016-12-02  Andy Estes  <aestes@apple.com>
762
763         [Cocoa] Adopt the PRODUCT_BUNDLE_IDENTIFIER build setting
764         https://bugs.webkit.org/show_bug.cgi?id=164492
765
766         Reviewed by Dan Bernstein.
767
768         * DumpRenderTree/TestNetscapePlugIn/mac/Info.plist: Changed CFBundleIdentifier's value from
769         com.apple.testnetscapeplugin to ${PRODUCT_BUNDLE_IDENTIFIER}.
770         * DumpRenderTree/ios/Info.plist: Changed CFBundleIdentifier's value from
771         org.webkit.DumpRenderTree to ${PRODUCT_BUNDLE_IDENTIFIER}.
772         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig: Set
773         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.DumpRenderTree.
774         * DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig: Set
775         PRODUCT_BUNDLE_IDENTIFIER to com.apple.testnetscapeplugin.
776         * MiniBrowser/Configurations/MiniBrowser.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
777         org.webkit.$(PRODUCT_NAME:rfc1034identifier).
778         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
779         com.apple.$(PRODUCT_NAME:rfc1034identifier).
780         * MiniBrowser/mac/Bundle/Info.plist: Changed CFBundleIdentifier's value from
781         com.apple.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
782         * MiniBrowser/mac/Info.plist: Changed CFBundleIdentifier's value from
783         org.webkit.${PRODUCT_NAME} to ${PRODUCT_BUNDLE_IDENTIFIER}.
784         * TestWebKitAPI/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
785         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
786         com.apple.$(PRODUCT_NAME:rfc1034identifier).
787         * TestWebKitAPI/Configurations/WebProcessPlugIn.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
788         com.apple.$(PRODUCT_NAME:rfc1034identifier).
789         * TestWebKitAPI/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
790         com.yourcompany.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
791         * TestWebKitAPI/cocoa/WebProcessPlugIn/Info.plist: Added a CFBundleIdentifier key with the
792         value ${PRODUCT_BUNDLE_IDENTIFIER}.
793         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
794         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
795         com.apple.WebKitTestRunner.InjectedBundle.
796         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Set
797         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.$(PRODUCT_NAME:rfc1034identifier).
798         * WebKitTestRunner/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
799         com.apple.WebKitTestRunner.InjectedBundle to ${PRODUCT_BUNDLE_IDENTIFIER}.
800         * WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist: Changed
801         CFBundleIdentifier's value from org.webkit.${PRODUCT_NAME:rfc1034identifier} to
802         ${PRODUCT_BUNDLE_IDENTIFIER}.
803
804 2016-12-02  Brady Eidson  <beidson@apple.com>
805
806         Make IndexedDB.WebProcessKillIDBCleanup even more reliable.
807         https://bugs.webkit.org/show_bug.cgi?id=165330
808
809         Reviewed by Alex Christensen.
810
811         The test currently nulls out a RetainPtr<WKWebView> to try to destroy the view and kill the process.
812
813         Problem is that doesn't reliably destroy the view.
814         We should explicitly kill the process instead.
815
816         Also, by relocating when we kill the process, we can better test behavior of the IndexedDB mechanism.
817         e.g. We explicitly confirm that a second WebProcess can simultaneously attach to the same unique database as the first.
818
819         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
820         (TEST):
821
822 2016-12-02  Commit Queue  <commit-queue@webkit.org>
823
824         Unreviewed, rolling out r209136.
825         https://bugs.webkit.org/show_bug.cgi?id=165337
826
827         broke 36 webkitpy tests (Requested by mcatanzaro on #webkit).
828
829         Reverted changeset:
830
831         "Make it possible to use an existing simulator instance for
832         one-off testing"
833         https://bugs.webkit.org/show_bug.cgi?id=164568
834         http://trac.webkit.org/changeset/209136
835
836 2016-12-02  Chris Dumez  <cdumez@apple.com>
837
838         [Mac][WK1] Implement new HTML interactive form validation user interface
839         https://bugs.webkit.org/show_bug.cgi?id=164483
840
841         Reviewed by Simon Fraser.
842
843         Add support for UIScriptController's contentsOfUserInterfaceItem("validationBubble")
844         on Mac DRT as this is needed by the HTML form validation layout tests.
845
846         * DumpRenderTree/mac/UIScriptControllerMac.mm:
847         (WTR::UIScriptController::contentsOfUserInterfaceItem):
848
849 2016-12-02  Brady Eidson  <beidson@apple.com>
850
851         IndexedDB.IndexedDBMultiProcess and IndexedDB.WebProcessKillIDBCleanup sometimes timeout.
852         https://bugs.webkit.org/show_bug.cgi?id=160780 and https://bugs.webkit.org/show_bug.cgi?id=161001
853
854         Reviewed by Alexey Proskuryakov.
855
856         These tests had "run-loop races."
857         
858         The test spins the runloop waiting for one message.
859         Two messages might come in from the WebProcess in short succession, and both be delivered to the
860         UIProcess in the same spin of the runloop.
861
862         Therefore by the time the test stops spinning the runloop, notified that a message was received,
863         the first message has been overwritten by the second.
864
865         These tests are fixed by queueing the incoming messages instead of just storing one.
866
867         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm:
868         (-[IndexedDBMPMessageHandler userContentController:didReceiveScriptMessage:]):
869         (getNextMessage):
870         (TEST):
871
872         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
873         (-[IndexedDBWebProcessKillMessageHandler userContentController:didReceiveScriptMessage:]):
874         (getNextMessage):
875         (TEST):
876
877 2016-12-01  Jiewen Tan  <jiewen_tan@apple.com>
878
879         Add a runtime flag for SubtleCrypto
880         https://bugs.webkit.org/show_bug.cgi?id=164982
881
882         Reviewed by Brent Fulgham.
883
884         * DumpRenderTree/mac/DumpRenderTree.mm:
885         (resetWebPreferencesToConsistentValues):
886         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
887         (WTR::InjectedBundle::beginTesting):
888         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
889         (WTR::TestRunner::setSubtleCryptoEnabled):
890         * WebKitTestRunner/InjectedBundle/TestRunner.h:
891
892 2016-12-01  Alexey Proskuryakov  <ap@apple.com>
893
894         Remove webkitpy dependency on Eliza
895         https://bugs.webkit.org/show_bug.cgi?id=164979
896
897         Reviewed by Daniel Bates.
898
899         This module is not on pypi, so installing it is a challenge. The jokes feel pretty old too!
900
901         * Scripts/webkitpy/thirdparty/__init__.py:
902         * Scripts/webkitpy/thirdparty/__init___unittest.py: Changed mock import hook to
903         test buildbot instead of eliza.
904         * Scripts/webkitpy/tool/bot/ircbot.py:
905         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
906
907 2016-12-01  Beth Dakin  <bdakin@apple.com>
908
909         Force clicking tests fail on some machines
910         https://bugs.webkit.org/show_bug.cgi?id=165263
911
912         Reviewed by Tim Horton.
913
914         Initialize com.apple.trackpad.forceClick to 1 so that we don’t have to depend on 
915         the user account having this feature enabled. 
916         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
917         (WTR::InjectedBundle::platformInitialize):
918         * WebKitTestRunner/mac/main.mm:
919         (setDefaultsToConsistentValuesForTesting):
920
921 2016-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
922
923         Introduce StringImpl::StaticStringImpl with constexpr constructor
924         https://bugs.webkit.org/show_bug.cgi?id=165093
925
926         Reviewed by Darin Adler.
927
928         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
929         (TestWebKitAPI::TEST):
930
931 2016-11-30  Antoine Quint  <graouts@apple.com>
932
933         [Modern Media Controls] Add an HTML comment flag to turn the feature on
934         https://bugs.webkit.org/show_bug.cgi?id=165226
935
936         Reviewed by Dean Jackson.
937
938         Add a new flag to turn Modern Media Controls on in the test runners.
939
940         * DumpRenderTree/TestOptions.h:
941         * DumpRenderTree/TestOptions.mm:
942         (TestOptions::TestOptions):
943         * DumpRenderTree/mac/DumpRenderTree.mm:
944         (resetWebPreferencesToConsistentValues):
945         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
946         (WTR::InjectedBundle::beginTesting):
947         * WebKitTestRunner/TestController.cpp:
948         (WTR::TestController::resetPreferencesToConsistentValues):
949         (WTR::updateTestOptionsFromTestHeader):
950         * WebKitTestRunner/TestOptions.h:
951         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
952         (WTR::PlatformWebView::viewSupportsOptions):
953         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
954         (WTR::PlatformWebView::viewSupportsOptions):
955
956 2016-11-30  Said Abou-Hallawa  <sabouhallawa@apple.com>
957
958         Add separate settings and preferences to enable/disable async decoding for large images and animated images
959         https://bugs.webkit.org/show_bug.cgi?id=165177
960
961         Reviewed by Simon Fraser.
962         
963         Pref and a menu item to toggle async image decoding settings for WebKits 1 and 2.
964
965         * MiniBrowser/mac/SettingsController.h:
966         * MiniBrowser/mac/SettingsController.m:
967         (-[SettingsController _populateMenu]):
968         (-[SettingsController validateMenuItem:]):
969         (-[SettingsController toggleLargeImageAsyncDecodingEnabled:]):
970         (-[SettingsController largeImageAsyncDecodingEnabled]):
971         (-[SettingsController toggleAnimatedImageAsyncDecodingEnabled:]):
972         (-[SettingsController animatedImageAsyncDecodingEnabled]):
973         (-[SettingsController toggleAsyncImageDecodingEnabled:]): Deleted.
974         (-[SettingsController asyncImageDecodingEnabled]): Deleted.
975         * MiniBrowser/mac/WK1BrowserWindowController.m:
976         (-[WK1BrowserWindowController didChangeSettings]):
977         * MiniBrowser/mac/WK2BrowserWindowController.m:
978         (-[WK2BrowserWindowController didChangeSettings]):
979
980 2016-11-30  Jonathan Bedard  <jbedard@apple.com>
981
982         Make it possible to use an existing simulator instance for one-off testing
983         https://bugs.webkit.org/show_bug.cgi?id=164568
984         <rdar://problem/29189133>
985
986         Reviewed by Daniel Bates.
987
988         With this patch, if a simulator is currently running on the machine and
989         '--dedicated-simulators' is not passed into the application, only one simulator
990         instance will be used, and this instance will be the existing instance.
991         If no simulator is running or '--dedicated-simulators' is passed to the script,
992         previous behavior will be used.
993
994         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
995         (parse_args):
996         * Scripts/webkitpy/port/ios.py:
997         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
998         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
999         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
1000         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
1001         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
1002         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
1003         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
1004         * Scripts/webkitpy/xcode/simulator.py:
1005         (Simulator.current_device): Get currently running device.
1006
1007 2016-11-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1008
1009         [Linux] run-benchmark should be able to execute the benchmarks with more browsers.
1010         https://bugs.webkit.org/show_bug.cgi?id=164792
1011
1012         Reviewed by Michael Catanzaro.
1013
1014         This removes the GTKBrowserDriver (and the platform 'gtk') from the run-benchmark script,
1015         and adds a new LinuxBrowserDriver with a platform 'linux'.
1016
1017         It add also drivers for Chrome (Chromium), Firefox, Epiphany and MiniBrowser-GTK (previously MiniBrowser).
1018
1019         The detection of the platform is now done automatically, so it is not longer needed to pass a "--platform" parameter.
1020
1021         The tracking of the browser process is now more robust, we track the pid of the browser process and we only try to
1022         kill the ones that were executed by this script, instead of doing a 'killall $browser' (like before).
1023         We also check for browser process childs and we kill them if they are still alive after the main browser process has been killed.
1024         This depends on psutil, so this will only be done if psutil is installed.
1025
1026         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1027         (RunBenchmarkTests.start): The platform is now autodetected and the MiniBrowser driver is renamed to MiniBrowser-GTK.
1028         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1029         (BenchmarkRunner._run_benchmark): Fix a bug that caused close_browsers to be called twice. Its already called inside BenchmarkRunner._run_one_test.
1030         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py: Added.
1031         (LinuxBrowserDriver): Implement base class that has all the needed functionality for driving the browsers.
1032         (LinuxBrowserDriver.__init__):
1033         (LinuxBrowserDriver.prepare_env):
1034         (LinuxBrowserDriver.restore_env):
1035         (LinuxBrowserDriver.close_browsers): Made the dependency on psutil optional (because it was listed as such on the README file <Tools/Scripts/webkitpy/benchmark_runner/README.md>)
1036         (LinuxBrowserDriver.launch_url):
1037         (LinuxBrowserDriver._get_first_executable_path_from_list):
1038         (LinuxBrowserDriver._screen_size):
1039         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
1040         (LinuxChromeDriver):
1041         (LinuxChromeDriver.launch_url):
1042         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_browser_driver.py.
1043         (EpiphanyBrowserDriver):
1044         (EpiphanyBrowserDriver.launch_url):
1045         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
1046         (LinuxFirefoxDriver):
1047         (LinuxFirefoxDriver.launch_url):
1048         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
1049         (GTKMiniBrowserDriver):
1050         (GTKMiniBrowserDriver.launch_url):
1051         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
1052         (SimpleHTTPServerDriver):
1053         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1054         (getplatform):
1055         (getdefaultbrowser):
1056         (parse_args):
1057         * Scripts/webkitpy/benchmark_runner/utils.py:
1058         (load_subclasses): The loading of subclasses was still (even after r196979) sensitive to the order in which the modules are loaded.
1059         We have to ensure that the files containing subclasses of the base_class_file are loaded after the base_class_file,
1060         we can do that by matching against the base_class_file pattern when the list is created.
1061
1062 2016-11-29  Andy Estes  <aestes@apple.com>
1063
1064         [Cocoa] Enable two clang warnings recommended by Xcode
1065         https://bugs.webkit.org/show_bug.cgi?id=164498
1066
1067         Reviewed by Mark Lam.
1068
1069         * DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_INFINITE_RECURSION and CLANG_WARN_SUSPICIOUS_MOVE.
1070         * MiniBrowser/Configurations/Base.xcconfig: Ditto.
1071         * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
1072         * WebKitTestRunner/Configurations/Base.xcconfig: Ditto.
1073
1074 2016-11-29  Eric Carlson  <eric.carlson@apple.com>
1075
1076         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
1077         https://bugs.webkit.org/show_bug.cgi?id=164760
1078         <rdar://problem/29261266>
1079
1080         Reviewed by Youenn Fablet.
1081         
1082         Allow scripts to determine the number of times the user has been prompted for capture device access.
1083
1084         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1085         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1086         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
1087         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
1088         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
1089         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
1090         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1091         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1092         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
1093         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
1094         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
1095         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
1096         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1097         * WebKitTestRunner/TestController.cpp:
1098         (WTR::TestController::resetStateToConsistentValues):
1099         (WTR::OriginSettings::incrementRequestCount):
1100         (WTR::OriginSettings::resetRequestCount):
1101         (WTR::OriginSettings::requestCount):
1102         (WTR::TestController::saltForOrigin):
1103         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
1104         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
1105         (WTR::TestController::settingsForOrigin):
1106         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
1107         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
1108         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
1109         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
1110         * WebKitTestRunner/TestController.h:
1111         * WebKitTestRunner/TestInvocation.cpp:
1112         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1113         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1114
1115 2016-11-29  Simon Fraser  <simon.fraser@apple.com>
1116
1117         intersection-observer-entry-interface.html test fails on the bots
1118         https://bugs.webkit.org/show_bug.cgi?id=165133
1119
1120         Reviewed by Darin Adler.
1121         
1122         Tests that enabled Intersection Observer via <!-- webkit-test-runner [ enableIntersectionObserver=true ] -->
1123         would fail sometimes, because TestController::ensureViewSupportsOptionsForTest() failed to check
1124         to see if this option required creating a new web view, so would just use the old view without
1125         even resetting preferences.
1126         
1127         In general, TestController doesn't distinguish properly between options that require the creation
1128         of a new view (like mock scrollbars), and those that can be simply reset as resetPreferencesToConsistentValues()
1129         does.
1130         
1131         Do the easy fix of having viewSupportsOptions() check options.enableIntersectionObserver. We should probably
1132         just call resetPreferencesToConsistentValues() even when re-use the same view.
1133         
1134         * WebKitTestRunner/TestController.cpp:
1135         (WTR::TestController::resetPreferencesToConsistentValues):
1136         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1137         (WTR::PlatformWebView::viewSupportsOptions):
1138         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
1139         (WTR::PlatformWebView::viewSupportsOptions):
1140
1141 2016-11-28  Ryan Haddad  <ryanhaddad@apple.com>
1142
1143         Unreviewed, rolling out r209008.
1144
1145         This change appears to have caused two fast/mediastrem
1146         LayoutTests to fail.
1147
1148         Reverted changeset:
1149
1150         "[MediaStream] Don't request user permission for a device if
1151         it has already been granted in the current browsing context"
1152         https://bugs.webkit.org/show_bug.cgi?id=164760
1153         http://trac.webkit.org/changeset/209008
1154
1155 2016-11-28  Daniel Bates  <dabates@apple.com>
1156
1157         Teach webkitpy how to read CSSProperties.json r209001
1158         https://bugs.webkit.org/show_bug.cgi?id=165108
1159
1160         Reviewed by Simon Fraser.
1161
1162         Fix webkitpy logic so that it can read CSS property names from CSSProperties.json following r209001.
1163
1164         Following r209001 CSSPropertyNames.in no longer exists as it was replaced with CSSProperties.json.
1165         We need to modify the webkitpy machinery that processed CSSPropertyNames.in to process CSSProperties.json.
1166
1167         * Scripts/webkitpy/w3c/test_converter.py:
1168         (_W3CTestConverter.__init__): Make self._css_property_file and self._css_property_value_file local
1169         variables as it is unnecessary for them to be instance variables. Call read_webkit_prefixed_css_property_list()
1170         to read the property names from file CSSProperties.json. Call legacy_read_webkit_prefixed_css_property_list() to
1171         read CSS keyword values from CSSValueKeywords.in.
1172         (_W3CTestConverter.read_webkit_prefixed_css_property_list): Added.
1173         (_W3CTestConverter):
1174         (_W3CTestConverter.legacy_read_webkit_prefixed_css_property_list): Renamed from read_webkit_prefixed_css_property_list.
1175         * Scripts/webkitpy/w3c/test_importer_unittest.py:
1176         (TestImporterTest.test_harnesslinks_conversion): Substitute CSSProperties.json for CSSPropertyNames.in.
1177
1178 2016-11-28  Eric Carlson  <eric.carlson@apple.com>
1179
1180         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
1181         https://bugs.webkit.org/show_bug.cgi?id=164760
1182         <rdar://problem/29261266>
1183
1184         Reviewed by Youenn Fablet.
1185         
1186         Allow scripts to determine the number of times the user has been prompted for capture device access.
1187
1188         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1189         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1190         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
1191         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
1192         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
1193         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
1194         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1195         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1196         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
1197         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
1198         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
1199         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
1200         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1201         * WebKitTestRunner/TestController.cpp:
1202         (WTR::TestController::resetStateToConsistentValues):
1203         (WTR::OriginSettings::incrementRequestCount):
1204         (WTR::OriginSettings::resetRequestCount):
1205         (WTR::OriginSettings::requestCount):
1206         (WTR::TestController::saltForOrigin):
1207         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
1208         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
1209         (WTR::TestController::settingsForOrigin):
1210         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
1211         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
1212         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
1213         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
1214         * WebKitTestRunner/TestController.h:
1215         * WebKitTestRunner/TestInvocation.cpp:
1216         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1217         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1218
1219 2016-11-18  Jer Noble  <jer.noble@apple.com>
1220
1221         Add some performance tests for various aspects of media loading and playback.
1222         https://bugs.webkit.org/show_bug.cgi?id=164977
1223
1224         Reviewed by Darin Adler.
1225
1226         Allow callers to pass in extra alias/directory pairs to run-webkit-httpd.
1227
1228         * Scripts/run-webkit-httpd:
1229         (parse_args):
1230         (main):
1231
1232 2016-11-27  Simon Fraser  <simon.fraser@apple.com>
1233
1234         Another fix for CMake.
1235
1236         * DumpRenderTree/TestOptions.h:
1237         * DumpRenderTree/TestOptions.mm:
1238
1239 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
1240
1241         Better fix for the Mac CMake build.
1242
1243         * DumpRenderTree/PlatformMac.cmake:
1244
1245 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
1246
1247         Attempt to fix Mac CMake build.
1248
1249         * DumpRenderTree/PlatformMac.cmake:
1250
1251 2016-11-26  Yusuke Suzuki  <utatane.tea@gmail.com>
1252
1253         [WTF] Import std::optional reference implementation as WTF::Optional
1254         https://bugs.webkit.org/show_bug.cgi?id=164199
1255
1256         Reviewed by Saam Barati and Sam Weinig.
1257
1258         Use WTF::Optional::value_or.
1259
1260         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1261         (WTR::UIScriptController::stableStateOverride):
1262         (WTR::UIScriptController::setStableStateOverride):
1263         * TestRunnerShared/Bindings/JSWrappable.h:
1264         (WTR::JSValueMakeBooleanOrNull):
1265         (WTR::JSValueToNullableBoolean):
1266         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1267         (WTR::UIScriptController::stableStateOverride):
1268         (WTR::UIScriptController::setStableStateOverride):
1269         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1270         * TestWebKitAPI/Tests/WTF/Optional.cpp:
1271         (TestWebKitAPI::TEST):
1272         * TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
1273         (TestWebKitAPI::testParseHTMLInteger):
1274         (TestWebKitAPI::testParseHTMLNonNegativeInteger):
1275         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1276         (TestWebKitAPI::checkURL):
1277         (TestWebKitAPI::checkRelativeURL):
1278         (TestWebKitAPI::checkURLDifferences):
1279         (TestWebKitAPI::checkRelativeURLDifferences):
1280         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1281         (WTR::UIScriptController::stableStateOverride):
1282         (WTR::UIScriptController::setStableStateOverride):
1283
1284 2016-11-26  Sam Weinig  <sam@webkit.org>
1285
1286         Convert IntersectionObserver over to using RuntimeEnabledFeatures so it can be properly excluded from script
1287         https://bugs.webkit.org/show_bug.cgi?id=164965
1288
1289         Reviewed by Simon Fraser.
1290
1291         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1292         Add new files.
1293
1294         * DumpRenderTree/TestOptions.h: Added.
1295         * DumpRenderTree/TestOptions.mm: Added.
1296         (parseBooleanTestHeaderValue):
1297         (TestOptions::TestOptions):
1298         Port TestOption parsing from WKTR to DRT.
1299
1300         * DumpRenderTree/mac/DumpRenderTree.mm:
1301         (resetWebPreferencesToConsistentValues):
1302         (resetWebViewToConsistentStateBeforeTesting):
1303         (runTest):
1304         * WebKitTestRunner/TestController.cpp:
1305         Pass TestOptions down to resetWebPreferencesToConsistentValues to allow setting
1306         preferences conditionally.
1307
1308         (WTR::TestController::resetPreferencesToConsistentValues):
1309         (WTR::updateTestOptionsFromTestHeader):
1310         * WebKitTestRunner/TestOptions.h:
1311         Add a new test option header, enableIntersectionObserver, to enable IntersectionObserver.
1312
1313 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
1314
1315         Migrate some layout timer-related code from std::chrono to Seconds and MonotonicTime
1316         https://bugs.webkit.org/show_bug.cgi?id=164992
1317
1318         Reviewed by Darin Adler.
1319         
1320         Use Seconds::zero().
1321
1322         * TestWebKitAPI/Tests/WTF/Condition.cpp:
1323
1324 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
1325
1326         Add literals for various time units
1327         https://bugs.webkit.org/show_bug.cgi?id=165074
1328
1329         Reviewed by Filip Pizlo.
1330         
1331         Add tests for new time literals. Add new tests for units.
1332
1333         * TestWebKitAPI/Tests/WTF/Time.cpp:
1334         (TestWebKitAPI::TEST):
1335
1336 2016-11-25  Csaba Osztrogonác  <ossy@webkit.org>
1337
1338         Fix compile warnings after r208415
1339         https://bugs.webkit.org/show_bug.cgi?id=165061
1340
1341         Reviewed by Andy Estes.
1342
1343         * TestWebKitAPI/Tests/WTF/Time.cpp:
1344         (TestWebKitAPI::TEST):
1345
1346 2016-11-24  Michael Catanzaro  <mcatanzaro@igalia.com>
1347
1348         [GTK] Notifications API does not expose or respect the "tag" attribute
1349         https://bugs.webkit.org/show_bug.cgi?id=164771
1350
1351         Reviewed by Gustavo Noronha Silva.
1352
1353         Verify that showing a notification with the same tag as another notification closes the
1354         previous notification before the new notification is shown.
1355
1356         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
1357         (testWebViewNotification):
1358
1359 2016-11-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1360
1361         Unreviewed. Fix GTK+ test /webkit2/WebKitWebContext/get-plugins after r208429.
1362
1363         Test plugin library was renamed as libTestNetscapePlugIn.so in r208429.
1364
1365         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
1366         (testWebContextGetPlugins): Update the library name.
1367
1368 2016-11-22  Darin Adler  <darin@apple.com>
1369
1370         Make normal case fast in the input element limitString function
1371         https://bugs.webkit.org/show_bug.cgi?id=165023
1372
1373         Reviewed by Dan Bernstein.
1374
1375         * TestWebKitAPI/CMakeLists.txt: Added TextBreakIterator.cpp.
1376         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
1377         * TestWebKitAPI/Tests/WTF/TextBreakIterator.cpp: Added.
1378         Contains some tests for the numGraphemeClusters and
1379         numCharactersInGraphemeClusters functions that I used to make sure
1380         that the new fast paths I added work correctly.
1381
1382 2016-11-22  Tomas Popela  <tpopela@redhat.com>
1383
1384         Unreviewed, add myself as a WebKit committer.
1385
1386         * Scripts/webkitpy/common/config/contributors.json:
1387
1388 2016-11-21  Mark Lam  <mark.lam@apple.com>
1389
1390         Hasher::addCharacters() should be able to handle zero length strings.
1391         https://bugs.webkit.org/show_bug.cgi?id=165024
1392
1393         Reviewed by Yusuke Suzuki.
1394
1395         * TestWebKitAPI/Tests/WTF/StringHasher.cpp:
1396         (TestWebKitAPI::TEST):
1397
1398 2016-11-21  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1399
1400         [CMake] build fails after update to cmake 3.7
1401         https://bugs.webkit.org/show_bug.cgi?id=165008
1402
1403         Reviewed by Dan Bernstein.
1404
1405         When we remove the CMake cache, we should remove both the
1406         CMakeCache.txt file and the CMakeFiles directory.
1407         See: https://gitlab.kitware.com/cmake/cmake/issues/14820
1408
1409         * Scripts/webkitdirs.pm:
1410         (cmakeFilesPath):
1411         (removeCMakeCache):
1412
1413 2016-11-16  Philippe Normand  <pnormand@igalia.com>
1414
1415         [GTK][WebRTC] Switch to downstream OpenWebRTC and more recent GStreamer
1416         https://bugs.webkit.org/show_bug.cgi?id=164817
1417
1418         Reviewed by Alejandro G. Castro.
1419
1420         This is temporary, hopefully. The OpenWebRTC patches will/should
1421         be soon reviewed and upstream but meanwhile it makes sense to use
1422         the Igalia downstream fork so that the WebRTC testing is easier.
1423
1424         Recent GStreamer patches are also needed for RTP bundling support
1425         and RTP retransmission fixes.
1426
1427         * gtk/jhbuild.modules:
1428         * gtk/openwebrtc.modules: Removed.
1429         * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Added.
1430         * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Added.
1431         * gtk/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Added.
1432
1433 2016-11-20  Zan Dobersek  <zdobersek@igalia.com>
1434
1435         [EncryptedMedia] Make EME API runtime-enabled
1436         https://bugs.webkit.org/show_bug.cgi?id=164927
1437
1438         Reviewed by Jer Noble.
1439
1440         Enable the EME API via the WKTR InjectedBundle whenever testing
1441         commences. This does not have any effect unless the EME feature
1442         is enabled at compile-time, but it's still added to match other
1443         features and for future use.
1444
1445         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1446         (WTR::InjectedBundle::beginTesting):
1447         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1448         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
1449         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1450
1451 2016-11-19  Simon Fraser  <simon.fraser@apple.com>
1452
1453         Fix the Mac and iOS bulds.
1454
1455         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1456         (-[TestRunnerWKWebView _stableStateOverride]):
1457         (-[TestRunnerWKWebView _setStableStateOverride:]):
1458
1459 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
1460
1461         Make it possible to test non-stable-state scrolling on iOS
1462         https://bugs.webkit.org/show_bug.cgi?id=164905
1463
1464         Reviewed by Dan Bernstein.
1465
1466         Make it possible for an iOS layout test to force every visible rect update
1467         from the UI process to the web process to be in a non-stable state. This emulates
1468         what happens during panning and zooming interactions, and allows us to test the
1469         scrolling and layer trees in these transient states.
1470         
1471         This is done by adding a testing property on WKWebView, _stableStateOverride, whose
1472         getters and setters are overridden in TestRunnerWKWebView. When non-nil, we _updateVisibleContentRectAfterScrollInView
1473         consults the NSNumber's boolValue and uses it to override the stable state.
1474         
1475         To facilitate this kind of testing, also add immediateScrollToOffset() and
1476         immediateZoomToScale() to UIScriptController. Finally, add doAfterPresentationUpdate()
1477         which provides a callback that fires after one trip to the web process and back.
1478         
1479         Add code generation support for optional boolean attributes in IDL.
1480
1481         Align CodeGeneratorDumpRenderTree.pm and CodeGeneratorTestRunner.pm.
1482
1483         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1484         (_generateImplementationFile):
1485         (_platformTypeConstructor):
1486         (_returnExpression):
1487         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1488         (WTR::UIScriptController::doAfterPresentationUpdate):
1489         (WTR::contentOffsetBoundedInValidRange):
1490         (WTR::UIScriptController::scrollToOffset):
1491         (WTR::UIScriptController::immediateScrollToOffset):
1492         (WTR::UIScriptController::immediateZoomToScale):
1493         (WTR::UIScriptController::stableStateOverride):
1494         (WTR::UIScriptController::setStableStateOverride):
1495         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1496         (WTR::UIScriptController::doAfterPresentationUpdate):
1497         * TestRunnerShared/Bindings/JSWrappable.h:
1498         (WTR::JSValueMakeBooleanOrNull):
1499         (WTR::JSValueToNullableBoolean):
1500         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1501         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1502         (WTR::UIScriptController::immediateScrollToOffset):
1503         (WTR::UIScriptController::immediateZoomToScale):
1504         (WTR::UIScriptController::stableStateOverride):
1505         (WTR::UIScriptController::setStableStateOverride):
1506         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1507         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
1508         (_classRefGetter):
1509         (_platformTypeConstructor):
1510         (_returnExpression):
1511         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1512         (-[TestRunnerWKWebView dealloc]):
1513         (-[TestRunnerWKWebView _stableStateOverride]):
1514         (-[TestRunnerWKWebView _setStableStateOverride:]):
1515         * WebKitTestRunner/ios/TestControllerIOS.mm:
1516         (WTR::TestController::platformResetStateToConsistentValues):
1517         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1518         (WTR::UIScriptController::doAsyncTask):
1519         (WTR::UIScriptController::doAfterPresentationUpdate):
1520         (WTR::UIScriptController::zoomToScale):
1521         (WTR::UIScriptController::immediateScrollToOffset):
1522         (WTR::UIScriptController::immediateZoomToScale):
1523         (WTR::UIScriptController::stableStateOverride):
1524         (WTR::UIScriptController::setStableStateOverride):
1525         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1526         (WTR::UIScriptController::doAfterPresentationUpdate):
1527
1528 2016-11-19  Joanmarie Diggs  <jdiggs@igalia.com>
1529
1530         AX: [ATK] Expose aria-busy via ATK_STATE_BUSY
1531         https://bugs.webkit.org/show_bug.cgi?id=164909
1532
1533         Reviewed by Chris Fleizach.
1534
1535         Implement boolAttributeValue() for ATK so we can test AXElementBusy.
1536
1537         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1538         (WTR::AccessibilityUIElement::boolAttributeValue):
1539
1540 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
1541
1542         [iOS WK2] Eliminate a source of flakiness in layout tests by forcing WebPage into "responsive" mode for all tests, with an internals override
1543         https://bugs.webkit.org/show_bug.cgi?id=164980
1544
1545         Reviewed by Chris Dumez.
1546
1547         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1548         (WTR::InjectedBundlePage::prepare):
1549
1550 2016-11-18  Dean Jackson  <dino@apple.com>
1551
1552         AX: "(inverted-colors)" media query only matches on page reload; should match on change
1553         https://bugs.webkit.org/show_bug.cgi?id=163564
1554         <rdar://problem/28807350>
1555
1556         Reviewed by Simon Fraser.
1557
1558         Add a UIScriptController method that tricks WebKit into thinking
1559         it has received a notification that accessibility settings have
1560         changed. Combined with our forced overrides, this allows us to
1561         test if a page would react to the notifications.
1562
1563         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1564         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
1565         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1566         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
1567         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1568         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1569         (WTR::simulateAccessibilitySettingsChangeNotification):
1570         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1571         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1572         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
1573         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1574         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
1575
1576 2016-11-18  Alex Christensen  <achristensen@webkit.org>
1577
1578         Fix API test after r208902
1579         https://bugs.webkit.org/show_bug.cgi?id=144194
1580
1581         * TestWebKitAPI/Tests/Cocoa/URLExtras.mm:
1582         (TestWebKitAPI::TEST):
1583         The fullwidth solidus, U+FF0F, changed encoding from IDN2003 to IDN2008, probably to prevent domains from using it
1584         to spoof other domains.  https://webkit.org/blog/ and https://webkit.org\uFF0Fblog/ would otherwise look 
1585         too similar when rendered.
1586
1587 2016-11-17  Alex Christensen  <achristensen@webkit.org>
1588
1589         Support IDN2008 with UTS #46 instead of IDN2003
1590         https://bugs.webkit.org/show_bug.cgi?id=144194
1591
1592         Reviewed by Darin Adler.
1593
1594         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1595         (TestWebKitAPI::TEST_F):
1596         Add some tests from http://unicode.org/faq/idn.html verifying that we follow UTS46's deviations from IDN2008.
1597         Add some tests based on https://tools.ietf.org/html/rfc5893 verifying that we check for bidirectional text.
1598         Add a test based on https://tools.ietf.org/html/rfc5892 verifying that we do not do ContextO check.
1599         Add a test for U+321D and U+321E which have particularly interesting punycode encodings.  We match Firefox here now.
1600         Also add a test from http://www.unicode.org/reports/tr46/#IDNAComparison verifying we are not using IDN2003.
1601         We should consider importing all of http://www.unicode.org/Public/idna/9.0.0/IdnaTest.txt as URL domain tests.
1602
1603 2016-11-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1604
1605         Downloads started by context menu actions should also have a web view associated
1606         https://bugs.webkit.org/show_bug.cgi?id=164364
1607
1608         Reviewed by Michael Catanzaro.
1609
1610         Add a GTK+ unit tests to check that downloads started by the context menu have a web view associated.
1611
1612         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
1613         (downloadLocalFileSuccessfully):
1614         (testDownloadOverwriteDestinationDisallowed):
1615         (testDownloadLocalFileError):
1616         (testDownloadRemoteFile):
1617         (testDownloadRemoteFileError):
1618         (testDownloadMIMEType):
1619         (contextMenuCallback):
1620         (testContextMenuDownloadActions):
1621         (beforeAll):
1622
1623 2016-11-17  Ryosuke Niwa  <rniwa@webkit.org>
1624
1625         Add an experimental API to find elements across shadow boundaries
1626         https://bugs.webkit.org/show_bug.cgi?id=164851
1627         <rdar://problem/28220092>
1628
1629         Reviewed by Sam Weinig.
1630
1631         Added test cases for window.collectMatchingElementsInFlatTree to WebKit2.InjectedBundleMakeAllShadowRootOpen.
1632
1633         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1634         * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRoot*s*Open_Bundle.cpp: Renamed
1635         from InjectedBundleMakeAllShadowRootOpen_Bundle.cpp.
1636         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize): Added test cases for
1637         window.collectMatchingElementsInFlatTree by calling alert() many times.
1638         * TestWebKitAPI/Tests/WebKit2/InjectedBundleMakeAllShadowRootsOpen.cpp:
1639         (TestWebKitAPI::runJavaScriptAlert): Added expectations for multiple test cases. Each test case
1640         finishes with a call to alert, and moves testNumber forward.
1641         (TestWebKitAPI::TEST): Use the newly added closed-shadow-tree-test.html
1642         * TestWebKitAPI/Tests/WebKit2/closed-shadow-tree-test.html: Added. Creates a shadow tree with slots
1643         and tests that window.collectMatchingElementsInFlatTree is not present when
1644         an event named "testnormalworld" is dispatched by the injected bundle.
1645
1646 2016-11-17  Brady Eidson  <beidson@apple.com>
1647
1648         Add _WKIconLoadingDelegate SPI.
1649         https://bugs.webkit.org/show_bug.cgi?id=164894
1650
1651         Reviewed by Alex Christensen.
1652
1653         Add MiniBrowser support for this new SPI, configurable with a setting.
1654
1655         * MiniBrowser/mac/SettingsController.h:
1656         * MiniBrowser/mac/SettingsController.m:
1657         (-[SettingsController _populateMenu]):
1658         (-[SettingsController validateMenuItem:]):
1659         (-[SettingsController loadsAllSiteIcons]):
1660         (-[SettingsController toggleLoadsAllSiteIcons:]):
1661         * MiniBrowser/mac/WK2BrowserWindowController.m:
1662         (-[WK2BrowserWindowController awakeFromNib]):
1663         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]):
1664
1665 2016-11-17  Caitlin Potter  <caitp@igalia.com>
1666
1667         [JSC] remove leftover references to ES2017_ASYNCFUNCTION_SYNTAX flag
1668         https://bugs.webkit.org/show_bug.cgi?id=164879
1669
1670         Reviewed by Alex Christensen.
1671
1672         The flag was referenced in FeatureList.pm and in one of the
1673         FeatureDefines.xcconfig files, despite being removed.
1674
1675         * Scripts/webkitperl/FeatureList.pm:
1676         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1677
1678 2016-11-17  Per Arne Vollan  <pvollan@apple.com>
1679
1680         [Win] run-api-tests is failing.
1681         https://bugs.webkit.org/show_bug.cgi?id=164818
1682
1683         Reviewed by Alexey Proskuryakov.
1684
1685         Make sure Visual Studio interprets string literal as utf8.
1686  
1687         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1688         (TestWebKitAPI::TEST_F):
1689
1690 2016-11-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1691
1692         [JSC] WTF::TemporaryChange with WTF::SetForScope
1693         https://bugs.webkit.org/show_bug.cgi?id=164761
1694
1695         Reviewed by Saam Barati.
1696
1697         * TestWebKitAPI/CMakeLists.txt:
1698         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1699         * TestWebKitAPI/Tests/WTF/SetForScope.cpp: Renamed from Tools/TestWebKitAPI/Tests/WTF/TemporaryChange.cpp.
1700         (TestWebKitAPI::TEST):
1701         * WebKitTestRunner/TestController.cpp:
1702         (WTR::TestController::resetStateToConsistentValues):
1703
1704 2016-11-16  Alexey Proskuryakov  <ap@apple.com>
1705
1706         REGRESSION (r208455): LayoutTests swipe/pushState-cached-back-swipe.html and swipe/main-frame-pinning-requirement.html are failing
1707         https://bugs.webkit.org/show_bug.cgi?id=164572
1708
1709         Reviewed by Tim Horton.
1710
1711         * WebKitTestRunner/mac/TestControllerMac.mm: (WTR::TestController::platformResetStateToConsistentValues):
1712         Use the correct constant.
1713
1714 2016-11-16  Yusuke Suzuki  <utatane.tea@gmail.com>
1715
1716         [ES6][WebCore] Change ES6_MODULES compile time flag to runtime flag
1717         https://bugs.webkit.org/show_bug.cgi?id=164827
1718
1719         Reviewed by Ryosuke Niwa.
1720
1721         Enabled ES6 Modules in test runners.
1722
1723         * DumpRenderTree/mac/DumpRenderTree.mm:
1724         (resetWebPreferencesToConsistentValues):
1725         * DumpRenderTree/win/DumpRenderTree.cpp:
1726         (resetWebPreferencesToConsistentValues):
1727         * Scripts/webkitperl/FeatureList.pm:
1728         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1729         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1730         (WTR::InjectedBundle::beginTesting):
1731         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1732         (WTR::TestRunner::setES6ModulesEnabled):
1733         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1734
1735 2016-11-16  Simon Fraser  <simon.fraser@apple.com>
1736
1737         Hard to write reliable UIScriptController scrollingTreeAsText tests
1738         https://bugs.webkit.org/show_bug.cgi?id=164764
1739
1740         Reviewed by Wenson Hsieh.
1741
1742         Fix one cause of flakiness by resetting the WKWebView's UIScrollView scale
1743         and scroll position between tests.
1744
1745         * WebKitTestRunner/ios/TestControllerIOS.mm:
1746         (WTR::TestController::platformResetStateToConsistentValues):
1747
1748 2016-11-16  Simon Fraser  <simon.fraser@apple.com>
1749
1750         UIScriptController: script with no async tasks fails if an earlier script registered a callback
1751         https://bugs.webkit.org/show_bug.cgi?id=164762
1752
1753         Reviewed by Wenson Hsieh.
1754         
1755         Make TestRunner::callUIScriptCallback() async in DumpRenderTree to match WebKitTestRunner behavior.
1756         This fixes ui-side-script-with-callback.html in WK1, which failed because the second runUIScript()
1757         would occur inside the completion callback from the first. This no longer happens.
1758
1759         * DumpRenderTree/TestRunner.cpp:
1760         (TestRunner::callUIScriptCallback):
1761         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
1762         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
1763
1764 2016-11-16  Ryan Haddad  <ryanhaddad@apple.com>
1765
1766         Unreviewed, rolling out r208770.
1767
1768         The test added with this change is timing out on mac-wk1.
1769
1770         Reverted changeset:
1771
1772         "UIScriptController: script with no async tasks fails if an
1773         earlier script registered a callback"
1774         https://bugs.webkit.org/show_bug.cgi?id=164762
1775         http://trac.webkit.org/changeset/208770
1776
1777 2016-11-16  Per Arne Vollan  <pvollan@apple.com>
1778
1779         [Win] WebCore test is failing.
1780         https://bugs.webkit.org/show_bug.cgi?id=164772
1781
1782         Reviewed by Brent Fulgham.
1783
1784         The value of CGRectInfinite is not the same on Windows as on Mac.
1785
1786         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
1787         (TestWebKitAPI::TEST):
1788
1789 2016-11-15  Alexey Proskuryakov  <ap@apple.com>
1790
1791         Update Youenn's e-mail addresses.
1792
1793         * Scripts/webkitpy/common/config/contributors.json:
1794
1795 2016-11-15  Simon Fraser  <simon.fraser@apple.com>
1796
1797         UIScriptController: script with no async tasks fails if an earlier script registered a callback
1798         https://bugs.webkit.org/show_bug.cgi?id=164762
1799
1800         Reviewed by Wenson Hsieh.
1801         
1802         UIScriptContext::runUIScript() considers a script to be "immediate" if that script doesn't
1803         queue any async tasks. However, if an earlier UI script registered a callback, UIScriptContext::runUIScript()
1804         would consider that an outstanding task.
1805         
1806         Fix by unregistering any callbacks associated with the current UI script when uiScriptComplete() is called.
1807
1808         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
1809         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
1810
1811 2016-11-15  Simon Fraser  <simon.fraser@apple.com>
1812
1813         UIScriptController: setting a callback to undefined should unregister it
1814         https://bugs.webkit.org/show_bug.cgi?id=164796
1815
1816         Reviewed by Dean Jackson.
1817         
1818         "Immediate" UI scripts (those that don't schedule any async tasks) should return
1819         immediately, without the need to call uiScriptComplete(). However, this is broken if
1820         an earlier UI script registered a callback (since no-one clears that callback after the
1821         first script completes).
1822
1823         Make possible the workaround of setting the callback to undefined, which previously did
1824         not clear the callback registration.
1825
1826         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
1827         (UIScriptContext::registerCallback):
1828         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
1829         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1830         (WTR::UIScriptController::platformClearAllCallbacks):
1831
1832 2016-11-14  Mark Lam  <mark.lam@apple.com>
1833
1834         Enhance run-jsc-stress-test script to allow optional test specific options to be added for all test run configurations.
1835         https://bugs.webkit.org/show_bug.cgi?id=164695
1836
1837         Reviewed by Keith Miller.
1838
1839         This gives us more flexibility when specific tests needs to enable special JSC
1840         options in order to exercise specific code paths to be tested.  It also saves us
1841         from having to create duplicate test run configurations e.g. runMiscFTLNoCJITTest.
1842         We can now just use runFTLNoCJIT in its place.
1843
1844         Also replaced the ifJSCArgIsntProvidedAreWeReleaseBuild variable with $buildType
1845         so that we have the ability to skip certain tests for release or debug builds.
1846         This will be needed in the upcoming patch for https://webkit.org/b/155145.
1847
1848         * Scripts/run-jsc-stress-tests:
1849
1850 2016-11-14  Joanmarie Diggs  <jdiggs@igalia.com>
1851
1852         AX: [ATK] Expose STATE_SINGLE_LINE and STATE_MULTI_LINE for ARIA searchbox role
1853         https://bugs.webkit.org/show_bug.cgi?id=164712
1854
1855         Reviewed by Chris Fleizach.
1856
1857         Add AccessibilityUIElement::isSingleLine, AccessibilityUIElement::isMultiLine
1858         to DRT and WKTR. Implement it for ATK.
1859
1860         * DumpRenderTree/AccessibilityUIElement.h:
1861         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1862         (AccessibilityUIElement::isSingleLine):
1863         (AccessibilityUIElement::isMultiLine):
1864         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1865         (AccessibilityUIElement::isSingleLine):
1866         (AccessibilityUIElement::isMultiLine):
1867         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1868         (AccessibilityUIElement::isSingleLine):
1869         (AccessibilityUIElement::isMultiLine):
1870         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1871         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1872         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1873         (WTR::AccessibilityUIElement::isSingleLine):
1874         (WTR::AccessibilityUIElement::isMultiLine):
1875         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1876         (WTR::AccessibilityUIElement::isSingleLine):
1877         (WTR::AccessibilityUIElement::isMultiLine):
1878         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1879         (WTR::AccessibilityUIElement::isSingleLine):
1880         (WTR::AccessibilityUIElement::isMultiLine):
1881
1882 2016-11-14  Youenn Fablet  <youenn@apple.com>
1883
1884         Support WPT templated tests
1885         https://bugs.webkit.org/show_bug.cgi?id=164707
1886
1887         Reviewed by Sam Weinig.
1888
1889         * Scripts/webkitpy/w3c/test_importer.py:
1890         (TestImporter.write_html_files_for_templated_js_tests): Generating empty HTML files for templated JS tests.
1891         (TestImporter.import_tests):
1892
1893 2016-11-13  JF Bastien  <jfbastien@apple.com>
1894
1895         Implement WTF::Expected
1896         https://bugs.webkit.org/show_bug.cgi?id=164526
1897
1898         Reviewed by Yusuke Suzuki.
1899
1900         std::expected isn't in C++17, and may be in C++20. It's a nice
1901         complement to std::any / std::optional because it's a type-tagged
1902         union which has a single expected result but could also contain an
1903         error.
1904
1905         This would be useful in the WebAssembly parser, for example.
1906
1907         Using this implementation will allow us to provide feedback to the
1908         standards committee and guide std::expected's design before it
1909         gets standardized. I've already sent a bunch of feedback to the
1910         author based on my experience implementing this.
1911
1912         This could supplement WTF::Either and WTF::ExceptionOr.
1913
1914         * TestWebKitAPI/CMakeLists.txt:
1915         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1916         * TestWebKitAPI/Tests/WTF/Expected.cpp: Added.
1917         (WTF::operator<<):
1918         (TestWebKitAPI::TEST):
1919         (TestWebKitAPI::foo::foo):
1920         (TestWebKitAPI::foo::~foo):
1921         (TestWebKitAPI::foo::operator==):
1922         (TestWebKitAPI::operator<<):
1923
1924 2016-11-12  Simon Fraser  <simon.fraser@apple.com>
1925
1926         Add a way to get the UI-side scrolling tree as text via UIScriptController
1927         https://bugs.webkit.org/show_bug.cgi?id=164697
1928
1929         Reviewed by Zalan Bujtas.
1930
1931         Add UIScriptController::scrollingTreeAsText(), which gets the state of the scrolling
1932         tree in the UI process, including the current positions of CALayers. This will be used
1933         to test UI-side scrolling and visual viewports.
1934
1935         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1936         (WTR::UIScriptController::scrollingTreeAsText):
1937         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1938         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1939         (WTR::UIScriptController::scrollingTreeAsText):
1940         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1941         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1942         (WTR::UIScriptController::scrollingTreeAsText):
1943
1944 2016-11-12  Wenson Hsieh  <wenson_hsieh@apple.com>
1945
1946         The main content heuristic should be robust when handling large media elements
1947         https://bugs.webkit.org/show_bug.cgi?id=164676
1948         <rdar://problem/29211503>
1949
1950         Reviewed by Eric Carlson.
1951
1952         Added a new test verifying that enormous video elements are handled gracefully when put through the main
1953         content heuristic.
1954
1955         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1956         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
1957         (TestWebKitAPI::TEST):
1958         * TestWebKitAPI/Tests/WebKit2Cocoa/enormous-video-with-sound.html: Added.
1959
1960 2016-11-12  Dan Bernstein  <mitz@apple.com>
1961
1962         run-safari does not work for open source contributors
1963         https://bugs.webkit.org/show_bug.cgi?id=164667
1964         <rdar://problem/29229894>
1965
1966         Reviewed by Joseph Pecoraro.
1967
1968         * Scripts/run-api-tests:
1969         (archCommandLineArgumentsForRestrictedEnvironmentVariables): Moved from here…
1970         * Scripts/webkitdirs.pm:
1971         (archCommandLineArgumentsForRestrictedEnvironmentVariables): …to here
1972         (runMacWebKitApp): Have arch(1) carry the DYLD_* variables we set in our environmet over
1973           to the environment of the app being run.
1974
1975 2016-11-11  Joseph Pecoraro  <pecoraro@apple.com>
1976
1977         Removed unused INCLUDE_OPTIONS_FOR_DEBUGGING
1978         https://bugs.webkit.org/show_bug.cgi?id=164664
1979
1980         Reviewed by Dan Bernstein.
1981
1982         * Scripts/debug-minibrowser:
1983         * Scripts/debug-safari:
1984         * Scripts/debug-test-runner:
1985         * Scripts/webkitdirs.pm:
1986         (printHelpAndExitForRunAndDebugWebKitAppIfNeeded):
1987         There are no debug specific options anymore.
1988
1989 2016-11-11  Wenson Hsieh  <wenson_hsieh@apple.com>
1990
1991         [WK2] autocorrect and autocapitalize attributes do not work in contenteditable elements
1992         https://bugs.webkit.org/show_bug.cgi?id=164538
1993         <rdar://problem/8418711>
1994
1995         Reviewed by Ryosuke Niwa.
1996
1997         Adds support for being able to test autocorrect and autocapitalize attributes in contenteditable areas. To do
1998         this, we add removeAllDynamicDictionaries to UIScriptController in order to ensure that autocorrect suggestions
1999         are reset to their defaults prior to running contenteditable-autocorrect-off.html.
2000
2001         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2002         (WTR::UIScriptController::removeAllDynamicDictionaries):
2003         * Scripts/webkitpy/port/ios.py:
2004         (IOSSimulatorPort._createSimulatorApp):
2005         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2006         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2007         (WTR::UIScriptController::removeAllDynamicDictionaries):
2008         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2009         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2010         (-[TestRunnerWKWebView _keyboardDidShow:]):
2011         (-[TestRunnerWKWebView _keyboardDidHide:]):
2012
2013         Work around an issue where consecutive UIKeyboardDidShowNotification would cause keyboard appearance callbacks
2014         to be fired multiple times. This was causing a single key press to cause two characters to be typed. While this
2015         does not affect the correctness of existing tests, the new autocorrection test requires this workaround.
2016
2017         * WebKitTestRunner/ios/UIKitSPI.h:
2018         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2019         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
2020         (WTR::UIScriptController::removeAllDynamicDictionaries):
2021
2022 2016-11-11  Alex Christensen  <achristensen@webkit.org>
2023
2024         Build all Mac API tests
2025         https://bugs.webkit.org/show_bug.cgi?id=164633
2026
2027         Reviewed by Gyuyoung Kim.
2028
2029         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2030         * TestWebKitAPI/Tests/mac/NavigatorLanguage.mm:
2031
2032 2016-11-11  Alex Christensen  <achristensen@webkit.org>
2033
2034         Allow mutable lambdas in HashMap::ensure
2035         https://bugs.webkit.org/show_bug.cgi?id=164642
2036
2037         Reviewed by Sam Weinig.
2038
2039         * TestWebKitAPI/Tests/WTF/HashMap.cpp:
2040         (TestWebKitAPI::TEST):
2041
2042 2016-11-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2043
2044         Composition state should be cleared when changing focus to a non-editable element
2045         https://bugs.webkit.org/show_bug.cgi?id=164595
2046         <rdar://problem/26412551>
2047
2048         Reviewed by Enrica Casucci.
2049
2050         Adds support for window.textInputController in DumpRenderTree on iOS. So far, only the methods needed for the
2051         new layout test (editing/focus-change-with-marked-text.html) are supported. These are insertText, setMarkedText,
2052         and markedRange.
2053
2054         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2055         * DumpRenderTree/TextInputController.h: Renamed from Tools/DumpRenderTree/mac/TextInputController.h.
2056
2057         Remove the PLATFORM(MAC) guard for defining the TextInputController. Also, move the TextInputController header
2058         out of the /mac platform directory.
2059
2060         * DumpRenderTree/ios/TextInputControllerIOS.m: Added.
2061         (+[TextInputController isSelectorExcludedFromWebScript:]):
2062         (+[TextInputController webScriptNameForSelector:]):
2063         (-[TextInputController initWithWebView:]):
2064         (-[TextInputController markedRange]):
2065         (-[TextInputController insertText:]):
2066         (-[TextInputController setMarkedText:selectedFrom:length:]):
2067
2068         Introduces TextInputControllerIOS.m, which contains an iOS implementation of TextInputController. Only a subset
2069         of the methods available on the Mac version will be available on iOS for now (see above).
2070
2071         * DumpRenderTree/mac/FrameLoadDelegate.mm:
2072
2073         Remove the PLATFORM(MAC) guard for initializing the TextInputController and binding it to the window object.
2074
2075         (-[FrameLoadDelegate didClearWindowObjectInStandardWorldForFrame:]):
2076         * DumpRenderTree/mac/TextInputControllerMac.m: Renamed from Tools/DumpRenderTree/mac/TextInputController.m.
2077         (-[WebHTMLView interpretKeyEvents:]):
2078         (-[WebNSRange initWithNSRange:]):
2079         (-[WebNSRange location]):
2080         (-[WebNSRange length]):
2081         (+[WebNSRange isSelectorExcludedFromWebScript:]):
2082         (+[NSMutableAttributedString isSelectorExcludedFromWebScript:]):
2083         (+[NSMutableAttributedString webScriptNameForSelector:]):
2084         (-[NSMutableAttributedString getLength]):
2085         (-[NSMutableAttributedString ranges]):
2086         (-[NSMutableAttributedString attributeNamesAtIndex:]):
2087         (-[NSMutableAttributedString valueOfAttribute:atIndex:]):
2088         (-[NSMutableAttributedString addAttribute:value:]):
2089         (-[NSMutableAttributedString addAttribute:value:from:length:]):
2090         (-[NSMutableAttributedString addColorAttribute:red:green:blue:alpha:]):
2091         (-[NSMutableAttributedString addColorAttribute:red:green:blue:alpha:from:length:]):
2092         (-[NSMutableAttributedString addFontAttribute:fontName:size:]):
2093         (-[NSMutableAttributedString addFontAttribute:fontName:size:from:length:]):
2094         (+[TextInputController isSelectorExcludedFromWebScript:]):
2095         (+[TextInputController webScriptNameForSelector:]):
2096         (-[TextInputController initWithWebView:]):
2097         (-[TextInputController dealloc]):
2098         (-[TextInputController textInput]):
2099         (-[TextInputController insertText:]):
2100         (-[TextInputController doCommand:]):
2101         (-[TextInputController setMarkedText:selectedFrom:length:]):
2102         (-[TextInputController unmarkText]):
2103         (-[TextInputController hasMarkedText]):
2104         (-[TextInputController conversationIdentifier]):
2105         (-[TextInputController substringFrom:length:]):
2106         (-[TextInputController attributedSubstringFrom:length:]):
2107         (-[TextInputController legacyAttributedString:]):
2108         (-[TextInputController markedRange]):
2109         (-[TextInputController selectedRange]):
2110         (-[TextInputController firstRectForCharactersFrom:length:]):
2111         (-[TextInputController characterIndexForPointX:Y:]):
2112         (-[TextInputController validAttributesForMarkedText]):
2113         (-[TextInputController attributedStringWithString:]):
2114         (-[TextInputController stringWithUndoGroupingInsertion:]):
2115         (-[TextInputController dictatedStringWithPrimaryString:alternative:alternativeOffset:alternativeLength:]):
2116         (-[TextInputController setInputMethodHandler:]):
2117         (-[TextInputController interpretKeyEvents:withSender:]):
2118
2119         Fixes miscellaneous style issues.
2120
2121 2016-11-11  Philippe Normand  <pnormand@igalia.com>
2122
2123         [GTK][JHbuild] bump libnice version in openwebrtc.modules
2124         https://bugs.webkit.org/show_bug.cgi?id=164586
2125
2126         Reviewed by Michael Catanzaro.
2127
2128         Update to a recent libnice git snapshot and remove patches already
2129         upstream or not applying anymore. The patches not upstream yet
2130         will be reported in Phabricator.
2131
2132         * gtk/openwebrtc.modules:
2133         * gtk/patches/libnice-0001-agent-Remove-unnecessary-NULL-check.patch: Removed.
2134         * gtk/patches/libnice-0002-Do-not-update-a-remote-candidate-s-type.patch: Removed.
2135         * gtk/patches/libnice-0002-TURN-handle-437-Allocation-Mismatch-responses.patch: Removed.
2136         * gtk/patches/libnice-0003-Do-not-compare-scope-for-IPv6-address-when-scope-is-.patch: Removed.
2137         * gtk/patches/libnice-0004-Removing-no-op-assignment.patch: Removed.
2138
2139 2016-11-10  Alex Christensen  <achristensen@webkit.org>
2140
2141         Fix assertion after r208534.
2142         https://bugs.webkit.org/show_bug.cgi?id=160497
2143
2144         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2145         * TestWebKitAPI/Tests/mac/MemoryPressureHandler.mm: Added.
2146         (TestWebKitAPI::TEST):
2147         Add a regression test.
2148
2149 2016-11-10  Chris Dumez  <cdumez@apple.com>
2150
2151         REGRESSION (r208522): LayoutTest fast/loader/reload-zero-byte-plugin.html is a flaky failure
2152         https://bugs.webkit.org/show_bug.cgi?id=164570
2153
2154         Reviewed by Simon Fraser.
2155
2156         Properly reset TestController::m_shouldDownloadUndisplayableMIMETypes between tests to
2157         avoid flakiness.
2158
2159         * WebKitTestRunner/TestController.cpp:
2160         (WTR::TestController::resetStateToConsistentValues):
2161
2162 2016-11-10  Miguel Gomez  <magomez@igalia.com>
2163
2164         Unreviewed. Added myself to the list of committers.
2165
2166         * Scripts/webkitpy/common/config/contributors.json:
2167
2168 2016-10-27  Sergio Villar Senin  <svillar@igalia.com>
2169
2170         [GTK] New API to notify about dynamically added forms
2171         https://bugs.webkit.org/show_bug.cgi?id=164050
2172
2173         Reviewed by Carlos Garcia Campos.
2174
2175         Added a new test case to verify that dinamically added forms correctly trigger the
2176         "form-controls-associated" signal from WebPage.
2177
2178         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:
2179         (didAssociateFormControlsCallback):
2180         (testWebExtensionFormControlsAssociated):
2181         (beforeAll):
2182         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
2183         (DelayedSignal::DelayedSignal):
2184         (emitFormControlsAssociated):
2185         (formControlsAssociatedCallback):
2186         (pageCreatedCallback):
2187
2188 2016-11-09  Ryosuke Niwa  <rniwa@webkit.org>
2189
2190         WebHTMLView's _attributeStringFromDOMRange should use HTMLConverter instead of NSAttributedString's _initWithDOMRange
2191         https://bugs.webkit.org/show_bug.cgi?id=164501
2192         <rdar://problem/29152282>
2193
2194         Reviewed by Sam Weinig.
2195
2196         * DumpRenderTree/mac/TextInputController.m:
2197         (-[TextInputController legacyAttributedString:]):
2198
2199 2016-11-09  Chris Dumez  <cdumez@apple.com>
2200
2201         [WK2][NETWORK_SESSION] Add support for downloading file backed blobs
2202         https://bugs.webkit.org/show_bug.cgi?id=164458
2203         <rdar://problem/28905514>
2204
2205         Reviewed by Darin Adler.
2206
2207         Add testRunner.setShouldDownloadUndisplayableMIMETypes(bool) API so that layout
2208         tests can request that such resources are downloaded instead of being ignored.
2209
2210         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2211         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2212         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
2213         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2214         * WebKitTestRunner/TestController.cpp:
2215         (WTR::TestController::decidePolicyForNavigationResponse):
2216         * WebKitTestRunner/TestController.h:
2217         (WTR::TestController::setShouldDownloadUndisplayableMIMETypes):
2218         * WebKitTestRunner/TestInvocation.cpp:
2219         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2220
2221 2016-11-09  Carlos Garcia Campos  <cgarcia@igalia.com>
2222
2223         NetworkSession: Network process crash when converting main resource to download
2224         https://bugs.webkit.org/show_bug.cgi?id=164220
2225
2226         Reviewed by Alex Christensen.
2227
2228         Split /webkit2/Downloads/policy-decision-download in two, one to test the full load when main resource is
2229         converted to a download and another one to test the cancellation as the test was doing before. When doing the
2230         full load, delay a bit the decide destination to ensure the load is aborted before the data task has became a
2231         download.
2232
2233         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
2234         (testPolicyResponseDownload):
2235         (testPolicyResponseDownloadCancel):
2236         (beforeAll):
2237
2238 2016-11-09  KwangHyuk Kim  <hyuki.kim@samsung.com>
2239
2240         [EFL] fix error message caused by eina log
2241         https://bugs.webkit.org/show_bug.cgi?id=164546
2242
2243         Reviewed by Gyuyoung Kim.
2244
2245         Fix error message caused by eina log when MiniBrowser is working with help option.
2246
2247         * MiniBrowser/efl/main.c:
2248         (quit):
2249
2250 2016-11-09  Brent Fulgham  <bfulgham@apple.com>
2251
2252         Unreviewed build fix after r208509.
2253
2254         * DumpRenderTree/win/TestRunnerWin.cpp:
2255         (TestRunner::setNeedsStorageAccessFromFileURLsQuirk): Add missing TestRunner implementation."
2256
2257 2016-11-09  Alex Christensen  <achristensen@webkit.org>
2258
2259         Unreviewed, rolling out r208438.
2260
2261         crashes
2262
2263         Reverted changeset:
2264
2265         "[WK2][NETWORK_SESSION] Add support for downloading file
2266         backed blobs"
2267         https://bugs.webkit.org/show_bug.cgi?id=164458
2268         http://trac.webkit.org/changeset/208438
2269
2270 2016-11-04  Brent Fulgham  <bfulgham@apple.com>
2271
2272         Local HTML should be blocked from localStorage access unless "Disable Local File Restrictions" is checked
2273         https://bugs.webkit.org/show_bug.cgi?id=155185
2274         <rdar://problem/11101440>
2275
2276         Reviewed by Brady Eidson.
2277
2278         * DumpRenderTree/TestRunner.cpp:
2279         (setNeedsLocalStorageQuirkCallback): Added.
2280         (TestRunner::staticFunctions):
2281         * DumpRenderTree/TestRunner.h:
2282         * DumpRenderTree/mac/DumpRenderTree.mm:
2283         (resetWebPreferencesToConsistentValues): Update for new quirk setting.
2284         * DumpRenderTree/mac/TestRunnerMac.mm:
2285         (TestRunner::setNeedsLocalStorageQuirk):
2286         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2287         * TestWebKitAPI/Tests/WebKit2/CloseFromWithinCreatePage.cpp:
2288         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2289         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageNullEntries.mm:
2290         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageQuirkEnabled.html: Added.
2291         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageQuirkTest.mm: Added.
2292         (-[LocalStorageQuirkMessageHandler userContentController:didReceiveScriptMessage:]):
2293         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2294         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2295         (WTR::InjectedBundle::beginTesting): Update for new quirk setting.
2296         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2297         (WTR::TestRunner::setNeedsLocalStorageQuirk): Added.
2298         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2299
2300 2016-11-09  Alex Christensen  <achristensen@webkit.org>
2301
2302         URLParser should not consider path of URLs with no host to start at the first slash after the colon
2303         https://bugs.webkit.org/show_bug.cgi?id=164555
2304
2305         Reviewed by Tim Horton.
2306
2307         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2308         (TestWebKitAPI::TEST_F):
2309
2310 2016-11-09  Jonathan Bedard  <jbedard@apple.com>
2311
2312         test-webkitpy failing test_create_patch_is_full_patch unit test
2313         https://bugs.webkit.org/show_bug.cgi?id=164385
2314
2315         Reviewed by Darin Adler.
2316
2317         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Fixed expected output to match output.
2318
2319 2016-11-09  Chris Dumez  <cdumez@apple.com>
2320
2321         [Mac] Stop using deprecated AppKit enumeration values
2322         https://bugs.webkit.org/show_bug.cgi?id=164494
2323
2324         Reviewed by Darin Adler.
2325
2326         Stop using deprecated AppKit enumeration values.
2327
2328         * DumpRenderTree/mac/EventSendingController.mm:
2329         (eventTypeForMouseButtonAndAction):
2330         (modifierFlags):
2331         (-[EventSendingController mouseMoveToX:Y:]):
2332         (-[EventSendingController contextClick]):
2333         (-[EventSendingController keyDown:withModifiers:withLocation:]):
2334         * DumpRenderTree/mac/TextInputController.m:
2335         (-[TextInputController interpretKeyEvents:withSender:]):
2336         * TestWebKitAPI/Tests/WebKit2Cocoa/CommandBackForward.mm:
2337         (simulateCommandArrow):
2338         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenDelegate.mm:
2339         (TestWebKitAPI::TEST):
2340         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenLayoutConstraints.mm:
2341         (TestWebKitAPI::TEST):
2342         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.mm:
2343         (TestWebKitAPI::TEST):
2344         * TestWebKitAPI/Tests/WebKit2Cocoa/ShouldOpenExternalURLsInNewWindowActions.mm:
2345         (TEST):
2346         * TestWebKitAPI/Tests/WebKit2Cocoa/UserInitiatedActionInNavigationAction.mm:
2347         (UserInitiatedActionTest::SetUp):
2348         (UserInitiatedActionTest::click):
2349         * TestWebKitAPI/Tests/mac/AcceptsFirstMouse.mm:
2350         (TestWebKitAPI::AcceptsFirstMouse::runTest):
2351         * TestWebKitAPI/Tests/mac/ContextMenuCanCopyURL.mm:
2352         (TestWebKitAPI::contextMenuCopyLink):
2353         (TestWebKitAPI::TEST):
2354         * TestWebKitAPI/Tests/mac/ContextMenuDefaultItemsHaveTags.mm:
2355         (TestWebKitAPI::TEST):
2356         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
2357         (TestWebKitAPI::FullscreenZoomInitialFrame::runTest):
2358         * TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:
2359         (TestWebKitAPI::TEST):
2360         * TestWebKitAPI/mac/PlatformUtilitiesMac.mm:
2361         (TestWebKitAPI::Util::isKeyDown):
2362         * TestWebKitAPI/mac/PlatformWebViewMac.mm:
2363         (TestWebKitAPI::PlatformWebView::initialize):
2364         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
2365         (TestWebKitAPI::PlatformWebView::simulateRightClick):
2366         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
2367         (TestWebKitAPI::eventTypeForButton):
2368         (TestWebKitAPI::modifierFlagsForWKModifiers):
2369         * TestWebKitAPI/mac/TestWKWebViewMac.mm:
2370         (__simulated_forceClickAssociatedEventsMask):
2371         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:]):
2372         (-[TestWKWebView _setUpTestWindow:]):
2373         (-[TestWKWebView typeCharacter:]):
2374         * WebKitTestRunner/mac/EventSenderProxy.mm:
2375         (WTR::eventTypeForMouseButtonAndAction):
2376         (WTR::buildModifierFlags):
2377         (WTR::EventSenderProxy::sendMouseDownToStartPressureEvents):
2378         (WTR::EventSenderProxy::mouseForceClick):
2379         (WTR::EventSenderProxy::startAndCancelMouseForceClick):
2380         (WTR::EventSenderProxy::mouseMoveTo):
2381         (WTR::EventSenderProxy::keyDown):
2382         (WTR::EventSenderProxy::swipeGestureWithWheelAndMomentumPhases):
2383         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2384         (WTR::PlatformWebView::PlatformWebView):
2385         * WebKitTestRunner/mac/TestControllerMac.mm:
2386         (WTR::TestController::platformResetStateToConsistentValues):
2387
2388 2016-11-09  Beth Dakin  <bdakin@apple.com>
2389
2390         Support TouchBar in WebKit
2391         https://bugs.webkit.org/show_bug.cgi?id=164437
2392         -and corresponding-
2393         rdar://problem/28876524
2394
2395         Reviewed by Darin Adler.
2396
2397         This makes MiniBrowser support TouchBar customization. 
2398
2399         * MiniBrowser/mac/AppDelegate.m:
2400         (-[BrowserAppDelegate awakeFromNib]):
2401
2402 2016-11-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2403
2404         [EFL] Use libgcrypt instead of GnuTLS for CryptoDigest
2405         https://bugs.webkit.org/show_bug.cgi?id=164461
2406
2407         Reviewed by Michael Catanzaro.
2408
2409         As GTK port in r208297, EFL port starts to use libgcrypt instead of GnuTLS as well.
2410
2411         * efl/install-dependencies: Add libgcript package dependecy.
2412
2413 2016-11-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2414
2415         [EFL] Remove unused function in MiniBrowser
2416         https://bugs.webkit.org/show_bug.cgi?id=164398
2417
2418         Reviewed by Darin Adler.
2419
2420         * MiniBrowser/efl/main.c:
2421         (window_find_with_elm_window): Deleted because it is not used anywhere.
2422
2423 2016-11-09  Chris Dumez  <cdumez@apple.com>
2424
2425         [WK2][NETWORK_SESSION] Add support for downloading file backed blobs
2426         https://bugs.webkit.org/show_bug.cgi?id=164458
2427         <rdar://problem/28905514>
2428
2429         Reviewed by Darin Adler.
2430
2431         Add testRunner.setShouldDownloadUndisplayableMIMETypes(bool) API so that layout
2432         tests can request that such resources are downloaded instead of being ignored.
2433
2434         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2435         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2436         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
2437         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2438         * WebKitTestRunner/TestController.cpp:
2439         (WTR::TestController::decidePolicyForNavigationResponse):
2440         * WebKitTestRunner/TestController.h:
2441         (WTR::TestController::setShouldDownloadUndisplayableMIMETypes):
2442         * WebKitTestRunner/TestInvocation.cpp:
2443         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2444
2445 2016-11-09  Jonathan Bedard  <jbedard@apple.com>
2446
2447         Make rpaths more robust for iOS Simulators
2448         https://bugs.webkit.org/show_bug.cgi?id=164521
2449
2450         Reviewed by Simon Fraser.
2451
2452         * Scripts/webkitpy/port/ios.py:
2453         (IOSSimulatorPort._createSimulatorApp): Added more robust path.
2454
2455 2016-11-09  Csaba Osztrogonác  <ossy@webkit.org>
2456
2457         Fix Tools build on case sensitive file systems
2458         https://bugs.webkit.org/show_bug.cgi?id=164474
2459
2460         Unreviewed buildfix.
2461
2462         * DumpRenderTree/CMakeLists.txt:
2463         * DumpRenderTree/PlatformMac.cmake:
2464         * DumpRenderTree/PlatformWin.cmake:
2465         * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
2466         * MiniBrowser/mac/CMakeLists.txt:
2467
2468 2016-11-04  Filip Pizlo  <fpizlo@apple.com>
2469
2470         WTF::ParkingLot should stop using std::chrono because std::chrono::duration casts are prone to overflows
2471         https://bugs.webkit.org/show_bug.cgi?id=152045
2472
2473         Reviewed by Andy Estes.
2474
2475         * TestWebKitAPI/CMakeLists.txt:
2476         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2477         * TestWebKitAPI/Tests/WTF/Condition.cpp:
2478         (TestWebKitAPI::TEST):
2479         * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
2480         (TestWebKitAPI::ToUpperConverter::stopProducing):
2481         (TestWebKitAPI::ToUpperConverter::stopConsuming):
2482         * TestWebKitAPI/Tests/WTF/Time.cpp: Added.
2483         (WTF::operator<<):
2484         (TestWebKitAPI::TEST):
2485
2486 2016-11-04  Alex Christensen  <achristensen@webkit.org>
2487
2488         Unreviewed, rolling out r208293.
2489
2490         asserts in API tests.
2491
2492         Reverted changeset:
2493
2494         "NetworkSession: Network process crash when converting main
2495         resource to download"
2496         https://bugs.webkit.org/show_bug.cgi?id=164220
2497         http://trac.webkit.org/changeset/208293
2498
2499 2016-11-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
2500
2501         Add a setting and preferences to enable/disable async image decoding
2502         https://bugs.webkit.org/show_bug.cgi?id=164417
2503
2504         Reviewed by Simon Fraser.
2505
2506         Pref and a menu item to toggle asyncImageDecodingEnabled for WebKits 1 and 2.
2507
2508         * MiniBrowser/mac/SettingsController.h:
2509         * MiniBrowser/mac/SettingsController.m:
2510         (-[SettingsController _populateMenu]):
2511         (-[SettingsController validateMenuItem:]):
2512         (-[SettingsController toggleAsyncImageDecodingEnabled:]):
2513         (-[SettingsController asyncImageDecodingEnabled]):
2514         * MiniBrowser/mac/WK1BrowserWindowController.m:
2515         (-[WK1BrowserWindowController didChangeSettings]):
2516         * MiniBrowser/mac/WK2BrowserWindowController.m:
2517         (-[WK2BrowserWindowController didChangeSettings]):
2518
2519 2016-11-04  Brady Eidson  <beidson@apple.com>
2520
2521         REGRESSION (r208349) StringHasher::hashMemory behavior changed, causing API tests to fail
2522         https://bugs.webkit.org/show_bug.cgi?id=164390
2523
2524         Reviewed by Geoffrey Garen.
2525
2526         Operating under the assumption that the behavior change is okay/desirable, this updates the test.
2527
2528         * TestWebKitAPI/Tests/WTF/StringHasher.cpp:
2529         (TestWebKitAPI::TEST):
2530
2531 2016-11-04  Joanmarie Diggs  <jdiggs@igalia.com>
2532
2533         AX: [ATK] Attempting to clear selection on ARIA listboxes results in crash
2534         https://bugs.webkit.org/show_bug.cgi?id=164331
2535
2536         Reviewed by Chris Fleizach.
2537
2538         Add AccessibilityUIElement::clearSelectedChildren() to DRT and WKTR.
2539         Implement it for ATK.
2540
2541         * DumpRenderTree/AccessibilityUIElement.h:
2542         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2543         (AccessibilityUIElement::clearSelectedChildren):
2544         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2545         (AccessibilityUIElement::clearSelectedChildren):
2546         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
2547         (AccessibilityUIElement::clearSelectedChildren):
2548         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2549         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
2550         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2551         (WTR::AccessibilityUIElement::clearSelectedChildren):
2552         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2553         (WTR::AccessibilityUIElement::clearSelectedChildren):
2554         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2555         (WTR::AccessibilityUIElement::clearSelectedChildren):
2556
2557 2016-11-04  Per Arne Vollan  <pvollan@apple.com>
2558
2559         [Win] Page visibility tests are timing out.
2560         https://bugs.webkit.org/show_bug.cgi?id=164363
2561
2562         Reviewed by Brent Fulgham.
2563
2564         Implement methods to set page visibility.
2565
2566         * DumpRenderTree/win/TestRunnerWin.cpp:
2567         (TestRunner::resetPageVisibility):
2568         (TestRunner::setPageVisibility):
2569
2570 2016-11-03  Simon Fraser  <simon.fraser@apple.com>
2571
2572         Give all the geometry classes a single-argument scale() function for consistency
2573         https://bugs.webkit.org/show_bug.cgi?id=164400
2574
2575         Reviewed by Zalan Bujtas.
2576         
2577         Test single-argument scale().
2578
2579         * TestWebKitAPI/Tests/WebCore/FloatPoint.cpp:
2580         (TestWebKitAPI::TEST):
2581
2582 2016-11-03  Chris Dumez  <cdumez@apple.com>
2583
2584         [WK2][Cocoa] Implement user interface for HTML form validation
2585         https://bugs.webkit.org/show_bug.cgi?id=164143
2586         <rdar://problem/28944652>
2587
2588         Reviewed by Simon Fraser.
2589
2590         Add support for UIScriptController::contentsOfUserInterfaceItem("validationBubble")
2591         on both Mac and iOS to retrieve the currently displayed validation message.
2592
2593         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2594         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2595         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2596         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2597         (WTR::UIScriptController::selectFormAccessoryPickerRow):
2598         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2599         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2600
2601 2016-11-03  Konstantin Tokarev  <annulen@yandex.ru>
2602
2603         Fixes to build JSCOnly on macOS
2604         https://bugs.webkit.org/show_bug.cgi?id=164379
2605
2606         Reviewed by Michael Catanzaro.
2607
2608         * TestWebKitAPI/PlatformJSCOnly.cmake: Moved BUILDING_JSCONLY__
2609         definition to OptionsJSCOnly.cmake
2610
2611 2016-11-03  Dan Bernstein  <mitz@apple.com>
2612
2613         WKWebView’s _observedRenderingProgressEvents not restored after web process crash
2614         https://bugs.webkit.org/show_bug.cgi?id=164368
2615         <rdar://problem/29091954>
2616
2617         Reviewed by Anders Carlsson.
2618
2619         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2620         * TestWebKitAPI/Tests/WebKit2Cocoa/ObservedRenderingProgressEventsAfterCrash.mm: Added.
2621         (TEST):
2622
2623 2016-11-03  Alex Christensen  <achristensen@webkit.org>
2624
2625         Purge PassRefPtr from Tools
2626         https://bugs.webkit.org/show_bug.cgi?id=164358
2627
2628         Reviewed by Michael Catanzaro.
2629
2630         * ImageDiff/efl/ImageDiff.cpp:
2631         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitAccessibility.cpp:
2632         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2633         (WTR::AccessibilityController::create):
2634         (WTR::AccessibilityController::rootElement):
2635         (WTR::AccessibilityController::focusedElement):
2636         (WTR::AccessibilityController::elementAtPoint):
2637         (WTR::AccessibilityController::addNotificationListener): Deleted.
2638         (WTR::AccessibilityController::removeNotificationListener): Deleted.
2639         (WTR::AccessibilityController::accessibleElementById): Deleted.
2640         (WTR::AccessibilityController::logAccessibilityEvents): Deleted.
2641         (WTR::AccessibilityController::resetToConsistentState): Deleted.
2642         (WTR::AccessibilityController::platformName): Deleted.
2643         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
2644         (WTR::AccessibilityController::logAccessibilityEvents):
2645         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp:
2646         (WTR::AccessibilityTextMarker::create):
2647         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.h:
2648         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp:
2649         (WTR::AccessibilityTextMarkerRange::create):
2650         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.h:
2651         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
2652         (WTR::AccessibilityUIElement::create):
2653         (WTR::AccessibilityUIElement::linkedElement):
2654         (WTR::AccessibilityUIElement::headerElementAtIndex):
2655         (WTR::AccessibilityUIElement::fieldsetAncestorElement):
2656         (WTR::AccessibilityUIElement::characterAtOffset):
2657         (WTR::AccessibilityUIElement::wordAtOffset):
2658         (WTR::AccessibilityUIElement::lineAtOffset):
2659         (WTR::AccessibilityUIElement::sentenceAtOffset):
2660         (WTR::AccessibilityUIElement::selectedTextMarkerRange):
2661         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker):
2662         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker):
2663         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker):
2664         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker):
2665         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker):
2666         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker):
2667         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker):
2668         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker):
2669         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker):
2670         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker):
2671         (WTR::AccessibilityUIElement::AccessibilityUIElement): Deleted.
2672         (WTR::AccessibilityUIElement::~AccessibilityUIElement): Deleted.
2673         (WTR::AccessibilityUIElement::isEqual): Deleted.
2674         (WTR::AccessibilityUIElement::elementAtPoint): Deleted.
2675         (WTR::AccessibilityUIElement::childAtIndex): Deleted.
2676         (WTR::AccessibilityUIElement::indexOfChild): Deleted.
2677         (WTR::AccessibilityUIElement::childrenCount): Deleted.
2678         (WTR::AccessibilityUIElement::titleUIElement): Deleted.
2679         (WTR::AccessibilityUIElement::parentElement): Deleted.
2680         (WTR::AccessibilityUIElement::takeFocus): Deleted.
2681         (WTR::AccessibilityUIElement::takeSelection): Deleted.
2682         (WTR::AccessibilityUIElement::addSelection): Deleted.
2683         (WTR::AccessibilityUIElement::removeSelection): Deleted.
2684         (WTR::AccessibilityUIElement::allAttributes): Deleted.
2685         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements): Deleted.
2686         (WTR::AccessibilityUIElement::linkedUIElementAtIndex): Deleted.
2687         (WTR::AccessibilityUIElement::attributesOfDocumentLinks): Deleted.
2688         (WTR::AccessibilityUIElement::attributesOfChildren): Deleted.
2689         (WTR::AccessibilityUIElement::parameterizedAttributeNames): Deleted.
2690         (WTR::AccessibilityUIElement::increment): Deleted.
2691         (WTR::AccessibilityUIElement::decrement): Deleted.
2692         (WTR::AccessibilityUIElement::showMenu): Deleted.
2693         (WTR::AccessibilityUIElement::press): Deleted.
2694         (WTR::AccessibilityUIElement::stringAttributeValue): Deleted.
2695         (WTR::AccessibilityUIElement::uiElementArrayAttributeValue): Deleted.
2696         (WTR::AccessibilityUIElement::uiElementAttributeValue): Deleted.
2697         (WTR::AccessibilityUIElement::numberAttributeValue): Deleted.
2698         (WTR::AccessibilityUIElement::boolAttributeValue): Deleted.
2699         (WTR::AccessibilityUIElement::isAttributeSupported): Deleted.
2700         (WTR::AccessibilityUIElement::isAttributeSettable): Deleted.
2701         (WTR::AccessibilityUIElement::isPressActionSupported): Deleted.
2702         (WTR::AccessibilityUIElement::isIncrementActionSupported): Deleted.
2703         (WTR::AccessibilityUIElement::isDecrementActionSupported): Deleted.
2704         (WTR::AccessibilityUIElement::role): Deleted.
2705         (WTR::AccessibilityUIElement::subrole): Deleted.
2706         (WTR::AccessibilityUIElement::roleDescription): Deleted.
2707         (WTR::AccessibilityUIElement::computedRoleString): Deleted.
2708         (WTR::AccessibilityUIElement::title): Deleted.
2709         (WTR::AccessibilityUIElement::description): Deleted.
2710         (WTR::AccessibilityUIElement::language): Deleted.
2711         (WTR::AccessibilityUIElement::stringValue): Deleted.
2712         (WTR::AccessibilityUIElement::accessibilityValue): Deleted.
2713         (WTR::AccessibilityUIElement::helpText): Deleted.
2714         (WTR::AccessibilityUIElement::orientation): Deleted.
2715         (WTR::AccessibilityUIElement::x): Deleted.
2716         (WTR::AccessibilityUIElement::y): Deleted.
2717         (WTR::AccessibilityUIElement::width): Deleted.
2718         (WTR::AccessibilityUIElement::height): Deleted.
2719         (WTR::AccessibilityUIElement::intValue): Deleted.
2720         (WTR::AccessibilityUIElement::minValue): Deleted.
2721         (WTR::AccessibilityUIElement::maxValue): Deleted.
2722         (WTR::AccessibilityUIElement::valueDescription): Deleted.
2723         (WTR::AccessibilityUIElement::insertionPointLineNumber): Deleted.
2724         (WTR::AccessibilityUIElement::selectedTextRange): Deleted.
2725         (WTR::AccessibilityUIElement::isEnabled): Deleted.
2726         (WTR::AccessibilityUIElement::isRequired): Deleted.
2727         (WTR::AccessibilityUIElement::isFocused): Deleted.
2728         (WTR::AccessibilityUIElement::isFocusable): Deleted.
2729         (WTR::AccessibilityUIElement::isSelected): Deleted.
2730         (WTR::AccessibilityUIElement::isSelectedOptionActive): Deleted.
2731         (WTR::AccessibilityUIElement::isSelectable): Deleted.
2732         (WTR::AccessibilityUIElement::isMultiSelectable): Deleted.
2733         (WTR::AccessibilityUIElement::setSelectedChild): Deleted.
2734         (WTR::AccessibilityUIElement::setSelectedChildAtIndex): Deleted.
2735         (WTR::AccessibilityUIElement::removeSelectionAtIndex): Deleted.
2736         (WTR::AccessibilityUIElement::selectedChildrenCount): Deleted.
2737         (WTR::AccessibilityUIElement::selectedChildAtIndex): Deleted.
2738         (WTR::AccessibilityUIElement::isExpanded): Deleted.
2739         (WTR::AccessibilityUIElement::isChecked): Deleted.
2740         (WTR::AccessibilityUIElement::isIndeterminate): Deleted.
2741         (WTR::AccessibilityUIElement::isVisible): Deleted.
2742         (WTR::AccessibilityUIElement::isOffScreen): Deleted.
2743         (WTR::AccessibilityUIElement::isCollapsed): Deleted.
2744         (WTR::AccessibilityUIElement::isIgnored): Deleted.
2745         (WTR::AccessibilityUIElement::hasPopup): Deleted.
2746         (WTR::AccessibilityUIElement::hierarchicalLevel): Deleted.
2747         (WTR::AccessibilityUIElement::clickPointX): Deleted.
2748         (WTR::AccessibilityUIElement::clickPointY): Deleted.
2749         (WTR::AccessibilityUIElement::documentEncoding): Deleted.
2750         (WTR::AccessibilityUIElement::documentURI): Deleted.
2751         (WTR::AccessibilityUIElement::url): Deleted.
2752         (WTR::AccessibilityUIElement::speak): Deleted.
2753         (WTR::AccessibilityUIElement::attributesOfColumnHeaders): Deleted.
2754         (WTR::AccessibilityUIElement::attributesOfRowHeaders): Deleted.
2755         (WTR::AccessibilityUIElement::attributesOfColumns): Deleted.
2756         (WTR::AccessibilityUIElement::attributesOfRows): Deleted.
2757         (WTR::AccessibilityUIElement::attributesOfVisibleCells): Deleted.
2758         (WTR::AccessibilityUIElement::attributesOfHeader): Deleted.
2759         (WTR::AccessibilityUIElement::indexInTable): Deleted.
2760         (WTR::AccessibilityUIElement::rowIndexRange): Deleted.
2761         (WTR::AccessibilityUIElement::columnIndexRange): Deleted.
2762         (WTR::AccessibilityUIElement::rowCount): Deleted.
2763         (WTR::AccessibilityUIElement::columnCount): Deleted.
2764         (WTR::AccessibilityUIElement::rowHeaders): Deleted.
2765         (WTR::AccessibilityUIElement::columnHeaders): Deleted.
2766         (WTR::AccessibilityUIElement::selectedRowAtIndex): Deleted.
2767         (WTR::AccessibilityUIElement::disclosedByRow): Deleted.
2768         (WTR::AccessibilityUIElement::disclosedRowAtIndex): Deleted.
2769         (WTR::AccessibilityUIElement::rowAtIndex): Deleted.
2770         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex): Deleted.
2771         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex): Deleted.
2772         (WTR::AccessibilityUIElement::ariaControlsElementAtIndex): Deleted.
2773         (WTR::AccessibilityUIElement::ariaIsGrabbed): Deleted.
2774         (WTR::AccessibilityUIElement::ariaDropEffects): Deleted.
2775         (WTR::AccessibilityUIElement::classList): Deleted.
2776         (WTR::AccessibilityUIElement::lineForIndex): Deleted.
2777         (WTR::AccessibilityUIElement::rangeForLine): Deleted.
2778         (WTR::AccessibilityUIElement::rangeForPosition): Deleted.
2779         (WTR::AccessibilityUIElement::boundsForRange): Deleted.
2780         (WTR::AccessibilityUIElement::setSelectedTextRange): Deleted.
2781         (WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Deleted.
2782         (WTR::AccessibilityUIElement::stringForRange): Deleted.
2783         (WTR::AccessibilityUIElement::attributedStringForRange): Deleted.
2784         (WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled): Deleted.
2785         (WTR::AccessibilityUIElement::uiElementCountForSearchPredicate): Deleted.
2786         (WTR::AccessibilityUIElement::uiElementForSearchPredicate): Deleted.
2787         (WTR::AccessibilityUIElement::selectTextWithCriteria): Deleted.
2788         (WTR::AccessibilityUIElement::cellForColumnAndRow): Deleted.
2789         (WTR::AccessibilityUIElement::horizontalScrollbar): Deleted.
2790         (WTR::AccessibilityUIElement::verticalScrollbar): Deleted.
2791         (WTR::AccessibilityUIElement::addNotificationListener): Deleted.
2792         (WTR::AccessibilityUIElement::removeNotificationListener): Deleted.
2793         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Deleted.
2794         (WTR::AccessibilityUIElement::textMarkerRangeForElement): Deleted.
2795         (WTR::AccessibilityUIElement::textMarkerRangeLength): Deleted.
2796         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Deleted.
2797         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Deleted.
2798         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Deleted.
2799         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker): Deleted.
2800         (WTR::AccessibilityUIElement::endTextMarkerForBounds): Deleted.
2801         (WTR::AccessibilityUIElement::startTextMarkerForBounds): Deleted.
2802         (WTR::AccessibilityUIElement::textMarkerForPoint): Deleted.
2803         (WTR::AccessibilityUIElement::previousTextMarker): Deleted.
2804         (WTR::AccessibilityUIElement::nextTextMarker): Deleted.
2805         (WTR::AccessibilityUIElement::startTextMarker): Deleted.
2806         (WTR::AccessibilityUIElement::endTextMarker): Deleted.
2807         (WTR::AccessibilityUIElement::stringForTextMarkerRange): Deleted.
2808         (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Deleted.
2809         (WTR::AccessibilityUIElement::indexForTextMarker): Deleted.
2810         (WTR::AccessibilityUIElement::isTextMarkerValid): Deleted.
2811         (WTR::AccessibilityUIElement::textMarkerForIndex): Deleted.
2812         (WTR::AccessibilityUIElement::scrollToMakeVisible): Deleted.
2813         (WTR::AccessibilityUIElement::scrollToGlobalPoint): Deleted.
2814         (WTR::AccessibilityUIElement::scrollToMakeVisibleWithSubFocus): Deleted.
2815         (WTR::AccessibilityUIElement::supportedActions): Deleted.
2816         (WTR::AccessibilityUIElement::mathPostscriptsDescription): Deleted.
2817         (WTR::AccessibilityUIElement::mathPrescriptsDescription): Deleted.
2818         (WTR::AccessibilityUIElement::pathDescription): Deleted.
2819         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
2820         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2821         (WTR::EventSendingController::create):
2822         * WebKitTestRunner/InjectedBundle/EventSendingController.h:
2823         * WebKitTestRunner/InjectedBundle/GCController.cpp:
2824         (WTR::GCController::create):
2825         * WebKitTestRunner/InjectedBundle/GCController.h:
2826         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2827         (WTR::InjectedBundle::beginTesting):
2828         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2829         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2830         (WTR::TestRunner::create):
2831         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2832         * WebKitTestRunner/InjectedBundle/TextInputController.cpp:
2833         (WTR::TextInputController::create):
2834         * WebKitTestRunner/InjectedBundle/TextInputController.h:
2835         * WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
2836         (WTR::AccessibilityController::accessibleElementById):
2837         (WTR::AccessibilityController::rootElement):
2838         (WTR::AccessibilityController::focusedElement):
2839         (WTR::AccessibilityController::logAccessibilityEvents): Deleted.
2840         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.h:
2841         (WTR::AccessibilityNotificationHandler::create):
2842         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2843         (WTR::AccessibilityUIElement::elementAtPoint):
2844         (WTR::AccessibilityUIElement::childAtIndex):
2845         (WTR::accessibilityElementAtIndex):
2846         (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
2847         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2848         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
2849         (WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
2850         (WTR::AccessibilityUIElement::disclosedRowAtIndex):
2851         (WTR::AccessibilityUIElement::rowAtIndex):
2852         (WTR::AccessibilityUIElement::selectedChildAtIndex):
2853         (WTR::AccessibilityUIElement::selectedRowAtIndex):
2854         (WTR::AccessibilityUIElement::titleUIElement):
2855         (WTR::AccessibilityUIElement::parentElement):
2856         (WTR::AccessibilityUIElement::disclosedByRow):
2857         (WTR::AccessibilityUIElement::uiElementAttributeValue):
2858         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
2859         (WTR::AccessibilityUIElement::cellForColumnAndRow):
2860         (WTR::AccessibilityUIElement::horizontalScrollbar):
2861         (WTR::AccessibilityUIElement::verticalScrollbar):
2862         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
2863         (WTR::AccessibilityUIElement::textMarkerRangeForElement):
2864         (WTR::AccessibilityUIElement::previousTextMarker):
2865         (WTR::AccessibilityUIElement::nextTextMarker):
2866         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
2867         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
2868         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
2869         (WTR::AccessibilityUIElement::endTextMarkerForBounds):
2870         (WTR::AccessibilityUIElement::startTextMarkerForBounds):
2871         (WTR::AccessibilityUIElement::textMarkerForPoint):
2872         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
2873         (WTR::AccessibilityUIElement::textMarkerForIndex):
2874         (WTR::AccessibilityUIElement::startTextMarker):
2875         (WTR::AccessibilityUIElement::endTextMarker):
2876         * WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
2877         (WTR::AccessibilityController::accessibleElementById):
2878         (WTR::AccessibilityController::logAccessibilityEvents): Deleted.
2879         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2880         (WTR::AccessibilityUIElement::headerElementAtIndex):
2881         (WTR::AccessibilityUIElement::linkedElement):
2882         (WTR::AccessibilityUIElement::elementAtPoint):
2883         (WTR::AccessibilityUIElement::childAtIndex):
2884         (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
2885         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2886         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
2887         (WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
2888         (WTR::AccessibilityUIElement::disclosedRowAtIndex):
2889         (WTR::AccessibilityUIElement::rowAtIndex):
2890         (WTR::AccessibilityUIElement::selectedChildAtIndex):
2891         (WTR::AccessibilityUIElement::selectedRowAtIndex):
2892         (WTR::AccessibilityUIElement::titleUIElement):
2893         (WTR::AccessibilityUIElement::parentElement):
2894         (WTR::AccessibilityUIElement::disclosedByRow):
2895         (WTR::AccessibilityUIElement::uiElementArrayAttributeValue):
2896         (WTR::AccessibilityUIElement::uiElementAttributeValue):
2897         (WTR::AccessibilityUIElement::rangeForLine):
2898         (WTR::AccessibilityUIElement::rangeForPosition):
2899         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
2900         (WTR::AccessibilityUIElement::fieldsetAncestorElement):
2901         (WTR::AccessibilityUIElement::cellForColumnAndRow):
2902         (WTR::AccessibilityUIElement::horizontalScrollbar):
2903         (WTR::AccessibilityUIElement::verticalScrollbar):
2904         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
2905         (WTR::AccessibilityUIElement::textMarkerRangeForElement):
2906         (WTR::AccessibilityUIElement::previousTextMarker):
2907         (WTR::AccessibilityUIElement::nextTextMarker):
2908         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
2909         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
2910         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
2911         (WTR::AccessibilityUIElement::endTextMarkerForBounds):
2912         (WTR::AccessibilityUIElement::startTextMarkerForBounds):
2913         (WTR::AccessibilityUIElement::textMarkerForPoint):
2914         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
2915         (WTR::AccessibilityUIElement::textMarkerForIndex):
2916         (WTR::AccessibilityUIElement::startTextMarker):
2917         (WTR::AccessibilityUIElement::endTextMarker):
2918         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker):
2919         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker):
2920         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker):
2921         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker):
2922         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker):
2923         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker):
2924         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker):
2925         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker):
2926         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker):
2927         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker):
2928         (WTR::AccessibilityUIElement::mathPostscriptsDescription):
2929         (WTR::AccessibilityUIElement::mathPrescriptsDescription):
2930         (WTR::AccessibilityUIElement::supportedActions):
2931         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
2932         (WTR::AccessibilityController::accessibleElementById):
2933         (WTR::AccessibilityController::logAccessibilityEvents): Deleted.
2934         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
2935         (makeValueRefForValue):
2936         (-[AccessibilityNotificationHandler _notificationReceived:]):
2937         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2938         (WTR::AccessibilityUIElement::elementAtPoint):
2939         (WTR::AccessibilityUIElement::childAtIndex):
2940         (WTR::AccessibilityUIElement::linkedUIElementAtIndex):
2941         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
2942         (WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
2943         (WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
2944         (WTR::AccessibilityUIElement::disclosedRowAtIndex):
2945         (WTR::AccessibilityUIElement::rowAtIndex):
2946         (WTR::AccessibilityUIElement::selectedChildAtIndex):
2947         (WTR::AccessibilityUIElement::selectedRowAtIndex):
2948         (WTR::AccessibilityUIElement::titleUIElement):
2949         (WTR::AccessibilityUIElement::parentElement):
2950         (WTR::AccessibilityUIElement::disclosedByRow):
2951         (WTR::AccessibilityUIElement::uiElementAttributeValue):
2952         (WTR::AccessibilityUIElement::uiElementForSearchPredicate):
2953         (WTR::AccessibilityUIElement::cellForColumnAndRow):
2954         (WTR::AccessibilityUIElement::horizontalScrollbar):
2955         (WTR::AccessibilityUIElement::verticalScrollbar):
2956         (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
2957         (WTR::AccessibilityUIElement::textMarkerRangeForElement):
2958         (WTR::AccessibilityUIElement::previousTextMarker):
2959         (WTR::AccessibilityUIElement::nextTextMarker):
2960         (WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
2961         (WTR::AccessibilityUIElement::selectedTextMarkerRange):
2962         (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
2963         (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
2964         (WTR::AccessibilityUIElement::endTextMarkerForBounds):
2965         (WTR::AccessibilityUIElement::startTextMarkerForBounds):
2966         (WTR::AccessibilityUIElement::textMarkerForPoint):
2967         (WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
2968         (WTR::AccessibilityUIElement::textMarkerForIndex):
2969         (WTR::AccessibilityUIElement::startTextMarker):
2970         (WTR::AccessibilityUIElement::endTextMarker):
2971         (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker):
2972         (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker):
2973         (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker):
2974         (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker):
2975         (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker):
2976         (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker):
2977         (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker):
2978         (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker):
2979         (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker):
2980         (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker):
2981         * WebKitTestRunner/efl/EventSenderProxyEfl.cpp:
2982         (WTR::keyPadName):
2983         (WTR::keyName):
2984
2985 2016-11-02  Alex Christensen  <achristensen@webkit.org>
2986
2987         Remove Battery Status API from the tree
2988         https://bugs.webkit.org/show_bug.cgi?id=164213
2989
2990         Reviewed by Sam Weinig.
2991
2992         * Scripts/webkitperl/FeatureList.pm:
2993         * Scripts/webkitpy/common/config/watchlist:
2994
2995 2016-11-02  Olivier Blin  <olivier.blin@softathome.com>
2996
2997         [GTK] Use libgcrypt instead of GnuTLS for CryptoDigest and SubtleCrypto HMAC implementation
2998         https://bugs.webkit.org/show_bug.cgi?id=163125
2999
3000         Reviewed by Michael Catanzaro.
3001
3002         * gtk/install-dependencies: List libgcrypt for WebKitGTK+ build, and gnutls for jhbuild only.
3003         gnutls is useful for glib-networking in jhbuild.
3004
3005 2016-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3006
3007         NetworkSession: Network process crash when converting main resource to download
3008         https://bugs.webkit.org/show_bug.cgi?id=164220
3009
3010         Reviewed by Alex Christensen.
3011
3012         Split /webkit2/Downloads/policy-decision-download in two, one to test the full load when main resource is
3013         converted to a download and another one to test the cancellation as the test was doing before. When doing the
3014         full load, delay a bit the decide destination to ensure the load is aborted before the data task has became a
3015         download.
3016
3017         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
3018         (testPolicyResponseDownload):
3019         (testPolicyResponseDownloadCancel):
3020         (beforeAll):
3021
3022 2016-11-01  Alex Christensen  <achristensen@webkit.org>
3023
3024         Remove PassRefPtr from DumpRenderTree
3025         https://bugs.webkit.org/show_bug.cgi?id=164307
3026
3027         Reviewed by Sam Weinig.
3028
3029         * DumpRenderTree/PixelDumpSupport.h:
3030         * DumpRenderTree/TestRunner.cpp:
3031         (TestRunner::create):
3032         * DumpRenderTree/TestRunner.h:
3033         * DumpRenderTree/cg/PixelDumpSupportCG.cpp:
3034         (createBitmapContext):
3035         * DumpRenderTree/cg/PixelDumpSupportCG.h:
3036         (BitmapContext::createByAdoptingBitmapAndContext):
3037         * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
3038         (createBitmapContextFromWebView):
3039         * DumpRenderTree/mac/PixelDumpSupportMac.mm:
3040         (createBitmapContextFromWebView):
3041         (createPagedBitmapContext):
3042         * DumpRenderTree/mac/TestRunnerMac.mm:
3043         * DumpRenderTree/win/PixelDumpSupportWin.cpp:
3044         (createBitmapContextFromWebView):
3045         * DumpRenderTree/win/TextInputController.h:
3046
3047 2016-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3048
3049         [GTK] Use GTestDBus instead of dbus-launch in WebKitTestBus.cpp
3050         https://bugs.webkit.org/show_bug.cgi?id=161481
3051
3052         Reviewed by Michael Catanzaro.
3053
3054         * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp:
3055         (WebKitTestBus::WebKitTestBus):
3056         (WebKitTestBus::~WebKitTestBus):
3057         (WebKitTestBus::run):
3058         (WebKitTestBus::getOrCreateConnection):
3059         (WebKitTestBus::createProxy):
3060         * TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h:
3061
3062 2016-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3063
3064         Unreviewed. Fix /webkit2/WebKitWebContext/get-plugins in the bots after r208273.
3065
3066         The test fails now if WEBKIT_TEST_PLUGIN_DIR contains symlinks, which is the case of the GTK+ bots.
3067
3068         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
3069         (testWebContextGetPlugins): Use realpath with WEBKIT_TEST_PLUGIN_DIR when building the expected plugins path.
3070
3071 2016-11-02  Romain Bellessort  <romain.bellessort@crf.canon.fr>
3072
3073         [Readable Streams API] Enable creation of ReadableByteStreamController
3074         https://bugs.webkit.org/show_bug.cgi?id=164014
3075
3076         Reviewed by Youenn Fablet.
3077
3078         Enable the byte stream part of Readable Streams API by default.
3079
3080         * Scripts/webkitperl/FeatureList.pm:
3081         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3082
3083 2016-11-01  Ryosuke Niwa  <rniwa@webkit.org>
3084
3085         Remove CUSTOM_ELEMENTS build flag
3086         https://bugs.webkit.org/show_bug.cgi?id=164267
3087
3088         Reviewed by Antti Koivisto.
3089
3090         Removed the build flag.
3091
3092         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3093
3094 2016-11-01  Alex Christensen  <achristensen@webkit.org>
3095
3096         Percent-encode non-ASCII code points in hosts of URLs with unrecognized schemes
3097         https://bugs.webkit.org/show_bug.cgi?id=164290
3098
3099         Reviewed by Tim Horton.
3100
3101         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3102         (TestWebKitAPI::checkRelativeURL):
3103         (TestWebKitAPI::checkURLDifferences):
3104         (TestWebKitAPI::checkRelativeURLDifferences):
3105         Move helper functions to the top so I can use them from any tests.
3106         (TestWebKitAPI::shouldFail):
3107         (TestWebKitAPI::checkURL):
3108         (TestWebKitAPI::TEST_F):
3109
3110 2016-11-01  Hyowon Kim  <hw1008.kim@samsung.com>
3111
3112         [GTK] Failed to generate GeoClue2Interface files.
3113         https://bugs.webkit.org/show_bug.cgi?id=164270
3114
3115         Reviewed by Michael Catanzaro.
3116
3117         To generate codes for D-Bus interfaces,
3118         geoclue-2.0 package including D-Bus introspection XML files should be installed.
3119
3120         * gtk/install-dependencies: add geoclue-2.0 package.
3121
3122 2016-11-01  Fujii Hironori  <Hironori.Fujii@sony.com>
3123
3124         [CMake] generate-bindings-all.pl uses USES_TERMINAL which leaves a noisy line in interactive Ninja build
3125         https://bugs.webkit.org/show_bug.cgi?id=163868
3126
3127         Reviewed by Michael Catanzaro.
3128
3129         It takes long time for generate-bindings-all.pl to generate all
3130         bindings.  So, it shows the progress while running and
3131         USES_TERMINAL option of add_custom_target have been used to invoke
3132         the command.  However, USES_TERMINAL leaves a noisy line in
3133         Ninja's neat build log of interactive build.
3134
3135         A new CMake option SHOW_BINDINGS_GENERATION_PROGRESS is added to
3136         stop using USES_TERMINAL only in case of interactive Ninja build.
3137
3138         * Scripts/webkitdirs.pm:
3139         (generateBuildSystemFromCMakeProject): Enable
3140         SHOW_BINDINGS_GENERATION_PROGRESS not in case of interactive
3141         Ninja build.
3142
3143 2016-10-31  Simon Fraser  <simon.fraser@apple.com>
3144
3145         Add basic visual/layout viewport support for fixed position layout
3146         https://bugs.webkit.org/show_bug.cgi?id=164261
3147
3148         Reviewed by Dean Jackson.
3149
3150         Don't give tests in the "visual-viewport" directory a flexible viewport.
3151
3152         * DumpRenderTree/mac/DumpRenderTree.mm:
3153         (shouldMakeViewportFlexible):
3154         * WebKitTestRunner/TestOptions.cpp:
3155         (WTR::shouldMakeViewportFlexible):
3156
3157 2016-10-29  Filip Pizlo  <fpizlo@apple.com>
3158
3159         JSC should support SharedArrayBuffer
3160         https://bugs.webkit.org/show_bug.cgi?id=163986
3161
3162         Reviewed by Keith Miller.
3163         
3164         Use the right kind of typed array API.
3165
3166         * DumpRenderTree/TestRunner.cpp:
3167         (setAudioResultCallback):
3168
3169 2016-10-31  Simon Fraser  <simon.fraser@apple.com>
3170
3171         Make UIScriptController::zoomToScale() work on Mac WK1 and WK2
3172         https://bugs.webkit.org/show_bug.cgi?id=164238
3173
3174         Reviewed by Dean Jackson.
3175
3176         Implement UIScriptController::zoomToScale() for WTR and DRT on Mac.
3177
3178         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3179         (WTR::UIScriptController::zoomToScale):
3180         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3181         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3182         (WTR::UIScriptController::zoomToScale):
3183
3184 2016-10-31  Dewei Zhu  <dewei_zhu@apple.com>
3185
3186         Update twisted version in webkitpy.thirdparty.autoinstalled module.
3187         https://bugs.webkit.org/show_bug.cgi?id=154667
3188
3189         Reviewed by Ryosuke Niwa.
3190
3191         Use twisted_15_5_0 for the twisted module used by run-benchmark because there is a bug in twisted 12.1.0 which sometimes stops the test.
3192         Installing twisted was introduced in https://bugs.webkit.org/show_bug.cgi?id=147082 for run-benchmark script.
3193         Since buildbot relies on twisted 12.1.0 and has not been verified the compatibility on twisted 15.5.0, it would be more secure to use an individual version for run-benchmark script.
3194
3195         * Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py:
3196         * Scripts/webkitpy/thirdparty/__init__.py:
3197         (AutoinstallImportHook.find_module):
3198         (AutoinstallImportHook._install_twisted_15_5_0):
3199         (AutoinstallImportHook._install_twisted): Deleted.
3200
3201 2016-10-31  Ryosuke Niwa  <rniwa@webkit.org>
3202
3203         Enable custom elements by default everywhere
3204         https://bugs.webkit.org/show_bug.cgi?id=164242
3205
3206         Reviewed by Antti Koivisto.
3207
3208         Enable custom elements API on every port by default.
3209
3210         * Scripts/webkitperl/FeatureList.pm:
3211
3212 2016-10-31  Nan Wang  <n_wang@apple.com>
3213
3214         AX: aria-sort is not exposed on iOS
3215         https://bugs.webkit.org/show_bug.cgi?id=164245
3216
3217         Reviewed by Chris Fleizach.
3218
3219         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3220         (AccessibilityUIElement::stringAttributeValue):
3221         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3222         (WTR::AccessibilityUIElement::stringAttributeValue):
3223
3224 2016-10-31  Simon Fraser  <simon.fraser@apple.com>
3225
3226         Implement IntersectionObserver
3227         https://bugs.webkit.org/show_bug.cgi?id=159475
3228
3229         Reviewed by Ryosuke Niwa.
3230         
3231         Add ENABLE_INTERSECTION_OBSERVER, enabled by default.
3232
3233         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3234
3235 2016-10-31  Ryan Haddad  <ryanhaddad@apple.com>
3236
3237         Unreviewed, rolling out r208154.
3238
3239         This change caused an assertion failure during API tests on
3240         macOS.
3241
3242         Reverted changeset:
3243
3244         "NetworkSession: Network process crash when converting main
3245         resource to download"
3246         https://bugs.webkit.org/show_bug.cgi?id=164220
3247         http://trac.webkit.org/changeset/208154
3248
3249 2016-10-31  Said Abou-Hallawa  <sabouhallawa@apple.com>
3250
3251         Unreviewed, change my status to be a WebKit reviewer
3252
3253         * Scripts/webkitpy/common/config/contributors.json:
3254
3255 2016-10-31  Carlos Garcia Campos  <cgarcia@igalia.com>
3256
3257         NetworkSession: Network process crash when converting main resource to download
3258         https://bugs.webkit.org/show_bug.cgi?id=164220
3259
3260         Reviewed by Alex Christensen.
3261
3262         Split /webkit2/Downloads/policy-decision-download in two, one to test the full load when main resource is
3263         converted to a download and another one to test the cancellation as the test was doing before. When doing the
3264         full load, delay a bit the decide destination to ensure the load is aborted before the data task has became a
3265         download.
3266
3267         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
3268         (testPolicyResponseDownload):
3269         (testPolicyResponseDownloadCancel):
3270         (beforeAll):
3271
3272 2016-10-31  Keith Miller  <keith_miller@apple.com>
3273
3274         Unreviewed, fix watchlist regexp for wasm.
3275
3276         * Scripts/webkitpy/common/config/watchlist:
3277
3278 2016-10-31  Keith Miller  <keith_miller@apple.com>
3279
3280         autogenerated files from wasm.json should be in derived sources.
3281         https://bugs.webkit.org/show_bug.cgi?id=164152
3282
3283         Reviewed by Filip Pizlo.
3284
3285         Add message to make sure that people keep the wasm.jsons up to date.
3286
3287         * Scripts/webkitpy/common/config/watchlist:
3288
3289 2016-10-31  Wenson Hsieh  <wenson_hsieh@apple.com>
3290
3291         Holding down a key to choose an accented character should fire "insertReplacementText" input events
3292         https://bugs.webkit.org/show_bug.cgi?id=164209
3293         <rdar://problem/29019305>
3294
3295         Reviewed by Darin Adler.
3296
3297         Adds test support for inserting replacement text on Mac. This is equivalent to holding down a vowel key (e.g.
3298         'a') to bring up the menu containing accented version of the character, then selecting an accented character to
3299         insert in place of the typed character. This is exposed via UIScriptController.insertText, which takes a string
3300         and an insertion range.
3301
3302         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3303         (WTR::UIScriptController::insertText):
3304         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3305
3306         Note that there is no callback argument to insertText, since UIScriptController::insertText is synchronous in
3307         the UI process. The tests end when corresponding input events fired as a result of insertText have been received
3308         in the web process. Please see the new layout tests for more detail.
3309
3310         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3311         (WTR::UIScriptController::insertText):
3312         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3313         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3314         (WTR::nsStringFromJSString):
3315         (WTR::UIScriptController::insertText):
3316
3317 2016-10-30  Sam Weinig  <sam@webkit.org>
3318
3319         [WebIDL] Restructure IDLParser structs to better match modern WebIDL concepts
3320         https://bugs.webkit.org/show_bug.cgi?id=164208
3321
3322         Reviewed by Darin Adler.
3323
3324         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3325         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3326         Update for new struct types.
3327
3328 2016-10-29  Darin Adler  <darin@apple.com>
3329
3330         Fix failing ExtendedColor tests.
3331
3332         * TestWebKitAPI/Tests/WebCore/ExtendedColor.cpp:
3333         Changed the tests in two ways: First, use EXPECT_EQ instead of EXPECT_TRUE
3334         for the string equality comparisons. This required including WTFStringUtilities.h.
3335         Second, change expected results to match what the code is currently generating,
3336         so alpha channels are "0.25" rather than "0.25 / 1". I'll let Dean fix both these
3337         tests and the code if these results are incorrect.
3338
3339 2016-10-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3340
3341         UIScriptControllerIOS.mm should not be soft-linking UIKit
3342         https://bugs.webkit.org/show_bug.cgi?id=164171
3343
3344         Reviewed by Darin Adler.
3345
3346         Follow-up to r208090. Instead of soft-linking, we can simply grab UIKeyboardPredictionView by name instead.
3347
3348         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3349         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
3350
3351 2016-10-28  Darin Adler  <darin@apple.com>
3352
3353         Move all classes in the HTML directory from ExceptionCode to Exception
3354         https://bugs.webkit.org/show_bug.cgi?id=163876
3355
3356         Reviewed by Sam Weinig.
3357
3358         * TestWebKitAPI/Tests/WebCore/TimeRanges.cpp:
3359         (TestWebKitAPI::ToString): Updated for changes to the TimeRanges class.
3360         (TestWebKitAPI::TEST): Ditto.
3361
3362 2016-10-28  Devin Rousso  <dcrousso+webkit@gmail.com>
3363
3364         Unreviewed, changed Devin Rousso's email and nick.
3365
3366         * Scripts/webkitpy/common/config/contributors.json:
3367
3368 2016-10-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3369
3370         Unreviewed, fix the iOS build after r208090.
3371
3372         Use soft-linking as needed in UIScriptControllerIOS.mm.
3373
3374         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3375         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
3376
3377 2016-10-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3378
3379         iOS autocorrection does not trigger an input event of inputType "insertReplacementText"
3380         https://bugs.webkit.org/show_bug.cgi?id=164077
3381         <rdar://problem/28987810>
3382
3383         Reviewed by Simon Fraser.
3384
3385         Adds test support for inserting text candidates on iOS in the form of
3386         UIScriptController.selectTextCandidateAtIndex(index, callback), which selects the text candidate at a given
3387         index (this needs to be a value between 0-2 on iOS) and fires the callback when done.
3388
3389         To implement this, we wait for the text prediction view to have predictions (we determine this by polling at a
3390         given interval) and then tap the center of the text prediction view at the given index.
3391
3392         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3393         (WTR::UIScriptController::selectTextCandidateAtIndex):
3394         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3395         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3396         (WTR::UIScriptController::selectTextCandidateAtIndex):
3397         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
3398         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3399         * WebKitTestRunner/ios/UIKitSPI.h:
3400         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3401         (WTR::UIScriptController::selectTextCandidateAtIndex):
3402         (WTR::UIScriptController::waitForTextPredictionsViewAndSelectCandidateAtIndex):
3403
3404 2016-10-28  Commit Queue  <commit-queue@webkit.org>
3405
3406         Unreviewed, rolling out r207700.
3407         https://bugs.webkit.org/show_bug.cgi?id=164168
3408
3409         We are ready after r208086 (Requested by alexchristensen on
3410         #webkit).
3411
3412         Reverted changeset:
3413
3414         "Unreviewed, rolling out r207582."
3415         https://bugs.webkit.org/show_bug.cgi?id=163819
3416         http://trac.webkit.org/changeset/207700
3417
3418 2016-10-28  Alex Christensen  <achristensen@webkit.org>
3419
3420         Partially revert 207805 after resolution in URL spec issue 87
3421         https://bugs.webkit.org/show_bug.cgi?id=164142
3422
3423         Reviewed by Andy Estes.
3424
3425         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3426         (TestWebKitAPI::TEST_F):
3427
3428 2016-10-28  Alex Christensen  <achristensen@webkit.org>
3429
3430         URLParser should not try to interpret host of URLs with unrecognized schemes as IPv4 address
3431         https://bugs.webkit.org/show_bug.cgi?id=164154
3432
3433         Reviewed by Andy Estes.
3434
3435         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3436         (TestWebKitAPI::TEST_F):
3437
3438 2016-10-28  Sam Weinig  <sam@webkit.org>
3439
3440         [WebIDL] Update parser and code generators to only access type information through the type property
3441         https://bugs.webkit.org/show_bug.cgi?id=164141
3442
3443         Reviewed by Anders Carlsson.
3444
3445         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3446         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3447         Update to always access type information through type accessors. Remove use of removed
3448         properties.
3449
3450 2016-10-28  Frederic Wang  <fwang@igalia.com>
3451
3452         [GTK] Upgrade HarfBuzz to version 1.3.3
3453         https://bugs.webkit.org/show_bug.cgi?id=162719
3454
3455         Reviewed by Michael Catanzaro.
3456
3457         * gtk/jhbuild.modules:
3458
3459 2016-10-27  Chris Dumez  <cdumez@apple.com>
3460
3461         Regression(r203601): Caused crashes in iBooks
3462         https://bugs.webkit.org/show_bug.cgi?id=164093
3463         <rdar://problem/28745634>
3464
3465         Reviewed by Darin Adler.
3466
3467         Add API test coverage.
3468
3469         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3470         * TestWebKitAPI/Tests/mac/DOMNode.mm: Added.
3471         (-[DOMNodeTest webView:didFinishLoadForFrame:]):
3472         (TestWebKitAPI::TEST):
3473
3474 2016-10-27  Sam Weinig  <sam@webkit.org>
3475
3476         [WebIDL] Move code generators off of domSignature::type and onto domSignature::idlType
3477         https://bugs.webkit.org/show_bug.cgi?id=164089
3478
3479         Reviewed by Alex Christensen.
3480
3481         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3482         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3483         Update for the removal of domSignature::type, and new signatures of helper predicates.
3484
3485 2016-10-27  Commit Queue  <commit-queue@webkit.org>
3486
3487         Unreviewed, rolling out r207992.
3488         https://bugs.webkit.org/show_bug.cgi?id=164070
3489
3490         triggered aclocal version conflict (Requested by mcatanzaro on
3491         #webkit).
3492
3493         Reverted changeset:
3494
3495         "[GTK] Bump glib to 2.50.1 (or find alternative solution to
3496         Gtk+ CUPS build issue)"
3497         https://bugs.webkit.org/show_bug.cgi?id=163689
3498         http://trac.webkit.org/changeset/207992
3499
3500 2016-10-27  Joanmarie Diggs  <jdiggs@igalia.com>
3501
3502         [GTK] Bump glib to 2.50.1 (or find alternative solution to Gtk+ CUPS build issue)
3503         https://bugs.webkit.org/show_bug.cgi?id=163689
3504
3505         Reviewed by Michael Catanzaro.
3506
3507         In order to fix bug #163591, we need to apply an upstream patch to GTK+.
3508         But GTK+ won't build with that patch due to the following error:
3509
3510             m4_copy: won't overwrite defined macro: glib_DEFUN
3511
3512         There is an upstream GLib patch which solves that issue. We should apply
3513         that patch as well, until we bump GLib to 2.50.1 or later.
3514
3515         * gtk/jhbuild.modules: Apply upstream GLib patch.
3516         * gtk/patches/glib-deprecate-am-glib-gnu-gettext.patch: Added.
3517
3518 2016-10-27  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3519
3520         Unreviewed fix of GTK and EFL test bots.
3521
3522         * Scripts/webkitperl/FeatureList.pm: Deactivated media-source and
3523         legacy-encrypted-media by default for GTK and EFL.
3524
3525 2016-10-26  Yusuke Suzuki  <utatane.tea@gmail.com>
3526
3527         [GTK] JSC test wasm.yaml/wasm/js-api/test_basic_api.js.default-wasm and wasm.yaml/wasm/js-api/test_Module.js.default-wasm fail with Exception: ReferenceError: Can't find variable: WebAssembly
3528         https://bugs.webkit.org/show_bug.cgi?id=163846
3529
3530         Reviewed by Michael Catanzaro.
3531
3532         WebAssembly is now developed for Darwin right now.
3533         Disable WASM tests in the other platforms.
3534
3535         * Scripts/run-jsc-stress-tests:
3536
3537 2016-10-26  Enrique Ocaña González  <eocanha@igalia.com>
3538
3539         [cmake][GStreamer][MSE][EME] Build MSE and EME code after refactoring
3540         https://bugs.webkit.org/show_bug.cgi?id=162928
3541
3542         Reviewed by Xabier Rodriguez-Calvar.
3543
3544         Explicitly enable MSE and EME on WebKitGTK+ buildbots.
3545
3546         This patch is co-authored with Philippe Normand <philn@igalia.com> (EME support).
3547
3548         * Scripts/webkitperl/FeatureList.pm:
3549
3550 2016-10-25  Antoine Quint  <graouts@apple.com>
3551
3552         [Modern Media Controls] Media Controller: skip back support
3553         https://bugs.webkit.org/show_bug.cgi?id=163725
3554         <rdar://problem/27989480>
3555
3556         Reviewed by Dean Jackson.
3557
3558         * Scripts/webkitpy/layout_tests/servers/aliases.json: Adding a new alias such that we may
3559         access the modern-media-controls source files through the web server.
3560
3561 2016-10-19  Jer Noble  <jer.noble@apple.com>
3562
3563         Add WKWebView fullscreen delegate SPI
3564         https://bugs.webkit.org/show_bug.cgi?id=163674
3565
3566         Reviewed by Anders Carlsson.
3567
3568         Add a new API test which verifies that the fullscreen delegate receives notifications.
3569
3570         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenDelegate.mm:
3571         (-[FullscreenDelegateMessageHandler userContentController:didReceiveScriptMessage:]):
3572         (-[FullscreenDelegateMessageHandler _webViewWillEnterFullscreen:]):
3573         (-[FullscreenDelegateMessageHandler _webViewDidEnterFullscreen:]):
3574         (-[FullscreenDelegateMessageHandler _webViewWillExitFullscreen:]):
3575         (-[FullscreenDelegateMessageHandler _webViewDidExitFullscreen:]):
3576         (TestWebKitAPI::TEST):
3577
3578 2016-10-24  Alex Christensen  <achristensen@webkit.org>
3579
3580         URLParser should match old URL::parse with %2E in path
3581         https://bugs.webkit.org/show_bug.cgi?id=163929
3582
3583         Reviewed by Alexey Proskuryakov.
3584
3585         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3586         (TestWebKitAPI::TEST_F):
3587
3588 2016-10-24  Ryan Haddad  <ryanhaddad@apple.com>
3589
3590         Unreviewed, rolling out r207795.
3591
3592         Introduced API test failures on iOS and macOS.
3593
3594         Reverted changeset:
3595
3596         "URLParser should match old URL::parse with %2E in path"
3597         https://bugs.webkit.org/show_bug.cgi?id=163929
3598         http://trac.webkit.org/changeset/207795
3599
3600 2016-10-24  Alex Christensen  <achristensen@webkit.org>
3601
3602         URLParser should match old URL::parse with %2E in path
3603         https://bugs.webkit.org/show_bug.cgi?id=163929
3604
3605         Reviewed by Alexey Proskuryakov.
3606
3607         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3608         (TestWebKitAPI::TEST_F):
3609
3610 2016-10-21  Alex Christensen  <achristensen@webkit.org>
3611
3612         URL::port should return Optional<uint16_t>
3613         https://bugs.webkit.org/show_bug.cgi?id=163806
3614
3615         Reviewed by Darin Adler.
3616
3617         * TestWebKitAPI/Tests/WebCore/URL.cpp:
3618         (TestWebKitAPI::TEST_F):
3619         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3620         (TestWebKitAPI::checkURL):
3621         (TestWebKitAPI::checkRelativeURL):
3622         (TestWebKitAPI::checkURLDifferences):
3623         (TestWebKitAPI::checkRelativeURLDifferences):
3624         (TestWebKitAPI::TEST_F):
3625
3626 2016-10-24  Youenn Fablet  <youenn@apple.com>
3627
3628         Activate WEB_RTC compilation flags for Mac bots
3629         https://bugs.webkit.org/show_bug.cgi?id=163886
3630
3631         Reviewed by Eric Carlson.
3632
3633         * Scripts/webkitperl/FeatureList.pm:
3634         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3635
3636 2016-10-24  Wenson Hsieh  <wenson_hsieh@apple.com>
3637
3638         Unreviewed, add myself as a WebKit reviewer
3639
3640         * Scripts/webkitpy/common/config/contributors.json:
3641
3642 2016-10-22  Dan Bernstein  <mitz@apple.com>
3643
3644         Improve MiniBrowser window titles for URLs without paths and with no title
3645         <https://webkit.org/b/163843>
3646
3647         Reviewed by Darin Adler.
3648
3649         * MiniBrowser/mac/WK1BrowserWindowController.m:
3650         (-[WK1BrowserWindowController fetch:]): While we’re here, deploy
3651           +[NSURL _webkit_URLWithUserTypedString:] here to match the WK2BrowserWindowController
3652           version of this method.
3653         (-[WK1BrowserWindowController updateTitle:]): If the URL doesn’t have a lastPathComponent,
3654           use the entire URL.
3655         (-[WK1BrowserWindowController webView:didCommitLoadForFrame:]): Also while we’re here,
3656           deploy +[NSURL _web_userVisibleString] here to match the WK2BrowserWindowController
3657           behavior.
3658
3659         * MiniBrowser/mac/WK2BrowserWindowController.m:
3660         (-[WK2BrowserWindowController updateTitle:]): If the URL doesn’t have a lastPathComponent,
3661           use the entire URL.
3662
3663 2016-10-21  David Kilzer  <ddkilzer@apple.com>
3664
3665         Bug 163762: IntSize::area() should used checked arithmetic
3666         <https://webkit.org/b/163762>
3667
3668         Reviewed by Darin Adler.
3669
3670         * TestWebKitAPI/Tests/WebCore/IntRect.cpp:
3671         (TestWebKitAPI::TEST): Call unsafeGet().
3672         * TestWebKitAPI/Tests/WebCore/IntSize.cpp:
3673         (TestWebKitAPI::TEST): Ditto.
3674
3675 2016-10-21  James Craig  <jcraig@apple.com>
3676
3677         Unreviewed: Added Aaron Chu <aaron_chu@apple.com> to contributors list.
3678
3679         * Scripts/webkitpy/common/config/contributors.json:
3680
3681 2016-10-21  Commit Queue  <commit-queue@webkit.org>
3682
3683         Unreviewed, rolling out r207582.
3684         https://bugs.webkit.org/show_bug.cgi?id=163819
3685
3686         Not quite ready rdar://problem/28897179 (Requested by
3687         alexchristensen on #webkit).
3688
3689         Reverted changeset:
3690
3691         "Re-enable URLParser for non-Safari Cocoa apps after r207321"
3692         https://bugs.webkit.org/show_bug.cgi?id=163690
3693         http://trac.webkit.org/changeset/207582
3694
3695 2016-10-21  Jonathan Bedard  <jbedard@apple.com>
3696
3697         WebKitTestRunnerApp packages .idl file
3698         https://bugs.webkit.org/show_bug.cgi?id=163788
3699
3700         Reviewed by Darin Adler.
3701
3702         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Removed .idl file from app package, removed bad reference to app icon.
3703
3704 2016-10-21  Csaba Osztrogonác  <ossy@webkit.org>
3705
3706         [EFL] REGRESSION(r207616): Build is broken due to missing libgeoclue-dev package
3707         https://bugs.webkit.org/show_bug.cgi?id=163733
3708
3709         Reviewed by Gyuyoung Kim.
3710
3711         * efl/install-dependencies: Added geoclue-2.0 package.
3712
3713 2016-10-21  Commit Queue  <commit-queue@webkit.org>
3714
3715         Unreviewed, rolling out r207609.
3716         https://bugs.webkit.org/show_bug.cgi?id=163776
3717
3718         As glib bump was rollout, we need to rollout this too
3719         (Requested by rego on #webkit).
3720
3721         Reverted changeset:
3722
3723         "[GTK] Cannot build GTK+ with CUPS 2.* versions"
3724         https://bugs.webkit.org/show_bug.cgi?id=163591
3725         http://trac.webkit.org/changeset/207609
3726
3727 2016-10-20  Chris Dumez  <cdumez@apple.com>
3728
3729         "Download Linked File" context menu action should use 'download' attribute as suggested filename
3730         https://bugs.webkit.org/show_bug.cgi?id=163742
3731         <rdar://problem/28840734>
3732
3733         Reviewed by Darin Adler.
3734
3735         Add API test coverage.
3736
3737         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3738         * TestWebKitAPI/Tests/WebKit2/link-with-download-attribute.html: Added.
3739         * TestWebKitAPI/Tests/WebKit2/mac/ContextMenuDownload.mm: Added.
3740         (TestWebKitAPI::didFinishLoadForFrame):
3741         (TestWebKitAPI::getContextMenuFromProposedMenu):
3742         (TestWebKitAPI::decideDestinationWithSuggestedFilename):
3743         (TestWebKitAPI::TEST):
3744
3745 2016-10-20  Commit Queue  <commit-queue@webkit.org>
3746
3747         Unreviewed, rolling out r207589.
3748         https://bugs.webkit.org/show_bug.cgi?id=163765
3749
3750         Introduced 17 new layout test failures (Requested by
3751         mcatanzaro on #webkit).
3752
3753         Reverted changeset:
3754
3755         "[GTK] Bump glib to 2.50.1"
3756         https://bugs.webkit.org/show_bug.cgi?id=163689
3757         http://trac.webkit.org/changeset/207589
3758
3759 2016-10-19  Myles C. Maxfield  <mmaxfield@apple.com>
3760
3761         [macOS] [iOS] Disable variation fonts on macOS El Capitan and iOS 9
3762         https://bugs.webkit.org/show_bug.cgi?id=163374
3763
3764         Reviewed by Darin Adler.
3765
3766         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3767
3768 2016-10-20  Sam Weinig  <sam@webkit.org>
3769
3770         Add convenience function that combines WTF::visit(...) with WTF::makeVisitor(...)
3771         https://bugs.webkit.org/show_bug.cgi?id=163713
3772
3773         Reviewed by Dan Bernstein.
3774
3775         * TestWebKitAPI/Tests/WTF/Variant.cpp:
3776         Add test for WTF::switchOn()
3777
3778 2016-10-20  Fujii Hironori  <Hironori.Fujii@sony.com>
3779
3780         [CMake] CMake does not support the dep files for implicit dependency
3781         https://bugs.webkit.org/show_bug.cgi?id=161433
3782
3783         Reviewed by Brent Fulgham.
3784
3785         Created a Perl script to generate all IDL bindings for CMake.
3786         This script can regenerate outdated bindings by based on the
3787         supplemental dependency and dep files created by
3788         '--write-dependencies' switch of generate-bindings.pl.
3789
3790         add_custom_target is used to invoke the script instead of
3791         add_custom_command because Ninja deletes all output files before
3792         executing the command in case of add_custom_command.
3793
3794         USES_TERMINAL option of add_custom_target has two effects:
3795         1) Not buffering output of the command
3796         2) Invoking the command in the special Ninja pool which inhibits parallel build
3797         One needs to use CMake 3.2 or later to enable this feature.
3798
3799         * DumpRenderTree/CMakeLists.txt: Specified a target name for
3800         GENERATE_BINDINGS. Added dependency for the target.
3801         * WebKitTestRunner/CMakeLists.txt: Ditto.
3802
3803 2016-10-20  Manuel Rego Casasnovas  <rego@igalia.com>
3804
3805         [GTK] Cannot build GTK+ with CUPS 2.* versions
3806         https://bugs.webkit.org/show_bug.cgi?id=163591
3807
3808         Reviewed by Michael Catanzaro.
3809
3810         GTK+ is wrongly checking about the available CUPS version,
3811         so if you have CUPS 2.* the configure step fails.
3812
3813         This has been already fixed upstream and included in 2.30 series:
3814         https://git.gnome.org/browse/gtk+/commit/?id=631f6b536485829a0bd00532f5826ad302b4951b
3815
3816         Added patch on JHBuild so we can now build GTK+ with CUPS 2.*.
3817
3818         * gtk/jhbuild.modules: Applied patch and avoid using "configure" script directly
3819         as the patch modifies "configure.ac".
3820         * gtk/patches/configure-fix-detecting-CUPS-2.x.patch: Added.
3821
3822 2016-10-20  Manuel Rego Casasnovas  <rego@igalia.com>
3823
3824         [GTK] Bump glib to 2.50.1
3825         https://bugs.webkit.org/show_bug.cgi?id=163689
3826
3827         Reviewed by Michael Catanzaro.
3828
3829         This is need in order to fix GTK+ build with CUPS 2.* (bug #163591).
3830
3831         * gtk/jhbuild.modules: Bump glib version. Pass --disable-libmount to build properly.
3832         Also we don't need the patches anymore.
3833         * gtk/patches/gdate-suppress-string-format-literal-warning.patch: Removed.
3834         * gtk/patches/glib-warning-fix.patch: Removed.
3835
3836 2016-10-19  Alex Christensen  <achristensen@webkit.org>
3837
3838         Re-enable URLParser for non-Safari Cocoa apps after r207321
3839         https://bugs.webkit.org/show_bug.cgi?id=163690
3840
3841         Reviewed by Darin Adler.
3842
3843         * DumpRenderTree/mac/DumpRenderTree.mm:
3844         (DumpRenderTreeMain):
3845         * TestWebKitAPI/Tests/WebKit2Cocoa/LoadInvalidURLRequest.mm:
3846         (-[LoadInvalidURLNavigationActionDelegate webView:didFailProvisionalNavigation:withError:]):
3847         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
3848         (TestWebKitAPI::TEST):
3849         * WebKitTestRunner/TestController.cpp:
3850         (WTR::TestController::TestController):
3851
3852 2016-10-19  Ryan Haddad  <ryanhaddad@apple.com>
3853
3854         Unreviewed, rolling out r207557.
3855
3856         This change caused animations/font-variations tests to time
3857         out on pre-Sierra Macs.
3858
3859         Reverted changeset:
3860
3861         "[macOS] [iOS] Disable variation fonts on macOS El Capitan and
3862         iOS 9"
3863         https://bugs.webkit.org/show_bug.cgi?id=163374
3864         http://trac.webkit.org/changeset/207557
3865
3866 2016-10-19  Andy Estes  <aestes@apple.com>
3867
3868         Crash in ASCIICaseInsensitiveHash::hash() when a response has a null MIME type
3869         https://bugs.webkit.org/show_bug.cgi?id=163476
3870         <rdar://problem/26941395>
3871
3872         Reviewed by Andreas Kling.
3873
3874         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3875         * TestWebKitAPI/Tests/WebKit2Cocoa/LoadDataWithNilMIMEType.mm: Added.
3876         (TEST): Added an API test that passes a nil MIMEType to
3877         -[WKWebView loadData:MIMEType:characterEncodingName:baseURL:].
3878
3879 2016-10-19  Jer Noble  <jer.noble@apple.com>
3880
3881         Modify testrunner to mute audio during tests
3882         https://bugs.webkit.org/show_bug.cgi?id=162582
3883
3884         Reviewed by Alexey Proskuryakov.
3885
3886         * DumpRenderTree/mac/DumpRenderTree.mm:
3887         (createWebViewAndOffscreenWindow):
3888         * WebKitTestRunner/TestController.cpp:
3889         (WTR::TestController::resetStateToConsistentValues):
3890
3891 2016-10-19  Joseph Pecoraro  <pecoraro@apple.com>
3892
3893         check-webkit-style: fix false-positive warnings about using #pragma once header guard
3894         https://bugs.webkit.org/show_bug.cgi?id=163575
3895
3896         Reviewed by Brady Eidson.
3897
3898         There were some false positive warnings about header guards
3899         for ObjC headers that don't need guards. This changes the
3900         style checker to no longer warn if there is no #pragma once.
3901         It only warns if there are #ifndef that should be #pragma once.
3902
3903         * Scripts/webkitpy/style/checkers/cpp.py:
3904         (check_for_header_guard):
3905         Change when we output an error.
3906
3907         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3908         (CppStyleTest.test_build_header_guard):
3909         Update tests.
3910
3911 2016-10-19  Myles C. Maxfield  <mmaxfield@apple.com>
3912
3913         [macOS] [iOS] Disable variation fonts on macOS El Capitan and iOS 9
3914         https://bugs.webkit.org/show_bug.cgi?id=163374
3915
3916         Reviewed by Darin Adler.
3917
3918         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3919
3920 2016-10-18  Philippe Normand  <pnormand@igalia.com>
3921
3922         WebRTC: [GTK] Update jhbuild environment for OpenWebRTC
3923         https://bugs.webkit.org/show_bug.cgi?id=163330
3924
3925         Reviewed by Michael Catanzaro.
3926
3927         Bring back the openwebrtc JHBuild moduleset in the time being. It
3928         should be removed after the bump to GStreamer 1.10 is complete and
3929         the libnice patches have been upstreamed. The GStreamer git
3930         snapshots used in this patch are the ones configured in Ericsson's
3931         GStreamer Cerbero fork.
3932
3933         * gtk/openwebrtc.modules: Added.
3934         * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Added.
3935         * gtk/patches/libnice-0001-agent-Remove-unnecessary-NULL-check.patch: Added.
3936         * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Added.
3937         * gtk/patches/libnice-0002-Do-not-update-a-remote-candidate-s-type.patch: Added.
3938         * gtk/patches/libnice-0002-TURN-handle-437-Allocation-Mismatch-responses.patch: Added.
3939         * gtk/patches/libnice-0003-Do-not-compare-scope-for-IPv6-address-when-scope-is-.patch: Added.
3940         * gtk/patches/libnice-0004-Removing-no-op-assignment.patch: Added.
3941
3942 2016-10-18  Sam Weinig  <sam@webkit.org>
3943
3944         Replace std::experimental::variant with WTF::Variant (or similar)
3945         https://bugs.webkit.org/show_bug.cgi?id=163626
3946
3947         Reviewed by Chris Dumez.
3948
3949         Rename std::experimental::variant, Variant. Move helpers get/holds_alternative/etc.
3950         into the WTF namespace.
3951
3952         * TestWebKitAPI/Tests/WTF/Variant.cpp:
3953         (TestWebKitAPI::TEST):
3954
3955 2016-10-18  Simon Fraser  <simon.fraser@apple.com>
3956
3957         Add a MiniBrowser menu item to apply page scale in WK1 and WK2
3958         https://bugs.webkit.org/show_bug.cgi?id=163627
3959
3960         Reviewed by Dean Jackson.
3961
3962         Rename setScale: to setViewScale: and add setPageScale:, hooking it up for WK1 (via exisiting SPI)
3963         and WK2 (via new SPI).
3964
3965         * MiniBrowser/mac/BrowserWindowController.h:
3966         * MiniBrowser/mac/BrowserWindowController.m:
3967         (-[BrowserWindowController pageScaleForMenuItemTag:]):
3968         (-[BrowserWindowController setPageScale:]):
3969         (-[BrowserWindowController setViewScale:]):
3970         (-[BrowserWindowController setScale:]): Deleted.
3971         * MiniBrowser/mac/MainMenu.xib:
3972         * MiniBrowser/mac/WK1BrowserWindowController.m:
3973         (-[WK1BrowserWindowController setPageScale:]):
3974         (-[WK1BrowserWindowController setViewScale:]):
3975         (areEssentiallyEqual):
3976         (-[WK1BrowserWindowController validateMenuItem:]):
3977         (-[WK1BrowserWindowController setScale:]): Deleted.
3978         * MiniBrowser/mac/WK2BrowserWindowController.m:
3979         (-[WK2BrowserWindowController setPageScale:]):
3980         (-[WK2BrowserWindowController viewScaleForMenuItemTag:]):
3981         (-[WK2BrowserWindowController setViewScale:]):
3982         (areEssentiallyEqual):
3983         (-[WK2BrowserWindowController validateMenuItem:]):
3984         (viewScaleForMenuItemTag): Deleted.
3985         (-[WK2BrowserWindowController setScale:]): Deleted.
3986
3987 2016-10-18  Anders Carlsson  <andersca@apple.com>
3988
3989         Add an beforeunload alert to the WebKitLegacy MiniBrowser
3990         https://bugs.webkit.org/show_bug.cgi?id=163634
3991
3992         Reviewed by Sam Weinig.
3993
3994         * MiniBrowser/mac/WK1BrowserWindowController.m:
3995         (-[WK1BrowserWindowController webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:]):
3996
3997 2016-10-18  Commit Queue  <commit-queue@webkit.org>
3998
3999         Unreviewed, rolling out r207443.
4000         https://bugs.webkit.org/show_bug.cgi?id=163616
4001
4002         "Caused 5% PLT regression" (Requested by krollin on #webkit).
4003
4004         Reverted changeset:
4005
4006         "Crash in ASCIICaseInsensitiveHash::hash() when a response has
4007         a null MIME type"
4008         https://bugs.webkit.org/show_bug.cgi?id=163476
4009         http://trac.webkit.org/changeset/207443
4010
4011 2016-10-18  Eric Carlson  <eric.carlson@apple.com>
4012
4013         [MediaStream] Resolve constraints and enumerate devices in the UI process
4014         https://bugs.webkit.org/show_bug.cgi?id=162147
4015         <rdar://problem/28803569>
4016
4017         Reviewed by Darin Adler.
4018
4019         * WebKitTestRunner/TestController.cpp:
4020         (WTR::TestController::resetPreferencesToConsistentValues): Enable mock capture devices.
4021         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Update for API changes.
4022
4023 2016-10-17  Megan Gardner  <megan_gardner@apple.com>
4024
4025         Add test and infrastructure for link popover
4026         https://bugs.webkit.org/show_bug.cgi?id=163406
4027
4028         Reviewed by Simon Fraser.
4029
4030         Added functionality test for link popovers.
4031         Can query for what URL is loaded, and that the popover has appeared or has
4032         been dismissed.
4033         Added a link popover test.
4034
4035         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
4036         (WTR::UIScriptController::platformSetDidShowForcePressPreviewCallback):
4037         (WTR::UIScriptController::platformSetDidDismissForcePressPreviewCallback):
4038         (WTR::UIScriptController::platformSetDidEndFormControlInteractionCallback): Deleted.
4039         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
4040         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
4041         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
4042         (WTR::UIScriptController::setDidShowForcePressPreviewCallback):
4043         (WTR::UIScriptController::didShowForcePressPreviewCallback):
4044         (WTR::UIScriptController::setDidDismissForcePressPreviewCallback):
4045         (WTR::UIScriptController::didDismissForcePressPreviewCallback):
4046         (WTR::UIScriptController::platformSetDidShowForcePressPreviewCallback):
4047         (WTR::UIScriptController::platformSetDidDismissForcePressPreviewCallback):
4048         (WTR::UIScriptController::didEndFormControlInteractionCallback): Deleted.
4049         (WTR::UIScriptController::platformSetDidEndFormControlInteractionCallback): Deleted.
4050         * TestRunnerShared/UIScriptContext/UIScriptController.h:
4051         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
4052         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
4053         (-[TestRunnerWKWebView dealloc]):
4054         (-[TestRunnerWKWebView didShowForcePressPreview]):
4055         (-[TestRunnerWKWebView didDismissForcePressPreview]):
4056         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
4057         (WTR::UIScriptController::platformSetDidShowForcePressPreviewCallback):
4058         (WTR::UIScriptController::platformSetDidDismissForcePressPreviewCallback):
4059         (WTR::UIScriptController::platformSetDidEndFormControlInteractionCallback): Deleted.
4060
4061 2016-10-17  Tim Horton  <timothy_horton@apple.com>
4062
4063         REGRESSION (r169805): WKWebView canGoBack returning YES when nothing is in the back-forward list after restoring session state
4064         https://bugs.webkit.org/show_bug.cgi?id=163573
4065         <rdar://problem/28744549>
4066
4067         Reviewed by Dan Bernstein.
4068
4069         * TestWebKitAPI/Tests/WebKit2/WKBackForwardList.mm:
4070         (TEST):
4071         Add a test ensuring that canGoBack returns NO after restoring session state without navigating.
4072
4073 2016-10-17  Andy Estes  <aestes@apple.com>
4074
4075         Crash in ASCIICaseInsensitiveHash::hash() when a response has a null MIME type
4076         https://bugs.webkit.org/show_bug.cgi?id=163476
4077         <rdar://problem/26941395>
4078
4079         Reviewed by Tim Horton.
4080
4081         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4082         * TestWebKitAPI/Tests/WebKit2Cocoa/LoadDataWithNilMIMEType.mm: Added.
4083         (TEST): Added an API test that passes a nil MIMEType to
4084         -[WKWebView loadData:MIMEType:characterEncodingName:baseURL:].
4085
4086 2016-10-17  Dean Jackson  <dino@apple.com>
4087
4088         Allow creation of ExtendedColors and make Color immutable
4089         https://bugs.webkit.org/show_bug.cgi?id=163557
4090         <rdar://problem/28805360>
4091
4092         Reviewed by Darin Adler and Dave Hyatt.
4093
4094         API tests for ExtendedColor.
4095
4096         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4097         * TestWebKitAPI/Tests/WebCore/ExtendedColor.cpp: Added.
4098         (TestWebKitAPI::TEST):
4099         (TestWebKitAPI::makeColor):
4100
4101 2016-10-17  JF Bastien  <jfbastien@apple.com>
4102
4103         WebAssembly JS API: implement basic stub
4104
4105         Implement the global WebAssembly JavaScript object, and its constructor +
4106         function properties as described in:
4107           https://github.com/WebAssembly/design/blob/master/JS.md
4108
4109         These don't do anything at the moment, the parent bug will take care of adding
4110         more functionality and associated tests.
4111
4112         WebAssembly JS API: implement basic stub
4113         https://bugs.webkit.org/show_bug.cgi?id=163404
4114
4115         Reviewed by Keith Miller.
4116
4117         * Scripts/run-jsc-stress-tests: use the new JSC option which exposes the WebAssembly object.
4118
4119 2016-10-17  Fujii Hironori  <Hironori.Fujii@sony.com>
4120
4121         resolve-ChangeLogs: Specify --no-page to git diff
4122         https://bugs.webkit.org/show_bug.cgi?id=163441
4123
4124         Reviewed by Darin Adler.
4125
4126         resolve-ChangeLogs shows the result after resolving by invoking
4127         'git diff'. It runs a pager for every ChangeLog if it is under
4128         TTY.
4129
4130         * Scripts/resolve-ChangeLogs:
4131         (showStatus): Specify '--no-page' to git diff.
4132
4133 2016-10-17  Michael Catanzaro  <mcatanzaro@igalia.com>
4134
4135         Move user agent quirks to cross-platform location
4136         https://bugs.webkit.org/show_bug.cgi?id=163508
4137
4138         Reviewed by Carlos Garcia Campos.
4139
4140         Move the test to a cross-platform location and improve it to better check the full list of
4141         sites we have defined quirks for.
4142
4143         * TestWebKitAPI/PlatformGTK.cmake:
4144         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/gtk/UserAgentQuirks.cpp.
4145         (TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
4146         (TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
4147         (TestWebKitAPI::TEST):
4148
4149 2016-10-17  Carlos Garcia Campos  <cgarcia@igalia.com>
4150
4151         [SOUP] Downloads should always sniff contents
4152         https://bugs.webkit.org/show_bug.cgi?id=163538
4153
4154         Reviewed by Michael Catanzaro.
4155
4156         Add a test case to check that the MIME type is correctly guessed for downloads.
4157
4158         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
4159         (writeNextChunk):
4160         (serverCallback):
4161         (testDownloadMIMEType):
4162         (beforeAll):
4163         (writeNextChunkIdle): Deleted.
4164
4165 2016-10-16  Daniel Bates  <dabates@apple.com>
4166
4167         Fix Perl warning about masked variable following <http://trac.webkit.org/changeset/207382>
4168         (https://bugs.webkit.org/show_bug.cgi?id=163456)
4169
4170         * Scripts/prepare-ChangeLog:
4171         (actuallyGenerateFunctionLists):
4172
4173 2016-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
4174
4175         Unreviewed. Fix GTK+ unit test /webkit2/WebKitWebContext/languages after r206949.
4176
4177         After r206949 navigator.language returns en-US instead of en-us. Language tags in Accept-Language header are
4178         actually case-insensitive, so we should actually do case-insensitive comparisons, but we only have
4179         g_assert_cmpstr for tests.
4180
4181         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
4182         (testWebContextLanguages):
4183
4184 2016-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
4185
4186         [GTK] WebKitWebPage URI not updated after URI is modified by InjectedBundlePageResourceLoadClient::willSendRequestForFrame
4187         https://bugs.webkit.org/show_bug.cgi?id=163389
4188
4189         Reviewed by Michael Catanzaro.
4190
4191         Update /webkit2/WebKitWebPage/get-uri test to check that web view and page uri always match even when request is
4192         modified by WebKitWebPage::send-request signal.
4193
4194         * TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp:
4195         (testWebPageURI):
4196
4197 2016-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
4198
4199         Document request not updated after willSendRequest is called for a redirect
4200         https://bugs.webkit.org/show_bug.cgi?id=163436
4201
4202         Reviewed by Michael Catanzaro.
4203
4204         Update /webkit2/WebKitWebView/active-uri test to check the active URI also when modified by
4205         WebKitPage::send-request signal in a web extension.
4206
4207         * TestWebKitAPI/Tests/WebKit2Gtk/TestLoaderClient.cpp:
4208         (testWebViewActiveURI):
4209         (serverCallback):
4210         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
4211         (sendRequestCallback):
4212         * TestWebKitAPI/gtk/WebKit2Gtk/LoadTrackingTest.cpp:
4213         (loadChangedCallback):
4214
4215 2016-10-15  Dan Bernstein  <mitz@apple.com>
4216
4217         REGRESSION (r191699): Contextual menu in Mail compose view doesn’t include any of the standard submenus
4218         https://bugs.webkit.org/show_bug.cgi?id=163492
4219         <rdar://problem/28654799>
4220
4221         Reviewed by Darin Adler.
4222
4223         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4224         * TestWebKitAPI/Tests/mac/ContextMenuDefaultItemsHaveTags.mm: Added.
4225         (-[ContextMenuDefaultItemsHaveTagsDelegate webView:didFinishLoadForFrame:]):
4226         (TestWebKitAPI::TEST):
4227
4228 2016-10-15  Daniel Bates  <dabates@apple.com>
4229
4230         prepare-ChangeLog erroneously said that a python __init__ method was deleted
4231         https://bugs.webkit.org/show_bug.cgi?id=163456
4232
4233         Reviewed by Simon Fraser.
4234
4235         Fixes an issue where prepare-ChangeLog may list as deleted functions that are
4236         immediately above added code.
4237
4238         Currently prepare-ChangeLog makes use of the same overlap detection algorithm
4239         to compute the list of deleted functions as it does to compute added and modified
4240         functions. We consider a function deleted if its entire function body and signature
4241         are removed. It is sufficient to compare the list of functions before the patch
4242         is applied and the list of functions are the patch is applied to identify
4243         these functions.
4244
4245         * Scripts/prepare-ChangeLog: Fix some style nits, including using Camel Case for
4246         variable names.
4247         (actuallyGenerateFunctionLists): Modified to call computeModifiedFunctions(). Always
4248         compute the list of functions in the file after the patch regardless of whether the
4249         patch only contains deletions. We will compare this list against the list of functions
4250         before the patch was applied to determine the deleted functions.
4251         (computeModifiedFunctions): Renamed; formerly named generateFunctionListsByRanges.
4252         Removed out argument for the seen functions as we no longer make use of when computing
4253         the list of deleted functions.
4254         (diffCommand): Update comment.
4255         (generateFunctionListsByRanges): Deleted.
4256         * Scripts/webkitperl/prepare-ChangeLog_unittest/generateFunctionLists.pl: Added more unit tests.
4257
4258 2016-10-14  Simon Fraser  <simon.fraser@apple.com>