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