Ensure status server logs go to log file
[WebKit-https.git] / Tools / ChangeLog
1 2017-01-19  Aakash Jain  <aakash_jain@apple.com>
2
3         Ensure status server logs go to log file
4         https://bugs.webkit.org/show_bug.cgi?id=167210
5
6         Reviewed by Alexey Proskuryakov.
7
8         * Scripts/webkitpy/common/net/statusserver.py:
9         (StatusServer.next_work_item): Change log level from debug to info in
10         order to facilitate deubgging issues.
11         (StatusServer.update_work_items): Same.
12
13 2017-01-19  Megan Gardner  <megan_gardner@apple.com>
14
15         Additional selection tests and interpolation fix
16         https://bugs.webkit.org/show_bug.cgi?id=167171
17
18         Reviewed by Simon Fraser.
19
20         We weren't adding the final event when interpolating event streams.
21
22         * WebKitTestRunner/ios/HIDEventGenerator.mm:
23         (-[HIDEventGenerator interpolatedEvents:]):
24
25 2017-01-19  Myles C. Maxfield  <mmaxfield@apple.com>
26
27         [Cocoa] Variation fonts are erroneously disabled on iOS
28         https://bugs.webkit.org/show_bug.cgi?id=167172
29
30         Reviewed by Simon Fraser.
31
32         OpenSource builders don't seem to understand sdk=embedded*.
33
34         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
35
36 2017-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
37
38         Unreviewed. Fix GTK+ unit tests failing since r210531.
39
40         Avoid using paths to files that don't actually exist.
41
42         * TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp:
43         (testWebKitConsoleMessageNetworkError):
44         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
45         (testContextMenuDefaultMenu):
46         * TestWebKitAPI/Tests/WebKit2Gtk/resources/silence.mpg: Added.
47         * TestWebKitAPI/Tests/WebKit2Gtk/resources/simple.json: Added.
48         * TestWebKitAPI/Tests/WebKit2Gtk/resources/tracks.ogg: Added.
49
50 2017-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
51
52         [GTK] Provide API to set proxy settings
53         https://bugs.webkit.org/show_bug.cgi?id=128674
54
55         Reviewed by Michael Catanzaro.
56
57         Add tests for new proxy settings API.
58
59         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
60         (serverCallback):
61         (ProxyTest::ProxyTest):
62         (ProxyTest::~ProxyTest):
63         (ProxyTest::loadURIAndGetMainResourceData):
64         (ProxyTest::proxyServerPortAsString):
65         (testWebContextProxySettings):
66         (beforeAll):
67
68 2017-01-19  Timothy Hatcher  <timothy@hatcher.name>
69
70         Add back my old email address so old commits will still match it.
71
72         * Scripts/webkitpy/common/config/contributors.json:
73
74 2017-01-19  Timothy Hatcher  <timothy@hatcher.name>
75
76         Remove my old email address from contributors.json and watchlist.
77
78         * Scripts/validate-committer-lists:
79         (CommitterListFromGit): Change the mapping to the correct email.
80         * Scripts/webkitpy/common/config/contributors.json:
81         * Scripts/webkitpy/common/config/watchlist:
82
83 2017-01-18  Ryan Haddad  <ryanhaddad@apple.com>
84
85         Unreviewed, rolling out r210848.
86
87         This change introduced media-related LayoutTest failures and
88         crashes on macOS.
89
90         Reverted changeset:
91
92         "[Modern Media Controls] Turn modern media controls on by
93         default"
94         https://bugs.webkit.org/show_bug.cgi?id=165668
95         http://trac.webkit.org/changeset/210848
96
97 2017-01-18  Andreas Kling  <akling@apple.com>
98
99         Document::securityOrigin() should return a reference.
100         <https://webkit.org/b/167124>
101
102         Reviewed by Sam Weinig.
103
104         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
105         (TestWebKitAPI::TEST_F):
106
107 2017-01-18  Per Arne Vollan  <pvollan@apple.com>
108
109         [Win] Clipboard tests are flaky.
110         https://bugs.webkit.org/show_bug.cgi?id=167088
111
112         Reviewed by Brent Fulgham.
113
114         Tests involving the clipboard are flaky when running with multiple DRTs, since the clipboard is global. 
115         We can fix this by assigning each DRT a separate window station (each window station has its own clipboard).
116
117         * DumpRenderTree/win/DumpRenderTree.cpp:
118         (main):
119
120 2017-01-18  Antoine Quint  <graouts@apple.com>
121
122         [Modern Media Controls] Turn modern media controls on by default
123         https://bugs.webkit.org/show_bug.cgi?id=165668
124
125         Reviewed by Dean Jackson.
126
127         Enabled modern media controls by default in test runners. 
128
129         * DumpRenderTree/TestOptions.h:
130         * WebKitTestRunner/TestOptions.h:
131
132 2017-01-17  Michael Catanzaro  <mcatanzaro@igalia.com>
133
134         Unreviewed, rolling out r210834
135         https://bugs.webkit.org/show_bug.cgi?id=165668
136
137         It introduced dozens of test timeouts.
138
139         Reverted changeset:
140         "[Modern Media Controls] Turn modern media controls on by default"
141         https://bugs.webkit.org/show_bug.cgi?id=165668
142         http://trac.webkit.org/changeset/210834
143
144 2017-01-17  Antoine Quint  <graouts@apple.com>
145
146         [Modern Media Controls] Turn modern media controls on by default
147         https://bugs.webkit.org/show_bug.cgi?id=165668
148
149         Reviewed by Dean Jackson.
150
151         Enabled modern media controls by default in test runners. 
152
153         * DumpRenderTree/TestOptions.h:
154         * WebKitTestRunner/TestOptions.h:
155
156 2017-01-17  Chris Dumez  <cdumez@apple.com>
157
158         Document title changed twice when setting document.title
159         https://bugs.webkit.org/show_bug.cgi?id=167065
160
161         Reviewed by Darin Adler.
162
163         Add WebKit2GTK API test that was written by Michael Catanzaro.
164
165         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
166         (testWebViewTitleChange):
167         (beforeAll):
168
169 2017-01-17  Joseph Pecoraro  <pecoraro@apple.com>
170
171         ENABLE(USER_TIMING) Not Defined for Apple Windows or OS X Ports
172         https://bugs.webkit.org/show_bug.cgi?id=116551
173         <rdar://problem/13949830>
174
175         Reviewed by Alex Christensen.
176
177         * Scripts/webkitperl/FeatureList.pm:
178         Remove stale RESOURCE_TIMING references which are now a runtime enabled feature
179         that is part of the existing WEB_TIMING feature.
180
181         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
182
183 2017-01-17  Jonathan Bedard  <jbedard@apple.com>
184
185         'webkit-patch post' no longer works with moved/copied files
186         https://bugs.webkit.org/show_bug.cgi?id=166914
187         <rdar://problem/29979707>
188
189         Reviewed by Daniel Bates.
190
191         SVN 1.9 has a bug where when a file has been moved or copied, the svn diff of the new
192         file outputs only the "Index:" line with an empty body.  This workaround
193         ignores such output from svn diff.  A issue has been filed with SVN, a link to the
194         public email list tracking this bug is below.
195         http://mail-archives.apache.org/mod_mbox/subversion-users/201701.mbox/%3cCF9BDE0A-7454-4405-8259-1120C6B76A03@apple.com%3e
196         
197
198         * Scripts/svn-create-patch:
199         (generateDiff): Ignore an "Index:" line with an empty body.
200
201 2017-01-16  Joseph Pecoraro  <pecoraro@apple.com>
202
203         Remove the REQUEST_ANIMATION_FRAME flag
204         https://bugs.webkit.org/show_bug.cgi?id=156980
205         <rdar://problem/25906849>
206
207         Reviewed by Simon Fraser.
208
209         * Scripts/webkitperl/FeatureList.pm:
210         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
211
212 2017-01-15  Sam Weinig  <sam@webkit.org>
213
214         Add the ability to use numbers in makeString()
215         https://bugs.webkit.org/show_bug.cgi?id=167087
216
217         Reviewed by Darin Adler.
218
219         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
220         * TestWebKitAPI/Tests/WTF/StringConcatenate.cpp: Added.
221         Add tests for StringConcatenate, focusing on new numeric additions.
222
223 2017-01-15  Michael Catanzaro  <mcatanzaro@igalia.com>
224
225         Unreviewed, remove stale comment.
226
227         This test was fixed by r163173.
228
229         * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
230
231 2017-01-14  Yusuke Suzuki  <utatane.tea@gmail.com>
232
233         Annotate large string tests with largeHeap
234         https://bugs.webkit.org/show_bug.cgi?id=167054
235
236         Reviewed by Filip Pizlo.
237
238         * Scripts/run-javascriptcore-tests:
239         * Scripts/run-jsc-stress-tests:
240
241 2017-01-14  Joseph Pecoraro  <pecoraro@apple.com>
242
243         Remove stale references to ENABLE_ES6_GENERATORS and ENABLE_PROMISES
244         https://bugs.webkit.org/show_bug.cgi?id=167043
245
246         Reviewed by Darin Adler.
247
248         * Scripts/webkitperl/FeatureList.pm:
249
250 2017-01-13  Joseph Pecoraro  <pecoraro@apple.com>
251
252         Remove ENABLE(DETAILS_ELEMENT) guards
253         https://bugs.webkit.org/show_bug.cgi?id=167042
254
255         Reviewed by Alex Christensen.
256
257         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
258
259 2017-01-13  Said Abou-Hallawa  <sabouhallawa@apple.com>
260
261         26 MotionMark performance tests failing
262         https://bugs.webkit.org/show_bug.cgi?id=166854
263
264         Reviewed by Ryosuke Niwa.
265
266         Unrelated change. This is the last place that we need to rename Animometer
267         to MotionMark.
268
269         * Scripts/webkitpy/common/config/watchlist:
270
271 2017-01-13  Yusuke Suzuki  <utatane.tea@gmail.com>
272
273         run-jsc-benchmarks' echo should have -e option
274         https://bugs.webkit.org/show_bug.cgi?id=167009
275
276         Reviewed by Sam Weinig.
277
278         echo requires `-e` option to use escape sequence.
279         Without it, in some environment (in my Fedora 25), the escape sequence is not
280         recognized and just dumped as `\c` etc.
281
282         * Scripts/run-jsc-benchmarks:
283
284 2017-01-12  Chris Dumez  <cdumez@apple.com>
285
286         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
287         https://bugs.webkit.org/show_bug.cgi?id=166995
288
289         Reviewed by Jer Noble.
290
291         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
292         as some people are having trouble building without it.
293
294         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
295
296 2017-01-12  Sam Weinig  <sam@webkit.org>
297
298         Add the ability to filter the set of bindings tests you want to run
299         https://bugs.webkit.org/show_bug.cgi?id=166977
300
301         Reviewed by Tim Horton.
302
303         Allows doing things like:
304             run-bindings-tests TestObj* TestCEReactions*
305         
306         to run only those tests that match the patterns.
307
308         * Scripts/run-bindings-tests:
309         (main):
310         Switch to using optparse and pass the remaining args as the filters.
311
312         * Scripts/webkitpy/bindings/main.py:
313         (BindingsTests.__init__):
314         Store the pattens.
315
316         (BindingsTests.test_matches_patterns):
317         Add helper predicate to determine if a test should be run. When no
318         patterns are present, all tests should run.
319
320         (BindingsTests.run_tests):
321         Filter tests using the passed in patterns.
322
323 2017-01-12  Per Arne Vollan  <pvollan@apple.com>
324
325         Followup fix after r210503.
326         https://bugs.webkit.org/show_bug.cgi?id=166887
327
328         Reviewed by Alex Christensen.
329
330         After <http://trac.webkit.org/changeset/210503>, test results are written to a
331         duplicated file handle on Windows. This patch fixes the remaining call sites.
332
333         * DumpRenderTree/PixelDumpSupport.cpp:
334         * DumpRenderTree/TestRunner.cpp:
335         (TestRunner::waitToDumpWatchdogTimerFired):
336         * DumpRenderTree/TestRunner.h:
337         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
338         * DumpRenderTree/win/DumpRenderTree.cpp:
339         * DumpRenderTree/win/DumpRenderTreeWin.h:
340         * DumpRenderTree/win/TestRunnerWin.cpp:
341         (TestRunner::setSpellCheckerLoggingEnabled):
342
343 2017-01-11  Megan Gardner  <megan_gardner@apple.com>
344
345         Add committer status for Megan
346         https://bugs.webkit.org/show_bug.cgi?id=166954
347
348         Reviewed by Tim Horton.
349
350         Add committer status for Megan Gardner
351
352         * Scripts/webkitpy/common/config/contributors.json:
353
354 2017-01-11  Brent Fulgham  <bfulgham@apple.com>
355
356         Unreviewed test fix after r210599.
357
358         * TestWebKitAPI/Tests/WebKit2/WKPageIsPlayingAudio.cpp:
359         (TestWebKitAPI::TEST): Remove debugging code that was causing a timeout.
360
361 2017-01-11  Brent Fulgham  <bfulgham@apple.com>
362
363         Unreviewed build fix after r210599.
364
365         Add missing files.
366
367         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
368         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
369
370 2017-01-11  Brent Fulgham  <bfulgham@apple.com>
371
372         File scheme should not allow access of a resource on a different volume.
373         https://bugs.webkit.org/show_bug.cgi?id=158552
374         <rdar://problem/15307582>
375
376         Reviewed by Alex Christensen.
377
378         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
379         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
380         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
381
382 2017-01-11  Ryan Haddad  <ryanhaddad@apple.com>
383
384         Unreviewed, rolling out r210571.
385
386         This change broke the 32-bit macOS build and caused LayoutTest
387         failures.
388
389         Reverted changeset:
390
391         "File scheme should not allow access of a resource on a
392         different volume."
393         https://bugs.webkit.org/show_bug.cgi?id=158552
394         http://trac.webkit.org/changeset/210571
395
396 2017-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
397
398         [GTK] install-dependencies script misses gdb
399         https://bugs.webkit.org/show_bug.cgi?id=166917
400
401         Reviewed by Michael Catanzaro.
402
403         gdb is needed for generating the crash logs.
404
405         * gtk/install-dependencies:
406
407 2017-01-10  Michael Catanzaro  <mcatanzaro@igalia.com>
408
409         [GTK] No way for applications to set notification permissions without waiting for permission request
410         https://bugs.webkit.org/show_bug.cgi?id=163366
411
412         Reviewed by Carlos Garcia Campos.
413
414         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
415         (testWebViewNotification):
416         (setInitialNotificationPermissionsAllowedCallback):
417         (setInitialNotificationPermissionsDisallowedCallback):
418         (testWebViewNotificationInitialPermissionAllowed):
419         (testWebViewNotificationInitialPermissionDisallowed):
420         (beforeAll):
421         * TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:
422         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
423         (WebViewTest::WebViewTest):
424         (WebViewTest::initializeWebView):
425         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
426
427 2017-01-10  Tim Horton  <timothy_horton@apple.com>
428
429         MobileMiniBrowser tests don't work by default
430         https://bugs.webkit.org/show_bug.cgi?id=166910
431
432         Reviewed by Alex Christensen.
433
434         * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/xcshareddata/xcschemes/MobileMiniBrowserUITests.xcscheme: Added.
435         Add a shared scheme; the Makefile depends on the MobileMiniBrowserUITests scheme existing, at the very least.
436
437 2017-01-10  Brent Fulgham  <bfulgham@apple.com>
438
439         File scheme should not allow access of a resource on a different volume.
440         https://bugs.webkit.org/show_bug.cgi?id=158552
441         <rdar://problem/15307582>
442
443         Reviewed by Alex Christensen.
444
445         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
446         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
447         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
448
449 2017-01-10  Mark Lam  <mark.lam@apple.com>
450
451         Reverting run-jsc-stress-tests' $buildType to use string values.
452         https://bugs.webkit.org/show_bug.cgi?id=166912
453
454         Rubber stamped by Filip Pizlo.
455
456         This is so that we can test for it in the tests e.g.
457         //@ if $buildType == "debug" then runDefault("--maxSingleAllocationSize=1048576") else skip end
458
459         * Scripts/run-jsc-stress-tests:
460
461 2017-01-10  Ryosuke Niwa  <rniwa@webkit.org>
462
463         Temporarily add back the file removed in r210463 to unbreak internal bots.
464
465         * Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch: Copied from Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch.
466
467 2017-01-10  Jonathan Bedard  <jbedard@apple.com>
468
469         svn-apply failed to apply a patch (deleting file with svn property)
470         https://bugs.webkit.org/show_bug.cgi?id=165953
471
472         Reviewed by Daniel Bates.
473
474         * Scripts/VCSUtils.pm:
475         (parseSvnPropertyValue): The beginning of a diff will cause an early exit in the case of no empty newlines.
476         * Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl: Add tests without break between diffs for properties.
477
478 2017-01-10  Ryan Haddad  <ryanhaddad@apple.com>
479
480         Update flakiness dashboard configuration.
481         https://bugs.webkit.org/show_bug.cgi?id=166869
482
483         Reviewed by Alexey Proskuryakov.
484
485         * TestResultServer/static-dashboards/builders.jsonp:
486         * TestResultServer/static-dashboards/flakiness_dashboard.js:
487
488 2017-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
489
490         [GTK] Stop honoring the environment variable USE_NATIVE_XDISPLAY
491         https://bugs.webkit.org/show_bug.cgi?id=165232
492
493         Unreviewed follow-up patch after r210539 and r210523.
494
495         Instead of using that environment variable, the argument
496         --display-server=xorg should be passed now.
497
498         The GTK+ performance bot was the only bot using this, and is
499         already passing --display-server=xorg after r210539.
500
501         * Scripts/webkitpy/port/gtk.py:
502         (GtkPort._driver_class):
503
504 2017-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
505
506         [GTK] Add a new release test bot for Wayland and pass --display-server=xorg to the GTK Perf bot.
507         https://bugs.webkit.org/show_bug.cgi?id=166872
508
509         Reviewed by Michael Catanzaro.
510
511         Add the new wayland release test bot as a test-only bot. It will download the built product from the release build-only bot.
512         Define the required "--display-server=driver" in the bot additionalArguments config entry.
513         Implement support for honoring additionalArguments on the RunGtkAPITests and RunAndUploadPerfTests steps.
514         The step RunWebKitTests already has support for it.
515
516         * BuildSlaveSupport/build.webkit.org-config/config.json:
517         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
518         (RunGtkAPITests.start):
519         (RunAndUploadPerfTests.start):
520         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
521
522 2017-01-09  Ryan Haddad  <ryanhaddad@apple.com>
523
524         Unreviewed, rolling out r210531.
525
526         This change broke the 32-bit macOS build and caused LayoutTest
527         failures.
528
529         Reverted changeset:
530
531         "File scheme should not allow access of a resource on a
532         different volume."
533         https://bugs.webkit.org/show_bug.cgi?id=158552
534         http://trac.webkit.org/changeset/210531
535
536 2017-01-09  Brent Fulgham  <bfulgham@apple.com>
537
538         File scheme should not allow access of a resource on a different volume.
539         https://bugs.webkit.org/show_bug.cgi?id=158552
540         <rdar://problem/15307582>
541
542         Reviewed by Alex Christensen.
543
544         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new files.
545         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.html: Added.
546         * TestWebKitAPI/Tests/mac/CrossPartitionFileSchemeAccess.mm: Added.
547
548 2017-01-09  Carlos Alberto Lopez Perez  <clopez@igalia.com>
549
550         [GTK][Wayland] Allow running the layout tests under a native Wayland environment.
551         https://bugs.webkit.org/show_bug.cgi?id=165232
552
553         Reviewed by Michael Catanzaro.
554
555         Add a new WaylandDriver to run the tests in the user current wayland session.
556
557         Also merge all the configuration options for selecting the display server inside one
558         switch --display-server=xvfb/xorg/wayland/weston (defaulting to xvfb).
559
560         This switch is supported on the scripts: run-gtk-tests, run-perf-tests and run-webkit-tests.
561
562         * Scripts/run-gtk-tests: Add missing logging.basicConfig() initialization for the error logger.
563         (TestRunner._create_driver):
564         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
565         (parse_args):
566         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
567         (PerfTestsRunner._parse_args):
568         * Scripts/webkitpy/port/gtk.py:
569         (GtkPort.__init__):
570         (GtkPort._driver_class):
571         (GtkPort._search_paths):
572         * Scripts/webkitpy/port/waylanddriver.py: Added.
573         (WaylandDriver):
574         (WaylandDriver.check_driver):
575         (WaylandDriver._setup_environ_for_test):
576         (WaylandDriver._start):
577
578 2017-01-09  Andy Estes  <aestes@apple.com>
579
580         [QuickLook] Add a layout test for webkit.org/b/135651
581         https://bugs.webkit.org/show_bug.cgi?id=166855
582
583         Reviewed by Andreas Kling.
584
585         * DumpRenderTree/mac/FrameLoadDelegate.mm:
586         (-[FrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]): Added output for
587         errors with code WebKitErrorCannotShowURL.
588         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
589         (WTR::InjectedBundlePage::didFailProvisionalLoadWithErrorForFrame): Made the error output
590         not specific to WebKit2 error codes.
591
592 2017-01-09  Antoine Quint  <graouts@apple.com>
593
594         Support webkit-test-runner key-value pairs in http tests in DumpRenderTree
595         https://bugs.webkit.org/show_bug.cgi?id=166837
596
597         Reviewed by Alex Christensen.
598
599         We now correctly handle the --absolutePath argument in DumpRenderTree and use
600         the provided value when trying to determine the path to the test file. Failing
601         that, we use the computed URL or the raw path provided to cover all cases.
602         
603         This was tested in the context of https://bugs.webkit.org/show_bug.cgi?id=165668
604         by applying this patch and seeing the number test failures dramatically reduced
605         with WK1 due to the option to turn modern media controls off for older media controls
606         tests.
607
608         * DumpRenderTree/DumpRenderTree.h:
609         * DumpRenderTree/DumpRenderTreeCommon.cpp:
610         (parseInputLine):
611         * DumpRenderTree/TestOptions.h:
612         * DumpRenderTree/TestOptions.mm:
613         (TestOptions::TestOptions):
614         * DumpRenderTree/mac/DumpRenderTree.mm:
615         (runTest):
616
617 2017-01-09  Milan Crha  <mcrha@redhat.com>
618
619         prepare-ChangeLog: Correct help string for --style option
620         https://bugs.webkit.org/show_bug.cgi?id=166725
621
622         Reviewed by Alexey Proskuryakov.
623
624         * Scripts/prepare-ChangeLog:
625         (main):
626
627 2017-01-09  Lucas Forschler  <lforschler@apple.com>
628
629         https://bugs.webkit.org/show_bug.cgi?id=166839
630         Add php7 support for macOS.
631         Mirror the debian logic to look for a php7 module on disk, and return the appropriate apache config file.
632
633         Reviewed by Alexey Proskuryakov.
634
635         * Scripts/webkitpy/port/base.py:
636         (Port._is_darwin_php_version_7):
637         (Port._debian_php_version):
638         (Port):
639         (Port._darwin_php_version):
640         (Port._apache_config_file_name_for_platform):
641
642 2017-01-06  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
643
644         [GTK] Should support key and code properties on keyboard events
645         https://bugs.webkit.org/show_bug.cgi?id=166759
646
647         Reviewed by Carlos Garcia Campos.
648
649         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
650         (WTR::getGDKKeySymForKeyRef): add missing modifier keys which were being reported as 'l' and 'r' only
651         on tests.
652
653 2017-01-06  Per Arne Vollan  <pvollan@apple.com>
654
655         [Win] Some tests are flaky because certain DLLs are writing to stdout.
656         https://bugs.webkit.org/show_bug.cgi?id=166760
657
658         Reviewed by Darin Adler.
659
660         Some tests are flaky because certain DLLs are writing to stdout, giving incorrect test results.
661         We can work around that by duplicating and redirecting stdout.
662
663         * DumpRenderTree/PixelDumpSupport.cpp:
664         (dumpWebViewAsPixelsAndCompareWithExpected):
665         (printPNG):
666         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
667         (logEventProc):
668         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
669         (DRTDesktopNotificationPresenter::showDesktopNotification):
670         (DRTDesktopNotificationPresenter::cancelDesktopNotification):
671         (DRTDesktopNotificationPresenter::requestNotificationPermission):
672         * DumpRenderTree/win/DumpRenderTree.cpp:
673         (dumpFrameScrollPosition):
674         (dumpHistoryItem):
675         (dumpBackForwardList):
676         (dump):
677         (runTest):
678         (main):
679         * DumpRenderTree/win/DumpRenderTreeWin.h:
680         * DumpRenderTree/win/EditingDelegate.cpp:
681         (EditingDelegate::shouldBeginEditingInDOMRange):
682         (EditingDelegate::shouldEndEditingInDOMRange):
683         (EditingDelegate::shouldInsertNode):
684         (EditingDelegate::shouldInsertText):
685         (EditingDelegate::shouldDeleteDOMRange):
686         (EditingDelegate::shouldChangeSelectedDOMRange):
687         (EditingDelegate::shouldApplyStyle):
688         (EditingDelegate::shouldChangeTypingStyle):
689         (EditingDelegate::doPlatformCommand):
690         (EditingDelegate::webViewDidBeginEditing):
691         (EditingDelegate::webViewDidChange):
692         (EditingDelegate::webViewDidEndEditing):
693         (EditingDelegate::webViewDidChangeTypingStyle):
694         (EditingDelegate::webViewDidChangeSelection):
695         * DumpRenderTree/win/FrameLoadDelegate.cpp:
696         (FrameLoadDelegate::didStartProvisionalLoadForFrame):
697         (FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame):
698         (FrameLoadDelegate::didChangeLocationWithinPageForFrame):
699         (FrameLoadDelegate::didFailProvisionalLoadWithError):
700         (FrameLoadDelegate::didCommitLoadForFrame):
701         (FrameLoadDelegate::didReceiveTitle):
702         (FrameLoadDelegate::didFinishLoadForFrame):
703         (FrameLoadDelegate::didFailLoadWithError):
704         (FrameLoadDelegate::willPerformClientRedirectToURL):
705         (FrameLoadDelegate::didCancelClientRedirectForFrame):
706         (FrameLoadDelegate::windowScriptObjectAvailable):
707         (FrameLoadDelegate::didFinishDocumentLoadForFrame):
708         (FrameLoadDelegate::didHandleOnloadEventsForFrame):
709         (FrameLoadDelegate::didDisplayInsecureContent):
710         (FrameLoadDelegate::didRunInsecureContent):
711         (FrameLoadDelegate::webViewProgressFinishedNotification):
712         * DumpRenderTree/win/HistoryDelegate.cpp:
713         (HistoryDelegate::didNavigateWithNavigationData):
714         (HistoryDelegate::didPerformClientRedirectFromURL):
715         (HistoryDelegate::didPerformServerRedirectFromURL):
716         (HistoryDelegate::updateHistoryTitle):
717         (HistoryDelegate::populateVisitedLinksForWebView):
718         * DumpRenderTree/win/PolicyDelegate.cpp:
719         (PolicyDelegate::decidePolicyForNavigationAction):
720         (PolicyDelegate::unableToImplementPolicyWithError):
721         * DumpRenderTree/win/ResourceLoadDelegate.cpp:
722         (ResourceLoadDelegate::willSendRequest):
723         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
724         (ResourceLoadDelegate::didReceiveResponse):
725         (ResourceLoadDelegate::didFinishLoadingFromDataSource):
726         (ResourceLoadDelegate::didFailLoadingWithError):
727         * DumpRenderTree/win/TestRunnerWin.cpp:
728         (TestRunner::addDisallowedURL):
729         (TestRunner::originsWithApplicationCache):
730         (TestRunner::setStorageDatabaseIdleInterval):
731         (TestRunner::closeIdleLocalStorageDatabases):
732         (TestRunner::copyDecodedHostName):
733         (TestRunner::copyEncodedHostName):
734         (TestRunner::numberOfPendingGeolocationPermissionRequests):
735         (TestRunner::isGeolocationProviderActive):
736         (TestRunner::pathToLocalResource):
737         (TestRunner::setMockDeviceOrientation):
738         (TestRunner::setMockGeolocationPosition):
739         (TestRunner::setMockGeolocationPositionUnavailableError):
740         (TestRunner::setSpatialNavigationEnabled):
741         (TestRunner::setAutomaticLinkDetectionEnabled):
742         (TestRunner::isCommandEnabled):
743         (TestRunner::authenticateSession):
744         (TestRunner::addChromeInputField):
745         (TestRunner::removeChromeInputField):
746         (TestRunner::focusWebView):
747         (TestRunner::grantWebNotificationPermission):
748         (TestRunner::denyWebNotificationPermission):
749         (TestRunner::removeAllWebNotificationPermissions):
750         (TestRunner::simulateWebNotificationClick):
751         (TestRunner::imageCountInGeneralPasteboard):
752         * DumpRenderTree/win/UIDelegate.cpp:
753         (UIDelegate::runJavaScriptAlertPanelWithMessage):
754         (UIDelegate::runJavaScriptConfirmPanelWithMessage):
755         (UIDelegate::runJavaScriptTextInputPanelWithPrompt):
756         (UIDelegate::runBeforeUnloadConfirmPanelWithMessage):
757         (UIDelegate::webViewAddMessageToConsole):
758         (UIDelegate::exceededDatabaseQuota):
759         (UIDelegate::setStatusText):
760         (UIDelegate::didPressMissingPluginButton):
761
762 2017-01-07  Tim Horton  <timothy_horton@apple.com>
763
764         Add a setting to create editable MiniBrowser windows by default
765         https://bugs.webkit.org/show_bug.cgi?id=166806
766
767         Reviewed by Beth Dakin.
768
769         * MiniBrowser/mac/AppDelegate.m:
770         (-[BrowserAppDelegate createBrowserWindowController:]):
771         (-[BrowserAppDelegate applicationDidFinishLaunching:]):
772         (-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
773         * MiniBrowser/mac/SettingsController.h:
774         * MiniBrowser/mac/SettingsController.m:
775         (-[SettingsController _populateMenu]):
776         (-[SettingsController validateMenuItem:]):
777         (-[SettingsController toggleCreateEditorByDefault:]):
778         (-[SettingsController createEditorByDefault]):
779         Add a setting and update the key equivalents accordingly.
780         Also make sure to make the right kind of window on launch.
781
782 2017-01-07  Tim Horton  <timothy_horton@apple.com>
783
784         Fix the 32-bit build.
785
786         * MiniBrowser/mac/BrowserWindowController.h:
787         * MiniBrowser/mac/BrowserWindowController.m:
788
789 2017-01-07  Tim Horton  <timothy_horton@apple.com>
790
791         Fix the 32-bit build.
792
793         * MiniBrowser/mac/BrowserWindowController.m:
794
795 2017-01-07  Tim Horton  <timothy_horton@apple.com>
796
797         Make it possible to drop HTML files on the MiniBrowser icon
798         https://bugs.webkit.org/show_bug.cgi?id=166802
799
800         Reviewed by Simon Fraser.
801
802         * MiniBrowser/mac/AppDelegate.m:
803         (-[BrowserAppDelegate application:openFile:]):
804         * MiniBrowser/mac/Info.plist:
805         If you're using an editable window, the usual trick of dropping on the
806         window doesn't work anymore (it makes an <attachment> instead).
807
808 2017-01-07  Tim Horton  <timothy_horton@apple.com>
809
810         MiniBrowser window gets smaller each time it is instantiated
811         https://bugs.webkit.org/show_bug.cgi?id=166807
812
813         Reviewed by Andy Estes.
814
815         * MiniBrowser/mac/BrowserWindowController.m:
816         (-[BrowserWindowController windowDidLoad]):
817         * MiniBrowser/mac/BrowserWindow.xib:
818         Turn on full-window content view support with IB, instead of waiting
819         until after the views have been loaded. This seems to resolve the
820         longstanding ever-shrinking-window problem.
821
822 2017-01-07  Tim Horton  <timothy_horton@apple.com>
823
824         Add indent/outdent items to MiniBrowser's new format menu
825         https://bugs.webkit.org/show_bug.cgi?id=166805
826
827         Reviewed by Dan Bernstein.
828
829         * MiniBrowser/mac/MainMenu.xib:
830
831 2017-01-07  Tim Horton  <timothy_horton@apple.com>
832
833         Add a stock Format menu to MiniBrowser
834         https://bugs.webkit.org/show_bug.cgi?id=166804
835
836         Reviewed by Andy Estes.
837
838         * MiniBrowser/mac/MainMenu.xib:
839         Many of the features automatically work with editable web views.
840         However, this seems to expose a bug where none of the font-related features
841         (Cmd-B, for example) work until the first time the font panel is shown,
842         per process, which will need to be investigated separately.
843
844 2017-01-07  Tim Horton  <timothy_horton@apple.com>
845
846         Remove unused applicationWillTerminate methods from MiniBrowser
847         https://bugs.webkit.org/show_bug.cgi?id=166803
848
849         Reviewed by Andy Estes.
850
851         * MiniBrowser/mac/AppDelegate.m:
852         (-[BrowserAppDelegate applicationWillTerminate:]): Deleted.
853         * MiniBrowser/mac/BrowserWindowController.h:
854         * MiniBrowser/mac/BrowserWindowController.m:
855         (-[BrowserWindowController applicationTerminating]): Deleted.
856         * MiniBrowser/mac/WK1BrowserWindowController.m:
857         (-[WK1BrowserWindowController applicationTerminating]): Deleted.
858         * MiniBrowser/mac/WK2BrowserWindowController.m:
859         (-[WK2BrowserWindowController applicationTerminating]): Deleted.
860
861 2017-01-07  Tim Horton  <timothy_horton@apple.com>
862
863         Add the ability to create empty contentEditable windows in MiniBrowser
864         https://bugs.webkit.org/show_bug.cgi?id=166801
865
866         Reviewed by Wenson Hsieh.
867
868         * MiniBrowser/mac/AppDelegate.h:
869         * MiniBrowser/mac/AppDelegate.m:
870         (-[BrowserAppDelegate createBrowserWindowController:]):
871         (-[BrowserAppDelegate newWindow:]):
872         (-[BrowserAppDelegate newEditorWindow:]):
873         (-[BrowserAppDelegate openDocument:]):
874         (-[BrowserAppDelegate _updateNewWindowKeyEquivalents]):
875         * MiniBrowser/mac/BrowserWindowController.h:
876         * MiniBrowser/mac/BrowserWindowController.m:
877         (-[BrowserWindowController loadHTMLString:]):
878         (-[BrowserWindowController toggleEditable:]):
879         * MiniBrowser/mac/MainMenu.xib:
880         * MiniBrowser/mac/WK1BrowserWindowController.m:
881         (-[WK1BrowserWindowController awakeFromNib]):
882         (-[WK1BrowserWindowController loadHTMLString:]):
883         (-[WK1BrowserWindowController validateMenuItem:]):
884         (-[WK1BrowserWindowController setEditable:]):
885         (-[WK1BrowserWindowController updateTitle:]):
886         * MiniBrowser/mac/WK2BrowserWindowController.m:
887         (-[WK2BrowserWindowController awakeFromNib]):
888         (-[WK2BrowserWindowController validateMenuItem:]):
889         (-[WK2BrowserWindowController setEditable:]):
890         (-[WK2BrowserWindowController updateTitle:]):
891         (-[WK2BrowserWindowController loadHTMLString:]):
892         Merge more functionality from WebEditingTester.
893         Add two menu items for creating empty editable WebKit1/2 windows.
894         Add a menu item to the Edit menu to toggle editability on any window.
895
896 2017-01-07  Tim Horton  <timothy_horton@apple.com>
897
898         Implement find-in-page in MiniBrowser
899         https://bugs.webkit.org/show_bug.cgi?id=166799
900
901         Reviewed by Andy Estes.
902
903         * MiniBrowser/mac/BrowserWindow.xib:
904         * MiniBrowser/mac/BrowserWindowController.h:
905         * MiniBrowser/mac/BrowserWindowController.m:
906         (-[BrowserWindowController find:]): Deleted.
907         * MiniBrowser/mac/MainMenu.xib:
908         * MiniBrowser/mac/WK1BrowserWindowController.m:
909         (-[WK1BrowserWindowController toggleShrinkToFit:]):
910         (-[WK1BrowserWindowController find:]): Deleted.
911         * MiniBrowser/mac/WK2BrowserWindowController.m:
912         (-[WK2BrowserWindowController awakeFromNib]):
913         (-[WK2BrowserWindowController dealloc]):
914         (-[WK2BrowserWindowController validateMenuItem:]):
915         (-[WK2BrowserWindowController performTextFinderAction:]):
916         (-[WK2BrowserWindowController findBarView]):
917         (-[WK2BrowserWindowController setFindBarView:]):
918         (-[WK2BrowserWindowController isFindBarVisible]):
919         (-[WK2BrowserWindowController setFindBarVisible:]):
920         (-[WK2BrowserWindowController contentView]):
921         (-[WK2BrowserWindowController findBarViewDidChangeHeight]):
922         (-[WK2BrowserWindowController performFindPanelAction:]): Deleted.
923         (-[WK2BrowserWindowController find:]): Deleted.
924         Implement find-in-page using WKWebView's conformance to the NSTextFinderClient
925         protocol. At first glance, it's pretty broken, but vaguely works.
926
927 2017-01-07  Tim Horton  <timothy_horton@apple.com>
928
929         Share the implementation of MiniBrowser view hiding functionality
930         https://bugs.webkit.org/show_bug.cgi?id=166800
931
932         Reviewed by Andy Estes.
933
934         * MiniBrowser/mac/BrowserWindowController.m:
935         (-[BrowserWindowController showHideWebView:]):
936         (-[BrowserWindowController removeReinsertWebView:]):
937         * MiniBrowser/mac/WK1BrowserWindowController.m:
938         (-[WK1BrowserWindowController showHideWebView:]): Deleted.
939         (-[WK1BrowserWindowController removeReinsertWebView:]): Deleted.
940         * MiniBrowser/mac/WK2BrowserWindowController.m:
941         (-[WK2BrowserWindowController showHideWebView:]): Deleted.
942         (-[WK2BrowserWindowController removeReinsertWebView:]): Deleted.
943         Move the implementation of these two things to the shared superclass,
944         since they don't depend on WebKit-specific things.
945         Also, there was no reason to retain the (WK)WebView while it was unparented,
946         as the BrowserWindowController maintains a reference the entire time.
947
948 2017-01-06  Andy Estes  <aestes@apple.com>
949
950         [Cocoa] Consolidate duplicate copies of WebArchiveDumpSupport in DRT and WKTR into WebCoreTestSupport
951         https://bugs.webkit.org/show_bug.cgi?id=166789
952
953         Reviewed by Alex Christensen.
954
955         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
956         * DumpRenderTree/PlatformMac.cmake:
957         * DumpRenderTree/cf/WebArchiveDumpSupport.cpp: Removed.
958         * DumpRenderTree/cf/WebArchiveDumpSupport.h: Removed.
959         * DumpRenderTree/mac/DumpRenderTree.mm:
960         Called WebCoreTestSupport::createXMLStringFromWebArchiveData() instead of
961         createXMLStringFromWebArchiveData().
962         * DumpRenderTree/mac/WebArchiveDumpSupportMac.mm: Removed.
963         * WebKitTestRunner/Configurations/Base.xcconfig:
964         Added $(BUILT_PRODUCTS_DIR)/WebCoreTestSupport to HEADER_SEARCH_PATHS.
965         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
966         (WTR::InjectedBundlePage::dumpDOMAsWebArchive):
967         Called WebCoreTestSupport::createXMLStringFromWebArchiveData() instead of
968         createXMLStringFromWebArchiveData().
969         * WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm: Removed.
970         * WebKitTestRunner/PlatformMac.cmake:
971         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
972         * WebKitTestRunner/cf/WebArchiveDumpSupport.h: Removed.
973
974 2017-01-06  Tim Horton  <timothy_horton@apple.com>
975
976         Minor cleanups to IndentOutdentCommand and related code
977         https://bugs.webkit.org/show_bug.cgi?id=166791
978
979         Reviewed by Simon Fraser.
980
981         * WebEditingTester/EditingOperations.m:
982         (editingOperations):
983         Add the outdent operation to WebEditingTester.
984
985 2017-01-06  Said Abou-Hallawa  <sabouhallawa@apple.com>
986
987         Create a plan and a patch files for MotionMark and delete the Animometer's ones
988         https://bugs.webkit.org/show_bug.cgi?id=166785
989
990         Reviewed by Ryosuke Niwa.
991
992         * Scripts/webkitpy/benchmark_runner/data/patches/MotionMark.patch: Renamed from Tools/Scripts/webkitpy/benchmark_runner/data/patches/Animometer.patch.
993         * Scripts/webkitpy/benchmark_runner/data/plans/motionmark.plan: Renamed from Tools/Scripts/webkitpy/benchmark_runner/data/plans/animometer.plan.
994
995 2017-01-06  Antoine Quint  <graouts@apple.com>
996
997         Support webkit-test-runner key-value pairs in http tests
998         https://bugs.webkit.org/show_bug.cgi?id=149812
999
1000         Reviewed by Alex Christensen.
1001
1002         We pass the absolute path for a test through to WKTR so that we can parse
1003         tests that are running as URLs for webkit-test-runner options.
1004
1005         * DumpRenderTree/DumpRenderTreeCommon.cpp:
1006         (parseInputLine):
1007
1008         Explicitly skip the --absolute-path option in DRT or else we'd crash.
1009
1010         * Scripts/webkitpy/port/driver.py:
1011         (Driver._command_from_driver_input):
1012
1013         Pass the absolute path to the file through the CLI.
1014
1015         * WebKitTestRunner/TestController.cpp:
1016         (WTR::updateTestOptionsFromTestHeader):
1017         (WTR::TestController::testOptionsForTest):
1018         (WTR::parseInputLine):
1019         (WTR::TestController::runTest):
1020         * WebKitTestRunner/TestController.h:
1021
1022 2017-01-06  Tim Horton  <timothy_horton@apple.com>
1023
1024         Warning about unconnectable outlets when opening a MiniBrowser window
1025         https://bugs.webkit.org/show_bug.cgi?id=166756
1026
1027         Reviewed by Dan Bernstein.
1028
1029         * MiniBrowser/mac/BrowserWindow.xib:
1030         When launching MiniBrowser, it says:
1031         Failed to connect (Share) outlet from (WK1BrowserWindowController) to
1032             (MBToolbarItem): missing setter or instance variable
1033         Failed to connect (shareButton) outlet from (WK1BrowserWindowController) to
1034             (NSButtonCell): missing setter or instance variable.
1035
1036         It looks like someone added the connection from the share button
1037         to the BrowserWindowController three times; only one of the connections
1038         is valid. Remove the other two.
1039
1040 2017-01-05  Keith Rollin  <krollin@apple.com>
1041
1042         Add WebCore::URL::protocolHostAndPort
1043         https://bugs.webkit.org/show_bug.cgi?id=166426
1044
1045         Reviewed by Alex Christensen.
1046
1047         Add test for protocolHostAndPort.
1048
1049         * TestWebKitAPI/Tests/WebCore/URL.cpp:
1050         (TestWebKitAPI::TEST_F):
1051
1052 2017-01-05  Per Arne Vollan  <pvollan@apple.com>
1053
1054         [Win] Archive test result is failing.
1055         https://bugs.webkit.org/show_bug.cgi?id=166720
1056
1057         Reviewed by Alex Christensen.
1058
1059         Deleting the layout test result folder is sometimes failing
1060         on Windows. This is not a critical error.
1061
1062         * BuildSlaveSupport/test-result-archive:
1063         (archiveTestResults):
1064
1065 2017-01-04  Tomas Popela  <tpopela@redhat.com>
1066
1067         [GTK] Minibrowser: Add printing support
1068         https://bugs.webkit.org/show_bug.cgi?id=165298
1069
1070         Open a print dialog when the Ctrl + P shortcut is pressed. If there is
1071         an error during the print, it's printed on the console.
1072
1073         Reviewed by Michael Catanzaro.
1074
1075         * MiniBrowser/gtk/BrowserWindow.c:
1076         (webKitPrintOperationFailedCallback):
1077         (printPage):
1078         (browser_window_init):
1079
1080 2017-01-04  Manuel Rego Casasnovas  <rego@igalia.com>
1081
1082         [css-grid] Fix crash clamping grid lines
1083         https://bugs.webkit.org/show_bug.cgi?id=166637
1084
1085         Reviewed by Darin Adler.
1086
1087         Creates new unit test to verify that the maximum tracks limit
1088         is used in GridPosition too.
1089
1090         * TestWebKitAPI/PlatformEfl.cmake:
1091         * TestWebKitAPI/PlatformGTK.cmake:
1092         * TestWebKitAPI/PlatformWin.cmake:
1093         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1094         * TestWebKitAPI/Tests/WebCore/GridPosition.cpp: Added.
1095         (TestWebKitAPI::TEST):
1096
1097 2017-01-04  Wenson Hsieh  <wenson_hsieh@apple.com>
1098
1099         Move editing history scripts to WebCore PrivateHeaders
1100         https://bugs.webkit.org/show_bug.cgi?id=166709
1101         <rdar://problem/29876612>
1102
1103         Reviewed by Dan Bernstein.
1104
1105         Update references to editing script files in WebCore that were moved.
1106
1107         * EditingHistory/EditingHistory.xcodeproj/project.pbxproj:
1108
1109 2017-01-04  Yusuke Suzuki  <utatane.tea@gmail.com>
1110
1111         Unreviewed, build fix after r210313 part 2
1112         https://bugs.webkit.org/show_bug.cgi?id=166676
1113
1114         Add 'U' suffix.
1115
1116         * TestWebKitAPI/Tests/WTF/StringView.cpp:
1117         (TestWebKitAPI::TEST):
1118         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
1119         (TestWebKitAPI::TEST):
1120
1121 2017-01-04  Yusuke Suzuki  <utatane.tea@gmail.com>
1122
1123         Limit thread name appropriately
1124         https://bugs.webkit.org/show_bug.cgi?id=166676
1125
1126         Reviewed by Sam Weinig.
1127
1128         * TestWebKitAPI/Tests/WTF/StringView.cpp:
1129         (TestWebKitAPI::TEST):
1130         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
1131         (TestWebKitAPI::TEST):
1132
1133 2017-01-04  Andy Estes  <aestes@apple.com>
1134
1135         [Cocoa] Teach SharedBuffer to return an NSArray of data segments to avoid flattening
1136         https://bugs.webkit.org/show_bug.cgi?id=166696
1137
1138         Reviewed by Tim Horton.
1139
1140         * TestWebKitAPI/PlatformGTK.cmake:
1141         * TestWebKitAPI/PlatformWin.cmake:
1142         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1143         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp: Moved class SharedBufferTest to SharedBufferTest.{cpp,h}.
1144         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp: Moved class SharedBufferTest from SharedBuffer.cpp.
1145         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.h: Ditto.
1146         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm: Added.
1147         (TestWebKitAPI::expectDataArraysEqual): Added a helper to assert that two NSArrays of NSData are equal.
1148         (TestWebKitAPI::TEST_F): Added a test for createNSDataArray.
1149
1150 2017-01-03  Brian Burg  <bburg@apple.com>
1151
1152         Web Inspector: teach the protocol generator about platform-specific types, events, and commands
1153         https://bugs.webkit.org/show_bug.cgi?id=166003
1154         <rdar://problem/28718990>
1155
1156         Reviewed by Joseph Pecoraro.
1157
1158         Teach run-inspector-generator-tests to generate test output using the platform name
1159         derived from the directory that the test is in. For example, tests in the /generic/
1160         subdirectory will pass `--platform generic` to generate-inspector-protocol-bindings.py.
1161
1162         * Scripts/webkitpy/inspector/main.py:
1163         (InspectorGeneratorTests.generate_from_json):
1164         (InspectorGeneratorTests.run_tests):
1165         (InspectorGeneratorTests.main):
1166
1167 2017-01-04  Csaba Osztrogonác  <ossy@webkit.org>
1168
1169         Unreviewed cmake buildfix after r210266.
1170
1171         * DumpRenderTree/PlatformMac.cmake:
1172
1173 2017-01-04  Tim Horton  <timothy_horton@apple.com>
1174
1175         Provide a setting for clients to always prefer low-power WebGL
1176         https://bugs.webkit.org/show_bug.cgi?id=166675
1177         <rdar://problem/29834093>
1178
1179         Reviewed by Dan Bernstein.
1180
1181         * MiniBrowser/mac/Info.plist:
1182         Have MiniBrowser claim to be a modern app that supports
1183         automatic graphics switching. WebKit needs to support automatic
1184         graphics switching, so our test app might as well. Without this
1185         Info.plist parameter, this change has no effect, and bringing up
1186         a WebGL context still brings up the discrete GPU (also true of the
1187         existing web-exposed preferLowPowerToHighPerformance API).
1188
1189 2017-01-03  Yusuke Suzuki  <utatane.tea@gmail.com>
1190
1191         WorkQueueGeneric's platformInvalidate() can deadlock when called on the RunLoop's thread
1192         https://bugs.webkit.org/show_bug.cgi?id=166645
1193
1194         Reviewed by Carlos Garcia Campos.
1195
1196         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
1197         (TestWebKitAPI::TEST):
1198
1199 2017-01-03  Andy Estes  <aestes@apple.com>
1200
1201         Place all the Cocoa WebCore API tests in the same directory
1202         https://bugs.webkit.org/show_bug.cgi?id=166673
1203
1204         Reviewed by Michael Catanzaro.
1205
1206         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1207         * TestWebKitAPI/Tests/WebCore/cocoa/SerializedCryptoKeyWrap.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/SerializedCryptoKeyWrap.mm.
1208         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/Cocoa/URLExtras.mm.
1209         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/WebCoreNSURLSession.mm.
1210
1211 2017-01-03  Tim Horton  <timothy_horton@apple.com>
1212
1213         NSSpellChecker's recordResponse isn't called for unseen automatic corrections
1214         https://bugs.webkit.org/show_bug.cgi?id=166450
1215         <rdar://problem/29447824>
1216
1217         Reviewed by Darin Adler.
1218
1219         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
1220         * DumpRenderTree/TestRunner.cpp:
1221         (TestRunner::staticFunctions):
1222         * DumpRenderTree/mac/TestRunnerMac.mm:
1223         (setSpellCheckerLoggingEnabledCallback):
1224         * DumpRenderTree/win/TestRunnerWin.cpp:
1225         (setSpellCheckerLoggingEnabledCallback):
1226         * DumpRenderTree/mac/DumpRenderTree.mm:
1227         (resetWebViewToConsistentStateBeforeTesting):
1228         * DumpRenderTree/mac/DumpRenderTreeSpellChecker.h: Added.
1229         * DumpRenderTree/mac/DumpRenderTreeSpellChecker.mm: Added.
1230         (stringForCorrectionResponse):
1231         (drt_NSSpellChecker_recordResponseToCorrection):
1232         (swizzleNSSpellCheckerMethodsIfNeeded):
1233         (setSpellCheckerLoggingEnabled):
1234         Add a new testRunner method, setSpellCheckerLoggingEnabled, which, when
1235         set to true, logs to stdout (which ends up in the test result) whenever
1236         NSSpellChecker recordResponse:toCorrection:forWord:language:inSpellDocumentWithTag:
1237         is called, and then calls the original method. It is reset to false between tests.
1238
1239 2017-01-03  Sam Weinig  <sam@webkit.org>
1240
1241         Make WTF::Expected support Ref template parameters
1242         https://bugs.webkit.org/show_bug.cgi?id=166662
1243
1244         Reviewed by Alex Christensen.
1245
1246         * TestWebKitAPI/Tests/WTF/Expected.cpp:
1247         (TestWebKitAPI::TEST):
1248         Add tests for using Ref with Expected.
1249
1250 2017-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
1251
1252         [GTK] Expose WebKitSecurityOrigin API
1253         https://bugs.webkit.org/show_bug.cgi?id=166632
1254
1255         Reviewed by Carlos Garcia Campos.
1256
1257         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
1258         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSecurityOrigin.cpp: Added.
1259         (testSecurityOriginBasicConstructor):
1260         (testSecurityOriginURIConstructor):
1261         (testSecurityOriginDefaultPort):
1262         (testSecurityOriginFileURI):
1263         (testSecurityOriginDataURI):
1264         (beforeAll):
1265         (afterAll):
1266
1267 2017-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1268
1269         [GTK] HTTP auth layout tests are flaky
1270         https://bugs.webkit.org/show_bug.cgi?id=158919
1271
1272         Reviewed by Michael Catanzaro.
1273
1274         * gtk/jhbuild.modules: Update libsoup to version 2.57.1.
1275         * gtk/jhbuildrc: Stop passing --enable-introspection unconditionally to all modules. We don't really need
1276         introspection for the dependencies in the internal build, and it makes newer libsoup build fail because of
1277         missing valac in the bots.
1278
1279 2017-01-03  Carlos Garcia Campos  <cgarcia@igalia.com>
1280
1281         REGRESSION(r173753): [GTK] Source/WebKit is distributed in tarballs
1282         https://bugs.webkit.org/show_bug.cgi?id=165797
1283
1284         Reviewed by Michael Catanzaro.
1285
1286         Move directory ruleset after all exclude rules of Source rulset.
1287
1288         * gtk/manifest.txt.in:
1289
1290 2017-01-02  Yusuke Suzuki  <utatane.tea@gmail.com>
1291
1292         Leverage Substring to create new AtomicStringImpl for StaticStringImpl and SymbolImpl
1293         https://bugs.webkit.org/show_bug.cgi?id=166636
1294
1295         Reviewed by Darin Adler.
1296
1297         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
1298         (TestWebKitAPI::TEST):
1299
1300 2017-01-02  Manuel Rego Casasnovas  <rego@igalia.com>
1301
1302         [GTK] WebCore/CSSParser unit test is not being built
1303         https://bugs.webkit.org/show_bug.cgi?id=166492
1304
1305         Reviewed by Michael Catanzaro.
1306
1307         This test was introduced in r175930, but we were not building
1308         it on GTK+ port since r176015.
1309         This patch marks the test to be built again on GTK+.
1310         JFTR, the test is passing right now.
1311
1312         * TestWebKitAPI/PlatformGTK.cmake: Add CSSParser.cpp test file and use
1313         ADD_WHOLE_ARCHIVE_TO_LIBRARIES to avoid linking errors.
1314
1315 2017-01-02  Chris Fleizach  <cfleizach@apple.com>
1316
1317         AX: Expose block quote level to iOS API
1318         https://bugs.webkit.org/show_bug.cgi?id=166629
1319         <rdar://problem/29834793>
1320
1321         Reviewed by Darin Adler.
1322
1323         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1324         (AccessibilityUIElement::numberAttributeValue):
1325         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1326         (WTR::AccessibilityUIElement::numberAttributeValue):
1327
1328 2016-12-31  Michael Catanzaro  <mcatanzaro@igalia.com>
1329
1330         SecurityOrigin::create triplet constructor does not canonicalize port
1331         https://bugs.webkit.org/show_bug.cgi?id=166624
1332
1333         Reviewed by Daniel Bates.
1334
1335         * TestWebKitAPI/PlatformGTK.cmake:
1336         * TestWebKitAPI/PlatformWin.cmake:
1337         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1338         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp: Added.
1339         (TestWebKitAPI::SecurityOriginTest::SetUp):
1340         (TestWebKitAPI::TEST_F):
1341
1342 2016-12-30  Michael Catanzaro  <mcatanzaro@igalia.com>
1343
1344         [GTK] Improve user agent construction
1345         https://bugs.webkit.org/show_bug.cgi?id=142074
1346
1347         Reviewed by Carlos Garcia Campos.
1348
1349         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1350         (TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
1351         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk):
1352         (TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
1353         (TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
1354         (TestWebKitAPI::TEST):
1355
1356 2016-12-27  Michael Catanzaro  <mcatanzaro@igalia.com>
1357
1358         [GTK] Improve user agent construction
1359         https://bugs.webkit.org/show_bug.cgi?id=142074
1360
1361         Reviewed by Carlos Garcia Campos.
1362
1363         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1364         (TestWebKitAPI::TEST):
1365
1366 2016-12-23  Simon Fraser  <simon.fraser@apple.com>
1367
1368         REGRESSION (r209299): Selection is broken when you zoom in webpage using trackpad
1369         https://bugs.webkit.org/show_bug.cgi?id=166472
1370         rdar://problem/29675551
1371
1372         Reviewed by Tim Horton.
1373
1374         These changes are necessary to allow the mouse to leave the WTR window while
1375         drag-scrolling, to test autoscroll. Previously, we were never calling -mouseDragged
1376         (which DRT does); we'd always go through mouseMoved, which hits an early return
1377         in WebViewImpl::mouseMoved() when the point is outside the view.
1378
1379         * WebKitTestRunner/mac/EventSenderProxy.mm:
1380         (WTR::EventSenderProxy::mouseMoveTo):
1381
1382 2016-12-23  Andy Estes  <aestes@apple.com>
1383
1384         [iOS] Fix some crashing webarchive tests
1385         https://bugs.webkit.org/show_bug.cgi?id=166470
1386
1387         Reviewed by Andreas Kling.
1388
1389         Tests that use TestRunner.dumpDOMAsWebArchive() crashed on iOS due to a stub implementation
1390         of WebArchiveDumpSupport in WebKitTestRunner. The Mac implementation works fine on iOS too,
1391         so this change uses that on both platforms.
1392
1393         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Removed
1394         WebArchiveDumpSupportMac.mm from EXCLUDED_SOURCE_FILE_NAMES.
1395         * WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm: Renamed from
1396         Tools/WebKitTestRunner/mac/WebArchiveDumpSupportMac.mm.
1397         * WebKitTestRunner/PlatformMac.cmake:
1398         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1399         * WebKitTestRunner/ios/WebArchiveDumpSupportIOS.mm: Removed.
1400
1401 2016-12-22  Saam Barati  <sbarati@apple.com>
1402
1403         WebAssembly: Silence the output of the spec-tests
1404         https://bugs.webkit.org/show_bug.cgi?id=166417
1405
1406         Reviewed by Mark Lam.
1407
1408         * Scripts/run-jsc-stress-tests:
1409
1410 2016-12-22  Zhuo Li  <zachli@apple.com>
1411
1412         [Cocoa] SPI for setloadsImagesAutomatically.
1413         https://bugs.webkit.org/show_bug.cgi?id=166401.
1414
1415         Reviewed by Darin Adler.
1416
1417         * TestWebKitAPI/Tests/WebKit2Cocoa/Preferences.mm:
1418         (TEST): Test the _setLoadsImagesAutomatically SPI. By default,
1419         _loadsImagesAutomatically returns YES.
1420
1421 2016-12-22  Wenson Hsieh  <wenson_hsieh@apple.com>
1422
1423         fast/events/ios/viewport-shrink-to-fit-allows-double-tap.html is flaky/order dependent
1424         https://bugs.webkit.org/show_bug.cgi?id=161328
1425         <rdar://problem/28475977>
1426
1427         Reviewed by Darin Adler.
1428
1429         Running a test that scales the viewport and listens to a didEndZooming callback (such as
1430         viewport-shrink-to-fit-allows-double-tap.html) immediately after a test that may begin to trigger viewport
1431         scaling as the test completes (such as viewport-device-width-at-initial-scale-fast-clicks.html) may result in
1432         the didEndZooming callback of the latter test being fired early due to the previous test triggering a zoom
1433         animation. Ideally, -[WKScrollView _stopScrollingAndZoomingAnimations], which is called when committing the page
1434         load, should prevent this from happening, but from reading documentation and code inspection, this is not
1435         intended to fire any associated delegate methods or notifications of the UIScrollView, instead deferring them
1436         for later. Instead, what we need in this case is to clear out any started but not yet completed animations after
1437         we finish running a test and before we load the next test.
1438
1439         One way to do this is to remove all animations from the WKScrollView's layer, and the layers of its children,
1440         recursively. Doing so causes scrollViewDidEndZooming:withView:atScale: to fire at the end of the runloop if the
1441         previous test started zooming and then finished before zooming completed. Since this happens before the next
1442         test has a chance to run UI-side scripts, we won't end up firing this callback prematurely during the next test.
1443
1444         * WebKitTestRunner/ios/TestControllerIOS.mm:
1445         (WTR::TestController::platformResetStateToConsistentValues):
1446
1447 2016-12-22  Jer Noble  <jer.noble@apple.com>
1448
1449         Muted media element playback should not interrupt other audio playback
1450         https://bugs.webkit.org/show_bug.cgi?id=166347
1451
1452         Reviewed by Eric Carlson.
1453
1454         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1455         * TestWebKitAPI/Tests/WebKit/ios/AudioSessionCategoryIOS.mm:
1456         (TestWebKitAPI::TEST):
1457         * TestWebKitAPI/Tests/WebKit/ios/video-with-muted-audio.html: Added.
1458
1459 2016-12-22  Alejandro G. Castro  <alex@igalia.com>
1460
1461         [WebRTC] Add support for runtime PeeConnection setting, required after r209757
1462         https://bugs.webkit.org/show_bug.cgi?id=166346
1463
1464         Reviewed by Carlos Garcia Campos.
1465
1466         Enable WebRTC by default to simplify testing.
1467
1468         * MiniBrowser/gtk/main.c:
1469         (main):
1470
1471 2016-12-21  Alexey Proskuryakov  <ap@apple.com>
1472
1473         REGRESSION: API test failure: WKWebView.LocalStorageClear
1474         https://bugs.webkit.org/show_bug.cgi?id=166032
1475         <rdar://problem/29758423>
1476
1477         Reviewed by Simon Fraser.
1478
1479         Add an @autoreleasepool around the code that allocates then clears the WKWebView, 
1480         to ensure that the view is destroyed before the callback fires.
1481
1482         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
1483         (TEST):
1484
1485 2016-12-21  Saam Barati  <sbarati@apple.com>
1486
1487         WebAssembly: Import spec tests
1488         https://bugs.webkit.org/show_bug.cgi?id=166395
1489
1490         Rubber stamped by Keith Miller.
1491
1492         * Scripts/run-jsc-stress-tests:
1493
1494 2016-12-21  Alexey Proskuryakov  <ap@apple.com>
1495
1496         REGRESSION: API test failure: _WKDownload.OriginatingWebView
1497         https://bugs.webkit.org/show_bug.cgi?id=166033
1498         <rdar://problem/29758428>
1499
1500         Reviewed by Simon Fraser.
1501
1502         Add an @autoreleasepool around the code that allocates the WKWebView, 
1503         so that it can be destroyed by removing the last reference in _downloadDidStart.
1504
1505         * TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:
1506         (TEST):
1507
1508 2016-12-21  Daniel Bates  <dabates@apple.com>
1509
1510         WebKitTestRunner: Add comment to TestRunner::setCanOpenWindows()
1511         https://bugs.webkit.org/show_bug.cgi?id=166356
1512
1513         Add comment in TestRunner::setCanOpenWindows() to elaborate further on its purpose
1514         as a means to allow a test to explicit allow an embedding client to open a new windows
1515         such that the default behavior is for the embedding client to forbid such an action.
1516         The test plugins/get-url-with-blank-target.html assumes this default behavior though
1517         it is currently skipped on WebKit2 because questions were raised in the patch for
1518         <https://bugs.webkit.org/show_bug.cgi?id=43389> about its correctness and usefulness.
1519         We will need to implement TestRunner::setCanOpenWindows() should we decide to unskip
1520         this test.
1521
1522         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1523         (WTR::TestRunner::setCanOpenWindows):
1524
1525 2016-12-20  Simon Fraser  <simon.fraser@apple.com>
1526
1527         REGRESSION: API test failure: WKWebView.EvaluateJavaScriptBlockCrash
1528         https://bugs.webkit.org/show_bug.cgi?id=166031
1529
1530         Reviewed by Tim Horton.
1531         
1532         Add an @autoreleasepool around the code that allocates then clears the WKWebView, 
1533         to ensure that the view is destroyed before the callback fires.
1534
1535         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm:
1536
1537 2016-12-20  Megan Gardner  <megan_gardner@apple.com>
1538
1539         Throw Exception when test doesn't clean up HID Events properly
1540         https://bugs.webkit.org/show_bug.cgi?id=166271
1541
1542         Reviewed by Simon Fraser.
1543
1544         Add in a check when UIScriptController is deleted to make sure that the HID event
1545         callback dictionary is empty. If it is not, and a HID event is hit, this will cause
1546         the program to crash without any good information. Crashes are race-y, and will still
1547         happen with malformed test, but the information will be much more helpful. 
1548
1549         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1550         (WTR::UIScriptController::checkForClean):
1551         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
1552         (UIScriptContext::~UIScriptContext):
1553         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1554         (WTR::UIScriptController::checkForClean):
1555         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1556         * WebKitTestRunner/ios/HIDEventGenerator.h:
1557         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1558         (-[HIDEventGenerator checkHIDCallbacksClear]):
1559         * WebKitTestRunner/ios/TestControllerIOS.mm:
1560         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1561         (WTR::UIScriptController::checkForClean):
1562
1563 2016-12-20  Andy Estes  <aestes@apple.com>
1564
1565         [Cocoa] REGRESSION (r209558): Calling decisionHandler multiple times in webView:decidePolicyForNavigationAction:decisionHandler: leads to a crash
1566         https://bugs.webkit.org/show_bug.cgi?id=165992
1567
1568         Reviewed by Brady Eidson.
1569
1570         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1571         * TestWebKitAPI/Tests/WebKit2Cocoa/DuplicateCompletionHandlerCalls.mm: Added.
1572         (expectException):
1573         (-[DuplicateCompletionHandlerCallsDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1574         (-[DuplicateCompletionHandlerCallsDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1575         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
1576         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1577         (-[DuplicateCompletionHandlerCallsDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:completionHandler:]):
1578         (-[DuplicateCompletionHandlerCallsDelegate _webView:decideDatabaseQuotaForSecurityOrigin:currentQuota:currentOriginUsage:currentDatabaseUsage:expectedUsage:decisionHandler:]):
1579         (-[DuplicateCompletionHandlerCallsDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
1580         (TEST):
1581         * TestWebKitAPI/Tests/WebKit2Cocoa/duplicate-completion-handler-calls.html: Added.
1582
1583 2016-12-20  Dean Jackson  <dino@apple.com>
1584
1585         Remove INDIE_UI
1586         https://bugs.webkit.org/show_bug.cgi?id=165881
1587         <rdar://problem/29672532>
1588
1589         Reviewed by Simon Fraser.
1590
1591         The Indie UI work has been discontinued.
1592
1593         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1594
1595 2016-12-19  Yusuke Suzuki  <utatane.tea@gmail.com>
1596
1597         [ES6] Enable ES6 Modules
1598         https://bugs.webkit.org/show_bug.cgi?id=165849
1599
1600         Reviewed by Geoffrey Garen.
1601
1602         * DumpRenderTree/mac/DumpRenderTree.mm:
1603         (resetWebPreferencesToConsistentValues):
1604         * DumpRenderTree/win/DumpRenderTree.cpp:
1605         (resetWebPreferencesToConsistentValues):
1606         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1607         (WTR::InjectedBundle::beginTesting):
1608         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1609         (WTR::TestRunner::setES6ModulesEnabled): Deleted.
1610         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1611
1612 2016-12-19  Ryan Haddad  <ryanhaddad@apple.com>
1613
1614         Repurpose bots and clean up dashboard.
1615         https://bugs.webkit.org/show_bug.cgi?id=166045
1616
1617         Reviewed by Lucas Forschler.
1618
1619         * BuildSlaveSupport/build.webkit.org-config/config.json:
1620         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1621         (BubbleQueueServer):
1622         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1623         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1624         (WebKitBuildbot):
1625         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1626         (table.queue-grid tr.platform.mac-os-x-yosemite img.logo): Deleted.
1627
1628 2016-12-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1629
1630         [CMake] TestWebKitAPIBase links to itself
1631         https://bugs.webkit.org/show_bug.cgi?id=165985
1632
1633         Reviewed by Alex Christensen.
1634
1635         Fix CMake warning about a target linking to itself, which makes no sense.
1636
1637         * TestWebKitAPI/CMakeLists.txt:
1638
1639 2016-12-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1640
1641         [GTK] GtkDoc build should be quieter
1642         https://bugs.webkit.org/show_bug.cgi?id=165994
1643
1644         Reviewed by Carlos Garcia Campos.
1645
1646         Make it not print by default.
1647
1648         * gtk/generate-gtkdoc:
1649         (get_generator_for_config):
1650         (generate_doc):
1651         * gtk/gtkdoc.py:
1652         (GTKDoc._run_command):
1653         (GTKDoc._copy_doc_files_to_output_dir):
1654
1655 2016-12-18  Simon Fraser  <simon.fraser@apple.com>
1656
1657         Expose a way for MiniBrowser to simulate header and footer banners
1658         https://bugs.webkit.org/show_bug.cgi?id=166005
1659
1660         Reviewed by Wenson Hsieh.
1661         
1662         Add a MiniBrowser menu item and setting to toggle adding space for header and footer
1663         banners. This only works in WebKit2.
1664         
1665         We need to reset these on each navigation, since newly created FrameViews
1666         don't re-fetch the header and footer height stored on Page.
1667         
1668         Also fix the signature of webView:didFinishNavigation: to follow API changes,
1669         as well as fixing webViewWebContentProcessDidTerminate:
1670
1671         * MiniBrowser/mac/SettingsController.h:
1672         * MiniBrowser/mac/SettingsController.m:
1673         (-[SettingsController _populateMenu]):
1674         (-[SettingsController validateMenuItem:]):
1675         (-[SettingsController toggleReserveSpaceForBanners:]):
1676         (-[SettingsController isSpaceReservedForBanners]):
1677         * MiniBrowser/mac/WK2BrowserWindowController.m:
1678         (-[WK2BrowserWindowController didChangeSettings]):
1679         (-[WK2BrowserWindowController webView:didFinishNavigation:]):
1680         (-[WK2BrowserWindowController webViewWebContentProcessDidTerminate:]):
1681         (-[WK2BrowserWindowController webView:didFinishLoadingNavigation:]): Deleted.
1682         (-[WK2BrowserWindowController _webViewWebProcessDidCrash:]): Deleted.
1683
1684 2016-12-17  Simon Fraser  <simon.fraser@apple.com>
1685
1686         Fix iOS test results after r209967.
1687         
1688         Subtracting out the status bar height was erroneously happening for all tests,
1689         not just for flexible viewport tests.
1690         
1691         Fix by plumbing WebViewSizingMode through resizeTo() and setWindowFrame().
1692
1693         * WebKitTestRunner/PlatformWebView.h:
1694         * WebKitTestRunner/TestController.cpp:
1695         (WTR::TestController::resetStateToConsistentValues):
1696         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
1697         (WTR::PlatformWebView::resizeTo):
1698         (WTR::PlatformWebView::setWindowFrame):
1699         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
1700         (WTR::PlatformWebView::resizeTo):
1701         (WTR::PlatformWebView::setWindowFrame):
1702         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1703         (WTR::PlatformWebView::resizeTo):
1704         (WTR::PlatformWebView::setWindowFrame):
1705         * WebKitTestRunner/ios/TestControllerIOS.mm:
1706         (WTR::TestController::platformConfigureViewForTest):
1707         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
1708         (WTR::PlatformWebView::resizeTo):
1709         (WTR::PlatformWebView::setWindowFrame):
1710
1711 2016-12-17  Joonghun Park  <jh718.park@samsung.com>
1712
1713         [EFL] bump EFL version to 1.18.4
1714         https://bugs.webkit.org/show_bug.cgi?id=166004
1715
1716         Reviewed by Gyuyoung Kim.
1717
1718         * efl/jhbuild.modules: Use efl-1.18.4 instead of 1.18.1.
1719
1720 2016-12-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1721
1722         Visual viewports: bottom fixed elements disappear behind the keyboard
1723         https://bugs.webkit.org/show_bug.cgi?id=165983
1724         <rdar://problem/29409852>
1725
1726         Reviewed by Simon Fraser.
1727
1728         Add support for UIScriptController.inputViewBounds, which UI-side scripts may use to fetch the bounding rect of
1729         the keyboard when it is up.
1730
1731         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1732         (WTR::UIScriptController::inputViewBounds):
1733         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1734         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1735         (WTR::UIScriptController::inputViewBounds):
1736         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1737         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
1738         (WTR::viewRectForWindowRect):
1739
1740         Previously, we accounted for the status bar height by translating the entire web view down by the height of the
1741         status bar. However, we did not shrink the height of the web view itself, which means that for tests which
1742         involve scrolling past the end of the document, the bottom strip of the web view is out of bounds of the window.
1743
1744         (WTR::PlatformWebView::PlatformWebView):
1745         (WTR::PlatformWebView::setWindowFrame):
1746         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1747         (WTR::UIScriptController::inputViewBounds):
1748
1749 2016-12-16  Ryosuke Niwa  <rniwa@webkit.org>
1750
1751         Deleting a character converted from pinyin after an image causes a Safari crash
1752         https://bugs.webkit.org/show_bug.cgi?id=165839
1753         <rdar://problem/27951933>
1754
1755         Reviewed by Wenson Hsieh.
1756
1757         Add a WebKit API test to call attributedSubstringForProposedRange on a WKWebView
1758         while the proposed range contains an image. This should not cause a WebProcess to crash
1759         or send an invalid message to the UIProcess.
1760
1761         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1762         * TestWebKitAPI/Tests/WebKit2/chinese-character-with-image.html: Added.
1763         * TestWebKitAPI/Tests/WebKit2/mac/AttributedSubstringForProposedRangeWithImage.mm: Added.
1764         (TestWebKitAPI::didFinishLoadForFrame):
1765         (TestWebKitAPI::processDidCrash):
1766         (TestWebKitAPI::invalidMessageFunction):
1767         (TestWebKitAPI::WebKit2.AttributedSubstringForProposedRangeWithImage):
1768
1769 2016-12-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1770
1771         Visual viewports: carets and selection UI are incorrectly positioned when editing fixed elements
1772         https://bugs.webkit.org/show_bug.cgi?id=165767
1773         <rdar://problem/29602382>
1774
1775         Reviewed by Simon Fraser.
1776
1777         Introduces two new UIScriptController methods: doAfterWebPageIsInStableState and textSelectionCaretRect. See
1778         WebKit2 ChangeLog for more details.
1779
1780         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1781         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1782         (WTR::UIScriptController::textSelectionCaretRect):
1783         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1784         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1785         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1786         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1787         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1788         (WTR::UIScriptController::textSelectionCaretRect):
1789         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1790         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1791         (-[TestRunnerWKWebView _setStableStateOverride:]):
1792
1793         Force the WKWebView to update its visible content rects when changing the stable state override.
1794
1795         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1796         (WTR::toNSDictionary):
1797         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1798         (WTR::UIScriptController::selectionRangeViewRects):
1799         (WTR::UIScriptController::textSelectionCaretRect):
1800         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1801         (WTR::UIScriptController::doAfterNextStablePresentationUpdate):
1802
1803 2016-12-15  Brent Fulgham  <bfulgham@apple.com>
1804
1805         Arguments called in wrong order
1806         https://bugs.webkit.org/show_bug.cgi?id=165923
1807
1808         Reviewed by Simon Fraser.
1809
1810         The 'audioDeviceUIDs' array is being passed to the argument that expects video devices,
1811         and the 'videoDeviceUIDs' array is being passed to the audo device argument. Fix this.
1812
1813         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
1814         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack): The
1815         order of arguments to WKUserMediaPermissionRequestAllow are flipped.
1816
1817 2016-12-16  Hunseop Jeong  <hs85.jeong@samsung.com>
1818
1819         [EFL] Disable non-srcdir builds for failing libraries
1820         https://bugs.webkit.org/show_bug.cgi?id=165896
1821
1822         Reviewed by Gyuyoung Kim.
1823
1824         * efl/jhbuild.modules: Set non srcdir builds to no
1825
1826 2016-12-15  Daniel Bates  <dabates@apple.com>
1827
1828         check-style should not complain about code in icu directories
1829         https://bugs.webkit.org/show_bug.cgi?id=53929
1830
1831         Reviewed by Darin Adler.
1832
1833         Skip style checking of imported ICU headers to avoid a deluge of style issues
1834         as they do not conform to the WebKit Code Style guideline. We want to preserve
1835         the formatting of these headers so as to make it straightforward to merge
1836         changes to them, if necessary.
1837
1838         * Scripts/webkitpy/style/checker.py:
1839
1840 2016-12-15  Alexey Proskuryakov  <ap@apple.com>
1841
1842         Move JSC testers from Yosemite to Sierra
1843         https://bugs.webkit.org/show_bug.cgi?id=165925
1844
1845         Reviewed by Lucas Forschler.
1846
1847         * BuildSlaveSupport/build.webkit.org-config/config.json:
1848         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1849         (WebKitBuildbot):
1850
1851 2016-12-15  Megan Gardner  <megan_gardner@apple.com>
1852
1853         Add coordinate space to event streams and streamline tests
1854         https://bugs.webkit.org/show_bug.cgi?id=165119
1855
1856         Reviewed by Simon Fraser.
1857
1858         Update event streams to allow for both content and global coordinate space.
1859         Update example script to more accurately show all the available options.
1860
1861         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1862         * WebKitTestRunner/ios/HIDEventGenerator.h:
1863         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1864         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1865         (WTR::convertCoordinates):
1866         (WTR::UIScriptController::sendEventStream):
1867
1868 2016-12-15  Claudio Saavedra  <csaavedra@igalia.com>
1869
1870         [GTK] Ensure gst* docs are not built with update-webkitgtk-libs
1871         https://bugs.webkit.org/show_bug.cgi?id=165855
1872
1873         Reviewed by Philippe Normand.
1874
1875         GStreamer's autogen.sh enables gtk-doc always so we end up building
1876         docs even if we disable them. Use the configure script instead, since
1877         we build from packages and these include it already.
1878
1879         * gtk/jhbuild.modules: Use shipped configure instead of autogen.sh for
1880         upstream gstreamer packages.
1881
1882 2016-12-15  Alex Christensen  <achristensen@webkit.org>
1883
1884         REGRESSION (r208902) Null pointer dereference in wkIsPublicSuffix
1885         https://bugs.webkit.org/show_bug.cgi?id=165885
1886         <rdar://problem/29476917>
1887
1888         Reviewed by Darin Adler.
1889
1890         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1891         (TestWebKitAPI::utf16String): Deleted.
1892         * TestWebKitAPI/Tests/mac/PublicSuffix.mm:
1893         (TestWebKitAPI::TEST_F):
1894         * TestWebKitAPI/WTFStringUtilities.h:
1895         (utf16String):
1896         Moved from URLParser to share with other tests.
1897
1898 2016-12-14  Ryosuke Niwa  <rniwa@webkit.org>
1899
1900         iOS: An element with tabindex is not focusable unless there is no mouse event handler
1901         https://bugs.webkit.org/show_bug.cgi?id=165843
1902
1903         Reviewed by Antti Koivisto.
1904
1905         Add testRunner.isWebKit2 which is always true in WebKitTestRunner.
1906         Without this, it's really hard to reliably differentiate DumpRenderTree and WebKitTestRunner,
1907         and DumpRenderTree's runUIScript would hit an assertion :(
1908
1909         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1910         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1911         (WTR::TestRunner::isWebKit2):
1912
1913 2016-12-14  Brady Eidson  <beidson@apple.com>
1914
1915         IndexedDB 2.0: Massively speedup IDBIndex.get().
1916         https://bugs.webkit.org/show_bug.cgi?id=165802
1917
1918         Reviewed by Alex Christensen.
1919
1920         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1921         * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.html: Added.
1922         * TestWebKitAPI/Tests/WebKit2Cocoa/IDBIndexUpgradeToV2.mm: Added.
1923         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.blob: Added.
1924         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexUpgrade.sqlite3: Added.
1925
1926 2016-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1927
1928         [GTK][EFL] Update the JHBuild version.
1929         https://bugs.webkit.org/show_bug.cgi?id=165838
1930
1931         Reviewed by Michael Catanzaro.
1932
1933         * jhbuild/jhbuild-wrapper: This new version fixes a bug with the
1934         usage of the JHBUILD_MIRROR feature with git repositories.
1935
1936 2016-12-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1937
1938         [GTK] Yasm is needed for building the JHBuild after r208940
1939         https://bugs.webkit.org/show_bug.cgi?id=165837
1940
1941         Reviewed by Alejandro G. Castro.
1942
1943         * gtk/install-dependencies: Yasm is needed for building libvpx.
1944
1945 2016-12-14  Youenn Fablet  <youenn@apple.com>
1946
1947         Test infrastructure should allow to filter out text output before doing a comparison with the baseline
1948         https://bugs.webkit.org/show_bug.cgi?id=161310
1949
1950         Reviewed by Ryosuke Niwa.
1951
1952         Adding --dump-jsconsolelog-in-stderr test option for DRT and WTR.
1953         When set, WTR and DRT output JS console log in the stderr and not the test output.
1954         This allows removing potentially flaky information while still being able to read it for investigation.
1955
1956         Updated webkitpy infrastructure to use this test option in case of DumpJSConsoleLogInStdErr modifier.
1957
1958         Changes are covered by updating a fetch test to output console log and set its option to --dump-jsconsolelog-in-stderr in TestExpectations.
1959         This test should have this option when fetch API will start logging resource loader errors.
1960
1961         * DumpRenderTree/DumpRenderTree.h:
1962         (TestCommand::TestCommand): Deleted.
1963         * DumpRenderTree/DumpRenderTreeCommon.cpp:
1964         (parseInputLine):
1965         * DumpRenderTree/TestRunner.h:
1966         (TestRunner::setDumpJSConsoleLogInStdErr):
1967         (TestRunner::dumpJSConsoleLogInStdErr):
1968         * DumpRenderTree/mac/DumpRenderTree.mm:
1969         (runTest):
1970         * DumpRenderTree/mac/UIDelegate.mm:
1971         (-[UIDelegate webView:addMessageToConsole:withSource:]):
1972         * DumpRenderTree/win/DumpRenderTree.cpp:
1973         (runTest):
1974         * DumpRenderTree/win/UIDelegate.cpp:
1975         (UIDelegate::webViewAddMessageToConsole):
1976         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1977         (TestExpectationParser._tokenize_line):
1978         * Scripts/webkitpy/port/driver.py:
1979         (Driver._command_from_driver_input):
1980         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1981         (WTR::InjectedBundle::didReceiveMessageToPage):
1982         (WTR::InjectedBundle::dumpToStdErr):
1983         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1984         (WTR::InjectedBundle::dumpJSConsoleLogInStdErr):
1985         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1986         (WTR::InjectedBundlePage::willAddMessageToConsole):
1987         * WebKitTestRunner/TestController.cpp:
1988         (WTR::parseInputLine):
1989         (WTR::TestController::runTest):
1990         (WTR::TestCommand::TestCommand): Deleted.
1991         * WebKitTestRunner/TestInvocation.cpp:
1992         (WTR::TestInvocation::invoke):
1993         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1994         * WebKitTestRunner/TestInvocation.h:
1995         (WTR::TestInvocation::setDumpJSConsoleLogInStdErr):
1996
1997
1998 2016-12-14  Enrique Ocaña González  <eocanha@igalia.com>
1999
2000         REGRESSION(r207879-207891): [GStreamer] Introduced many layout test failures and crashes, bots exiting early
2001         https://bugs.webkit.org/show_bug.cgi?id=164022
2002
2003         Reviewed by Xabier Rodriguez-Calvar.
2004
2005         * Scripts/webkitperl/FeatureList.pm:
2006           Re-enable MEDIA_SOURCE for the GTK+ port.
2007
2008 2016-12-13  Alex Christensen  <achristensen@webkit.org>
2009
2010         Fix CMake build.
2011
2012         * DumpRenderTree/PlatformMac.cmake:
2013         Define NS_RETURNS_RETAINED as nothing for now.
2014
2015 2016-12-13  Jer Noble  <jer.noble@apple.com>
2016
2017         Fullscreen in WebKit2 does not restore topContentInset upon exiting; leaves top of page not visible
2018         https://bugs.webkit.org/show_bug.cgi?id=165697
2019
2020         Reviewed by Tim Horton.
2021
2022         * TestWebKitAPI/Tests/WebKit2Cocoa/FullscreenTopContentInset.mm:
2023         (TestWebKitAPI::TEST):
2024
2025 2016-12-13  Andy Estes  <aestes@apple.com>
2026
2027         [Cocoa] Implement -shouldInsertText: on WKWebProcessPlugInEditingDelegate
2028         https://bugs.webkit.org/show_bug.cgi?id=165785
2029         <rdar://problem/26929398>
2030
2031         Reviewed by Darin Adler.
2032
2033         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
2034         (-[BundleEditingDelegateRemoteObject shouldInsertText:replacingRange:givenAction:]): Added
2035         expectations for the text, range, and action.
2036         (TEST): Set the "EditingDelegateShouldInsertText" bundle parameter to NO so that the plug-in
2037         will return NO in -_webProcessPlugInBrowserContextController:willInsertText:. Added a
2038         plain-text string to the pasteboard, executed a paste action, and verified that the selected
2039         text in the web view did not change.
2040         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
2041         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]): Set
2042         _editingDelegateShouldInsertText according to the "EditingDelegateShouldInsertText" bundle
2043         parameter.
2044         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:shouldInsertText:replacingRange:givenAction:]):
2045         Added. Called -shouldInsertText:replacingRange:givenAction: on the remote object proxy
2046         and returned the value of _editingDelegateShouldInsertText.
2047         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Declared
2048         -shouldInsertText:replacingRange:givenAction:.
2049
2050 2016-12-13  Chris Dumez  <cdumez@apple.com>
2051
2052         Unreviewed, rolling out r209544.
2053
2054         Looks like r209489 did not cause the performance regression
2055         after all
2056
2057         Reverted changeset:
2058
2059         "Unreviewed, rolling out r209489."
2060         https://bugs.webkit.org/show_bug.cgi?id=165550
2061         http://trac.webkit.org/changeset/209544
2062
2063 2016-12-12  Sam Weinig  <sam@webkit.org>
2064
2065         [WebIDL] Remove use of Dictionary in ApplePaySession
2066         https://bugs.webkit.org/show_bug.cgi?id=165787
2067
2068         Reviewed by Anders Carlsson.
2069
2070         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2071         (WTR::initializeWebViewConfiguration):
2072         (WTR::TestController::platformCreateWebView):
2073         Enable ApplePay for the tests (where supported).
2074
2075 2016-12-13  Eric Carlson  <eric.carlson@apple.com>
2076
2077         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
2078         https://bugs.webkit.org/show_bug.cgi?id=165251
2079
2080         Reviewed by Youenn Fablet.
2081
2082         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp:
2083         (TestWebKitAPI::TEST): Enable MediaStream, create web view from the page group upon which
2084         the preferences have been set.
2085
2086 2016-12-08  Antti Koivisto  <antti@apple.com>
2087
2088         Enable network cache speculative revalidation in MiniBrowser
2089         https://bugs.webkit.org/show_bug.cgi?id=165616
2090
2091         Reviewed by Darin Adler.
2092
2093         Match Safari. Also add a menu item to disable it.
2094
2095         * MiniBrowser/mac/AppDelegate.m:
2096         (defaultConfiguration):
2097         * MiniBrowser/mac/SettingsController.h:
2098         * MiniBrowser/mac/SettingsController.m:
2099         (-[SettingsController _populateMenu]):
2100         (-[SettingsController validateMenuItem:]):
2101         (-[SettingsController networkCacheSpeculativeRevalidationDisabled]):
2102         (-[SettingsController toggleNetworkCacheSpeculativeRevalidationDisabled:]):
2103
2104 2016-12-12  Alexey Proskuryakov  <ap@apple.com>
2105
2106         ChangeLogs become readonly after resolving a conflict
2107         https://bugs.webkit.org/show_bug.cgi?id=165440
2108         rdar://problem/29491002
2109
2110         Reviewed by Darin Adler.
2111
2112         * Scripts/resolve-ChangeLogs: (resolveChangeLog): Set correct permissions when
2113         moving the file.
2114
2115 2016-12-12  Filip Pizlo  <fpizlo@apple.com>
2116
2117         Re-enable collectContinuously since it doesn't crash anymore
2118
2119         Rubber stamped by Michael Saboff.
2120
2121         * Scripts/run-jsc-stress-tests:
2122
2123 2016-12-11  Konstantin Tokarev  <annulen@yandex.ru>
2124
2125         Unreviewed attempt to fix EFL and Mac/cmake builds after r209665.
2126         https://bugs.webkit.org/show_bug.cgi?id=165686
2127
2128         * DumpRenderTree/CMakeLists.txt: WebKit2 should precede other target
2129         so that right config.h comes first in include path.
2130
2131 2016-12-11  Dave Hyatt  <hyatt@apple.com>
2132
2133         [CSS Parser] Make sure content extensions initialize AtomicString
2134         https://bugs.webkit.org/show_bug.cgi?id=165737
2135
2136         Reviewed by Darin Adler.
2137
2138         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2139         (TestWebKitAPI::makeBackend):
2140
2141 2016-12-08  Dave Hyatt  <hyatt@apple.com>
2142
2143         [CSS Parser] Remove the old CSS Parser
2144         https://bugs.webkit.org/show_bug.cgi?id=165645
2145
2146         Reviewed by Daniel Bates.
2147
2148         * TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
2149         (TestWebKitAPI::TEST):
2150
2151 2016-12-10  Konstantin Tokarev  <annulen@yandex.ru>
2152
2153         [cmake] Include WTF, JSC, and WebCore headers automatically to targers using them
2154         https://bugs.webkit.org/show_bug.cgi?id=165686
2155
2156         Reviewed by Michael Catanzaro.
2157
2158         This change reduces duplication of include path lists between modules,
2159         and reduces future need for fixes like r209605 (broken build because of
2160         WebCore header suddenly becoming used in WebKit2).
2161
2162         * DumpRenderTree/CMakeLists.txt:
2163         * DumpRenderTree/PlatformMac.cmake:
2164         * ImageDiff/CMakeLists.txt:
2165         * MiniBrowser/gtk/CMakeLists.txt:
2166         * MiniBrowser/mac/CMakeLists.txt:
2167         * MiniBrowser/win/CMakeLists.txt:
2168         * TestWebKitAPI/CMakeLists.txt:
2169         * TestWebKitAPI/PlatformEfl.cmake:
2170         * TestWebKitAPI/PlatformJSCOnly.cmake:
2171         * TestWebKitAPI/PlatformMac.cmake:
2172         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
2173         * WebKitTestRunner/CMakeLists.txt:
2174         * WebKitTestRunner/PlatformGTK.cmake:
2175         * WebKitTestRunner/PlatformMac.cmake:
2176
2177 2016-12-09  Csaba Osztrogonác  <ossy@webkit.org>
2178
2179         Unreviewed buildfix after r209630.
2180
2181         * Scripts/build-jsc: Remove building the non-existing testWASM.
2182
2183 2016-12-09  Eric Carlson  <eric.carlson@apple.com>
2184
2185         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
2186         https://bugs.webkit.org/show_bug.cgi?id=165251
2187
2188         Reviewed by Dean Jackson.
2189
2190         Based on a patch by Dr Alex Gouaillard <agouaillard@gmail.com>
2191
2192         * DumpRenderTree/mac/DumpRenderTree.mm:
2193         (resetWebPreferencesToConsistentValues): Enable MediaStream and PeerConnection.
2194
2195         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2196         (WTR::InjectedBundle::beginTesting): Ditto.
2197
2198         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2199         (WTR::TestRunner::setMediaStreamEnabled): New.
2200         (WTR::TestRunner::setPeerConnectionEnabled): New.
2201         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2202
2203 2016-12-09  Brady Eidson  <beidson@apple.com> 
2204  
2205         Re-landing:
2206         Add _WKIconLoadingDelegate SPI. 
2207         https://bugs.webkit.org/show_bug.cgi?id=164894 
2208  
2209         Reviewed by Alex Christensen. 
2210         
2211         Add MiniBrowser support for this new SPI, configurable with a setting. 
2212  
2213         * MiniBrowser/mac/SettingsController.h: 
2214         * MiniBrowser/mac/SettingsController.m: 
2215         (-[SettingsController _populateMenu]): 
2216         (-[SettingsController validateMenuItem:]): 
2217         (-[SettingsController loadsAllSiteIcons]): 
2218         (-[SettingsController toggleLoadsAllSiteIcons:]): 
2219         * MiniBrowser/mac/WK2BrowserWindowController.m: 
2220         (-[WK2BrowserWindowController awakeFromNib]): 
2221         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): 
2222
2223 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
2224
2225         Fix the 32-bit build.
2226
2227         Unreviewed build fix.
2228
2229         * MiniBrowser/mac/SettingsController.h:
2230
2231 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2232
2233         Fedora also needs a PHP7 config file alternative
2234         https://bugs.webkit.org/show_bug.cgi?id=165606
2235
2236         Reviewed by Michael Catanzaro.
2237
2238         * Scripts/webkitpy/port/base.py:
2239         (Port._is_fedora_php_version_7): check for the php7 library.
2240         (Port._fedora_php_version): get the appropriate filename for Fedora.
2241         (Port._apache_config_file_name_for_platform):
2242
2243 2016-12-09  Ryan Haddad  <ryanhaddad@apple.com>
2244
2245         Complete the revert of r208865.
2246         https://bugs.webkit.org/show_bug.cgi?id=164894
2247
2248         Unreviewed build fix.
2249
2250         * MiniBrowser/mac/SettingsController.h:
2251         * MiniBrowser/mac/SettingsController.m:
2252         (-[SettingsController _populateMenu]):
2253         (-[SettingsController validateMenuItem:]):
2254         (-[SettingsController loadsAllSiteIcons]): Deleted.
2255         (-[SettingsController toggleLoadsAllSiteIcons:]): Deleted.
2256         * MiniBrowser/mac/WK2BrowserWindowController.m:
2257         (-[WK2BrowserWindowController awakeFromNib]):
2258         (-[WK2BrowserWindowController webView:shouldLoadIconWithParameters:completionHandler:]): Deleted.
2259
2260 2016-12-09  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2261
2262         [GTK] Force GDK backend to x11 when running with XvfbDriver
2263         https://bugs.webkit.org/show_bug.cgi?id=165612
2264
2265         Reviewed by Michael Catanzaro.
2266
2267         When the developer is running a Wayland session, GDK may get confused
2268         and try to use its Wayland backend (which is higher priority) instead.
2269         This ensures it will use the appropriate backend when running under
2270         Xvfb.
2271
2272         * Scripts/webkitpy/port/gtk.py:
2273         (GtkPort.setup_environ_for_server): when running with XvfbDriver,
2274         force GDK_BACKEND to x11.
2275
2276 2016-12-08  Keith Miller  <keith_miller@apple.com>
2277
2278         Add 64-bit signed LEB decode method
2279         https://bugs.webkit.org/show_bug.cgi?id=165630
2280
2281         Reviewed by Ryosuke Niwa.
2282
2283         Add tests for LEB int64 and uint64 decode since I guess
2284         I forgot to add tests before.
2285
2286         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp:
2287         (TestWebKitAPI::testUInt32LEBDecode):
2288         (TestWebKitAPI::TEST):
2289         (TestWebKitAPI::testUInt64LEBDecode):
2290         (TestWebKitAPI::testInt32LEBDecode):
2291         (TestWebKitAPI::testInt64LEBDecode):
2292         (TestWebKitAPI::testUnsignedLEBDecode): Deleted.
2293
2294 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
2295
2296         Make it easy to enable --force-collectContinuously
2297         https://bugs.webkit.org/show_bug.cgi?id=165638
2298
2299         Reviewed by Keith Miller.
2300
2301         * Scripts/run-javascriptcore-tests:
2302         (runJSCStressTests):
2303
2304 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
2305
2306         Disable the collectContinuously mode until I investigate failures.
2307
2308         Rubber stamped by Keith Miller.
2309         
2310         I'm seeing collectContinuously crashes on some platforms. Disabling that testing mode
2311         while I investigate.
2312
2313         * Scripts/run-jsc-stress-tests:
2314
2315 2016-12-08  Alex Christensen  <achristensen@webkit.org>
2316
2317         REGRESSION (URL parser): Relative URLs aren’t resolved correctly when the base URL is an applewebdata: URL
2318         https://bugs.webkit.org/show_bug.cgi?id=165621
2319
2320         Reviewed by Dan Bernstein.
2321
2322         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2323         (TestWebKitAPI::TEST_F):
2324
2325 2016-12-06  Filip Pizlo  <fpizlo@apple.com>
2326
2327         Concurrent GC should be stable enough to land enabled
2328         https://bugs.webkit.org/show_bug.cgi?id=164990
2329
2330         Reviewed by Geoffrey Garen.
2331         
2332         Add a new mode that runs GC continuously. Also made eager modes run GC continuously.
2333         
2334         It's clear that this works just fine in release, but I'm still trying to figure out if it's
2335         safe for debug. It might be too slow for debug.
2336
2337         * Scripts/run-jsc-stress-tests:
2338
2339 2016-12-08  Alex Christensen  <achristensen@webkit.org>
2340
2341         Add SPI for sending WebsiteSettings to WebProcess during navigation
2342         https://bugs.webkit.org/show_bug.cgi?id=165517
2343         <rdar://29341068>
2344
2345         Reviewed by Anders Carlsson.
2346
2347         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2348         * TestWebKitAPI/Tests/WebKit2/contentBlockerCheck.html: Added.
2349         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm: Added.
2350         (-[WebsitePoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2351         (-[WebsitePoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2352         (-[WebsitePoliciesDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2353         (TEST):
2354
2355 2016-12-08  Chris Dumez  <cdumez@apple.com>
2356
2357         Unreviewed, rolling out r209489.
2358
2359         Likely caused large regressions on JetStream, Sunspider and
2360         Speedometer
2361
2362         Reverted changeset:
2363
2364         "Add system trace points for JavaScript VM entry/exit"
2365         https://bugs.webkit.org/show_bug.cgi?id=165550
2366         http://trac.webkit.org/changeset/209489
2367
2368 2016-12-08  Keith Miller  <keith_miller@apple.com>
2369
2370         Move LEB tests to API tests
2371         https://bugs.webkit.org/show_bug.cgi?id=165586
2372
2373         Reviewed by Saam Barati.
2374
2375         Move the tests from testWasm.cpp and make them functions
2376         rather than macros.
2377
2378         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2379         * TestWebKitAPI/Tests/WTF/LEBDecoder.cpp: Added.
2380         (TestWebKitAPI::testUnsignedLEBDecode):
2381         (TestWebKitAPI::TEST):
2382         (TestWebKitAPI::testInt32LEBDecode):
2383
2384 2016-12-08  Chris Dumez  <cdumez@apple.com>
2385
2386         Support running the layout tests offline
2387         https://bugs.webkit.org/show_bug.cgi?id=165534
2388
2389         Reviewed by Ryosuke Niwa.
2390
2391         * Scripts/webkitpy/common/system/autoinstall.py:
2392         (AutoInstaller._download_to_stream):
2393         getcode() returns None for file URLs so handle this.
2394
2395         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
2396         (WebPlatformTestServer._install_modules):
2397         Deal with local path in the json file and resolve them into file URLs
2398         before using AutoInstall.
2399
2400 2016-12-08  Alex Christensen  <achristensen@webkit.org>
2401
2402         Fix CMake build.
2403
2404         * DumpRenderTree/PlatformMac.cmake:
2405         Remove CheckedMalloc.cpp after r209516.
2406
2407 2016-12-07  Mark Lam  <mark.lam@apple.com>
2408
2409         DumpRenderTree should stop using CheckedMalloc.
2410         https://bugs.webkit.org/show_bug.cgi?id=165563
2411         <rdar://problem/28945820>
2412
2413         Reviewed by Geoffrey Garen.
2414
2415         1. WebKitTestRunner does not have equivalent behavior to that which is implemented
2416            in CheckedMalloc.
2417         2. bmalloc does not honor the settings of CheckedMalloc.
2418
2419         The only time CheckedMalloc comes into play is when DRT uses gmalloc or system
2420         malloc.  As a result, DRT exhibits different behavior from the normal way we run
2421         our tests.  We should obsolete CheckedMalloc and make DRT behave consistently
2422         with WKTR.
2423
2424         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2425         * DumpRenderTree/mac/CheckedMalloc.cpp: Removed.
2426         * DumpRenderTree/mac/CheckedMalloc.h: Removed.
2427         * DumpRenderTree/mac/DumpRenderTree.mm:
2428         (prepareConsistentTestingEnvironment):
2429
2430 2016-12-07  Dean Jackson  <dino@apple.com>
2431
2432         Remove runtime toggle for pointer-lock
2433         https://bugs.webkit.org/show_bug.cgi?id=165577
2434         <rdar://problems/29566996>
2435
2436         Reviewed by Jon Lee.
2437
2438         Remove any runtime calls to check if pointer-lock is enabled. It's
2439         either compiled in or out.
2440
2441         * DumpRenderTree/mac/DumpRenderTree.mm:
2442         (resetWebPreferencesToConsistentValues):
2443         * WebKitTestRunner/TestController.cpp:
2444         (WTR::TestController::resetPreferencesToConsistentValues):
2445
2446 2016-12-07  Eric Carlson  <eric.carlson@apple.com>
2447
2448         [MediaStream][Mac] Revoke sandbox extensions when capture ends
2449         https://bugs.webkit.org/show_bug.cgi?id=165476
2450
2451         Reviewed by Brady Eidson.
2452         
2453         Add a test which loads a page that calls navigator.mediaDevices.enumerateDevices, kills the
2454         page, and loads the same page again to ensure that the WK2 UserMediaPermissionRequestManagerProxy
2455         is reset and recreated when a web page exits and is reloaded.
2456
2457         * TestWebKitAPI/PlatformGTK.cmake:
2458         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2459         * TestWebKitAPI/Tests/WebKit2/EnumerateMediaDevices.cpp: Added.
2460         (TestWebKitAPI::checkUserMediaPermissionCallback):
2461         (TestWebKitAPI::TEST):
2462         * TestWebKitAPI/Tests/WebKit2/enumerateMediaDevices.html: Added.
2463
2464 2016-12-07  Jeremy Jones  <jeremyj@apple.com>
2465
2466         One esc to exit fullscreen and pointer lock
2467         https://bugs.webkit.org/show_bug.cgi?id=165416
2468         rdar://problem/29430711
2469
2470         Reviewed by Jer Noble.
2471
2472         Implement WKPageUIClientV8 for pointer lock support.
2473         Add "escape" key support in EventSenderProxy.
2474
2475         * WebKitTestRunner/TestController.cpp:
2476         (WTR::requestPointerLock):
2477         (WTR::TestController::createOtherPage):
2478         (WTR::TestController::createWebViewWithOptions):
2479         * WebKitTestRunner/mac/EventSenderProxy.mm:
2480         (WTR::EventSenderProxy::keyDown):
2481
2482 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2483
2484         Add system trace points for JavaScript VM entry/exit
2485         https://bugs.webkit.org/show_bug.cgi?id=165550
2486
2487         Reviewed by Tim Horton.
2488
2489         Add trace points for entry/exit into/out of the JS VM.
2490
2491         * Tracing/SystemTracePoints.plist:
2492
2493 2016-12-07  ChangSeok Oh  <changseok@webkit.org>
2494
2495         [GTK] Cannot build GTK+ with CUPS 2.* versions
2496         https://bugs.webkit.org/show_bug.cgi?id=163591
2497
2498         Reviewed by Michael Catanzaro.
2499
2500         GTK+ build has failed on the system which CUPS 2.x is installed in. GTK+ 3.16.4
2501         does not assume to use the recent CUPS thus it fails to detect the CUPS in configuration.
2502         GTK+ upstream fixed this issue but it is not easy to apply the original patch to our
2503         old gtk+ since it requires not only bumping up glib accordingly and its consequence
2504         causes many printing test failures. So, I propose to fix the configuration issue by
2505         applying the change to the configure file directly. By doing this, we don't need to
2506         upgrade glib and worry about any test failures as a consequence of the upgraded glib.
2507
2508         * gtk/jhbuild.modules:
2509         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Added.
2510
2511 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2512
2513         Fix use of enum in a WK2 C SPI header.
2514         rdar://problem/28725583
2515
2516         Followup to correctly prefix the enum values.
2517
2518         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2519         (WTR::InjectedBundlePage::prepare):
2520
2521 2016-12-07  Simon Fraser  <simon.fraser@apple.com>
2522
2523         Fix use of enum in a WK2 C SPI header.
2524         rdar://problem/28725583
2525
2526         Reviewed by Dan Bernstein.
2527
2528         Use correct enum style for a C SPI header and fix the callers.
2529
2530         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2531         (WTR::InjectedBundlePage::prepare):
2532
2533 2016-12-07  Wenson Hsieh  <wenson_hsieh@apple.com>
2534
2535         Add a new project for recording and playing back editing commands in editable web content
2536         https://bugs.webkit.org/show_bug.cgi?id=165114
2537         <rdar://problem/29408135>
2538
2539         Reviewed by Beth Dakin.
2540
2541         Adds a new Xcode project containing work towards rewinding and playing back editing commands. This work is
2542         wrapped in an Xcode project to take advantage of the XCTest framework. To manually test recording, open the
2543         capture test harness, edit the contenteditable body, and then hit cmd-S. This downloads a .json file which may
2544         then be dragged into the playback test harness.
2545
2546         Also adds 3 new unit tests in EditingHistoryTests/RewindAndPlaybackTests.m. These tests carry out the following
2547         steps:
2548
2549         1. Load the capture harness and perform test-specific editing on the web view.
2550         2. Let originalState be a dump of the DOM at this point in time.
2551         3. Extract the JSON-serialized editing history data and load the playback harness with this data.
2552         4. Rewind all editing to the beginning.
2553         5. Playback all editing to the end.
2554         6. Dump the state of the DOM. This should be identical to originalState.
2555
2556         * EditingHistory/EditingHistory.xcodeproj/project.pbxproj: Added.
2557         * EditingHistory/EditingHistory/Info.plist: Added.
2558         * EditingHistory/EditingHistory/Resources/CaptureHarness.html: Added.
2559         * EditingHistory/EditingHistory/Resources/DOMTestingUtil.js: Added.
2560         * EditingHistory/EditingHistory/Resources/PlaybackHarness.html: Added.
2561         * EditingHistory/EditingHistory/TestRunner.h: Added.
2562         * EditingHistory/EditingHistory/TestRunner.m: Added.
2563         (injectedMessageEventHandlerScript):
2564         (-[TestRunner init]):
2565         (-[TestRunner deleteBackwards:]):
2566         (-[TestRunner typeString:]):
2567         (-[TestRunner bodyElementSubtree]):
2568         (-[TestRunner bodyTextContent]):
2569         (-[TestRunner editingHistoryJSON]):
2570         (-[TestRunner loadPlaybackTestHarnessWithJSON:]):
2571         (-[TestRunner numberOfUpdates]):
2572         (-[TestRunner jumpToUpdateIndex:]):
2573         (-[TestRunner expectEvents:afterPerforming:]):
2574         (-[TestRunner loadCaptureTestHarness]):
2575         (-[TestRunner setTextObfuscationEnabled:]):
2576         (-[TestRunner isDoneWaitingForPendingEvents]):
2577         (-[TestRunner userContentController:didReceiveScriptMessage:]):
2578
2579         The TestRunner provides utilities that a unit test should use to drive the test forward (e.g. loading harnesses)
2580         or inspect the state of the loaded page (e.g. extracting JSON editing history data from the capture harness).
2581
2582         * EditingHistory/EditingHistory/TestUtil.h: Added.
2583         * EditingHistory/EditingHistory/TestUtil.m: Added.
2584         (waitUntilWithTimeout):
2585         (waitUntil):
2586
2587         Provides utilities for running tests. For now, this is just spinning the runloop on a given condition.
2588
2589         * EditingHistory/EditingHistory/WKWebViewAdditions.h: Added.
2590         * EditingHistory/EditingHistory/WKWebViewAdditions.m: Added.
2591         (-[WKWebView loadPageFromBundleNamed:]):
2592         (-[WKWebView typeCharacter:]):
2593         (-[WKWebView keyPressWithCharacters:keyCode:]):
2594         (-[WKWebView stringByEvaluatingJavaScriptFromString:]):
2595
2596         Provides utilities for simulating interaction in a web view.
2597
2598         * EditingHistory/EditingHistory/main.m: Added.
2599         (main):
2600         * EditingHistory/EditingHistoryTests/Info.plist: Added.
2601         * EditingHistory/EditingHistoryTests/RewindAndPlaybackTests.m: Added.
2602         (-[RewindAndPlaybackTests setUp]):
2603         (-[RewindAndPlaybackTests tearDown]):
2604         (-[RewindAndPlaybackTests testTypingSingleLineOfText]):
2605         (-[RewindAndPlaybackTests testTypingMultipleLinesOfText]):
2606         (-[RewindAndPlaybackTests testTypingAndDeletingText]):
2607         (-[RewindAndPlaybackTests rewindAndPlaybackEditingInPlaybackTestHarness]):
2608         (-[RewindAndPlaybackTests originalBodySubtree:isEqualToFinalSubtree:]):
2609
2610 2016-12-07  Philippe Normand  <pnormand@igalia.com>
2611
2612         [GTK][jhbuild] missing dependency on libvpx in gst-plugins-good
2613         https://bugs.webkit.org/show_bug.cgi?id=165525
2614
2615         Reviewed by Carlos Garcia Campos.
2616
2617         * gtk/jhbuild.modules: gst-plugins-good should depend on the
2618         libvpx package built within jhbuild.
2619
2620 2016-12-07  Philippe Normand  <pnormand@igalia.com>
2621
2622         [GTK][jhbuild] gst-plugins-bad fails to build with OpenSSL 1.1.0
2623         https://bugs.webkit.org/show_bug.cgi?id=165520
2624
2625         Reviewed by Carlos Garcia Campos.
2626
2627         * gtk/jhbuild.modules: Added missing dependency on openh264 in
2628         gst-plugins-bad, along with 2 upstream patches fixing the build
2629         against OpenSSL 1.1.0.
2630         * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
2631         * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
2632
2633 2016-12-06  Alexey Proskuryakov  <ap@apple.com>
2634
2635         Correct SDKROOT values in xcconfig files
2636         https://bugs.webkit.org/show_bug.cgi?id=165487
2637         rdar://problem/29539209
2638
2639         Reviewed by Dan Bernstein.
2640
2641         Fix suggested by Dan Bernstein.
2642
2643         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
2644         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2645         * MiniBrowser/Configurations/DebugRelease.xcconfig:
2646         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
2647         * WebEditingTester/Configurations/DebugRelease.xcconfig:
2648         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2649
2650 2016-12-06  Daniel Bates  <dabates@apple.com>
2651
2652         WebKitTestRunner: Plugins are disabled in new windows
2653         https://bugs.webkit.org/show_bug.cgi?id=165410
2654
2655         Reviewed by Alex Christensen.
2656
2657         Currently WebKitTestRunner only enables plugins in the main window. So, a test that opens
2658         a new window and loads a plugin will fail. We should enable plugins in all windows by
2659         default. Moreover toggling testRunner.setPluginsEnabled() should effect all windows.
2660
2661         Making these changes is a step towards running plugins/open-and-close-window-with-plugin.html
2662         in WebKitTestRunner (we still need to fix <https://bugs.webkit.org/show_bug.cgi?id=46714>) and
2663         will make the behavior of WebKitTestRunner more closely match the behavior DumpRenderTree.
2664
2665         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2666         (WTR::InjectedBundle::beginTesting): Call TestRunner::setPluginsEnabled() instead of
2667         WKBundleSetPluginsEnabled().
2668         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2669         (WTR::TestRunner::setPluginsEnabled): Take a similar approach as TestRunner::setXSSAuditorEnabled()
2670         and make use of WKBundleOverrideBoolPreferenceForTestRunner().
2671
2672 2016-12-05  Dean Jackson  <dino@apple.com>
2673
2674         pointer lock needs to be feature detectable
2675         https://bugs.webkit.org/show_bug.cgi?id=165426
2676         <rdar://problem/29486715>
2677
2678         Reviewed by Antoine Quint.
2679
2680         Expose the comment line to turn on/off pointer lock.
2681
2682         * DumpRenderTree/TestOptions.h:
2683         * DumpRenderTree/TestOptions.mm:
2684         (TestOptions::TestOptions):
2685         * DumpRenderTree/mac/DumpRenderTree.mm:
2686         (resetWebPreferencesToConsistentValues):
2687         * WebKitTestRunner/TestController.cpp:
2688         (WTR::TestController::resetPreferencesToConsistentValues):
2689         (WTR::updateTestOptionsFromTestHeader):
2690         * WebKitTestRunner/TestOptions.h:
2691         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2692         (WTR::PlatformWebView::viewSupportsOptions):
2693         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2694         (WTR::PlatformWebView::viewSupportsOptions):
2695
2696 2016-12-05  Jonathan Bedard  <jbedard@apple.com>
2697
2698         Make it possible to use an existing simulator instance for one-off testing
2699         https://bugs.webkit.org/show_bug.cgi?id=164568
2700         <rdar://problem/29189133>
2701
2702         Reviewed by Daniel Bates.
2703
2704         With this patch, if a simulator is currently running on the machine and
2705         '--dedicated-simulators' is not passed into the application, only one simulator
2706         instance will be used, and this instance will be the existing instance.
2707         If no simulator is running or '--dedicated-simulators' is passed to the script,
2708         previous behavior will be used.
2709
2710         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2711         (parse_args):
2712         * Scripts/webkitpy/port/ios.py:
2713         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
2714         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
2715         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
2716         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
2717         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
2718         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
2719         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
2720         * Scripts/webkitpy/xcode/simulator.py:
2721         (Simulator.refresh): Check if xcode_simctl_list returned None instead of a generator.
2722         (Simulator.current_device): Get currently running device.
2723
2724 2016-12-05  Dan Bernstein  <mitz@apple.com>
2725
2726         Disable a crashing test on iOS.
2727
2728         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
2729
2730 2016-12-04  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2731
2732         Fix a build break on EFL since r209303.
2733
2734         Unreviewed build fix.
2735
2736         * Scripts/webkitperl/FeatureList.pm: Disable SS Device Adaptation temporarily.
2737
2738 2016-12-03  Yusuke Suzuki  <utatane.tea@gmail.com>
2739
2740         Refactor SymbolImpl layout
2741         https://bugs.webkit.org/show_bug.cgi?id=165247
2742
2743         Reviewed by Darin Adler.
2744
2745         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
2746         (TestWebKitAPI::TEST):
2747
2748 2016-12-03  Dan Bernstein  <mitz@apple.com>
2749
2750         Fixed the build after r209307.
2751
2752         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
2753         (TEST):
2754
2755 2016-12-03  Dan Bernstein  <mitz@apple.com>
2756
2757         [Cocoa] Expose InjectedBundlePageEditorClient via the Objective-C bundle SPI
2758         https://bugs.webkit.org/show_bug.cgi?id=165276
2759         <rdar://problem/29467040>
2760
2761         Reviewed by Darin Adler.
2762
2763         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2764         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm: Added.
2765         (-[BundleEditingDelegateRemoteObject willWriteToPasteboard:]):
2766         (-[BundleEditingDelegateRemoteObject didWriteToPasteboard]):
2767         (TEST):
2768         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm: Added.
2769         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2770         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:willWriteRangeToPasteboard:]):
2771         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:pasteboardDataForRange:]):
2772         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextControllerDidWriteToPasteboard:]):
2773         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegateProtocol.h: Added.
2774
2775 2016-12-02  Andy Estes  <aestes@apple.com>
2776
2777         [Cocoa] Adopt the PRODUCT_BUNDLE_IDENTIFIER build setting
2778         https://bugs.webkit.org/show_bug.cgi?id=164492
2779
2780         Reviewed by Dan Bernstein.
2781
2782         * DumpRenderTree/TestNetscapePlugIn/mac/Info.plist: Changed CFBundleIdentifier's value from
2783         com.apple.testnetscapeplugin to ${PRODUCT_BUNDLE_IDENTIFIER}.
2784         * DumpRenderTree/ios/Info.plist: Changed CFBundleIdentifier's value from
2785         org.webkit.DumpRenderTree to ${PRODUCT_BUNDLE_IDENTIFIER}.
2786         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig: Set
2787         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.DumpRenderTree.
2788         * DumpRenderTree/mac/Configurations/TestNetscapePlugIn.xcconfig: Set
2789         PRODUCT_BUNDLE_IDENTIFIER to com.apple.testnetscapeplugin.
2790         * MiniBrowser/Configurations/MiniBrowser.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2791         org.webkit.$(PRODUCT_NAME:rfc1034identifier).
2792         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2793         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2794         * MiniBrowser/mac/Bundle/Info.plist: Changed CFBundleIdentifier's value from
2795         com.apple.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2796         * MiniBrowser/mac/Info.plist: Changed CFBundleIdentifier's value from
2797         org.webkit.${PRODUCT_NAME} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2798         * TestWebKitAPI/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
2799         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
2800         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2801         * TestWebKitAPI/Configurations/WebProcessPlugIn.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2802         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2803         * TestWebKitAPI/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
2804         com.yourcompany.${PRODUCT_NAME:rfc1034identifier} to ${PRODUCT_BUNDLE_IDENTIFIER}.
2805         * TestWebKitAPI/cocoa/WebProcessPlugIn/Info.plist: Added a CFBundleIdentifier key with the
2806         value ${PRODUCT_BUNDLE_IDENTIFIER}.
2807         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Set INFOPLIST_FILE to
2808         InjectedBundle-Info.plist and set PRODUCT_BUNDLE_IDENTIFIER to
2809         com.apple.WebKitTestRunner.InjectedBundle.
2810         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Set
2811         PRODUCT_BUNDLE_IDENTIFIER to org.webkit.$(PRODUCT_NAME:rfc1034identifier).
2812         * WebKitTestRunner/InjectedBundle-Info.plist: Changed CFBundleIdentifier's value from
2813         com.apple.WebKitTestRunner.InjectedBundle to ${PRODUCT_BUNDLE_IDENTIFIER}.
2814         * WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist: Changed
2815         CFBundleIdentifier's value from org.webkit.${PRODUCT_NAME:rfc1034identifier} to
2816         ${PRODUCT_BUNDLE_IDENTIFIER}.
2817
2818 2016-12-02  Brady Eidson  <beidson@apple.com>
2819
2820         Make IndexedDB.WebProcessKillIDBCleanup even more reliable.
2821         https://bugs.webkit.org/show_bug.cgi?id=165330
2822
2823         Reviewed by Alex Christensen.
2824
2825         The test currently nulls out a RetainPtr<WKWebView> to try to destroy the view and kill the process.
2826
2827         Problem is that doesn't reliably destroy the view.
2828         We should explicitly kill the process instead.
2829
2830         Also, by relocating when we kill the process, we can better test behavior of the IndexedDB mechanism.
2831         e.g. We explicitly confirm that a second WebProcess can simultaneously attach to the same unique database as the first.
2832
2833         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
2834         (TEST):
2835
2836 2016-12-02  Commit Queue  <commit-queue@webkit.org>
2837
2838         Unreviewed, rolling out r209136.
2839         https://bugs.webkit.org/show_bug.cgi?id=165337
2840
2841         broke 36 webkitpy tests (Requested by mcatanzaro on #webkit).
2842
2843         Reverted changeset:
2844
2845         "Make it possible to use an existing simulator instance for
2846         one-off testing"
2847         https://bugs.webkit.org/show_bug.cgi?id=164568
2848         http://trac.webkit.org/changeset/209136
2849
2850 2016-12-02  Chris Dumez  <cdumez@apple.com>
2851
2852         [Mac][WK1] Implement new HTML interactive form validation user interface
2853         https://bugs.webkit.org/show_bug.cgi?id=164483
2854
2855         Reviewed by Simon Fraser.
2856
2857         Add support for UIScriptController's contentsOfUserInterfaceItem("validationBubble")
2858         on Mac DRT as this is needed by the HTML form validation layout tests.
2859
2860         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2861         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2862
2863 2016-12-02  Brady Eidson  <beidson@apple.com>
2864
2865         IndexedDB.IndexedDBMultiProcess and IndexedDB.WebProcessKillIDBCleanup sometimes timeout.
2866         https://bugs.webkit.org/show_bug.cgi?id=160780 and https://bugs.webkit.org/show_bug.cgi?id=161001
2867
2868         Reviewed by Alexey Proskuryakov.
2869
2870         These tests had "run-loop races."
2871         
2872         The test spins the runloop waiting for one message.
2873         Two messages might come in from the WebProcess in short succession, and both be delivered to the
2874         UIProcess in the same spin of the runloop.
2875
2876         Therefore by the time the test stops spinning the runloop, notified that a message was received,
2877         the first message has been overwritten by the second.
2878
2879         These tests are fixed by queueing the incoming messages instead of just storing one.
2880
2881         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm:
2882         (-[IndexedDBMPMessageHandler userContentController:didReceiveScriptMessage:]):
2883         (getNextMessage):
2884         (TEST):
2885
2886         * TestWebKitAPI/Tests/WebKit2Cocoa/WebProcessKillIDBCleanup.mm:
2887         (-[IndexedDBWebProcessKillMessageHandler userContentController:didReceiveScriptMessage:]):
2888         (getNextMessage):
2889         (TEST):
2890
2891 2016-12-01  Jiewen Tan  <jiewen_tan@apple.com>
2892
2893         Add a runtime flag for SubtleCrypto
2894         https://bugs.webkit.org/show_bug.cgi?id=164982
2895
2896         Reviewed by Brent Fulgham.
2897
2898         * DumpRenderTree/mac/DumpRenderTree.mm:
2899         (resetWebPreferencesToConsistentValues):
2900         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2901         (WTR::InjectedBundle::beginTesting):
2902         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2903         (WTR::TestRunner::setSubtleCryptoEnabled):
2904         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2905
2906 2016-12-01  Alexey Proskuryakov  <ap@apple.com>
2907
2908         Remove webkitpy dependency on Eliza
2909         https://bugs.webkit.org/show_bug.cgi?id=164979
2910
2911         Reviewed by Daniel Bates.
2912
2913         This module is not on pypi, so installing it is a challenge. The jokes feel pretty old too!
2914
2915         * Scripts/webkitpy/thirdparty/__init__.py:
2916         * Scripts/webkitpy/thirdparty/__init___unittest.py: Changed mock import hook to
2917         test buildbot instead of eliza.
2918         * Scripts/webkitpy/tool/bot/ircbot.py:
2919         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
2920
2921 2016-12-01  Beth Dakin  <bdakin@apple.com>
2922
2923         Force clicking tests fail on some machines
2924         https://bugs.webkit.org/show_bug.cgi?id=165263
2925
2926         Reviewed by Tim Horton.
2927
2928         Initialize com.apple.trackpad.forceClick to 1 so that we don’t have to depend on 
2929         the user account having this feature enabled. 
2930         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
2931         (WTR::InjectedBundle::platformInitialize):
2932         * WebKitTestRunner/mac/main.mm:
2933         (setDefaultsToConsistentValuesForTesting):
2934
2935 2016-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
2936
2937         Introduce StringImpl::StaticStringImpl with constexpr constructor
2938         https://bugs.webkit.org/show_bug.cgi?id=165093
2939
2940         Reviewed by Darin Adler.
2941
2942         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
2943         (TestWebKitAPI::TEST):
2944
2945 2016-11-30  Antoine Quint  <graouts@apple.com>
2946
2947         [Modern Media Controls] Add an HTML comment flag to turn the feature on
2948         https://bugs.webkit.org/show_bug.cgi?id=165226
2949
2950         Reviewed by Dean Jackson.
2951
2952         Add a new flag to turn Modern Media Controls on in the test runners.
2953
2954         * DumpRenderTree/TestOptions.h:
2955         * DumpRenderTree/TestOptions.mm:
2956         (TestOptions::TestOptions):
2957         * DumpRenderTree/mac/DumpRenderTree.mm:
2958         (resetWebPreferencesToConsistentValues):
2959         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2960         (WTR::InjectedBundle::beginTesting):
2961         * WebKitTestRunner/TestController.cpp:
2962         (WTR::TestController::resetPreferencesToConsistentValues):
2963         (WTR::updateTestOptionsFromTestHeader):
2964         * WebKitTestRunner/TestOptions.h:
2965         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2966         (WTR::PlatformWebView::viewSupportsOptions):
2967         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2968         (WTR::PlatformWebView::viewSupportsOptions):
2969
2970 2016-11-30  Said Abou-Hallawa  <sabouhallawa@apple.com>
2971
2972         Add separate settings and preferences to enable/disable async decoding for large images and animated images
2973         https://bugs.webkit.org/show_bug.cgi?id=165177
2974
2975         Reviewed by Simon Fraser.
2976         
2977         Pref and a menu item to toggle async image decoding settings for WebKits 1 and 2.
2978
2979         * MiniBrowser/mac/SettingsController.h:
2980         * MiniBrowser/mac/SettingsController.m:
2981         (-[SettingsController _populateMenu]):
2982         (-[SettingsController validateMenuItem:]):
2983         (-[SettingsController toggleLargeImageAsyncDecodingEnabled:]):
2984         (-[SettingsController largeImageAsyncDecodingEnabled]):
2985         (-[SettingsController toggleAnimatedImageAsyncDecodingEnabled:]):
2986         (-[SettingsController animatedImageAsyncDecodingEnabled]):
2987         (-[SettingsController toggleAsyncImageDecodingEnabled:]): Deleted.
2988         (-[SettingsController asyncImageDecodingEnabled]): Deleted.
2989         * MiniBrowser/mac/WK1BrowserWindowController.m:
2990         (-[WK1BrowserWindowController didChangeSettings]):
2991         * MiniBrowser/mac/WK2BrowserWindowController.m:
2992         (-[WK2BrowserWindowController didChangeSettings]):
2993
2994 2016-11-30  Jonathan Bedard  <jbedard@apple.com>
2995
2996         Make it possible to use an existing simulator instance for one-off testing
2997         https://bugs.webkit.org/show_bug.cgi?id=164568
2998         <rdar://problem/29189133>
2999
3000         Reviewed by Daniel Bates.
3001
3002         With this patch, if a simulator is currently running on the machine and
3003         '--dedicated-simulators' is not passed into the application, only one simulator
3004         instance will be used, and this instance will be the existing instance.
3005         If no simulator is running or '--dedicated-simulators' is passed to the script,
3006         previous behavior will be used.
3007
3008         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3009         (parse_args):
3010         * Scripts/webkitpy/port/ios.py:
3011         (IOSSimulatorPort.__init__): Logic for enabling usage of currently running simulator.
3012         (IOSSimulatorPort._create_simulators): Only create simulators when needed, don't reset already running simulators.
3013         (IOSSimulatorPort.setup_test_run): Don't open already running simulators.
3014         (IOSSimulatorPort._quit_ios_simulator): Only quit simulators if we manage them.
3015         (IOSSimulatorPort.clean_up_test_run): Only clean up simulators if we manage them. 
3016         (IOSSimulatorPort._using_dedicated_simulators): True if simulators need to be managed, false if using an existing instance.
3017         (IOSSimulatorPort.device_id_for_worker_number): Access currently running simulator if not managing devices.
3018         * Scripts/webkitpy/xcode/simulator.py:
3019         (Simulator.current_device): Get currently running device.
3020
3021 2016-11-29  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3022
3023         [Linux] run-benchmark should be able to execute the benchmarks with more browsers.
3024         https://bugs.webkit.org/show_bug.cgi?id=164792
3025
3026         Reviewed by Michael Catanzaro.
3027
3028         This removes the GTKBrowserDriver (and the platform 'gtk') from the run-benchmark script,
3029         and adds a new LinuxBrowserDriver with a platform 'linux'.
3030
3031         It add also drivers for Chrome (Chromium), Firefox, Epiphany and MiniBrowser-GTK (previously MiniBrowser).
3032
3033         The detection of the platform is now done automatically, so it is not longer needed to pass a "--platform" parameter.
3034
3035         The tracking of the browser process is now more robust, we track the pid of the browser process and we only try to
3036         kill the ones that were executed by this script, instead of doing a 'killall $browser' (like before).
3037         We also check for browser process childs and we kill them if they are still alive after the main browser process has been killed.
3038         This depends on psutil, so this will only be done if psutil is installed.
3039
3040         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3041         (RunBenchmarkTests.start): The platform is now autodetected and the MiniBrowser driver is renamed to MiniBrowser-GTK.
3042         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
3043         (BenchmarkRunner._run_benchmark): Fix a bug that caused close_browsers to be called twice. Its already called inside BenchmarkRunner._run_one_test.
3044         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py: Added.
3045         (LinuxBrowserDriver): Implement base class that has all the needed functionality for driving the browsers.
3046         (LinuxBrowserDriver.__init__):
3047         (LinuxBrowserDriver.prepare_env):
3048         (LinuxBrowserDriver.restore_env):
3049         (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>)
3050         (LinuxBrowserDriver.launch_url):
3051         (LinuxBrowserDriver._get_first_executable_path_from_list):
3052         (LinuxBrowserDriver._screen_size):
3053         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
3054         (LinuxChromeDriver):
3055         (LinuxChromeDriver.launch_url):
3056         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_browser_driver.py.
3057         (EpiphanyBrowserDriver):
3058         (EpiphanyBrowserDriver.launch_url):
3059         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py: Copied from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
3060         (LinuxFirefoxDriver):
3061         (LinuxFirefoxDriver.launch_url):
3062         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py: Renamed from Tools/Scripts/webkitpy/benchmark_runner/browser_driver/gtk_minibrowser_driver.py.
3063         (GTKMiniBrowserDriver):
3064         (GTKMiniBrowserDriver.launch_url):
3065         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
3066         (SimpleHTTPServerDriver):
3067         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
3068         (getplatform):
3069         (getdefaultbrowser):
3070         (parse_args):
3071         * Scripts/webkitpy/benchmark_runner/utils.py:
3072         (load_subclasses): The loading of subclasses was still (even after r196979) sensitive to the order in which the modules are loaded.
3073         We have to ensure that the files containing subclasses of the base_class_file are loaded after the base_class_file,
3074         we can do that by matching against the base_class_file pattern when the list is created.
3075
3076 2016-11-29  Andy Estes  <aestes@apple.com>
3077
3078         [Cocoa] Enable two clang warnings recommended by Xcode
3079         https://bugs.webkit.org/show_bug.cgi?id=164498
3080
3081         Reviewed by Mark Lam.
3082
3083         * DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_INFINITE_RECURSION and CLANG_WARN_SUSPICIOUS_MOVE.
3084         * MiniBrowser/Configurations/Base.xcconfig: Ditto.
3085         * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
3086         * WebKitTestRunner/Configurations/Base.xcconfig: Ditto.
3087
3088 2016-11-29  Eric Carlson  <eric.carlson@apple.com>
3089
3090         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
3091         https://bugs.webkit.org/show_bug.cgi?id=164760
3092         <rdar://problem/29261266>
3093
3094         Reviewed by Youenn Fablet.
3095         
3096         Allow scripts to determine the number of times the user has been prompted for capture device access.
3097
3098         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3099         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3100         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
3101         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
3102         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
3103         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
3104         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
3105         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3106         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
3107         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
3108         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
3109         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
3110         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3111         * WebKitTestRunner/TestController.cpp:
3112         (WTR::TestController::resetStateToConsistentValues):
3113         (WTR::OriginSettings::incrementRequestCount):
3114         (WTR::OriginSettings::resetRequestCount):
3115         (WTR::OriginSettings::requestCount):
3116         (WTR::TestController::saltForOrigin):
3117         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
3118         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
3119         (WTR::TestController::settingsForOrigin):
3120         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
3121         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
3122         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
3123         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
3124         * WebKitTestRunner/TestController.h:
3125         * WebKitTestRunner/TestInvocation.cpp:
3126         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
3127         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3128
3129 2016-11-29  Simon Fraser  <simon.fraser@apple.com>
3130
3131         intersection-observer-entry-interface.html test fails on the bots
3132         https://bugs.webkit.org/show_bug.cgi?id=165133
3133
3134         Reviewed by Darin Adler.
3135         
3136         Tests that enabled Intersection Observer via <!-- webkit-test-runner [ enableIntersectionObserver=true ] -->
3137         would fail sometimes, because TestController::ensureViewSupportsOptionsForTest() failed to check
3138         to see if this option required creating a new web view, so would just use the old view without
3139         even resetting preferences.
3140         
3141         In general, TestController doesn't distinguish properly between options that require the creation
3142         of a new view (like mock scrollbars), and those that can be simply reset as resetPreferencesToConsistentValues()
3143         does.
3144         
3145         Do the easy fix of having viewSupportsOptions() check options.enableIntersectionObserver. We should probably
3146         just call resetPreferencesToConsistentValues() even when re-use the same view.
3147         
3148         * WebKitTestRunner/TestController.cpp:
3149         (WTR::TestController::resetPreferencesToConsistentValues):
3150         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3151         (WTR::PlatformWebView::viewSupportsOptions):
3152         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3153         (WTR::PlatformWebView::viewSupportsOptions):
3154
3155 2016-11-28  Ryan Haddad  <ryanhaddad@apple.com>
3156
3157         Unreviewed, rolling out r209008.
3158
3159         This change appears to have caused two fast/mediastrem
3160         LayoutTests to fail.
3161
3162         Reverted changeset:
3163
3164         "[MediaStream] Don't request user permission for a device if
3165         it has already been granted in the current browsing context"
3166         https://bugs.webkit.org/show_bug.cgi?id=164760
3167         http://trac.webkit.org/changeset/209008
3168
3169 2016-11-28  Daniel Bates  <dabates@apple.com>
3170
3171         Teach webkitpy how to read CSSProperties.json r209001
3172         https://bugs.webkit.org/show_bug.cgi?id=165108
3173
3174         Reviewed by Simon Fraser.
3175
3176         Fix webkitpy logic so that it can read CSS property names from CSSProperties.json following r209001.
3177
3178         Following r209001 CSSPropertyNames.in no longer exists as it was replaced with CSSProperties.json.
3179         We need to modify the webkitpy machinery that processed CSSPropertyNames.in to process CSSProperties.json.
3180
3181         * Scripts/webkitpy/w3c/test_converter.py:
3182         (_W3CTestConverter.__init__): Make self._css_property_file and self._css_property_value_file local
3183         variables as it is unnecessary for them to be instance variables. Call read_webkit_prefixed_css_property_list()
3184         to read the property names from file CSSProperties.json. Call legacy_read_webkit_prefixed_css_property_list() to
3185         read CSS keyword values from CSSValueKeywords.in.
3186         (_W3CTestConverter.read_webkit_prefixed_css_property_list): Added.
3187         (_W3CTestConverter):
3188         (_W3CTestConverter.legacy_read_webkit_prefixed_css_property_list): Renamed from read_webkit_prefixed_css_property_list.
3189         * Scripts/webkitpy/w3c/test_importer_unittest.py:
3190         (TestImporterTest.test_harnesslinks_conversion): Substitute CSSProperties.json for CSSPropertyNames.in.
3191
3192 2016-11-28  Eric Carlson  <eric.carlson@apple.com>
3193
3194         [MediaStream] Don't request user permission for a device if it has already been granted in the current browsing context
3195         https://bugs.webkit.org/show_bug.cgi?id=164760
3196         <rdar://problem/29261266>
3197
3198         Reviewed by Youenn Fablet.
3199         
3200         Allow scripts to determine the number of times the user has been prompted for capture device access.
3201
3202         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3203         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3204         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
3205         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin):
3206         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
3207         (WTR::InjectedBundle::setUserMediaPermissionForOrigin): Deleted.
3208         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
3209         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3210         (WTR::TestRunner::setUserMediaPersistentPermissionForOrigin):
3211         (WTR::TestRunner::userMediaPermissionRequestCountForOrigin):
3212         (WTR::TestRunner::resetUserMediaPermissionRequestCountForOrigin):
3213         (WTR::TestRunner::setUserMediaPermissionForOrigin): Deleted.
3214         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3215         * WebKitTestRunner/TestController.cpp:
3216         (WTR::TestController::resetStateToConsistentValues):
3217         (WTR::OriginSettings::incrementRequestCount):
3218         (WTR::OriginSettings::resetRequestCount):
3219         (WTR::OriginSettings::requestCount):
3220         (WTR::TestController::saltForOrigin):
3221         (WTR::TestController::setUserMediaPersistentPermissionForOrigin):
3222         (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
3223         (WTR::TestController::settingsForOrigin):
3224         (WTR::TestController::userMediaPermissionRequestCountForOrigin):
3225         (WTR::TestController::resetUserMediaPermissionRequestCountForOrigin):
3226         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
3227         (WTR::TestController::setUserMediaPermissionForOrigin): Deleted.
3228         * WebKitTestRunner/TestController.h:
3229         * WebKitTestRunner/TestInvocation.cpp:
3230         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
3231         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3232
3233 2016-11-18  Jer Noble  <jer.noble@apple.com>
3234
3235         Add some performance tests for various aspects of media loading and playback.
3236         https://bugs.webkit.org/show_bug.cgi?id=164977
3237
3238         Reviewed by Darin Adler.
3239
3240         Allow callers to pass in extra alias/directory pairs to run-webkit-httpd.
3241
3242         * Scripts/run-webkit-httpd:
3243         (parse_args):
3244         (main):
3245
3246 2016-11-27  Simon Fraser  <simon.fraser@apple.com>
3247
3248         Another fix for CMake.
3249
3250         * DumpRenderTree/TestOptions.h:
3251         * DumpRenderTree/TestOptions.mm:
3252
3253 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
3254
3255         Better fix for the Mac CMake build.
3256
3257         * DumpRenderTree/PlatformMac.cmake:
3258
3259 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
3260
3261         Attempt to fix Mac CMake build.
3262
3263         * DumpRenderTree/PlatformMac.cmake:
3264
3265 2016-11-26  Yusuke Suzuki  <utatane.tea@gmail.com>
3266
3267         [WTF] Import std::optional reference implementation as WTF::Optional
3268         https://bugs.webkit.org/show_bug.cgi?id=164199
3269
3270         Reviewed by Saam Barati and Sam Weinig.
3271
3272         Use WTF::Optional::value_or.
3273
3274         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3275         (WTR::UIScriptController::stableStateOverride):
3276         (WTR::UIScriptController::setStableStateOverride):
3277         * TestRunnerShared/Bindings/JSWrappable.h:
3278         (WTR::JSValueMakeBooleanOrNull):
3279         (WTR::JSValueToNullableBoolean):
3280         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3281         (WTR::UIScriptController::stableStateOverride):
3282         (WTR::UIScriptController::setStableStateOverride):
3283         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3284         * TestWebKitAPI/Tests/WTF/Optional.cpp:
3285         (TestWebKitAPI::TEST):
3286         * TestWebKitAPI/Tests/WebCore/HTMLParserIdioms.cpp:
3287         (TestWebKitAPI::testParseHTMLInteger):
3288         (TestWebKitAPI::testParseHTMLNonNegativeInteger):
3289         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3290         (TestWebKitAPI::checkURL):
3291         (TestWebKitAPI::checkRelativeURL):
3292         (TestWebKitAPI::checkURLDifferences):
3293         (TestWebKitAPI::checkRelativeURLDifferences):
3294         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3295         (WTR::UIScriptController::stableStateOverride):
3296         (WTR::UIScriptController::setStableStateOverride):
3297
3298 2016-11-26  Sam Weinig  <sam@webkit.org>
3299
3300         Convert IntersectionObserver over to using RuntimeEnabledFeatures so it can be properly excluded from script
3301         https://bugs.webkit.org/show_bug.cgi?id=164965
3302
3303         Reviewed by Simon Fraser.
3304
3305         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3306         Add new files.
3307
3308         * DumpRenderTree/TestOptions.h: Added.
3309         * DumpRenderTree/TestOptions.mm: Added.
3310         (parseBooleanTestHeaderValue):
3311         (TestOptions::TestOptions):
3312         Port TestOption parsing from WKTR to DRT.
3313
3314         * DumpRenderTree/mac/DumpRenderTree.mm:
3315         (resetWebPreferencesToConsistentValues):
3316         (resetWebViewToConsistentStateBeforeTesting):
3317         (runTest):
3318         * WebKitTestRunner/TestController.cpp:
3319         Pass TestOptions down to resetWebPreferencesToConsistentValues to allow setting
3320         preferences conditionally.
3321
3322         (WTR::TestController::resetPreferencesToConsistentValues):
3323         (WTR::updateTestOptionsFromTestHeader):
3324         * WebKitTestRunner/TestOptions.h:
3325         Add a new test option header, enableIntersectionObserver, to enable IntersectionObserver.
3326
3327 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
3328
3329         Migrate some layout timer-related code from std::chrono to Seconds and MonotonicTime
3330         https://bugs.webkit.org/show_bug.cgi?id=164992
3331
3332         Reviewed by Darin Adler.
3333         
3334         Use Seconds::zero().
3335
3336         * TestWebKitAPI/Tests/WTF/Condition.cpp:
3337
3338 2016-11-26  Simon Fraser  <simon.fraser@apple.com>
3339
3340         Add literals for various time units
3341         https://bugs.webkit.org/show_bug.cgi?id=165074
3342
3343         Reviewed by Filip Pizlo.
3344         
3345         Add tests for new time literals. Add new tests for units.
3346
3347         * TestWebKitAPI/Tests/WTF/Time.cpp:
3348         (TestWebKitAPI::TEST):
3349
3350 2016-11-25  Csaba Osztrogonác  <ossy@webkit.org>
3351
3352         Fix compile warnings after r208415
3353         https://bugs.webkit.org/show_bug.cgi?id=165061
3354
3355         Reviewed by Andy Estes.
3356
3357         * TestWebKitAPI/Tests/WTF/Time.cpp:
3358         (TestWebKitAPI::TEST):
3359
3360 2016-11-24  Michael Catanzaro  <mcatanzaro@igalia.com>
3361
3362         [GTK] Notifications API does not expose or respect the "tag" attribute
3363         https://bugs.webkit.org/show_bug.cgi?id=164771
3364
3365         Reviewed by Gustavo Noronha Silva.
3366
3367         Verify that showing a notification with the same tag as another notification closes the
3368         previous notification before the new notification is shown.
3369
3370         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
3371         (testWebViewNotification):
3372
3373 2016-11-24  Carlos Garcia Campos  <cgarcia@igalia.com>
3374
3375         Unreviewed. Fix GTK+ test /webkit2/WebKitWebContext/get-plugins after r208429.
3376
3377         Test plugin library was renamed as libTestNetscapePlugIn.so in r208429.
3378
3379         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
3380         (testWebContextGetPlugins): Update the library name.
3381
3382 2016-11-22  Darin Adler  <darin@apple.com>
3383
3384         Make normal case fast in the input element limitString function
3385         https://bugs.webkit.org/show_bug.cgi?id=165023
3386
3387         Reviewed by Dan Bernstein.
3388
3389         * TestWebKitAPI/CMakeLists.txt: Added TextBreakIterator.cpp.
3390         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Ditto.
3391         * TestWebKitAPI/Tests/WTF/TextBreakIterator.cpp: Added.
3392         Contains some tests for the numGraphemeClusters and
3393         numCharactersInGraphemeClusters functions that I used to make sure
3394         that the new fast paths I added work correctly.
3395
3396 2016-11-22  Tomas Popela  <tpopela@redhat.com>
3397
3398         Unreviewed, add myself as a WebKit committer.
3399
3400         * Scripts/webkitpy/common/config/contributors.json:
3401
3402 2016-11-21  Mark Lam  <mark.lam@apple.com>
3403
3404         Hasher::addCharacters() should be able to handle zero length strings.
3405         https://bugs.webkit.org/show_bug.cgi?id=165024
3406
3407         Reviewed by Yusuke Suzuki.
3408
3409         * TestWebKitAPI/Tests/WTF/StringHasher.cpp:
3410         (TestWebKitAPI::TEST):
3411
3412 2016-11-21  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3413
3414         [CMake] build fails after update to cmake 3.7
3415         https://bugs.webkit.org/show_bug.cgi?id=165008
3416
3417         Reviewed by Dan Bernstein.
3418
3419         When we remove the CMake cache, we should remove both the
3420         CMakeCache.txt file and the CMakeFiles directory.
3421         See: https://gitlab.kitware.com/cmake/cmake/issues/14820
3422
3423         * Scripts/webkitdirs.pm:
3424         (cmakeFilesPath):
3425         (removeCMakeCache):
3426
3427 2016-11-16  Philippe Normand  <pnormand@igalia.com>
3428
3429         [GTK][WebRTC] Switch to downstream OpenWebRTC and more recent GStreamer
3430         https://bugs.webkit.org/show_bug.cgi?id=164817
3431
3432         Reviewed by Alejandro G. Castro.
3433
3434         This is temporary, hopefully. The OpenWebRTC patches will/should
3435         be soon reviewed and upstream but meanwhile it makes sense to use
3436         the Igalia downstream fork so that the WebRTC testing is easier.
3437
3438         Recent GStreamer patches are also needed for RTP bundling support
3439         and RTP retransmission fixes.
3440
3441         * gtk/jhbuild.modules:
3442         * gtk/openwebrtc.modules: Removed.
3443         * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Added.
3444         * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Added.
3445         * gtk/patches/gst-plugins-good-0003-rtpbin-receive-bundle-support.patch: Added.
3446
3447 2016-11-20  Zan Dobersek  <zdobersek@igalia.com>
3448
3449         [EncryptedMedia] Make EME API runtime-enabled
3450         https://bugs.webkit.org/show_bug.cgi?id=164927
3451
3452         Reviewed by Jer Noble.
3453
3454         Enable the EME API via the WKTR InjectedBundle whenever testing
3455         commences. This does not have any effect unless the EME feature
3456         is enabled at compile-time, but it's still added to match other
3457         features and for future use.
3458
3459         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3460         (WTR::InjectedBundle::beginTesting):
3461         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3462         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
3463         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3464
3465 2016-11-19  Simon Fraser  <simon.fraser@apple.com>
3466
3467         Fix the Mac and iOS bulds.
3468
3469         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3470         (-[TestRunnerWKWebView _stableStateOverride]):
3471         (-[TestRunnerWKWebView _setStableStateOverride:]):
3472
3473 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
3474
3475         Make it possible to test non-stable-state scrolling on iOS
3476         https://bugs.webkit.org/show_bug.cgi?id=164905
3477
3478         Reviewed by Dan Bernstein.
3479
3480         Make it possible for an iOS layout test to force every visible rect update
3481         from the UI process to the web process to be in a non-stable state. This emulates
3482         what happens during panning and zooming interactions, and allows us to test the
3483         scrolling and layer trees in these transient states.
3484         
3485         This is done by adding a testing property on WKWebView, _stableStateOverride, whose
3486         getters and setters are overridden in TestRunnerWKWebView. When non-nil, we _updateVisibleContentRectAfterScrollInView
3487         consults the NSNumber's boolValue and uses it to override the stable state.
3488         
3489         To facilitate this kind of testing, also add immediateScrollToOffset() and
3490         immediateZoomToScale() to UIScriptController. Finally, add doAfterPresentationUpdate()
3491         which provides a callback that fires after one trip to the web process and back.
3492         
3493         Add code generation support for optional boolean attributes in IDL.
3494
3495         Align CodeGeneratorDumpRenderTree.pm and CodeGeneratorTestRunner.pm.
3496
3497         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
3498         (_generateImplementationFile):
3499         (_platformTypeConstructor):
3500         (_returnExpression):
3501         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3502         (WTR::UIScriptController::doAfterPresentationUpdate):
3503         (WTR::contentOffsetBoundedInValidRange):
3504         (WTR::UIScriptController::scrollToOffset):
3505         (WTR::UIScriptController::immediateScrollToOffset):
3506         (WTR::UIScriptController::immediateZoomToScale):
3507         (WTR::UIScriptController::stableStateOverride):
3508         (WTR::UIScriptController::setStableStateOverride):
3509         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3510         (WTR::UIScriptController::doAfterPresentationUpdate):
3511         * TestRunnerShared/Bindings/JSWrappable.h:
3512         (WTR::JSValueMakeBooleanOrNull):
3513         (WTR::JSValueToNullableBoolean):
3514         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3515         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3516         (WTR::UIScriptController::immediateScrollToOffset):
3517         (WTR::UIScriptController::immediateZoomToScale):
3518         (WTR::UIScriptController::stableStateOverride):
3519         (WTR::UIScriptController::setStableStateOverride):
3520         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3521         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
3522         (_classRefGetter):
3523         (_platformTypeConstructor):
3524         (_returnExpression):
3525         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3526         (-[TestRunnerWKWebView dealloc]):
3527         (-[TestRunnerWKWebView _stableStateOverride]):
3528         (-[TestRunnerWKWebView _setStableStateOverride:]):
3529         * WebKitTestRunner/ios/TestControllerIOS.mm:
3530         (WTR::TestController::platformResetStateToConsistentValues):
3531         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3532         (WTR::UIScriptController::doAsyncTask):
3533         (WTR::UIScriptController::doAfterPresentationUpdate):
3534         (WTR::UIScriptController::zoomToScale):
3535         (WTR::UIScriptController::immediateScrollToOffset):
3536         (WTR::UIScriptController::immediateZoomToScale):
3537         (WTR::UIScriptController::stableStateOverride):
3538         (WTR::UIScriptController::setStableStateOverride):
3539         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3540         (WTR::UIScriptController::doAfterPresentationUpdate):
3541
3542 2016-11-19  Joanmarie Diggs  <jdiggs@igalia.com>
3543
3544         AX: [ATK] Expose aria-busy via ATK_STATE_BUSY
3545         https://bugs.webkit.org/show_bug.cgi?id=164909
3546
3547         Reviewed by Chris Fleizach.
3548
3549         Implement boolAttributeValue() for ATK so we can test AXElementBusy.
3550
3551         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3552         (WTR::AccessibilityUIElement::boolAttributeValue):
3553
3554 2016-11-18  Simon Fraser  <simon.fraser@apple.com>
3555
3556         [iOS WK2] Eliminate a source of flakiness in layout tests by forcing WebPage into "responsive" mode for all tests, with an internals override
3557         https://bugs.webkit.org/show_bug.cgi?id=164980
3558
3559         Reviewed by Chris Dumez.
3560
3561         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3562         (WTR::InjectedBundlePage::prepare):
3563
3564 2016-11-18  Dean Jackson  <dino@apple.com>
3565
3566         AX: "(inverted-colors)" media query only matches on page reload; should match on change
3567         https://bugs.webkit.org/show_bug.cgi?id=163564
3568         <rdar://problem/28807350>
3569
3570         Reviewed by Simon Fraser.
3571
3572         Add a UIScriptController method that tricks WebKit into thinking
3573         it has received a notification that accessibility settings have
3574         changed. Combined with our forced overrides, this allows us to
3575         test if a page would react to the notifications.
3576
3577         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3578         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3579         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3580         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3581         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3582         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3583         (WTR::simulateAccessibilitySettingsChangeNotification):
3584         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3585         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3586         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3587         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3588         (WTR::UIScriptController::simulateAccessibilitySettingsChangeNotification):
3589
3590 2016-11-18  Alex Christensen  <achristensen@webkit.org>
3591
3592         Fix API test after r208902
3593         https://bugs.webkit.org/show_bug.cgi?id=144194
3594
3595         * TestWebKitAPI/Tests/Cocoa/URLExtras.mm:
3596         (TestWebKitAPI::TEST):
3597         The fullwidth solidus, U+FF0F, changed encoding from IDN2003 to IDN2008, probably to prevent domains from using it
3598         to spoof other domains.  https://webkit.org/blog/ and https://webkit.org\uFF0Fblog/ would otherwise look 
3599         too similar when rendered.
3600
3601 2016-11-17  Alex Christensen  <achristensen@webkit.org>
3602
3603         Support IDN2008 with UTS #46 instead of IDN2003
3604         https://bugs.webkit.org/show_bug.cgi?id=144194
3605
3606         Reviewed by Darin Adler.
3607
3608         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3609         (TestWebKitAPI::TEST_F):
3610         Add some tests from http://unicode.org/faq/idn.html verifying that we follow UTS46's deviations from IDN2008.
3611         Add some tests based on https://tools.ietf.org/html/rfc5893 verifying that we check for bidirectional text.
3612         Add a test based on https://tools.ietf.org/html/rfc5892 verifying that we do not do ContextO check.
3613         Add a test for U+321D and U+321E which have particularly interesting punycode encodings.  We match Firefox here now.
3614         Also add a test from http://www.unicode.org/reports/tr46/#IDNAComparison verifying we are not using IDN2003.
3615         We should consider importing all of http://www.unicode.org/Public/idna/9.0.0/IdnaTest.txt as URL domain tests.
3616
3617 2016-11-17  Carlos Garcia Campos  <cgarcia@igalia.com>
3618
3619         Downloads started by context menu actions should also have a web view associated
3620         https://bugs.webkit.org/show_bug.cgi?id=164364
3621
3622         Reviewed by Michael Catanzaro.
3623
3624         Add a GTK+ unit tests to check that downloads started by the context menu have a web view associated.
3625
3626         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
3627         (downloadLocalFileSuccessfully):
3628         (testDownloadOverwriteDestinationDisallowed):
3629         (testDownloadLocalFileError):
3630         (testDownloadRemoteFile):