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