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