Update bot watcher's dashboard to reflect that EWS is on iOS 9 now
[WebKit-https.git] / Tools / ChangeLog
1 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
2
3         Update bot watcher's dashboard to reflect that EWS is on iOS 9 now
4         https://bugs.webkit.org/show_bug.cgi?id=149983
5
6         Reviewed by Dan Bates.
7
8         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
9         (BubbleQueueServer):
10         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
11
12 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
13
14         Fix webkitpy tests after r190922.
15
16         * Scripts/webkitpy/common/config/ews.json:
17         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
18         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
19
20 2015-10-12  Alexey Proskuryakov  <ap@apple.com>
21
22         Add a Mac debug EWS queue
23         https://bugs.webkit.org/show_bug.cgi?id=150069
24
25         Reviewed by Geoffrey Garen.
26
27         * QueueStatusServer/config/queues.py:
28         * Scripts/webkitpy/common/config/ews.json:
29         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
30         (AbstractEarlyWarningSystem):
31         (AbstractEarlyWarningSystem.archive_last_test_results):
32         (AbstractEarlyWarningSystem.build_style):
33         (AbstractEarlyWarningSystem.refetch_patch):
34         (AbstractEarlyWarningSystem.load_ews_classes):
35
36 2015-10-12  Mario Sanchez Prada  <mario@endlessm.com>
37
38         [GTK] Update jhbuild's version of harfbuzz
39         https://bugs.webkit.org/show_bug.cgi?id=149749
40
41         Reviewed by Martin Robinson.
42
43         Update harfbuzz to 0.9.35, following the lead of Debian Stable.
44
45         * gtk/jhbuild.modules: Updated details for harfbuzz.
46
47 2015-10-12  Mario Sanchez Prada  <mario@endlessm.com>
48
49         [GTK] Media tests crashing with gst-plugins-bad 1.4.4 and cpp 5.2
50         https://bugs.webkit.org/show_bug.cgi?id=150026
51
52         Reviewed by Philippe Normand.
53
54         Backport upstream patch from gst-plugins-bad so that the right version
55         of FAAD2 can be found with newer versions of cpp, so that gst-plugins-bad
56         gets compiled properly, avoiding crashes on runtime while running tests.
57
58         * gtk/patches/gst-plugins-bad-fix-faad2-version-check.patch: Added.
59         * gtk/jhbuild.modules: Referenced the newly added patch for gst-plugins-bad.
60
61 2015-10-11  Myles C. Maxfield  <mmaxfield@apple.com>
62
63         Test font-variant-* and font-feature-settings with mocked preinstalled fonts
64         https://bugs.webkit.org/show_bug.cgi?id=149777
65
66         Reviewed by Simon Fraser.
67
68         Include FontWithFeatures in DumpRenderTree and WebKitTestRunner. Add it
69         to the list of tests to preinstall at startup time.
70
71         Also, update the generation of the 'name' table in the FontWithFeatures font.
72
73         * DumpRenderTree/mac/DumpRenderTree.mm:
74         (allowedFontFamilySet):
75         (activateTestingFonts):
76         (activateFontsIOS):
77         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
78         (Generator::generate):
79         (Generator::appendCFFTable):
80         (Generator::appendNameSubtable):
81         (Generator::appendNAMETable):
82         * FontWithFeatures/FontWithFeatures/main.cpp:
83         (main):
84         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
85         (WTR::allowedFontFamilySet):
86         (WTR::activateFonts):
87         * WebKitTestRunner/mac/TestControllerMac.mm:
88         (WTR::allowedFontFamilySet):
89
90 2015-10-11  Jinyoung Hur  <hur.ims@navercorp.com>
91
92         Unreviewed. Add Jinyoung Hur as a committer. 
93
94         * Scripts/webkitpy/common/config/contributors.json:
95
96 2015-10-10  Dan Bernstein  <mitz@apple.com>
97
98         [iOS] Remove unnecessary iOS version checks
99         https://bugs.webkit.org/show_bug.cgi?id=150002
100
101         Reviewed by Alexey Proskuryakov.
102
103         * WebKitTestRunner/ios/HIDEventGenerator.mm:
104         (-[HIDEventGenerator _createIOHIDEventType:]):
105         (-[HIDEventGenerator _sendHIDEvent:]):
106         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
107         * WebKitTestRunner/ios/UIKitSPI.h:
108
109 2015-10-09  Myles C. Maxfield  <mmaxfield@apple.com>
110
111         Unreviewed, rolling out r190689
112         https://bugs.webkit.org/show_bug.cgi?id=149992
113
114         Fixed in other repository.
115
116         Reverted changesets:
117
118         "Unreviewed, rolling out r190572, r190593, r190594, and r190639."
119         https://bugs.webkit.org/show_bug.cgi?id=149897
120
121 2015-10-09  Brian Burg  <bburg@apple.com>
122
123         Teach webkitperl how to figure out IOS versions from the SDK
124         https://bugs.webkit.org/show_bug.cgi?id=149963
125
126         Reviewed by Daniel Bates.
127
128         It should be easier to check the major and minor version of IOS SDKs.
129
130         * Scripts/copy-webkitlibraries-to-product-directory: use iosVersion().
131         * Scripts/webkitdirs.pm:
132         (splitVersionString): Added.
133         (determineOSXVersion): Use splitVersionString.
134         (determineIOSVersion): Added. Look at the SDK version and make a tuple.
135         (iosVersion): Added.
136
137 2015-10-09  Simon Fraser  <simon.fraser@apple.com>
138
139         [iOS WK2] Fix some leaks in TestRunnerWKWebView and UIScriptContext
140         https://bugs.webkit.org/show_bug.cgi?id=149960
141
142         Reviewed by Tim Horton.
143         
144         Use adoptWK(), and null out some members (file is not using ARC).
145
146         * WebKitTestRunner/UIScriptContext/UIScriptContext.cpp:
147         (UIScriptContext::uiScriptComplete):
148         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
149         (-[TestRunnerWKWebView dealloc]):
150
151 2015-10-09  Csaba Osztrogonác  <ossy@webkit.org>
152
153         Remove ENABLE_SUID_SANDBOX_LINUX cruft
154         https://bugs.webkit.org/show_bug.cgi?id=149954
155
156         Reviewed by Darin Adler.
157
158         * Scripts/webkitperl/FeatureList.pm:
159
160 2015-10-09  Daniel Bates  <dabates@apple.com>
161
162         Make iOS builders generate debug information in a separate dSYM file
163         https://bugs.webkit.org/show_bug.cgi?id=149696
164
165         Reviewed by Darin Adler.
166
167         Similar to the Mac builders, the iOS builders should write debug information
168         into a separate dSYM file instead of including such information in the binary
169         itself (default Xcode behavior)
170
171         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
172         (CompileWebKit.start):
173
174 2015-10-09  Csaba Osztrogonác  <ossy@webkit.org>
175
176         Fix webkitpy tests after r190779
177         https://bugs.webkit.org/show_bug.cgi?id=149949
178
179         Reviewed by Ryosuke Niwa.
180
181         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
182         (BenchmarkResults.format):
183         (BenchmarkResults._format_values):
184
185 2015-10-08  Dewei Zhu  <dewei_zhu@apple.com>
186
187         Extend run-benchmark script to support human-readable results conversion.
188         https://bugs.webkit.org/show_bug.cgi?id=149944
189
190         Reviewed by Ryosuke Niwa.
191
192         Add '--read-results-json' and '--no-adjust-unit' options.
193         '--read-results-json' option converts result file to human readable format.
194         '--no-adjust-unit' option skips scientific notation convertion.
195         '--platform' defaults to 'osx' and '--browser' defaults to 'safari'.
196
197         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
198         (BenchmarkResults.format):
199         (BenchmarkResults._format_tests):
200         (BenchmarkResults._format_values):
201         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
202         (BenchmarkRunner.__init__):
203         (BenchmarkRunner._run_benchmark):
204         (BenchmarkRunner._dump):
205         (BenchmarkRunner.show_results):
206         (BenchmarkRunner._show_results): Deleted.
207         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
208         (parse_args):
209         (start):
210
211 2015-10-08  Daniel Bates  <dabates@apple.com>
212
213         Add iOS 9 device builder to WebKit Bot Watcher's Dashboard
214         https://bugs.webkit.org/show_bug.cgi?id=149945
215
216         Reviewed by Dan Bernstein.
217
218         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9.png: Added.
219         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9@2x.png: Added.
220         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
221         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
222         (WebKitBuildbot):
223         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
224         (table.queue-grid tr.platform.ios-9 img.logo):
225
226 2015-10-08  Daniel Bates  <dabates@apple.com>
227
228         Teach build-webkit to install LLVM binaries for iOS when building for device with the public iOS SDK
229         https://bugs.webkit.org/show_bug.cgi?id=149943
230
231         Reviewed by Dan Bernstein.
232
233         Following the addition of the LLVM binaries for iOS in changeset r190759 (bug #149913) we should
234         teach build-webkit to install them when building for iOS device using the public iOS SDK. 
235
236         * Scripts/build-webkit:
237
238 2015-10-08  Daniel Bates  <dabates@apple.com>
239
240         Add LLVM binaries for iOS 9 device
241         https://bugs.webkit.org/show_bug.cgi?id=149913
242
243         Reviewed by Filip Pizlo.
244
245         Implement support for building LLVM for ARM64-based iOS devices.
246
247         * Scripts/build-jsc: Enable the FTL when building for Mac or iOS device.
248         * Scripts/copy-webkitlibraries-to-product-directory: Move logic to clean
249         an existing build earlier in the file such that remove previously built
250         libraries before building/copying new ones (if applicable).
251         (fileContains): Moved function outside of if-block.
252         (isContentOfFileEqualToString): Renamed; formerly named fileContentsEquals().
253         (buildLLVM): Added. Extracted machinery to build LLVM into this function and
254         added logic to build LLVM for ARM64-based iOS devices.
255         (symlinkLLVMLibrariesIfNeeded): Added. Extracted machinery to symlink the built
256         LLVM into the WebKitBuild directory.
257
258 2015-10-08  Alexey Proskuryakov  <ap@apple.com>
259
260         Crash-only queues on bot watcher's dashboard should not have non-crashing tests in popovers
261         https://bugs.webkit.org/show_bug.cgi?id=149848
262
263         Reviewed by Darin Adler.
264
265         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
266
267 2015-10-07  Brent Fulgham  <bfulgham@apple.com>
268
269         [Win] Support 64-bit Build and Testing
270         https://bugs.webkit.org/show_bug.cgi?id=149904
271
272         Reviewed by Daniel Bates.
273
274         Extend our existing scripts to support 64-bit build and test operations on
275         Windows.
276
277         * Scripts/build-dumprendertree: We don't need to build DRT on its own;
278         Windows always builds the whole stack.
279         * Scripts/webkit-build-directory: Add an option to return the location of
280         the executable files produced by a specific configuration. This change is
281         actually useful for Gtk and EFL, too.
282         * Scripts/webkitdirs.pm:
283         (executableProductDir): Added. This function appends the proper binary
284         path to the productDir. This is useful for Windows, Gtk, and EFL ports.
285         (jscProductDir): Use the new 'executableProductDir' method.
286         (setPathForRunningWebKitApp): Ditto.
287         (runSafari): Ditto.
288         (runMiniBrowser): Ditto.
289         * Scripts/webkitpy/port/factory.py:
290         (configuration_options): Add a 64-bit option, used on Windows to specify
291         which binary target should be used for testing.
292         * Scripts/webkitpy/port/win.py:
293         (WinPort._port_flag_for_scripts): Added. Supply the 64-bit flag to child
294         processes when needed.
295         (WinPort._build_path): Add the correct binary target path to _build_path.
296         (WinPort._ntsd_location): Check 32-bit paths when running 32-bit tests,
297         64-bit paths for 64-bit tests.
298         (WinPort.setup_crash_log_saving): Remove '-e %ld' argument, since the
299         NTSD debugger does not understand this argument.
300
301 2015-10-07  Myles C. Maxfield  <mmaxfield@apple.com>
302
303         Test font-variant-* and font-feature-settings with TrueType fonts
304         https://bugs.webkit.org/show_bug.cgi?id=149776
305
306         Reviewed by Simon Fraser.
307
308         This test extends our existing FontWithFeatures project to be able to generate a
309         TrueType font. This font is conceptually similar as the existing OpenType font,
310         except the feature -> character mapping is different.
311
312         The font itself only supports the following characters:
313         ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
314         However, the shape of these letters are either an X or a check mark.
315         The letter "A" always is a check mark.
316         The letter "B" always is an X.
317         Each font feature has an letter associated with it. When the font feature is enabled,
318         that letter is shown as a check mark. For example, when
319         "kLowerCaseType / kLowerCaseSmallCapsSelector" is enabled, "S" is shown as a check
320         mark.
321
322         Here are the mappings of font features to letters:
323         kLigaturesType / kCommonLigaturesOnSelector: C
324         kLigaturesType / kContextualLigaturesOnSelector: D
325         kLigaturesType / kRareLigaturesOnSelector: G
326         kLigaturesType / kHistoricalLigaturesOnSelector: I
327         kContextualAlternatesType / kContextualAlternatesOnSelector: L
328         kVerticalPositionType / kInferiorsSelector: O
329         kVerticalPositionType / kSuperiorsSelector: P
330         kLowerCaseType / kLowerCaseSmallCapsSelector: S
331         kUpperCaseType / kUpperCaseSmallCapsSelector: V
332         kLowerCaseType / kLowerCasePetiteCapsSelector: T
333         kUpperCaseType / kUpperCasePetiteCapsSelector: W
334         kLetterCaseType / 14: Y
335         kStyleOptionsType / kTitlingCapsSelector: a
336         kNumberCaseType / kUpperCaseNumbersSelector: c
337         kNumberCaseType / kLowerCaseNumbersSelector: d
338         kNumberSpacingType / kProportionalNumbersSelector: f
339         kNumberSpacingType / kMonospacedNumbersSelector: g
340         kFractionsType / kDiagonalFractionsSelector: i
341         kFractionsType / kVerticalFractionsSelector: j
342         kVerticalPositionType / kOrdinalsSelector: Q
343         kTypographicExtrasType / kSlashedZeroOnSelector: k
344         kLigaturesType / kHistoricalLigaturesOnSelector: K
345         kCharacterShapeType / kJIS1978CharactersSelector: m
346         kCharacterShapeType / kJIS1983CharactersSelector: n
347         kCharacterShapeType / kJIS1990CharactersSelector: o
348         kCharacterShapeType / kJIS2004CharactersSelector: p
349         kCharacterShapeType / kSimplifiedCharactersSelector: q
350         kCharacterShapeType / kTraditionalCharactersSelector: r
351         kTextSpacingType / kMonospacedTextSelector: t
352         kTextSpacingType / kProportionalTextSelector: u
353         kRubyKanaType / kRubyKanaOnSelector: v
354
355         * FontWithFeatures/FontWithFeatures.xcodeproj/project.pbxproj:
356         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
357         (CFFBuilder::moveTo):
358         (CFFBuilder::lineTo):
359         (GLYFBuilder::GLYFBuilder):
360         (GLYFBuilder::takeResult):
361         (GLYFBuilder::moveTo):
362         (GLYFBuilder::lineTo):
363         (GLYFBuilder::closePath):
364         (GLYFBuilder::writePoint):
365         (GLYFBuilder::append16):
366         (generateBoxCharString):
367         (generateCheckCharString):
368         (generateXCharString):
369         (itemForGlyph):
370         (Generator::generate):
371         (Generator::insertSelector):
372         (Generator::insertFeature):
373         (Generator::generateFeatureDescription):
374         (Generator::appendCFFTable):
375         (Generator::appendGLYFTable):
376         (Generator::appendLOCATable):
377         (Generator::appendFEATTable):
378         (Generator::appendMetamorphosisChain):
379         (Generator::appendMORXTable):
380         (Generator::appendHEADTable):
381         (Generator::appendHMTXTable):
382         (Generator::appendNameSubtable):
383         (Generator::append2ByteASCIIString):
384         (Generator::appendNAMETable):
385         (generateFont):
386         (CFFBuilder::curveToCubic): Deleted.
387         (charStringForGlyph): Deleted.
388         * FontWithFeatures/FontWithFeatures/FontCreator.h:
389         * FontWithFeatures/FontWithFeatures/main.cpp:
390         (constructFontWithTrueTypeFeature):
391         (constructFontWithOpenTypeFeature):
392         (drawText):
393         (main):
394         (drawTextWithFeature): Deleted.
395
396 2015-10-07  Commit Queue  <commit-queue@webkit.org>
397
398         Unreviewed, rolling out r190572, r190593, r190594, and
399         r190639.
400         https://bugs.webkit.org/show_bug.cgi?id=149897
401
402         Breaks Mavericks build (Requested by litherum on #webkit).
403
404         Reverted changesets:
405
406         "Allow WKRetainPtrs to be used as keys in hashing data
407         structures"
408         https://bugs.webkit.org/show_bug.cgi?id=149762
409         http://trac.webkit.org/changeset/190572
410
411         "REGRESSION(189668?): http/tests/notifications/events.html
412         flakily asserts or times out"
413         https://bugs.webkit.org/show_bug.cgi?id=149218
414         http://trac.webkit.org/changeset/190593
415
416         "Prospective Mavericks build fix."
417         http://trac.webkit.org/changeset/190594
418
419         "Post-review cleanup after r190572."
420         http://trac.webkit.org/changeset/190639
421
422 2015-10-06  Michael Catanzaro  <mcatanzaro@igalia.com>
423
424         [GTK] Add autocleanups
425         https://bugs.webkit.org/show_bug.cgi?id=149588
426
427         Reviewed by Darin Adler.
428
429         * TestWebKitAPI/Tests/WebKit2Gtk/AutocleanupsTest.cpp: Added.
430         (AutocleanupsTest::create):
431         (AutocleanupsTest::testWebProcessAutocleanups):
432         (registerTests):
433         * TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt:
434         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutocleanups.cpp: Added.
435         (testUIProcessAutocleanups):
436         (testWebProcessAutocleanups):
437         (beforeAll):
438         (afterAll):
439
440 2015-10-06  Brian Burg  <bburg@apple.com>
441
442         Unreviewed, try to fix the iOS 8 build after r190368.
443
444         On older versions, IOHIDEventCreateForceEvent is not available.
445
446         * WebKitTestRunner/ios/HIDEventGenerator.mm:
447         (-[HIDEventGenerator _createIOHIDEventType:]): Add another guard for force events.
448
449 2015-10-06  Keith Miller  <keith_miller@apple.com>
450
451         Add gmalloc option to run-javascriptcore-tests.
452         https://bugs.webkit.org/show_bug.cgi?id=149858
453
454         Reviewed by Geoffrey Garen.
455
456         run-javascriptcore-tests takes a new option --gmalloc with an optional string argument, the path to the gmalloc dylib.
457         If no argument is provided then /usr/lib/libgmalloc.dylib is used by default.
458
459         * Scripts/run-javascriptcore-tests:
460
461 2015-10-06  Myles C. Maxfield  <mmaxfield@apple.com>
462
463         Post-review cleanup after r190572.
464
465         Unreviewed.
466
467         * TestWebKitAPI/Tests/WebKit2/WKRetainPtr.cpp:
468
469 2015-10-06  Brent Fulgham  <bfulgham@apple.com>
470
471         [Win] Unreviewed build correction.
472
473         * TestWebKitAPI/PlatformWin.cmake: We don't need to link to all of these libraries. Most
474         are soft-linked at runtime.
475
476 2015-10-06  Keith Miller  <keith_miller@apple.com>
477
478         Fix run-javascriptcore-tests/run-jsc-stress-tests to work with rootless, add a --quick option and deprecate the Mozilla driver.
479         https://bugs.webkit.org/show_bug.cgi?id=149815
480
481         Reviewed by Filip Pizlo.
482
483         Rootless has an issue where it will strip any environment variables that start with DYLD starting a perl/ruby/python script.
484         Now, run-jsc-stress-tests takes an new argument, --env-vars, that will set the specified environment variables before
485         running tests. Additionally, I added a quick option that only runs default and the NoCJITValidate versions of each test.
486         Finally, I removed the calls to the mozilla jsDriver.pl since the run-jsc-stress-tests runner runs the same test suite
487         so should just use one test runner.
488
489         * Scripts/run-javascriptcore-tests:
490         (runJSCStressTests):
491         (runMozillaTests): Deleted.
492         (defaultJsDriverArgsForMozillaTests): Deleted.
493         * Scripts/run-jsc-stress-tests:
494
495 2015-10-06  Mark Salisbury  <mark.salisbury@hp.com>
496
497         [GTK] Make update-webkitgtk-libs work behind firewall
498
499         update-webkitgtk-libs can work behind a firewall with changes to
500         a few packages.  Where outbound git and active FTP connections
501         fail, using http protocol succeeds.  Most packages are
502         already accessed using http.
503
504         https://bugs.webkit.org/show_bug.cgi?id=148941
505
506         Reviewed by Martin Robinson.
507
508         Tools
509         * gtk/jhbuild.modules:
510             Replace git URLs with http.  Remove no longer used ftp repositories.
511             Update argument for libxml2's autogen.sh script (--without-python
512             is ignored; --with-python=no is correct).
513         * jhbuild/jhbuild-wrapper:
514             Instead of connecting to git://git.gnome.org/jhbuild, connect to
515             http://git.gnome.org/browse/jhbuild.
516
517 2015-10-06  Daniel Bates  <dbates@webkit.org>
518
519         Enable XSLT when building WebKit for iOS using the public iOS SDK
520         https://bugs.webkit.org/show_bug.cgi?id=149827
521
522         Reviewed by Alexey Proskuryakov.
523
524         Teach script configure-xcode-for-ios-development to copy the OS X XSLT headers to the iPhoneOS
525         and iPhoneSimulator SDKs so as to support building WebKit for iOS with XSLT. A person must
526         run this script before building WebKit for iOS or the build will fail because one or more XSLT
527         headers cannot be found.
528
529         * Scripts/configure-xcode-for-ios-development:
530         (copyMissingXSLTHeadersToSDKIfNeeded): Added.
531
532 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
533
534         REGRESSION(189668?): http/tests/notifications/events.html flakily asserts or times out
535         https://bugs.webkit.org/show_bug.cgi?id=149218
536
537         Reviewed by Alexey Proskuryakov.
538
539         Because of r189668, WebKitTestRunner now tears down and recreates its WKNotificationManagerRef
540         when the TestOptions change. Previously, WebNotificationProvider only could handle a single
541         WKNotificationManagerRef. Because the ower of the WKNotificationManagerRef is reference counted,
542         and AppKit internally retains some objects which end up retaining the WKNotificationManagerRef,
543         the old WKNotificationManager may not be destroyed before the new one is created. Therefore,
544         WebNotificationProvider must be updated to appropriately handle multiple
545         WKNotificationManagerRefs in flight at the same time.
546
547         * WebKitTestRunner/WebNotificationProvider.cpp:
548         (WTR::WebNotificationProvider::~WebNotificationProvider):
549         (WTR::WebNotificationProvider::showWebNotification):
550         (WTR::WebNotificationProvider::closeWebNotification):
551         (WTR::WebNotificationProvider::addNotificationManager):
552         (WTR::WebNotificationProvider::removeNotificationManager):
553         (WTR::WebNotificationProvider::simulateWebNotificationClick):
554         (WTR::WebNotificationProvider::reset):
555         * WebKitTestRunner/WebNotificationProvider.h:
556
557 2015-10-05  Daniel Bates  <dabates@apple.com>
558
559         Disable Bitcode when building for iOS device
560         https://bugs.webkit.org/show_bug.cgi?id=149818
561
562         Reviewed by Alexey Proskuryakov.
563
564         Xcode 7 generates bitcode for iOS device apps by default. Do not generate bitcode
565         when building for iOS device.
566
567         * Scripts/webkitdirs.pm:
568         (XcodeOptions):
569
570 2015-10-05  Daniel Bates  <dabates@apple.com>
571
572         [iOS] Make it possible to build WebKit using iphoneos SDK without a developer certificate installed
573         https://bugs.webkit.org/show_bug.cgi?id=140828
574         <rdar://problem/19520599>
575
576         Reviewed by Alexey Proskuryakov.
577
578         Support building WebKit for iOS device without an iOS Developer certificate installed. Otherwise,
579         we will pass CODE_SIGN_IDENTITY="iPhone Developer: " to Xcode to find a iOS Developer certificate
580         to use. To use a specific installed iOS Developer certificate, explicitly pass CODE_SIGN_IDENTITY
581         to build-webkit.
582
583         * Scripts/webkitdirs.pm:
584         (XcodeOptions): Cleaned up code. When building for iOS device, pass to Xcode CODE_SIGN_IDENTITY="iPhone Developer: "
585         to code sign using the installed iOS development certificate (if it exists - we assume there is only one such certificate).
586         Otherwise, pass CODE_SIGN_IDENTITY="" and CODE_SIGNING_REQUIRED=NO to Xcode to disable code signing.
587         (hasIOSDevelopmentCertificate): Added.
588
589 2015-10-05  Daniel Bates  <dabates@apple.com>
590
591         DumpRenderTree built with public iOS SDK crashes under -[WebPreferences(WebPrivate) _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]
592         https://bugs.webkit.org/show_bug.cgi?id=149766
593
594         Reviewed by Alexey Proskuryakov.
595
596         Create network storage testing session on iOS.
597
598         Currently we do not create a network storage testing session on iOS. A network storage testing session always
599         has an associated cookie store. When WebKit is built without USE(CFNETWORK), NetworkStorageSession::defaultStorageSession().cookieStorage()
600         returns nullptr because the caller is expected to interact with NSHTTPCookieStorage instead of querying
601         NetworkStorageSession for the cookie store. When WebKit is built with USE(CFNETWORK) accessing
602         NetworkStorageSession::defaultStorageSession().cookieStorage() returns a valid cookie store (creating one if
603         it does not exist). Instead we should make use of NetworkStorageSession::switchToNewTestingSession() to
604         create a network storage testing session when building DumpRenderTree for iOS so as to ensure a consistent
605         testing environment regardless of whether we built with USE(CFNETWORK). This will also make the behavior of
606         DumpRenderTree on iOS more consistent with the behavior of DumpRenderTree on Mac.
607
608         As a side effect of this change DumpRenderTree no longer crashes in -[WebPreferences(WebPrivate) _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]
609         when WebKit is built without USE(CFNETWORK) because NetworkStorageSession::defaultStorageSession().cookieStorage()
610         returns a non-null pointer to a cookie store.
611
612         * DumpRenderTree/mac/DumpRenderTree.mm:
613         (prepareConsistentTestingEnvironment):
614
615 2015-10-05  Simon Fraser  <simon.fraser@apple.com>
616
617         Fix the iOS 8 build again, where -[UIApplication _enqueueHIDEvent:] is not
618         available.
619
620         * WebKitTestRunner/ios/HIDEventGenerator.mm:
621         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
622
623 2015-10-05  Myles C. Maxfield  <mmaxfield@apple.com>
624
625         Allow WKRetainPtrs to be used as keys in hashing data structures
626         https://bugs.webkit.org/show_bug.cgi?id=149762
627
628         Reviewed by Anders Carlsson.
629
630         * TestWebKitAPI/PlatformGTK.cmake:
631         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
632         * TestWebKitAPI/Tests/WebKit2/WKRetainPtr.cpp: Added.
633         (TestWebKitAPI::TEST):
634
635 2015-10-05  Simon Fraser  <simon.fraser@apple.com>
636
637         Fix the iOS 8 build, where -[UIApplication _enqueueHIDEvent:] is not
638         available, and tidy up the #ifdefs in the UIKitSPI header.
639
640         * WebKitTestRunner/ios/HIDEventGenerator.mm:
641         (-[HIDEventGenerator _sendHIDEvent:]):
642         * WebKitTestRunner/ios/UIKitSPI.h:
643
644 2015-10-04  Zan Dobersek  <zdobersek@igalia.com>
645
646         [GTK] Remove duplicate entries in WebKitTestRunner_SOURCES
647         https://bugs.webkit.org/show_bug.cgi?id=149792
648
649         Reviewed by Martin Robinson.
650
651         * WebKitTestRunner/PlatformGTK.cmake: Don't list build targets
652         for WebKitTestRunner multiple times.
653
654 2015-10-04  Daniel Bates  <dabates@apple.com>
655
656         Fix the Apple Internal iOS build after <http://trac.webkit.org/changeset/190515>
657         (https://bugs.webkit.org/show_bug.cgi?id=149753)
658
659         For now, support calling build-layouttestrelay without --ios-simulator so long
660         as we are building on a Mac.
661
662         * Scripts/build-layouttestrelay:
663
664 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
665
666         Support Trac 1.0.x XML timeline link format
667         https://bugs.webkit.org/show_bug.cgi?id=149786
668
669         Reviewed by Lucas Forschler.
670
671         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
672         (Trac.prototype._convertCommitInfoElementToObject):
673
674 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
675
676         Fix some errors on bot watcher's dashboard
677         https://bugs.webkit.org/show_bug.cgi?id=149789
678
679         Reviewed by Lucas Forschler.
680
681         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
682         (BuildbotTesterQueueView.prototype.appendBuilderQueueStatus): We may not get to layout
683         tests step, in which case layoutTestResults.tooManyFailures would raise an exception.
684
685 2015-10-04  Alexey Proskuryakov  <ap@apple.com>
686
687         Bot watcher's dashboard builders should turn yellow when svn fails
688         https://bugs.webkit.org/show_bug.cgi?id=149791
689
690         Reviewed by Lucas Forschler.
691
692         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
693         (BuildbotBuilderQueueView.prototype.appendBuilderQueueStatus):
694         (BuildbotBuilderQueueView.prototype.update):
695
696 2015-10-02  Daniel Bates  <dabates@apple.com>
697
698         Add iOS 9 Simulator builders and testers to WebKit Bot Watcher's Dashboard
699         https://bugs.webkit.org/show_bug.cgi?id=149769
700
701         Reviewed by Alexey Proskuryakov.
702
703         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator.png: Added.
704         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator@2x.png: Added.
705         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
706         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
707         (WebKitBuildbot):
708         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
709         (table.queue-grid tr.platform.ios-simulator-9 img.logo):
710
711 2015-10-02  Ryosuke Niwa  <rniwa@webkit.org>
712
713         REGRESSION(r190370): Speedometer spits out an extra console message
714         https://bugs.webkit.org/show_bug.cgi?id=149720
715
716         Unreviewed. Temporarily ignore the console error message.
717
718         * Scripts/webkitpy/performance_tests/perftest.py:
719         (PerfTest._filter_output):
720
721 2015-10-02  Brent Fulgham  <bfulgham@apple.com>
722
723         Provide "--no-ninja" option to avoid using Ninja
724         https://bugs.webkit.org/show_bug.cgi?id=149757
725
726         Reviewed by Alex Christensen.
727
728         Add a new command line argument understood by webkitdirs.pm so
729         that we can conditionally avoid using Ninja. This is an
730         'opt-out' argument, so no existing Ninja users should be affected.
731         
732         * Scripts/webkitdirs.pm:
733         (canUseNinja): Check for option and block ninja if present.
734
735 2015-10-02  Aakash Jain  <aakash_jain@apple.com>
736
737         Flakiness dashboard should support OS X El Capitan
738         https://bugs.webkit.org/show_bug.cgi?id=149648
739
740         Reviewed by Alexey Proskuryakov.
741
742         * TestResultServer/static-dashboards/flakiness_dashboard.js: Fix the broken dashboard for ElCapitan.
743
744 2015-10-02  Daniel Bates  <dabates@apple.com>
745
746         Fix run-webkit-tests --ios-simulator after <http://trac.webkit.org/changeset/190515>
747         (https://bugs.webkit.org/show_bug.cgi?id=149753)
748
749         For now, pass --ios-simulator.
750
751         * Scripts/webkitpy/port/ios.py:
752         (IOSSimulatorPort._build_relay):
753
754 2015-10-02  Simon Fraser  <simon.fraser@apple.com>
755
756         Remove a "nullable" that breaks the iOS 8 build.
757
758         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
759         (-[TestRunnerWKWebView scrollViewWillBeginZooming:withView:]):
760
761 2015-10-02  Daniel Bates  <dabates@apple.com>
762
763         LayoutTestRelay is not built and archived when building for iOS Simulator
764         https://bugs.webkit.org/show_bug.cgi?id=149753
765
766         Reviewed by Alexey Proskuryakov and Andy Estes.
767
768         Towards running layout tests on the iOS Simulator test bots, we need to teach scripts build-webkit
769         and built-product-archive to build the Mac tool LayoutTestRelay and include this tool in the built
770         product archive when building for iOS Simulator, respectively.
771
772         * BuildSlaveSupport/built-product-archive:
773         (main): Pass the full platform name (options.platform) to archiveBuiltProduct() so that it can
774         differentiate between iOS device and iOS Simulator platforms.
775         (webkitBuildDirectoryForConfigurationAndPlatform): Extracted logic to run the script webkit-build-directory
776         from determineWebKitBuildDirectories() into this function so that it can be used by both
777         determineWebKitBuildDirectories() and archiveBuiltProduct().
778         (determineWebKitBuildDirectories): Moved logic to execute the script webkit-build-directory from here to
779         webkitBuildDirectoryForConfigurationAndPlatform().
780         (createZip): Added parameter embedParentDirectoryNameOnDarwin (defaults to False) to specify whether
781         we should call ditto(1) with --keepParent to embed the parent directory name in the zip archive. This
782         argument is only applicable when building on Darwin. We only pass embedParentDirectoryNameOnDarwin=True
783         when making an archive for a Mac or iOS device build. For iOS Simulator builds we archive two directories
784         and we do not want to keep the parent directory because it is a placeholder directory used as a workaround
785         for the limitation that ditto(1) can only accept a single directory to archive on its command line.
786         (archiveBuiltProduct): Modified to take the full platform name as an argument. Added logic for iOS.
787         For iOS device builds we use the same logic as for a Mac build and archive the configuration-specific
788         build directory. For iOS Simulator builds we archive the configuration-specific iOS build directory,
789         LayoutTestRelay and LayoutTestRelay.dSYM (if it exists) from the configuration-specific Mac build.
790         * Scripts/build-layouttestrelay:
791             - Remove unnecessary include of Perl module POSIX.
792             - Only build LayoutTestRelay when building for iOS Simulator (i.e. --ios-simulator is passed).
793         * Scripts/build-webkit:
794             - Invoke script build-layouttestrelay when building for iOS Simulator.
795
796 2015-10-02  Brent Fulgham  <bfulgham@apple.com>
797
798         [Win] Unreviewed test fix.
799
800         You cannot run 'run-webkit-tests' from the command line because it does not know
801         to append the binary subdirectory (bin32/bin64). We don't see this on our builders
802         because they explicitly set use the 'root' argument to provide the full path to
803         the test binaries.
804
805         * Scripts/webkitpy/port/win.py:
806         (WinPort._build_path): Added.
807
808 2015-10-02  Alex Christensen  <achristensen@webkit.org>
809
810         Reloading without content blockers doesn't apply to resource loads after the main frame finishes
811         https://bugs.webkit.org/show_bug.cgi?id=149430
812         rdar://problem/22742222
813
814         Reviewed by Geoffrey Garen.
815
816         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
817         (WTR::TestController::cocoaResetStateToConsistentValues):
818         * WebKitTestRunner/mac/TestControllerMac.mm:
819         (WTR::TestController::platformConfigureViewForTest):
820         Test what happens when you disable content blockers from the SPI.
821
822 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
823
824         [Win] Unreviewed build fix for run-api-tests
825
826         * Scripts/run-api-tests:
827         (testToolPaths): Windows run needs to specify the binary path.
828
829 2015-10-01  Daniel Bates  <dabates@apple.com>
830
831         Another attempt to fix the Windows builders after <https://trac.webkit.org/changeset/190387>
832         (https://bugs.webkit.org/show_bug.cgi?id=149695)
833
834         Following r190424 we can now rely on webkit-build-directory to return the path to
835         the correct configuration-specific build directory on Windows.
836
837         * BuildSlaveSupport/built-product-archive:
838         (archiveBuiltProduct):
839
840 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
841
842         [Win] Unreviewed build fix.
843
844         * Scripts/webkitdirs.pm:
845         (setupAppleWinEnv): Use 64-bit build tools if available
846
847 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
848
849         [Win] Fix TestWebKitAPI build under CMake.
850
851         Reviewed by Alex Christensen.
852
853         * TestWebKitAPI/PlatformWin.cmake: Add missing link command
854         for Psapi.lib.
855
856 2015-10-01  Brent Fulgham  <bfulgham@apple.com>
857
858         [Win] Fix behavior of webkit-build-directory script
859         https://bugs.webkit.org/show_bug.cgi?id=149718
860
861         Reviewed by Alex Christensen.
862
863         * Scripts/webkitdirs.pm:
864         (determineConfigurationProductDir): Do not include the binary
865         sub-directory in the configuration product directory output.
866         (jscProductDir): Append correct binary path for Windows build.
867         (setPathForRunningWebKitApp): Include properly binary subdirectories.
868         (runSafari): Update for revised productDir behavior.
869         (runMiniBrowser): Ditto.
870
871 2015-10-01  Alexey Proskuryakov  <ap@apple.com>
872
873         Stop building LayoutTestRelay for now. It's a Mac project, but build-webkit tries to
874         use iOS SDK, like with all the others.
875
876         * Scripts/build-webkit:
877
878 2015-10-01  Daniel Bates  <dabates@apple.com>
879
880         Attempt to fix the iOS 9 Simulator testers
881
882         Add dependency DumpRenderTree.app to target All of project DumpRenderTree so that we
883         build DumpRenderTree.app, if applicable. Also, teach build-webkit to build project
884         LayoutTestRelay when building for iOS Simulator.
885
886         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
887         * Scripts/build-webkit:
888
889 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
890
891         [GTK] Websites with invalid auth header keep loading forever
892         https://bugs.webkit.org/show_bug.cgi?id=149710
893
894         Reviewed by Martin Robinson.
895
896         Add test case to check that we can authenticate sites with an
897         empty realm.
898
899         * TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp:
900         (testWebViewAuthenticationEmptyRealm):
901         (serverCallback):
902         (beforeAll):
903
904 2015-10-01  Alexey Proskuryakov  <ap@apple.com>
905
906         [Mac] Make run-api-tests work with System Integrity Protection
907         https://bugs.webkit.org/show_bug.cgi?id=149711
908         rdar://problem/22928202
909
910         Reviewed by Dan Bernstein.
911
912         * Scripts/run-api-tests:
913         (runTest):
914         (archCommandLineArgumentsForRestrictedEnvironmentVariables):
915
916 2015-10-01  Daniel Bates  <dabates@apple.com>
917
918         Attempt to fix the Windows build after <https://trac.webkit.org/changeset/190387>
919         (https://bugs.webkit.org/show_bug.cgi?id=149695)
920
921         For some reason built-product-archive hardcodes the assumption that we build for 32-bit Windows.
922         For now, use the path to the top-level WebKit build directory instead of using the configuration-
923         specific build directory.
924
925         * BuildSlaveSupport/built-product-archive:
926         (archiveBuiltProduct):
927
928 2015-10-01  Csaba Osztrogonác  <ossy@webkit.org>
929
930         [EFL] Fix the openwebrtc and gst-plugins-openwebrtc build with clang
931         https://bugs.webkit.org/show_bug.cgi?id=145837
932
933         Reviewed by Philippe Normand.
934
935         * efl/jhbuild.modules:
936         * efl/patches/openwebrtc-clang-warning-fix.patch: Added.
937         * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Added.
938
939 2015-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
940
941         Unreviewed. Fix the iOS build after r190407.
942
943         * WebKitTestRunner/ios/IOKitSPI.h:
944
945 2015-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
946
947         Implement keyboard event sending for iOS in WebKitTestRunner
948         https://bugs.webkit.org/show_bug.cgi?id=149676
949
950         Reviewed by Simon Fraser.
951
952         Adds support for generating and sending key events in WebKitTestRunner. This is accomplished in a similar
953         way as touch events, using IOHIDEvent machinery. Also adds callbacks to the UIScriptController JS API that
954         allows us to run code when the keyboard is shown or hidden.
955
956         * WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl: Adds the typeCharacter JS interface.
957         * WebKitTestRunner/UIScriptContext/UIScriptController.cpp:
958         (WTR::UIScriptController::setDidShowKeyboardCallback):
959         (WTR::UIScriptController::didShowKeyboardCallback):
960         (WTR::UIScriptController::setDidHideKeyboardCallback):
961         (WTR::UIScriptController::didHideKeyboardCallback):
962         (WTR::UIScriptController::typeCharacterUsingHardwareKeyboard):
963         (WTR::UIScriptController::platformSetDidShowKeyboardCallback):
964         (WTR::UIScriptController::platformSetDidHideKeyboardCallback):
965         * WebKitTestRunner/UIScriptContext/UIScriptController.h:
966         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
967         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
968         (-[TestRunnerWKWebView initWithFrame:configuration:]): Registers the TestRunnerWKWebView to listen to
969                 the notifications that the keyboard has been raised or lowered.
970         (-[TestRunnerWKWebView _keyboardDidShow:]):
971         (-[TestRunnerWKWebView _keyboardDidHide:]):
972         * WebKitTestRunner/ios/HIDEventGenerator.h:
973         * WebKitTestRunner/ios/HIDEventGenerator.m:
974         (-[HIDEventGenerator _sendIOHIDKeyboardEvent:usage:isKeyDown:]): Helper to send a HID keyboard event.
975         (shouldWrapWithShiftKeyEventForCharacter): Helper used to generate key events.
976         (hidUsageCodeForCharacter): Ditto.
977         (-[HIDEventGenerator keyDown:completionBlock:]): Synthesizes and sends HIDKeyboardEvents, triggering
978                 a keyDown event in WebKit.
979         * WebKitTestRunner/ios/IOKitSPI.h:
980         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
981
982 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
983
984         Unreviewed, rolling out r190399.
985
986         Tests are still failing even after r190362
987
988         Reverted changeset:
989
990         "Unreviewed. Unskip GTK+ user media unit tests after r190362."
991         http://trac.webkit.org/changeset/190399
992
993 2015-10-01  Csaba Osztrogonác  <ossy@webkit.org>
994
995         [jhbuild] switch to new upstream usrsctp library
996         https://bugs.webkit.org/show_bug.cgi?id=149494
997
998         Reviewed by Philippe Normand.
999
1000         * efl/jhbuild.modules:
1001         * gtk/jhbuild.modules:
1002
1003 2015-10-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1004
1005         Unreviewed. Unskip GTK+ user media unit tests after r190362.
1006
1007         They should pass now.
1008
1009         * Scripts/run-gtk-tests:
1010         (TestRunner):
1011
1012 2015-09-30  Daniel Bates  <dabates@apple.com>
1013
1014         Another attempt to fix the build after <https://trac.webkit.org/changeset/190387>
1015         (https://bugs.webkit.org/show_bug.cgi?id=149695)
1016
1017         * BuildSlaveSupport/built-product-archive:
1018         (determineWebKitBuildDirectories): Substitute _configurationBuildDirectory for _buildDirectory.
1019         (extractBuiltProduct): Substitute _topLevelBuildDirectory for _buildDirectory.
1020
1021 2015-09-30  Daniel Bates  <dabates@apple.com>
1022
1023         Attempt to fix the build after <https://trac.webkit.org/changeset/190387>
1024         (https://bugs.webkit.org/show_bug.cgi?id=149695)
1025
1026         Actually, we need to pass --configuration to script webkit-build-directory to have
1027         it return the path to the configuration-specific build directory.
1028
1029         * BuildSlaveSupport/built-product-archive:
1030         (determineWebKitBuildDirectories):
1031
1032 2015-09-30  Daniel Bates  <dabates@apple.com>
1033
1034         built-product-archive archives incorrect build directory for iOS port
1035         https://bugs.webkit.org/show_bug.cgi?id=149695
1036
1037         Reviewed by Darin Adler.
1038
1039         Fixes an issue where the script built-product-archive archives a non-existent
1040         build directory for the iOS port. Without loss of generality, the script assumes
1041         the path to the Release configuration build for iOS is in directory WebKitBuild/Release.
1042         But the built products for this configuration are in directory WebKitBuild/Release-iphonesimulator.
1043
1044         Currently the script built-product-archive calls `webkit-build-directory --top-level ...`
1045         to determine the top-level build directory and computes the configuration-specific
1046         build directory to be the concatenation of the the top-level build directory and
1047         the configuration (e.g. Release). This is incorrect. Instead we should call
1048         webkit-build-directory omitting the flag --top-level to compute the path to the
1049         configuration-specific build directory.
1050
1051         * BuildSlaveSupport/built-product-archive: Fix up the style such that we use single quoted literals.
1052         (main): Renamed global variable _buildDirectory to _topLevelBuildDirectory to better describe
1053         its purpose and added global variable _configurationBuildDirectory to store the path
1054         to the configuration-specific build directory. Ensure that we have a non-empty string
1055         for both the top-level and configuration-specific build directories.
1056         (determineWebKitBuildDirectories): Formerly named determineWebKitBuildDirectory.
1057         Compute the configuration-specific build directory and store it in the global variable
1058         _configurationBuildDirectory.
1059         (archiveBuiltProduct): Modified to use _configurationBuildDirectory.
1060         (extractBuiltProduct): Modified to use _configurationBuildDirectory and _topLevelBuildDirectory
1061         as needed.
1062         (determineWebKitBuildDirectory): Deleted.
1063
1064 2015-09-30  Hunseop Jeong  <hs85.jeong@samsung.com>
1065
1066         [EFL] css3/device-adapt/* tests failed after r190335.
1067         https://bugs.webkit.org/show_bug.cgi?id=149655
1068
1069         Reviewed by Simon Fraser.
1070
1071         device-adapt/* tests need the fixedLayout option but useFixedLayout option is
1072         overwritten by updatePlatformSpecificViewOptionsForTest after r190335.
1073
1074         * WebKitTestRunner/efl/TestControllerEfl.cpp:
1075         (WTR::shouldUseFixedLayout):
1076
1077 2015-09-30  Dewei Zhu  <dewei_zhu@apple.com>
1078
1079         Extend JetStream timeout for slow devices.
1080
1081         Reviewed by Chris Dumez.
1082
1083         Extend JetStream timeout to 20 minutes.
1084
1085         * Scripts/webkitpy/benchmark_runner/data/plans/jetstream.plan:
1086
1087 2015-09-30  Daniel Bates  <dabates@apple.com>
1088
1089         Rename iOS builders/testers to include version
1090         https://bugs.webkit.org/show_bug.cgi?id=149685
1091
1092         Reviewed by Simon Fraser.
1093
1094         Substitute "Apple iOS 9" for "Apple iOS" in the names of iOS builders/testers so as
1095         make it clear to a reader the version of iOS these builders/testers are using.
1096
1097         * BuildSlaveSupport/build.webkit.org-config/config.json:
1098         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
1099
1100 2015-09-30  Daniel Bates  <dabates@apple.com>
1101
1102         Add iOS criterion for triggering a build
1103         https://bugs.webkit.org/show_bug.cgi?id=149679
1104
1105         Rubber-stamped by Alexey Proskuryakov.
1106
1107         First pass at defining criterion for triggering an iOS build.
1108
1109         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1110         (_should_file_trigger_build):
1111         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
1112         (ShouldBuildTest):
1113         (ShouldBuildTest.test_should_build):
1114
1115 2015-09-29  Simon Fraser  <simon.fraser@apple.com>
1116
1117         [iOS] Allow tests to generate user gestures for UI testing
1118         https://bugs.webkit.org/show_bug.cgi?id=149653
1119
1120         Reviewed by Tim Horton.
1121
1122         Expose functionality in UIScriptController to allow for testing single- and double-tap,
1123         and to listen for completion of scrolling and zooming in the WKWebView.
1124         
1125         Tap generation is done using synthetic IOHIDEvents, via a new HIDEventGenerator class
1126         which hides the complexity of creating these events. Event dispatch is asynchronous.
1127         We detect when the last event has been handled by dispatching a vendor-specific event,
1128         which is detected via -_handleHIDEvent: in our UIApplication subclass.
1129         
1130         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Link with IOKit.
1131         * WebKitTestRunner/UIScriptContext/Bindings/UIScriptController.idl: Two new properties
1132         for 'will begin zooming' and 'did end zooming' callbacks, and functions to dispatch
1133         single and double taps.
1134         * WebKitTestRunner/UIScriptContext/UIScriptContext.cpp:
1135         (UIScriptContext::registerCallback): Used to store the callbacks for zooming.
1136         Unlike the "task" callbacks, these are persistent, but we store them in the same hash map.
1137         (UIScriptContext::unregisterCallback):
1138         (UIScriptContext::callbackWithID):
1139         (UIScriptContext::fireCallback):
1140         * WebKitTestRunner/UIScriptContext/UIScriptContext.h:
1141         * WebKitTestRunner/UIScriptContext/UIScriptController.cpp:
1142         (WTR::UIScriptController::setWillBeginZoomingCallback): Cross-platform code.
1143         (WTR::UIScriptController::willBeginZoomingCallback): Ditto.
1144         (WTR::UIScriptController::setDidEndZoomingCallback):
1145         (WTR::UIScriptController::didEndZoomingCallback):
1146         (WTR::UIScriptController::singleTapAtPoint): Non-iOS stub.
1147         (WTR::UIScriptController::doubleTapAtPoint): Ditto.
1148         (WTR::UIScriptController::platformSetWillBeginZoomingCallback):
1149         (WTR::UIScriptController::platformSetDidEndZoomingCallback):
1150         * WebKitTestRunner/UIScriptContext/UIScriptController.h:
1151         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1152         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h: Properties for the zooming callbacks.
1153         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1154         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]): Dispatch the zooming callback.
1155         (-[TestRunnerWKWebView scrollViewWillBeginZooming:withView:]): Ditto.
1156         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]): Ditto.
1157         (-[TestRunnerWKWebView onDidEndZooming:]): Deleted.
1158         * WebKitTestRunner/ios/HIDEventGenerator.h: Copied from Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.h.
1159         * WebKitTestRunner/ios/HIDEventGenerator.m: Added.
1160         (simpleDragCurve):
1161         (calculateNextLocation):
1162         (delayBetweenMove):
1163         (+[HIDEventGenerator sharedHIDEventGenerator]):
1164         (+[HIDEventGenerator nextEventCallbackID]):
1165         (-[HIDEventGenerator init]):
1166         (-[HIDEventGenerator _createIOHIDEventType:]):
1167         (-[HIDEventGenerator _sendHIDEvent:]):
1168         (-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]):
1169         (-[HIDEventGenerator _updateTouchPoints:count:]):
1170         (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
1171         (-[HIDEventGenerator touchDown:touchCount:]):
1172         (-[HIDEventGenerator touchDown:]):
1173         (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
1174         (-[HIDEventGenerator liftUp:touchCount:]):
1175         (-[HIDEventGenerator liftUp:]):
1176         (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
1177         (-[HIDEventGenerator sendTaps:location:withNumberOfTouches:completionBlock:]):
1178         (-[HIDEventGenerator tap:completionBlock:]):
1179         (-[HIDEventGenerator doubleTap:completionBlock:]):
1180         (-[HIDEventGenerator twoFingerTap:completionBlock:]):
1181         (-[HIDEventGenerator dragWithStartPoint:endPoint:duration:completionBlock:]):
1182         (-[HIDEventGenerator pinchCloseWithStartPoint:endPoint:duration:completionBlock:]):
1183         (-[HIDEventGenerator pinchOpenWithStartPoint:endPoint:duration:completionBlock:]):
1184         (-[HIDEventGenerator markerEventReceived:]):
1185         * WebKitTestRunner/ios/IOKitSPI.h: Added.
1186         * WebKitTestRunner/ios/UIKitSPI.h: Copied from Tools/WebKitTestRunner/cocoa/TestRunnerWKWebView.h.
1187         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1188         (WTR::globalToContentCoordinates):
1189         (WTR::UIScriptController::singleTapAtPoint):
1190         (WTR::UIScriptController::doubleTapAtPoint):
1191         (WTR::UIScriptController::platformSetWillBeginZoomingCallback):
1192         (WTR::UIScriptController::platformSetDidEndZoomingCallback):
1193         * WebKitTestRunner/ios/mainIOS.mm:
1194         (-[WebKitTestRunnerApp _handleHIDEvent:]):
1195
1196 2015-09-30  Dana Burkart  <dburkart@apple.com>
1197
1198         git-add-reviewer should trim trailing spaces/newlines
1199         https://bugs.webkit.org/show_bug.cgi?id=149513
1200
1201         Reviewed by Darin Adler.
1202
1203         * Scripts/git-add-reviewer:
1204         (nonInteractive):
1205
1206 2015-09-30  Eric Carlson  <eric.carlson@apple.com>
1207
1208         REGRESSION(r190262): User media unit test failures after r190262
1209         https://bugs.webkit.org/show_bug.cgi?id=149580
1210
1211         Reviewed by Darin Adler.
1212
1213         * WebKitTestRunner/TestController.cpp:
1214         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Fix parameter
1215           order to WKUserMediaPermissionRequestAllow.
1216
1217 2015-09-30  Daniel Bates  <dabates@apple.com>
1218
1219         Add iOS builders and testers
1220         https://bugs.webkit.org/show_bug.cgi?id=149549
1221
1222         Reviewed by Alexey Proskuryakov.
1223
1224         Adds definitions for 64-bit iOS Simulator release builders and testers and a iOS device
1225         builder that builds universal release binaries for armv7, armv7s and arm64 architectures.
1226
1227         * BuildSlaveSupport/build.webkit.org-config/config.json: Add definitions for builders and testers.
1228         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update unit tests.
1229
1230 2015-09-30  Timothy Hatcher  <timothy@apple.com>
1231
1232         Give WebKitLauncher the get-task-allow entitlement to allow it to work on El Capitan
1233         https://bugs.webkit.org/show_bug.cgi?id=149674
1234
1235         Reviewed by Lucas Forschler.
1236
1237         * WebKitLauncher/WebKitLauncher.entitlements: Added.
1238         * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
1239
1240 2015-09-30  Jason Marcell  <jmarcell@apple.com>
1241
1242         BuildbotQueueView.prototype._appendPendingRevisionCount should skip repositories that don't
1243         have an associated trac instance.
1244         https://bugs.webkit.org/show_bug.cgi?id=149673
1245
1246         Reviewed by Alexey Proskuryakov.
1247
1248         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
1249         (BuildbotQueueView.prototype._appendPendingRevisionCount): Skip repositories that don't
1250         have an associated trac instance.
1251
1252 2015-09-30  Daniel Bates  <dabates@apple.com>
1253
1254         Prioritize testing latest build request on iOS test bots
1255         https://bugs.webkit.org/show_bug.cgi?id=149669
1256
1257         Reviewed by Darin Adler.
1258
1259         We should prioritize testing of the latest build request on the iOS test bots
1260         as we do for Mac and Windows test bots.
1261
1262         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1263         (loadBuilderConfig):
1264
1265 2015-09-30  Daniel Bates  <dabates@apple.com>
1266
1267         Add buildbot category for iOS builders and testers
1268         https://bugs.webkit.org/show_bug.cgi?id=149667
1269
1270         Reviewed by Darin Adler.
1271
1272         Group iOS builders and testers under category iOS and add dashboard and console hyperlinks
1273         for iOS to the build.webkit.org home page.
1274
1275         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1276         (loadBuilderConfig):
1277         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
1278
1279 2015-09-30  Daniel Bates  <dabates@apple.com>
1280
1281         Actually fix the Mac builders build after <http://trac.webkit.org/changeset/190219>
1282         (https://bugs.webkit.org/show_bug.cgi?id=149539)
1283
1284         I inadvertently didn't remove the ONLY_ACTIVE_ARCH=NO flag when building on a Mac
1285         in <http://trac.webkit.org/changeset/190351>.
1286
1287         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1288         (CompileWebKit.start):
1289
1290 2015-09-30  Daniel Bates  <dabates@apple.com>
1291
1292         Attempt to fix the Mac builders build after <http://trac.webkit.org/changeset/190219>
1293         (https://bugs.webkit.org/show_bug.cgi?id=149539)
1294
1295         {32, 64}-bit Mac builders should not try to build project {Plugin.64, Plugin.32},
1296         respectively; only pass ONLY_ACTIVE_ARCH=NO when building for iOS.
1297
1298         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1299         (CompileWebKit.start):
1300
1301 2015-09-30  Lucas Forschler  <lforschler@apple.com>
1302
1303         bot210 was configured for a queue instead of bot126.
1304         
1305         Unreviewed config.json fix.
1306         
1307         * BuildSlaveSupport/build.webkit.org-config/config.json:
1308
1309 2015-09-30  Lucas Forschler  <lforschler@apple.com>
1310
1311         Bring El Capitan buildbot infrastructure online.
1312         https://bugs.webkit.org/show_bug.cgi?id=149605
1313         
1314         Reviewed by Darin Adler.
1315
1316         * BuildSlaveSupport/build.webkit.org-config/config.json:
1317
1318 2015-09-30  Tomas Popela  <tpopela@redhat.com>
1319
1320         [GTK] Deprecation warnings in DOMNodeTest
1321         https://bugs.webkit.org/show_bug.cgi?id=149663
1322
1323         After the webkit_dom_document_get_elements_by_tag_name deprecation we
1324         need to update the tests to use webkit_dom_document_query_selector_all
1325         to avoid compilation warnings.
1326
1327         Also add a new test for webkit_dom_document_get_elements_by_tag_name_as_html_collection
1328         (the suggested replacement for the deprecated function).
1329
1330         Reviewed by Carlos Garcia Campos.
1331
1332         * TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
1333         (WebKitDOMNodeTest::testTagNamesNodeList):
1334         (WebKitDOMNodeTest::testTagNamesHTMLCollection):
1335         (registerTests):
1336         (WebKitDOMNodeTest::testTagNames): Deleted.
1337         * TestWebKitAPI/Tests/WebKit2Gtk/TestDOMNode.cpp:
1338         (prepareDOMForTagNamesTests):
1339         (testWebKitDOMNodeTagNamesNodeList):
1340         (testWebKitDOMNodeTagNamesHTMLCollection):
1341         (beforeAll):
1342         (testWebKitDOMNodeTagNames): Deleted.
1343
1344 2015-09-29  Simon Fraser  <simon.fraser@apple.com>
1345
1346         WebKitTestRunner fails to apply "useFlexibleViewport" when it's specified in a file comment
1347         https://bugs.webkit.org/show_bug.cgi?id=149650
1348
1349         Reviewed by Tim Horton.
1350         
1351         TestInvocation::invoke() consulted shouldMakeViewportFlexible(), but that only
1352         looks at the file path, and not the custom options that come from file comments.
1353         
1354         Fix by computing TestOptions before making the TestInvocation, and setting them
1355         as const TestInvocation data. This meant changing various call sites to take
1356         the std::string pathOrURL, rather than the TestInvocation itself.
1357         
1358         Also initialize TestInvocation with a WKURLRef, rather than a std::string.
1359
1360         * WebKitTestRunner/CMakeLists.txt:
1361         * WebKitTestRunner/TestController.cpp:
1362         (WTR::TestController::ensureViewSupportsOptionsForTest):
1363         (WTR::testPath):
1364         (WTR::createTestURL):
1365         (WTR::updateTestOptionsFromTestHeader):
1366         (WTR::TestController::testOptionsForTest):
1367         (WTR::TestController::updateWebViewSizeForTest):
1368         (WTR::TestController::updateWindowScaleForTest):
1369         (WTR::TestController::runTest):
1370         * WebKitTestRunner/TestController.h:
1371         * WebKitTestRunner/TestInvocation.cpp:
1372         (WTR::TestInvocation::TestInvocation):
1373         (WTR::TestInvocation::invoke):
1374         (WTR::createWKURL): Deleted.
1375         (WTR::TestInvocation::shouldMakeViewportFlexible): Deleted.
1376         (WTR::TestInvocation::shouldUseFixedLayout): Deleted.
1377         * WebKitTestRunner/TestInvocation.h:
1378         (WTR::TestInvocation::options):
1379         * WebKitTestRunner/TestOptions.cpp: Copied from Tools/WebKitTestRunner/TestOptions.h.
1380         (WTR::pathContains):
1381         (WTR::shouldMakeViewportFlexible):
1382         (WTR::shouldUseFixedLayout):
1383         (WTR::isSVGTestPath):
1384         (WTR::isHiDPITestPath):
1385         (WTR::TestOptions::TestOptions):
1386         * WebKitTestRunner/TestOptions.h:
1387         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1388         * WebKitTestRunner/efl/TestControllerEfl.cpp:
1389         (WTR::pathContains):
1390         (WTR::shouldUseFixedLayout):
1391         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
1392         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
1393         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
1394         * WebKitTestRunner/ios/TestControllerIOS.mm:
1395         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
1396         * WebKitTestRunner/mac/TestControllerMac.mm:
1397         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
1398
1399 2015-09-29  Aakash Jain  <aakash_jain@apple.com>
1400
1401         Flakiness dashboard should support OS X El Capitan
1402         https://bugs.webkit.org/show_bug.cgi?id=149648
1403
1404         Reviewed by Alexey Proskuryakov.
1405
1406         * QueueStatusServer/app.yaml: We do not need to maintain SVN revision here because of 
1407         difference between new appscale and old Google App Engine implementation.
1408         * TestResultServer/app.yaml: Same.
1409         * TestResultServer/static-dashboards/builders.jsonp: Added OSX El Capitan support.
1410
1411 2015-09-29  Daniel Bates  <dabates@apple.com>
1412
1413         configure-xcode-for-ios-development does not work with Xcode 7
1414         https://bugs.webkit.org/show_bug.cgi?id=149640
1415
1416         Reviewed by Alexey Proskuryakov.
1417
1418         When Xcode 7 is installed, running configure-xcode-for-ios-development dies with an error
1419         because it cannot find the Xcode specification files for iOS simulator and device. These
1420         files have moved to a new location in Xcode 7 distribution. Moreover we must add the
1421         relevant definitions to the Xcode 7 specification files directly as opposed to creating
1422         new specification files with the added definitions (as we did in older versions of Xcode)
1423         in order for Xcode 7 to honor these definitions.
1424
1425         * Scripts/configure-xcode-for-ios-development: Sorted forward declarations.
1426         (updateXcodeSpecificationFilesForSDKIfNeeded): Added.
1427         (updateXcode7SpecificationFile): Added.
1428         (createLegacyXcodeSpecificationFilesForSDKIfNeeded): Formerly named createXcodeSpecificationFilesForSDKIfNeeded.
1429         (writeXcodeSpecification): Moved congratulations line to caller so as to write out the
1430         appropriate success message.
1431         (mergeXcodeSpecificationWithSpecificationAndId): Formerly named createXcodeSpecificationFromSpecificationAndId.
1432         (createXcodeSpecificationFilesForSDKIfNeeded): Deleted.
1433         (createXcodeSpecificationFromSpecificationAndId): Deleted.
1434
1435 2015-09-29  Brent Fulgham  <bfulgham@apple.com>
1436
1437         [Win] Allow 'prepare-ChangeLog' to be used without Cygwin
1438         https://bugs.webkit.org/show_bug.cgi?id=149639
1439
1440         Reviewed by Alex Christensen.
1441
1442         * Scripts/VCSUtils.pm:
1443         (exitStatus): Use 'isWindows()' method.
1444         (isSVNVersion16OrNewer): 'eval' is not needed here, and just causes
1445         an error. This method could probably just go away.
1446         (normalizePath): Leave Windows (or Unix) paths as platform paths, rather than
1447         always changing to Unix style. 
1448         (unixPath): Added. Needed so Windows can always show a Unix path in the
1449         ChangeLog file.
1450         (changeLogName): Work around the fact that 'getpwuid' is not available on
1451         a pure Windows build of Perl.
1452         * Scripts/prepare-ChangeLog:
1453         (generateFunctionLists): Normalize path received from 'svn' in case it's a Unix
1454         path on Windows.
1455         (svnUpdateCommand): Added helper function. Needed because Windows Perl does not
1456         support using arrays for 'open' arguments.
1457         (resolveChangeLogsPath): Ditto.
1458         (resolveConflictedChangeLogs): Use new helper functions.
1459         (generateNewChangeLogs): Force Windows to use Unix paths in ChangeLog output.
1460         (diffCommand): Use double-quotes for paths, since Windows doesn't understand single
1461         quotes. Unix systems are happy either way.
1462         (statusCommand): Ditto.
1463         * Scripts/webkitdirs.pm:
1464         (launcherName): Drive-by fix. WinLauncher was renamed to MiniBrowser some time ago.
1465
1466 2015-09-29  Brent Fulgham  <bfulgham@apple.com>
1467
1468         [Win] Unreviewed 64-bit build fix after switch to CMake.
1469
1470         * Scripts/webkitdirs.pm:
1471         (determineIsWin64FromArchitecture): Added.
1472
1473 2015-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1474
1475         printing does not use minimum page zoom factor
1476         https://bugs.webkit.org/show_bug.cgi?id=108507
1477
1478         Reviewed by Darin Adler.
1479
1480         WebKitTestRunner always takes the snapshots from the UI process
1481         (expect for IOS), so in the case of printing, the layout in the
1482         web view is not the expected one. When printing, we need to take
1483         the snapshot in the web process and ensure it's rendered with a
1484         PrintContext.
1485
1486         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1487         (WTR::InjectedBundlePage::dump): When dumping pixels, pass
1488         kWKSnapshotOptionsPrinting option to
1489         WKBundlePageCreateSnapshotWithOptions() when printing.
1490
1491 2015-09-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1492
1493         [WTR] Pixel tests generate the snapshots twice in Web and UI processes
1494         https://bugs.webkit.org/show_bug.cgi?id=149595
1495
1496         Reviewed by Tim Horton.
1497
1498         All ports except IOS implement
1499         PlatformWebView::windowSnapshotImage() to generate the snapshot
1500         for the pixel tests in the UI process. But we are still generating
1501         a snapshot for pixel tests in the Web process too, that is passed
1502         to the UI process but ignored.
1503         Whether a pixel result is needed or not, is only known by the web
1504         process depending on whether the test called dumpAsText with
1505         dumpPixels == true or not. Since the pixels are now dump in the UI
1506         process, we need to pass that information to the UI process when
1507         the test is done. For that we set a PixelResultIsPending bool
1508         parameter to the Done message, and we only add the PixelResult
1509         when UI process doesn't need to generate the pixels dump.
1510
1511         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1512         (WTR::InjectedBundle::didReceiveMessageToPage): Set
1513         m_pixelResultIsPending to false on reset.
1514         (WTR::InjectedBundle::done): Add PixelResultIsPending parameter to the
1515         Done message, and set the PixelResult if m_pixelResultIsPending is false.
1516         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1517         (WTR::InjectedBundle::setPixelResult): Set m_pixelResultIsPending to false.
1518         (WTR::InjectedBundle::setNeedsPixelResult): Set m_pixelResultIsPending.
1519         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1520         (WTR::InjectedBundlePage::dump): Only create a snapshot for IOS
1521         port.
1522         * WebKitTestRunner/TestInvocation.cpp:
1523         (WTR::TestInvocation::dumpResults): Use either the pixel result
1524         from the web process or generate a pixel result from the web view
1525         if need it.
1526         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1527         * WebKitTestRunner/TestInvocation.h: Add SnapshotResultType enum
1528         parameter to dumpPixelsAndCompareWithExpected, since the snapshot
1529         is created by the caller now, but the CG implementation needs to
1530         know if it's a Web or UI process snapshot.
1531         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
1532         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
1533         cairo surface for the given image.
1534         * WebKitTestRunner/cg/TestInvocationCG.cpp:
1535         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
1536         CGContext for the given image.
1537
1538 2015-09-28  Dean Johnson  <dean_johnson@apple.com>
1539
1540         Fix JS errors on dashboard metrics page
1541         https://bugs.webkit.org/show_bug.cgi?id=149608
1542
1543         Reviewed by Alexey Proskuryakov.
1544
1545         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js: Updated to use Settings.
1546         (initPlatformsByFamily): 
1547         (updateHiddenPlatforms):
1548         (parsePlatformFamily): Deleted.
1549         (updateToggleButtons): Deleted.
1550         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
1551         (updateHiddenPlatforms): Added to remove errors.
1552         (initPlatformsByFamily): Added to remove errors.
1553         (unhiddenQueues): Updated to use Settings.
1554         (documentReady): Added logic to add toggle buttons to the settings menu.
1555         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
1556         (Settings.prototype.parsePlatformFamily): Moved duplicate logic from Main.js and
1557         MetricsMain.js to Settings.
1558         (Settings.prototype.updateToggleButtons): Moved duplicate logic from Main.js and
1559         MetricsMain.js to Settings.
1560         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js:
1561         (QueueView.prototype._updateHiddenState): Updated to use Settings.
1562
1563 2015-09-28  Aakash Jain  <aakash_jain@apple.com>
1564
1565         Appscale query fails because of missing index
1566         https://bugs.webkit.org/show_bug.cgi?id=149609
1567
1568         Reviewed by Darin Adler.
1569
1570         * QueueStatusServer/index.yaml: Added the required index.
1571
1572 2015-09-28  Brent Fulgham  <bfulgham@apple.com>
1573
1574         [Win] Fix the 64-bit build after switch to cmake.
1575
1576         Reviewed by Alex Christensen.
1577
1578         * Scripts/webkitdirs.pm:
1579         (generateBuildSystemFromCMakeProject): Use correct arguments for cmake to
1580         run a 64-bit build.
1581
1582 2015-09-28  Brent Fulgham  <bfulgham@apple.com>
1583
1584         [Win] Allow Windows to run test-webkitpy without Cygwin
1585         https://bugs.webkit.org/show_bug.cgi?id=149602
1586
1587         Reviewed by Alex Christensen.
1588
1589         These changes mostly shift from hard-coded paths using UNIX-style
1590         separators to Python's "os.path.join" syntax that uses the correct
1591         path separator for each platform.
1592         
1593         * Scripts/webkitpy/common/system/path.py:
1594         (cygpath): Don't pass paths through Cygpath on native Windows.
1595         * Scripts/webkitpy/port/win.py:
1596         (WinPort._path_to_apache): Use os.path.join.
1597         (WinPort._ntsd_location): Support 64-bit environment (ProgramW6432 doesn't exist
1598         in 64-bit environments).
1599         * Scripts/webkitpy/style/checker.py: Use os.path.join.
1600         * Scripts/webkitpy/style/checker_unittest.py:
1601         (GlobalVariablesTest.test_path_rules_specifier.assertNoCheck): Use os.path.join.
1602         (GlobalVariablesTest.test_path_rules_specifier): Ditto.
1603         (GlobalVariablesTest): Ditto.
1604         (GlobalVariablesTest.test_max_reports_per_category): Ditto.
1605         (CheckerDispatcherSkipTest.test_should_skip_with_warning): Ditto.
1606         (CheckerDispatcherDispatchTest.test_js_paths): Ditto.
1607         (CheckerDispatcherDispatchTest.test_json_paths): Ditto.
1608         (CheckerDispatcherDispatchTest.test_python_paths): Ditto.
1609         (CheckerDispatcherDispatchTest.test_text_paths): Ditto.
1610         (CheckerDispatcherDispatchTest.test_xml_paths): Ditto.
1611         (StyleProcessor_CodeCoverageTest._create_carriage_checker_class): Ditto.
1612         (StyleProcessor_CodeCoverageTest): Ditto.
1613         (StyleProcessor_CodeCoverageTest.test_should_process__skip_without_warning): Ditto.
1614         (StyleProcessor_CodeCoverageTest.test_should_process__skip_with_warning): Ditto.
1615         (StyleProcessor_CodeCoverageTest.test_should_process__true_result): Ditto.
1616         * Scripts/webkitpy/w3c/test_parser_unittest.py: Uses os.path.join rather than
1617         manual string concatenation of paths.
1618
1619 2015-09-28  Csaba Osztrogonác  <ossy@webkit.org>
1620
1621         Add bugzilla addresses of committers to contributors.json
1622         https://bugs.webkit.org/show_bug.cgi?id=149520
1623
1624         Reviewed by Darin Adler.
1625
1626         * Scripts/webkitpy/common/config/contributors.json:
1627
1628 2015-09-28  Csaba Osztrogonác  <ossy@webkit.org>
1629
1630         validate-committer-lists -b shouldn't need edituser privileges
1631         https://bugs.webkit.org/show_bug.cgi?id=149519
1632
1633         Reviewed by Darin Adler.
1634
1635         * Scripts/validate-committer-lists:
1636         (CommitterListBugzillaChecker._has_invalid_bugzilla_email):
1637         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
1638         (BugzillaQueries.is_invalid_bugzilla_email):
1639         (BugzillaQueries): Deleted.
1640         (BugzillaQueries.fetch_logins_matching_substring): Deleted.
1641
1642 2015-09-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1643
1644         Unreviewed. Gardening: skip media stream tests failing after r190262.
1645
1646         * Scripts/run-gtk-tests:
1647         (TestRunner):
1648
1649 2015-09-25  Alexey Proskuryakov  <ap@apple.com>
1650
1651         [Mac] USE_INTERNAL_SDK is used undefined in tools projects
1652         https://bugs.webkit.org/show_bug.cgi?id=149571
1653
1654         Reviewed by Dan Bernstein.
1655
1656         Use the same pattern as in Source directory configurations (so, also get rid of AspenFamily.xcconfig). 
1657
1658         * DumpRenderTree/mac/Configurations/Base.xcconfig:
1659         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
1660         * LayoutTestRelay/Configurations/Base.xcconfig:
1661         * MiniBrowser/Configurations/Base.xcconfig:
1662         * MiniBrowser/Configurations/DebugRelease.xcconfig:
1663         * TestWebKitAPI/Configurations/Base.xcconfig:
1664         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
1665         * WebEditingTester/Configurations/Base.xcconfig:
1666         * WebEditingTester/Configurations/DebugRelease.xcconfig:
1667         * WebKitTestRunner/Configurations/Base.xcconfig:
1668         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
1669         * WebKitTestRunner/iOS.xcconfig: Removed.
1670
1671 2015-09-25  Eric Carlson  <eric.carlson@apple.com>
1672
1673         Clean up user media request internal API
1674         https://bugs.webkit.org/show_bug.cgi?id=149527
1675
1676         Reviewed by Tim Horton.
1677
1678         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
1679         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack): Update for API changes.
1680
1681         * WebKitTestRunner/TestController.cpp:
1682         (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): Ditto.
1683
1684 2015-09-25  Simon Fraser  <simon.fraser@apple.com>
1685
1686         [iOS WK2] Add viewport tests and fix runUIScript() timing issues
1687         https://bugs.webkit.org/show_bug.cgi?id=149577
1688
1689         Reviewed by Tim Horton.
1690         
1691         When calling testRunner.runUIScript() from a page load event, the script could run
1692         in the UI process before the current remote layer tree transaction had been handled
1693         there. This meant that runUIScript() could query state which was about to change.
1694         
1695         Fix by delaying the execution of the UI script until a layer tree transaction has
1696         been handled by the UI process, leveraging the existing DrawingAreaProxy::dispatchAfterEnsuringDrawing().
1697
1698         * WebKitTestRunner/TestInvocation.cpp:
1699         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1700         (WTR::TestInvocation::runUISideScriptAfterUpdateCallback):
1701         * WebKitTestRunner/TestInvocation.h:
1702
1703 2015-09-25  Alexey Proskuryakov  <ap@apple.com>
1704
1705         [Mac] Media tests start to time out after a few days of bot uptime
1706         https://bugs.webkit.org/show_bug.cgi?id=149468
1707
1708         Reviewed by Darin Adler.
1709
1710         Delete cache directory in addition to the temporary one. Don't delete /private/tmp/MediaCache,
1711         as it's not longer used by tests. Set TMPDIR and DIRHELPER_USER_DIR_SUFFIX to make
1712         all temporary and cache files go to a custom location.
1713
1714         * Scripts/webkitpy/port/base.py:
1715         * Scripts/webkitpy/port/driver.py:
1716         * Scripts/webkitpy/port/mac.py:
1717         * Scripts/webkitpy/port/win.py:
1718         (WinPort._driver_tempdir_for_environment): Deleted unused function.
1719
1720 2015-09-25  Dan Bernstein  <mitz@apple.com>
1721
1722         Removed MiniBrowser.entitlements.
1723
1724         Rubber-stamped by Anders Carlsson.
1725
1726         The entitlements weren’t used anyway.
1727
1728         * MiniBrowser/MiniBrowser.entitlements: Removed.
1729         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
1730
1731 2015-09-24  Daniel Bates  <dabates@apple.com>
1732
1733         Add WebKitSystemInterface for iOS 9.0
1734         https://bugs.webkit.org/show_bug.cgi?id=149550
1735
1736         Rubber-stamped by Alexey Proskuryakov.
1737
1738         * Scripts/copy-webkitlibraries-to-product-directory:
1739
1740 2015-09-24  Daniel Bates  <dabates@apple.com>
1741
1742         Support building for arbitrary architectures
1743         https://bugs.webkit.org/show_bug.cgi?id=149539
1744
1745         Reviewed by Alexey Proskuryakov.
1746
1747         Teach buildbot to pass the architectures associated with the builder to build-webkit
1748         when building on OS X and iOS. As a side effect of this change we now support building
1749         universal binaries when multiples architectures are specified.
1750
1751         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1752         (CompileWebKit.start):
1753
1754 2015-09-24  Daniel Bates  <dabates@apple.com>
1755
1756         Fix the build after <http://trac.webkit.org/changeset/190212>
1757         (http://trac.webkit.org/changeset/190212)
1758
1759         I inadvertently did not remove the fullPlatform argument from one of the callers of archiveBuiltProduct().
1760
1761         * BuildSlaveSupport/built-product-archive:
1762         (main):
1763
1764 2015-09-24  Daniel Bates  <dabates@apple.com>
1765
1766         Support running unit tests on iOS Simulator test bot
1767         https://bugs.webkit.org/show_bug.cgi?id=149536
1768
1769         Reviewed by Alexey Proskuryakov.
1770
1771         Implements support for running unit tests on a iOS test bot. At the time of writing,
1772         the script run-api-tests supports running unit tests on Mac, Windows and iOS Simulator.
1773
1774         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1775         (RunUnitTests.start): Append appropriate command line flag when invoking script run-api-tests.
1776         (TestFactory.__init__): Add step RunUnitTests when the test bot is for the iOS Simulator platform.
1777
1778 2015-09-24  Daniel Bates  <dabates@apple.com>
1779
1780         Add support infrastructure for OpenSource iOS builders and testers
1781         https://bugs.webkit.org/show_bug.cgi?id=149534
1782
1783         Reviewed by Darin Adler.
1784
1785         Towards setting up OpenSource iOS build bots, teach buildbot and its support
1786         scripts about iOS.
1787
1788         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
1789         (appendCustomBuildFlags): Require the caller to pass parameter fullPlatform and append
1790         --ios-simulator or --device for a builder/tester whose full platform name begins with
1791         "ios-simulator" or "ios", respectively.
1792         (RunJavaScriptCoreTests.start): Pass the full platform name to appendCustomBuildFlags().
1793         * BuildSlaveSupport/built-product-archive:
1794         (main): Pass the full platform name to determineWebKitBuildDirectory().
1795         (determineWebKitBuildDirectory): Call script webkit-build-directory with the appropriate
1796         command line flag when building for iOS.
1797         (archiveBuiltProduct): Use the same logic for iOS as we do for Mac. Also, remove unused
1798         parameter fullPlatform. This parameter was originally added in r125066 to support the
1799         Chromium Android port, which has since been removed from the OpenSource WebKit Project.
1800         (extractBuiltProduct): Use the same logic for iOS as we do for Mac.
1801         * BuildSlaveSupport/clean-build:
1802         (main): Call script webkit-build-directory with the appropriate command line flag when
1803         building for iOS.
1804         * BuildSlaveSupport/delete-stale-build-files:
1805         (main): Use the same logic for iOS as we do for Mac.
1806         (webkitBuildDirectory): Call script webkit-build-directory with the appropriate command line
1807         flag when building for iOS.
1808         * BuildSlaveSupport/test-result-archive:
1809         (archiveTestResults): Use the same logic for iOS as we do for Mac.
1810
1811 2015-09-24  Daniel Bates  <dabates@apple.com>
1812
1813         Remove Chromium-specific changes to script built-product-archive
1814         https://bugs.webkit.org/show_bug.cgi?id=149530
1815
1816         Rubber-stamped by Csaba Osztrogonác.
1817
1818         Reverts changes made in r113074 and r113067 to support Chromium testers. The
1819         Chromium code has long since been removed from the OpenSource WebKit Project.
1820
1821         * BuildSlaveSupport/built-product-archive:
1822         (createZipManually):
1823         (createZip):
1824         (archiveBuiltProduct):
1825
1826 2015-09-24  Dan Bernstein  <mitz@apple.com>
1827
1828         Build fix.
1829
1830         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1831
1832 2015-09-24  Mark Lam  <mark.lam@apple.com>
1833
1834         Unreviewed. Make Lucas Forschler a WebKit reviewer.
1835
1836         * Scripts/webkitpy/common/config/contributors.json:
1837
1838 2015-09-24  Carlos Garcia Campos  <cgarcia@igalia.com>
1839
1840         Unreviewed. Fix GObject DOM API breaks after r190120.
1841
1842         Bring back code removed in r169931 to handle documentation of
1843         deleted classes.
1844
1845         * gtk/webkitdom.py:
1846         (WebKitDOMDocGenerator):
1847         (WebKitDOMDocGenerator.write_deleted_classes):
1848         (WebKitDOMDocGenerator.generate):
1849         (write_deleted_classes):
1850         (WebKitDOMDocGeneratorSections._deleted_class):
1851         (WebKitDOMDocGeneratorSections._deleted_class.in):
1852         (WebKitDOMDocGeneratorSections.write_deleted_classes):
1853         (WebKitDOMDocGeneratorSections.write_deleted_classes.with):
1854
1855 2015-09-23  Myles C. Maxfield  <mmaxfield@apple.com>
1856
1857         [Cocoa] [Font Features] Implement font-variant-*
1858         https://bugs.webkit.org/show_bug.cgi?id=148413
1859
1860         Reviewed by Darin Adler.
1861
1862         Update test font to use "lnum" feature.
1863
1864         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
1865         (Generator::appendGSUBTable):
1866
1867 2015-09-22  Andy Estes  <aestes@apple.com>
1868
1869         ContentFiltering.AllowDownloadAfterAddData is very flaky
1870         https://bugs.webkit.org/show_bug.cgi?id=148885
1871         <rdar://problem/22729563>
1872
1873         Reviewed by Alexey Proskuryakov.
1874
1875         The AllowDownload* tests were relying on -_downloadDidStart: being called before -webView:didFinishNavigation:,
1876         but there is no guarantee of this. For tests that should allow a download, spin the runloop until
1877         -_downloadDidStart: is called. The test will now timeout on failure, but will no longer produce false failures.
1878
1879         * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
1880         (downloadTest):
1881
1882 2015-09-22  Alexey Proskuryakov  <ap@apple.com>
1883
1884         Mavericks: Media tests start to time out after a few days of bot uptime
1885         https://bugs.webkit.org/show_bug.cgi?id=149468
1886
1887         Reviewed by Chris Dumez.
1888
1889         * Scripts/webkitpy/port/base.py:
1890         * Scripts/webkitpy/port/driver.py:
1891         * Scripts/webkitpy/port/mac.py:
1892
1893 2015-09-22  Nan Wang  <n_wang@apple.com>
1894
1895         Unreviewed, add myself to the committers list.
1896
1897         * Scripts/webkitpy/common/config/contributors.json:
1898
1899 2015-09-21  Simon Fraser  <simon.fraser@apple.com>
1900
1901         Remove 'nullable' to fix older iOS builds.
1902
1903         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1904         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]):
1905
1906 2015-09-21  Brent Fulgham  <bfulgham@apple.com>
1907
1908         [Win] Show tiled drawing debug overlay on Windows
1909         https://bugs.webkit.org/show_bug.cgi?id=149426
1910
1911         Reviewed by Dean Jackson.
1912
1913         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLib.rc: Add new menu option.
1914         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLibResource.h: Ditto.
1915         * MiniBrowser/win/Common.cpp:
1916         (::ToggleMenuItem): Recognize new menu item and toggle the 'showTiledScrollingIndicator'
1917         flag if needed.
1918         * MiniBrowser/win/MiniBrowser.h: Update to use new IWebPreferencesPrivate3 class.
1919
1920 2015-09-21  Brent Fulgham  <bfulgham@apple.com>
1921
1922         [Win] Use command-line argument to launch in regular or High DPI mode.
1923         https://bugs.webkit.org/show_bug.cgi?id=149417
1924
1925         Reviewed by Dean Jackson.
1926
1927         * MiniBrowser/win/Common.cpp:
1928         (parseCommandLine): Ignore the '--highDPI' argument. It's used at the
1929         very start of execution, before the MiniBrowser.dll is loaded.
1930         * win/DLLLauncher/DLLLauncherMain.cpp:
1931         (shouldUseHighDPI): Check for '--highDPI', and use this mode if
1932         present. On WinCairo, always use High DPI.
1933
1934 2015-09-21  Ryosuke Niwa  <rniwa@webkit.org>
1935
1936         32-bit Mac build fix attempt after r190065.
1937
1938         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1939
1940 2015-09-21  Alexey Proskuryakov  <ap@apple.com>
1941
1942         [OS X] Update for Xcode 7.0 on Yosemite
1943         https://bugs.webkit.org/show_bug.cgi?id=149389
1944
1945         Reviewed by Dan Bernstein.
1946
1947         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
1948         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.h:
1949         Removed unneeded declarations - conforming to a protocol is sufficient.
1950
1951         * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
1952         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
1953         Changed the definitions to be compiled whenever the SDK requires it (so we will have
1954         dead code compiled in when building for 10.10 with 10.11 SDK, somewhat unfortunately).
1955
1956 2015-09-21  Simon Fraser  <simon.fraser@apple.com>
1957
1958         Add the ability for tests to run script in the UI process in WebKitTestRunner
1959         https://bugs.webkit.org/show_bug.cgi?id=149356
1960
1961         Reviewed by Tim Horton.
1962
1963         This change adds testRunner.runUIScript(script, callback), which allows a test
1964         to execute script in a JSContext which runs in the UI process. That context
1965         has bindings exposed through the UIScriptController interface; currently one test
1966         function, and some iOS-specific functions are included. UIScriptController can be
1967         async with a callback, and runUIScript() itself is asynchronous. When the UI 
1968         script is complete, it calls uiController.uiScriptComplete(result), where 'result'
1969         is a string passed back to the web process, and given to the runUIScript()
1970         callback function.
1971         
1972         Thanks to Gyuyoung Kim for help with the Gtk/Efl build.
1973
1974         * WebKitTestRunner/DerivedSources.make: Build UIScriptController.idl.
1975         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Add runUIScript().
1976         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1977         (WTR::InjectedBundle::didReceiveMessageToPage): When the UI-side script is
1978         complete, call back into TestRunner.
1979         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1980         (WTR::nextUIScriptCallbackID):
1981         (WTR::TestRunner::runUIScript): Post a message to the injected bundle to run the UI script.
1982         (WTR::TestRunner::runUIScriptCallback): When the UI script is done, execute its callback function.
1983         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1984         * WebKitTestRunner/PlatformWebView.h:
1985         * WebKitTestRunner/TestController.cpp:
1986         (WTR::updateTestOptionsFromTestHeader):
1987         (WTR::TestController::testOptionsForTest): Support "useFlexibleViewport" as a test argument.
1988         (WTR::shouldUseFixedLayout): Deleted. Moved to a TestInvocation function.
1989         * WebKitTestRunner/TestInvocation.cpp:
1990         (WTR::TestInvocation::shouldUseFixedLayout):
1991         (WTR::TestInvocation::shouldUseThreadedScrolling):
1992         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1993         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1994         (WTR::TestInvocation::runUISideScript): Run the UI-side script!
1995         (WTR::TestInvocation::uiScriptDidComplete): Send a message back to the injected bundle.
1996         * WebKitTestRunner/TestInvocation.h:
1997         * WebKitTestRunner/TestOptions.h:
1998         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1999         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2000         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
2001         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Added.
2002         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
2003         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
2004         (-[TestRunnerWKWebView scrollViewDidEndZooming:withView:atScale:]):
2005         (-[TestRunnerWKWebView onDidEndZooming:]): Allow a test to hook into the end of zooming.
2006         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2007         (WTR::PlatformWebView::PlatformWebView): Make a TestRunnerWKWebView on iOS.
2008         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Added.
2009         (WTR::UIScriptController::doAsyncTask):
2010         (WTR::UIScriptController::zoomToScale):
2011         (WTR::UIScriptController::zoomScale):
2012         (WTR::UIScriptController::minimumZoomScale):
2013         (WTR::UIScriptController::maximumZoomScale):
2014         (WTR::UIScriptController::contentVisibleRect):
2015         * WebKitTestRunner/mac/EventSenderProxy.mm:
2016         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2017         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]): Deleted.
2018         * WebKitTestRunner/mac/TestControllerMac.mm:
2019         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2020         (WTR::shouldUseThreadedScrolling): Deleted. Moved to TestInvocation.
2021         * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.h:
2022         * WebKitTestRunner/uiscriptcontext/UIScriptContext.cpp: Added. Owns the JS context in the UI process.
2023         (UIScriptContext::UIScriptContext):
2024         (UIScriptContext::~UIScriptContext):
2025         (UIScriptContext::runUIScript): Entrypoint to running the UI script. If the script didn't do anything
2026         asynchronous, call the callback.
2027         (UIScriptContext::nextTaskCallbackID):
2028         (UIScriptContext::prepareForAsyncTask): Do setup for one async task (i.e. a UIScriptController function
2029         that has a callback). Has to store the callbackID of the script, so code called from the completion
2030         callback knows which UI script invoked it.
2031         (UIScriptContext::asyncTaskComplete): Called when one task is finished.
2032         (UIScriptContext::uiScriptComplete):
2033         (UIScriptContext::objectFromRect): Make a JS object from a rect.
2034         * WebKitTestRunner/uiscriptcontext/UIScriptContext.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
2035         (WTR::UIScriptContext::hasOutstandingAsyncTasks):
2036         * WebKitTestRunner/uiscriptcontext/UIScriptController.cpp: Copied from Tools/WebKitTestRunner/TestOptions.h.
2037         (WTR::UIScriptController::UIScriptController):
2038         (WTR::UIScriptController::makeWindowObject):
2039         (WTR::UIScriptController::wrapperClass):
2040         (WTR::UIScriptController::doAsyncTask):
2041         (WTR::UIScriptController::zoomToScale):
2042         (WTR::UIScriptController::zoomScale):
2043         (WTR::UIScriptController::minimumZoomScale):
2044         (WTR::UIScriptController::maximumZoomScale):
2045         (WTR::UIScriptController::contentVisibleRect):
2046         (WTR::UIScriptController::uiScriptComplete):
2047         * WebKitTestRunner/uiscriptcontext/UIScriptController.h: Copied from Tools/WebKitTestRunner/TestOptions.h.
2048         (WTR::UIScriptController::create):
2049         * WebKitTestRunner/uiscriptcontext/bindings/UIScriptController.idl: Copied from Tools/WebKitTestRunner/TestOptions.h.
2050
2051 2015-09-21  Tim Horton  <timothy_horton@apple.com>
2052
2053         Turn on threaded scrolling by default in the tests
2054         https://bugs.webkit.org/show_bug.cgi?id=149377
2055
2056         Reviewed by Simon Fraser.
2057
2058         * WebKitTestRunner/mac/TestControllerMac.mm:
2059         (WTR::TestController::updatePlatformSpecificTestOptionsForTest):
2060         (WTR::shouldUseThreadedScrolling): Deleted.
2061         Turn on threaded scrolling by default.
2062
2063 2015-09-21  Carlos Garcia Campos  <cgarcia@igalia.com>
2064
2065         [GTK] run-gtk-tests doesn't provide feedback about crashing google tests
2066         https://bugs.webkit.org/show_bug.cgi?id=149252
2067
2068         Reviewed by Darin Adler.
2069
2070         In case of glib tests the test runner notifies about tests
2071         crashing, but for google tests we don't get any feedback, which
2072         means that in case of a test crashing we get a list of **PASS**
2073         messages and at the summary we are notified that the test suite
2074         has failed, but it's impossible to know which test cases have failed.
2075
2076         * Scripts/run-gtk-tests:
2077         (TestRunner._run_google_test): Add a **CRASH** message if test
2078         case crashed.
2079
2080 2015-09-20  Alexey Proskuryakov  <ap@apple.com>
2081
2082         WebKitTestRunner can leak user content script results between tests
2083         https://bugs.webkit.org/show_bug.cgi?id=149391
2084
2085         Reviewed by Sam Weinig.
2086
2087         Move WKBundlePageRemoveAllUserContent call so that it's executed before loading
2088         about:blank, and thus about:blank doesn't have unintended side effects.
2089
2090         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2091         (WTR::InjectedBundle::beginTesting):
2092         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2093         (WTR::InjectedBundlePage::resetAfterTest):
2094
2095 2015-09-20  Alexey Proskuryakov  <ap@apple.com>
2096
2097         [Mac, iOS] AccessibilityController doesn't uninstall global notification handler
2098         https://bugs.webkit.org/show_bug.cgi?id=149384
2099
2100         Reviewed by Chris Fleizach.
2101
2102         * DumpRenderTree/ios/AccessibilityControllerIOS.mm:
2103         (AccessibilityController::addNotificationListener): Fixed a leak, and cleaned up the code.
2104         (AccessibilityController::platformResetToConsistentState): Actually remove the handler,
2105         regardless of whether someone else holds a reference (we also call -stopListening in
2106         -dealloc).
2107
2108         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
2109         (AccessibilityController::platformResetToConsistentState):
2110         (AccessibilityController::addNotificationListener):
2111         Ditto.
2112
2113 2015-09-20  Youenn Fablet  <youenn.fablet@crf.canon.fr>
2114
2115         Remove XHR_TIMEOUT compilation guard
2116         https://bugs.webkit.org/show_bug.cgi?id=149260
2117
2118         Reviewed by Benjamin Poulain.
2119
2120         * Scripts/webkitperl/FeatureList.pm:
2121
2122 2015-09-19  Dan Bernstein  <mitz@apple.com>
2123
2124         Attempted build fix.
2125
2126         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
2127
2128 2015-09-18  Commit Queue  <commit-queue@webkit.org>
2129
2130         Unreviewed, rolling out r189908.
2131         https://bugs.webkit.org/show_bug.cgi?id=149368
2132
2133         Broke run-webkit-tests --pixel (Requested by ap on #webkit).
2134
2135         Reverted changeset:
2136
2137         "printing does not use minimum page zoom factor"
2138         https://bugs.webkit.org/show_bug.cgi?id=108507
2139         http://trac.webkit.org/changeset/189908
2140
2141 2015-09-18  Andy Estes  <aestes@apple.com>
2142
2143         [iOS] did{Start,Finish}LoadForQuickLookDocumentInMainFrame is never called on WKNavigationDelegate
2144         https://bugs.webkit.org/show_bug.cgi?id=149360
2145
2146         Reviewed by Tim Horton.
2147
2148         Added an API test.
2149
2150         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2151         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm: Added.
2152         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
2153         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
2154         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]):
2155         (TEST):
2156         * TestWebKitAPI/ios/pages.pages: Added.
2157
2158 2015-09-18  Nan Wang  <n_wang@apple.com>
2159
2160         AX: Implement ARIA 1.1 @aria-current on iOS
2161         https://bugs.webkit.org/show_bug.cgi?id=149297
2162
2163         Reviewed by Chris Fleizach.
2164
2165         Added support to test aria-current on iOS.
2166
2167         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2168         (AccessibilityUIElement::stringAttributeValue):
2169         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2170         (WTR::AccessibilityUIElement::stringAttributeValue):
2171
2172 2015-09-18  Alexey Proskuryakov  <ap@apple.com>
2173
2174         iOS WebKitTestRunner frequently crashes in WKContextGetIconDatabase
2175         https://bugs.webkit.org/show_bug.cgi?id=149352
2176
2177         Reviewed by Simon Fraser.
2178
2179         * WebKitTestRunner/TestController.cpp: (WTR::TestController::~TestController):
2180         m_context can be null. This may indicate a bug in webkitpy too, but
2181         WebKitTestRunner should handle this situation nicely, there is nothing intrinsically
2182         wrong with opening and immediately closing it.
2183
2184 2015-09-18  Daniel Bates  <dabates@apple.com>
2185
2186         isGitSVNDirectory() returns true when Git is not installed
2187         https://bugs.webkit.org/show_bug.cgi?id=149351
2188
2189         Reviewed by Alexey Proskuryakov.
2190
2191         Fixes an issue where VCSUtils::isGitSVNDirectory() returns true for any arbitrary directory if
2192         Git is not installed on the machine.
2193
2194         * Scripts/VCSUtils.pm:
2195         (isGitSVNDirectory): Ensure that `git config --get svn-remote.svn.fetch 2>& 1` exits with
2196         status code 0 (success).
2197
2198 2015-09-18  Alex Christensen  <achristensen@webkit.org>
2199
2200         Prevent build-webkit from building four times on Windows 
2201         https://bugs.webkit.org/show_bug.cgi?id=149336
2202
2203         Reviewed by Brent Fulgham.
2204
2205         * Scripts/build-webkit:
2206         Move the Windows code out of the for loop iterating over each subdirectory to be build.
2207         They're built all at once.
2208         * Scripts/webkitdirs.pm:
2209         (buildVisualStudioProject):
2210         (cmakeGeneratedBuildfile):
2211         Don't generate the Visual Studio solution if it already exists.
2212         It will run CMake again if necessary.
2213
2214 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
2215
2216         [iOS WK2] WTR fails to set the key window in the UIKit sense
2217         https://bugs.webkit.org/show_bug.cgi?id=149325
2218
2219         Reviewed by Tim Horton.
2220
2221         -[WebKitTestRunnerWindow isKeyWindow] just returned _platformWebView->windowIsKey().
2222         This causes UIKit to bypass code that actually sets the key window, resulting in
2223         [UIAppliation sharedApplication].keyWindow always being nil.
2224
2225         Fix by PlatformWebView::setWindowIsKey() actually call -makeKeyWindow, and having
2226         -[WebKitTestRunnerWindow isKeyWindow] call super.
2227
2228         * WebKitTestRunner/PlatformWebView.h:
2229         (WTR::PlatformWebView::setWindowIsKey): Deleted.
2230         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
2231         (WTR::PlatformWebView::setWindowIsKey):
2232         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2233         (WTR::PlatformWebView::setWindowIsKey):
2234         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2235         (-[WebKitTestRunnerWindow isKeyWindow]):
2236         (WTR::PlatformWebView::PlatformWebView):
2237         (WTR::PlatformWebView::~PlatformWebView):
2238         (WTR::PlatformWebView::setWindowIsKey):
2239         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2240         (WTR::PlatformWebView::setWindowIsKey):
2241
2242 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
2243
2244         [iOS WK2] When loading viewport tests, use the normal web page viewport configuration
2245         https://bugs.webkit.org/show_bug.cgi?id=149321
2246
2247         Reviewed by Tim Horton.
2248         
2249         InjectedBundlePage::platformDidStartProvisionalLoadForFrame() unconditionally 
2250         enabled the "testing" viewport configuration, which disables page scaling.
2251         
2252         If we're running viewport tests, we want the normal web page configuration.
2253         Do that by passing a flag in the dictionary sent to InjectedBundle::beginTesting(),
2254         based on whether the test is in a "viewport" directory.
2255
2256         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2257         (WTR::InjectedBundle::beginTesting):
2258         * WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
2259         (WTR::InjectedBundlePage::platformDidStartProvisionalLoadForFrame): Deleted.
2260         * WebKitTestRunner/TestInvocation.cpp:
2261         (WTR::TestInvocation::shouldLogFrameLoadDelegates):
2262         (WTR::TestInvocation::shouldLogHistoryClientCallbacks):
2263         (WTR::TestInvocation::shouldMakeViewportFlexible):
2264         (WTR::TestInvocation::invoke):
2265         * WebKitTestRunner/TestInvocation.h:
2266         * WebKitTestRunner/ios/TestControllerIOS.mm:
2267         (WTR::TestController::platformConfigureViewForTest):
2268         (WTR::shouldMakeViewportFlexible): Deleted.
2269
2270 2015-09-17  Simon Fraser  <simon.fraser@apple.com>
2271
2272         Give iOS WebKitTestRunner a launch storyboard
2273         https://bugs.webkit.org/show_bug.cgi?id=149314
2274
2275         Reviewed by Dan Bates.
2276         
2277         Add a launch storyboard to iOS WebKitTestRunner so that Springboard recognizes
2278         that it's been built for specific device configurations, and puts the window
2279         at the top of the screen. This simplifies coordinate conversions in a future patch.
2280
2281         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2282         * WebKitTestRunner/WebKitTestRunnerApp/WebKitTestRunnerApp-Info.plist:
2283         * WebKitTestRunner/ios/Launch.storyboard: Added.
2284
2285 2015-09-17  Myles C. Maxfield  <mmaxfield@apple.com>
2286
2287         Update licence in r189890
2288         https://bugs.webkit.org/show_bug.cgi?id=149306
2289
2290         Reviewed by Dean Jackson.
2291
2292         * FontWithFeatures/FontWithFeatures/FontCreator.cpp:
2293         * FontWithFeatures/FontWithFeatures/FontCreator.h:
2294         * FontWithFeatures/FontWithFeatures/main.cpp:
2295
2296 2015-09-17  Mark Lam  <mark.lam@apple.com>
2297
2298         Add the ability to skip JIT stress tests in run-javascriptcore-tests.
2299         https://bugs.webkit.org/show_bug.cgi?id=149285
2300
2301         Reviewed by Saam Barati.
2302
2303         Just need to add an option to pass --no-jit to run-jsc-stress-test.
2304
2305         * Scripts/run-javascriptcore-tests:
2306         (runJSCStressTests):
2307
2308 2015-09-17  Alex Christensen  <achristensen@webkit.org>
2309
2310         Switch AppleWin build to use CMake
2311         https://bugs.webkit.org/show_bug.cgi?id=149163
2312
2313         Reviewed by Brent Fulgham.
2314
2315         * Scripts/build-webkit:
2316         * Scripts/run-api-tests:
2317         (runTest):
2318         (listAllTests):
2319         (prepareEnvironmentForRunningTestTool):
2320         (testToolPaths):
2321         (testToolPath): Deleted.
2322         Run the API tests as separate executables on Windows.
2323         It used to be TestWebKitAPI.exe, and it is now TestWTF.exe, TestWebCore.exe, and TestWebKit.exe.
2324         * Scripts/webkitdirs.pm:
2325         (checkRequiredSystemConfig):
2326         (jhbuildWrapperPrefixIfNeeded):
2327         (generateBuildSystemFromCMakeProject):
2328         Fix configuration quirks.
2329
2330 2015-09-17  Dean Johnson  <dean_johnson@apple.com>
2331
2332         Added toggle options for hiding and showing certain platform families on the dashboard.
2333         https://bugs.webkit.org/show_bug.cgi?id=148403
2334
2335         Reviewed by David Kilzer.
2336
2337         This patch removes "hiddenPlatforms" from use in the code and local storage. We also removed
2338         individual hide/show buttons for platforms because we've added toggle options to hide/show entire
2339         families. Examples of these are "mac", "ios", and "linux". "Show All Platforms" was also removed
2340         in lieu of an "all" button in the toggle menu.
2341
2342         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
2343         (parsePlatformFamily): Helper function to parse out a platform family.
2344         (initPlatformsByFamily): Initializes platformsByFamily, which organizes platforms on the
2345         page by platformsByFamily[<family>] = <list of platforms belonging to that family>.
2346         (updateToggleButtons): Updates the status of the toggle buttons.
2347         (updateHiddenPlatforms): Changed to work with the new implementation of hiding/showing platforms.
2348         (documentReady): Added creation of toggle buttons.
2349         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsMain.js:
2350         (unhiddenQueues): Updated to search by platform family instead of the individual platform name.
2351         (documentReady): Changed hiddenPlatforms => hiddenPlatformFamilies.
2352         (updateHiddenPlatforms): Deleted. After removing the individual hide button code, 
2353         this did the exact same thing as the updateHiddenPlatforms in Scripts/Main.js so it was removed.
2354         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/QueueView.js:
2355         (QueueView): Updated to use hiddenPlatformFamilies.
2356         (QueueView.prototype._updateHiddenState): Updated to use hiddenPlatformFamilies.
2357         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Settings.js:
2358         (Settings.prototype.toggleHiddenPlatformFamily): Renamed function and some variables.
2359         (Settings.prototype.clearHiddenPlatformFamilies): Now uses hiddenPlatformFamilies for events.
2360         (Settings.prototype.toggleHiddenPlatform): Deleted.
2361         (Settings.prototype.clearHiddenPlatforms): Deleted.
2362         (Settings.prototype.toggleShowPlatformFamily): Deleted.
2363         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2364         (div.cellButton, div.accessibilityButton, div.platformFamilyToggleButton):
2365         (div.cellButton.unhide, div.accessibilityButton.unhide, div.platformFamilyToggleButton.unhide):
2366         (.settings-visible div.settingsWrapper.hide, .settings-visible div.settingsWrapper):
2367         (table.queue-grid tr.headers th):
2368         (div.settingsWrapper.hide):
2369         (div.settingsWrapper):
2370         (div.familyToggleWrapper):
2371         (div.platformFamilyToggleButton):
2372         (div.platformFamilyShowToggleButton:not(:last-child)):
2373         (div.familyShown):
2374         (div.accessibilityButton):
2375         (div.cellButton, div.accessibilityButton): Added platformFamilyToggleButton class.
2376         (div.cellButton.unhide, div.accessibilityButton.unhide): Added platformFamilyToggleButton class.
2377         (.settings-visible div.accessibilityButton.hide, .settings-visible div.accessibilityButton.unhide): Added
2378         platformFamilyToggleButton and settingsWrapper class.
2379         (.accessibilityButton): Deleted.
2380
2381 2015-09-17  Tim Horton  <timothy_horton@apple.com>
2382
2383         Add a test ensuring that scrolling in the middle of a page can't start a swipe gesture
2384         https://bugs.webkit.org/show_bug.cgi?id=148904
2385
2386         Reviewed by Myles Maxfield.
2387
2388         * WebKitTestRunner/TestController.cpp:
2389         (WTR::parseBooleanTestHeaderValue):
2390         (WTR::updateViewOptionsFromTestHeader):
2391         Check for the key "useThreadedScrolling".
2392         Add some code to check for "true" and "false" for boolean options.
2393
2394         (WTR::TestController::viewOptionsForTest):
2395         Apply the test's overrides last, even after the platform's.
2396
2397 2015-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2398
2399         printing does not use minimum page zoom factor
2400         https://bugs.webkit.org/show_bug.cgi?id=108507
2401
2402         Reviewed by Darin Adler.
2403
2404         WebKitTestRunner always takes the snapshots from the UI process
2405         (expect for IOS), so in the case of printing, the layout in the
2406         web view is not the expected one. When printing, we need to take
2407         the snapshot in the web process and ensure it's rendered with a
2408         PrintContext.
2409
2410         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2411         (WTR::InjectedBundlePage::dump): When dumping pixels, pass
2412         kWKSnapshotOptionsPrinting option to
2413         WKBundlePageCreateSnapshotWithOptions() when printing. When not
2414         printing, don't even create the snapshot, since it will be ignored
2415         by the UI process that always creates its own from the WebView (expect for IOS platform)
2416         * WebKitTestRunner/TestInvocation.cpp:
2417         (WTR::TestInvocation::dumpResults): Use always the snapshot image
2418         received from the web process if any when comparing pixel
2419         results. Now we only receive a snapshot from the web process in
2420         case of printing, or when platform is IOS. Otherwhise, generate
2421         the snapshot from the WebView as usual.
2422         * WebKitTestRunner/TestInvocation.h: Add SnapshotResultType enum
2423         parameter to dumpPixelsAndCompareWithExpected, since the snapshot
2424         is created by the caller now, but the CG implementation needs to
2425         know if it's a Web or UI process snapshot.
2426         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
2427         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
2428         cairo surface for the given image.
2429         * WebKitTestRunner/cg/TestInvocationCG.cpp:
2430         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Create a
2431         CGContext for the given image.
2432
2433 2015-09-16  Myles C. Maxfield  <mmaxfield@apple.com>
2434
2435         Create a font which can be used for testing font features
2436         https://bugs.webkit.org/show_bug.cgi?id=149237
2437
2438         Reviewed by Simon Fraser.
2439
2440         This patch adds a new project in the Tools/ directory which generates a font which can
2441         be used for testing font features. This is a standalone project consisting of two files:
2442         1. A file which actually generates the byte vector representing the font. This file has
2443         a single public function: std::vector<uint8_t> generateFont(). This file is not platform
2444         specific, and only relies on the C++ STL.
2445         2. A file with a main() which calls generateFont() and writes out the font, as well as
2446         uses the font to render some demonstration text into a .png file. This file is platform
2447         specific.
2448
2449         The font itself only supports the following characters:
2450         ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
2451         However, the shape of these letters are either an X or a check mark.
2452
2453         The letter "A" always is a check mark.
2454         The letter "B" always is an X.
2455         Without any font features turned on, the rest of the letters are shown as X.
2456
2457         Each font feature has an letter associated with it. When the font feature is enabled,
2458         that letter is shown as a check mark. For example, when "smcp" is enabled, "J" is shown
2459         as a check mark.
2460
2461         Here are the mappings of font features to letters:
2462         liga: C
2463         clig: D
2464         dlig: E
2465         hlig: F
2466         calt: G
2467         subs: H
2468         sups: I
2469         smcp: J
2470         c2sc: K
2471         pcap: L
2472         c2pc: M
2473         unic: N
2474         titl: O
2475         onum: P
2476         pnum: Q
2477         tnum: R
2478         frac: S
2479         afrc: T
2480         ordn: U
2481         zero: V
2482         hist: W
2483         jp78: X
2484         jp83: Y
2485         jp90: Z
2486         jp04: a
2487         smpl: b
2488         trad: c
2489         fwid: d
2490         pwid: e
2491         ruby: f
2492
2493         * FontWithFeatures/FontWithFeatures.xcodeproj/project.pbxproj: Added.
2494         * FontWithFeatures/FontWithFeatures/FontCreator.cpp: Added.
2495         (integralLog2):
2496         (roundDownToPowerOfTwo):
2497         (isFourByteAligned):
2498         (clampTo):
2499         (append32):
2500         (writeCFFEncodedNumber):
2501         (CFFBuilder::CFFBuilder):
2502         (CFFBuilder::takeResult):
2503         (CFFBuilder::moveTo):
2504         (CFFBuilder::lineTo):
2505         (CFFBuilder::curveToCubic):
2506         (CFFBuilder::closePath):
2507         (CFFBuilder::writePoint):
2508         (generateBoxCharString):
2509         (generateCheckCharString):
2510         (generateXCharString):
2511         (charStringForGlyph):
2512         (Generator::generate):
2513         (Generator::Placeholder::Placeholder):
2514         (Generator::Placeholder::populate):
2515         (Generator::Placeholder::~Placeholder):
2516         (Generator::placeholder):
2517         (Generator::append16):
2518         (Generator::append32):
2519         (Generator::append32BitCode):
2520         (Generator::overwrite16):
2521         (Generator::overwrite32):
2522         (Generator::appendCFFTable):
2523         (Generator::appendSubstitutionSubtable):
2524         (Generator::appendScriptSubtable):
2525         (Generator::appendGSUBTable):
2526         (Generator::appendOS2Table):
2527         (Generator::appendFormat12CMAPTable):
2528         (Generator::appendFormat4CMAPTable):
2529         (Generator::appendCMAPTable):
2530         (Generator::appendHEADTable):
2531         (Generator::appendHHEATable):
2532         (Generator::appendHMTXTable):
2533         (Generator::appendMAXPTable):
2534         (Generator::appendNAMETable):
2535         (Generator::appendPOSTTable):
2536         (Generator::calculateChecksum):
2537         (Generator::appendTable):
2538         (generateFont):
2539         * FontWithFeatures/FontWithFeatures/FontCreator.h: Added.
2540         * FontWithFeatures/FontWithFeatures/main.cpp: Added.
2541         (drawTextWithFeature):
2542         (main):
2543
2544 2015-09-16  Commit Queue  <commit-queue@webkit.org>
2545
2546         Unreviewed, rolling out r189875 and r189878.
2547         https://bugs.webkit.org/show_bug.cgi?id=149235
2548
2549         cygwin cmake build not ready yet (Requested by alexchristensen
2550         on #webkit).
2551
2552         Reverted changesets:
2553
2554         "Switch AppleWin build to use CMake"
2555         https://bugs.webkit.org/show_bug.cgi?id=149163
2556         http://trac.webkit.org/changeset/189875
2557
2558         "Cygwin build fix after r189875"
2559         http://trac.webkit.org/changeset/189878
2560
2561 2015-09-16  Alex Christensen  <achristensen@webkit.org>
2562
2563         Cygwin build fix after r189875
2564
2565         * Scripts/build-webkit:
2566         * Scripts/webkitdirs.pm:
2567         (jhbuildWrapperPrefixIfNeeded):
2568         (generateBuildSystemFromCMakeProject):
2569         Make things work with cygwin and cmake.
2570
2571 2015-09-16  Alex Christensen  <achristensen@webkit.org>
2572
2573         Switch AppleWin build to use CMake
2574         https://bugs.webkit.org/show_bug.cgi?id=149163
2575
2576         Reviewed by Brent Fulgham.
2577
2578         * Scripts/build-webkit:
2579         Build with CMake.
2580         * Scripts/run-api-tests:
2581         (runTest):
2582         (listAllTests):
2583         (prepareEnvironmentForRunningTestTool):
2584         (testToolPaths):
2585         (testToolPath): Deleted.
2586         Run the API tests as separate executables on Windows.
2587         It used to be TestWebKitAPI.exe, and it is now TestWTF.exe, TestWebCore.exe, and TestWebKit.exe.
2588
2589 2015-09-16  Alexey Proskuryakov  <ap@apple.com>
2590
2591         Add newer build.webkit.org pages to robots.txt
2592         https://bugs.webkit.org/show_bug.cgi?id=149219
2593
2594         Reviewed by Darin Adler.
2595
2596         Indexing bot watcher's dashboard can't be good.
2597
2598         * BuildSlaveSupport/build.webkit.org-config/public_html/robots.txt:
2599
2600 2015-09-16  Alex Christensen  <achristensen@webkit.org>
2601
2602         Rollout r189851 and 189853 because they didn’t actually fix the permissions issue
2603
2604         * BuildSlaveSupport/built-product-archive:
2605         (unzipArchive):
2606
2607 2015-09-16  Csaba Osztrogonác  <ossy@webkit.org>
2608
2609         [EFL] Fix the help message of separated web process option of MiniBrowser
2610         https://bugs.webkit.org/show_bug.cgi?id=149212
2611
2612         Reviewed by Gyuyoung Kim.
2613
2614         * MiniBrowser/efl/main.c:
2615
2616 2015-09-16  Alex Christensen  <achristensen@webkit.org>
2617
2618         Fix python syntax after r189851.
2619
2620         * BuildSlaveSupport/built-product-archive:
2621         (unzipArchive):
2622         For loops need a colon.
2623
2624 2015-09-15  Alex Christensen  <achristensen@webkit.org>
2625
2626         Fix Windows test bots after changing to non-cygwin build
2627         https://bugs.webkit.org/show_bug.cgi?id=149196
2628
2629         Reviewed by Daniel Bates.
2630
2631         * BuildSlaveSupport/built-product-archive:
2632         (unzipArchive):
2633         Using different versions of python makes what I think is https://bugs.python.org/issue15795
2634         prevent us from executing files from the archive on the test bots.
2635
2636 2015-09-15  Ryosuke Niwa  <rniwa@webkit.org>
2637
2638         Add ShadowRoot interface and Element.prototype.attachShadow
2639         https://bugs.webkit.org/show_bug.cgi?id=149187
2640
2641         Reviewed by Antti Koivisto.
2642
2643         * Scripts/webkitperl/FeatureList.pm:
2644
2645 2015-09-15  Aakash Jain  <aakash_jain@apple.com>
2646
2647         Appscale queue status json output lacks bots
2648         https://bugs.webkit.org/show_bug.cgi?id=149194
2649         <rdar://problem/22171089>
2650
2651         Reviewed by Alexey Proskuryakov.
2652
2653         * QueueStatusServer/handlers/queuestatusjson.py:
2654         (QueueStatusJSON._bots): Order the results by date so as to get latest events, this was default in AppEngine.
2655         * QueueStatusServer/index.yaml: Index according to appscale requirements.
2656
2657 2015-09-15  Brent Fulgham  <bfulgham@apple.com>
2658
2659         [Win] Provide a means for viewing the layer tree
2660         https://bugs.webkit.org/show_bug.cgi?id=149165
2661
2662         Reviewed by Simon Fraser.
2663
2664         Update MiniBrowser with a new Debug menu option that will
2665         dump the current layer tree to the debug console.
2666         
2667         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLib.rc:
2668         * MiniBrowser/MiniBrowser.vcxproj/MiniBrowserLibResource.h:
2669         * MiniBrowser/win/Common.cpp:
2670         (WndProc): Add handler for 'Print Layer Tree' menu option.
2671         * MiniBrowser/win/MiniBrowser.cpp:
2672         (MiniBrowser::printLayerTree): Added Handler.
2673         * MiniBrowser/win/MiniBrowser.h:
2674
2675 2015-09-14  Myles C. Maxfield  <mmaxfield@apple.com>
2676
2677         WebKitTestRunner declarative language setting is broken for iOS
2678         https://bugs.webkit.org/show_bug.cgi?id=149119
2679
2680         Unreviewed.
2681
2682         In all of the patches on webkit.org/b/189669, my patch to get this working on iOS was
2683         lost in the final version which got committed. This simply implements the existing
2684         OS X behavior on iOS.
2685
2686         * WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
2687         (WTR::InjectedBundle::platformInitialize):
2688
2689 2015-09-14  Dewei Zhu  <dewei_zhu@apple.com>
2690
2691         Unreviewed, add myself to committers list.
2692
2693         * Scripts/webkitpy/common/config/contributors.json:
2694
2695 2015-09-12  Myles C. Maxfield  <mmaxfield@apple.com>
2696
2697         [Cocoa] Allow testing with the system language
2698         https://bugs.webkit.org/show_bug.cgi?id=148671
2699
2700         Reviewed by Anders Carlsson and Alexey Proskuryakov.
2701
2702         React to tests marked with language=lang1,lang2,etc in their header.
2703         Once this information is parsed, pass it to
2704         WKContextConfigurationSetOverrideLanguages().
2705
2706         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
2707         (WTR::InjectedBundle::platformInitialize): Don't clobber the language
2708         list.
2709         * WebKitTestRunner/TestController.cpp:
2710         (WTR::TestController::createWebViewWithOptions): Call
2711         WKContextConfigurationSetOverrideLanguages().
2712         (WTR::updateTestOptionsFromTestHeader): Inspect the language option.
2713         * WebKitTestRunner/TestOptions.h:
2714         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2715         (WTR::PlatformWebView::viewSupportsOptions): Cause a differing language
2716         option to restart the web process.
2717         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2718         (WTR::PlatformWebView::viewSupportsOptions): Ditto.
2719
2720 2015-09-12  Myles C. Maxfield  <mmaxfield@apple.com>
2721
2722         [WKTR] Allow changing the WKContextConfiguration between successive tests
2723         https://bugs.webkit.org/show_bug.cgi?id=148833
2724
2725         Reviewed by Tim Horton.
2726
2727         Previously, we were creating a single WKContext and it lived for the life of the entire test runner.
2728         However, there are certain tests which require specifying options in this object. This patch makes
2729         our existing code for recreating the test runner web view also recreate the WKContext.
2730
2731         As such, our options to the view are now options to the WKContextConfiguration. This patch renames the
2732         class.
2733
2734         * WebKitTestRunner/ContextConfigurationOptions.h: Renamed from Tools/WebKitTestRunner/ViewOptions.h.
2735         * WebKitTestRunner/PlatformWebView.h:
2736         (WTR::PlatformWebView::options):
2737         * WebKitTestRunner/TestController.cpp:
2738         (WTR::TestController::initialize):
2739         (WTR::TestController::generateContextConfiguration):
2740         (WTR::TestController::generatePageConfiguration):
2741         (WTR::TestController::createWebViewWithOptions):
2742         (WTR::TestController::ensureViewSupportsOptionsForTest):
2743         (WTR::updateContextConfigurationOptionsFromTestHeader):
2744         (WTR::TestController::contextConfigurationOptionsForTest):
2745         (WTR::TestController::platformCreateWebView):
2746         (WTR::TestController::platformCreateOtherPage):
2747         (WTR::updateViewOptionsFromTestHeader): Deleted.
2748         (WTR::TestController::viewOptionsForTest): Deleted.
2749         * WebKitTestRunner/TestController.h:
2750         (WTR::TestController::injectedBundlePath):
2751         (WTR::TestController::testPluginDirectory):
2752         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2753         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2754         (WTR::TestController::platformCreateWebView):
2755         (WTR::TestController::platformCreateOtherPage):
2756         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
2757         (WTR::PlatformWebView::PlatformWebView):
2758         (WTR::PlatformWebView::viewSupportsOptions):
2759         * WebKitTestRunner/efl/TestControllerEfl.cpp:
2760         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2761         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2762         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2763         (WTR::PlatformWebView::PlatformWebView):
2764         (WTR::PlatformWebView::viewSupportsOptions):
2765         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2766         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2767         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2768         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2769         (WTR::PlatformWebView::PlatformWebView):
2770         (WTR::PlatformWebView::viewSupportsOptions):
2771         * WebKitTestRunner/ios/TestControllerIOS.mm:
2772         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2773         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2774         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2775         (WTR::PlatformWebView::PlatformWebView):
2776         (WTR::PlatformWebView::viewSupportsOptions):
2777         * WebKitTestRunner/mac/TestControllerMac.mm:
2778         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2779         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2780
2781 2015-09-11  Michael Saboff  <msaboff@apple.com>
2782
2783         LayoutTestHelper crashes if a color profile isn't set for a 3rd party monitor
2784         https://bugs.webkit.org/show_bug.cgi?id=149083
2785
2786         Reviewed by Alexey Proskuryakov.
2787
2788         Check to make sure that we have a valid factoryProfile CFDictionaryRef before using it.
2789
2790         * DumpRenderTree/mac/LayoutTestHelper.m:
2791         (colorProfileURLForDisplay):
2792
2793 2015-09-11  Saam barati  <sbarati@apple.com>
2794
2795         There should be a defaultSpotCheck-like mode that doesn't run the MaximalFlushInsertionPhase in run-jsc-stress-tests
2796         https://bugs.webkit.org/show_bug.cgi?id=149058
2797
2798         Reviewed by Geoffrey Garen.
2799
2800         * Scripts/run-jsc-stress-tests:
2801
2802 2015-09-10  Commit Queue  <commit-queue@webkit.org>
2803
2804         Unreviewed, rolling out r189595.
2805         https://bugs.webkit.org/show_bug.cgi?id=149052
2806
2807         The tests still fail (Requested by ap on #webkit).
2808
2809         Reverted changeset:
2810
2811         "Spurious output on Windows tests: AQMEIOManager::FindIOUnit:
2812         error -1"
2813         https://bugs.webkit.org/show_bug.cgi?id=142929
2814         http://trac.webkit.org/changeset/189595
2815
2816 2015-09-10  Alexey Proskuryakov  <ap@apple.com>
2817
2818         Spurious output on Windows tests: AQMEIOManager::FindIOUnit: error -1
2819         https://bugs.webkit.org/show_bug.cgi?id=142929
2820
2821         Reviewed by Brent Fulgham.
2822
2823         Silence the logging. We'll track fixing the root cause in Radar.
2824
2825         * Scripts/webkitpy/port/mac.py:
2826         (MacPort.stderr_patterns_to_strip): Added a FIXME.
2827
2828         * Scripts/webkitpy/port/win.py:
2829         (WinPort.logging_patterns_to_strip): Added.
2830
2831 2015-09-09  Andy Estes  <aestes@apple.com>
2832
2833         [iOS] Teach run-webkit-tests how to parse simulator runtimes when version numbers contain a revision
2834         https://bugs.webkit.org/show_bug.cgi?id=149022
2835
2836         Reviewed by Daniel Bates.
2837
2838         Simulator runtime versions can contain a revision number (e.g. 8.4.1), but the regex for matching runtimes
2839         did not account for this.
2840
2841         * Scripts/webkitpy/xcode/simulator.py:
2842         (Simulator): Optionally matched a revision at the end of a runtime version number.
2843         * Scripts/webkitpy/xcode/simulator_unittest.py: Added a test.
2844
2845 2015-09-09  Andy Estes  <aestes@apple.com>
2846
2847         [iOS] Teach run-webkit-tests how to parse `simctl list` when a tvOS SDK is installed
2848         https://bugs.webkit.org/show_bug.cgi?id=149029
2849         <rdar://problem/22432624>
2850
2851         Reviewed by Daniel Bates.
2852
2853         * Scripts/webkitpy/xcode/simulator.py:
2854         (Simulator): Taught to parse tvOS runtimes.
2855         * Scripts/webkitpy/xcode/simulator_unittest.py: Added tests.
2856
2857 2015-09-09  Alexey Proskuryakov  <ap@apple.com>
2858
2859         Fix bit rot on bot watcher's dashboard page
2860         https://bugs.webkit.org/show_bug.cgi?id=149012
2861
2862         Reviewed by Tim Horton.
2863
2864         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
2865         The code path used by the metrics page was trying to add properties to an undefined.
2866
2867         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTestResults.js:
2868         Silence an expection that would occur when the step has no logs. This should never
2869         happen, but it did (perhaps buildbot was misconfigured for a while).
2870
2871 2015-09-09  Alexey Proskuryakov  <ap@apple.com>
2872
2873         Update LayoutTestRelay xcconfig file.
2874
2875         Rubber-stamped by Dan Bernstein.
2876
2877         * LayoutTestRelay/Configurations/DebugRelease.xcconfig:
2878
2879 2015-09-09  Saam barati  <sbarati@apple.com>
2880
2881         DFG should have a debugging option that runs a phase that flushes all locals
2882         https://bugs.webkit.org/show_bug.cgi?id=148916
2883
2884         Reviewed by Filip Pizlo.
2885
2886         * Scripts/run-jsc-stress-tests:
2887
2888 2015-09-09  Commit Queue  <commit-queue@webkit.org>
2889
2890         Unreviewed, rolling out r189530 and r189534.
2891         https://bugs.webkit.org/show_bug.cgi?id=148996
2892
2893         Caused assertion failures on Yosemite (Requested by litherum
2894         on #webkit).
2895
2896         Reverted changesets:
2897
2898         "[WKTR] Allow changing the WKContextConfiguration between
2899         successive tests"
2900         https://bugs.webkit.org/show_bug.cgi?id=148833
2901         http://trac.webkit.org/changeset/189530
2902
2903         "[Cocoa] Fix the tests after r189530"
2904         http://trac.webkit.org/changeset/189534
2905
2906 2015-09-08  Myles C. Maxfield  <mmaxfield@apple.com>
2907
2908         [Cocoa] Fix the tests after r189530
2909
2910         Unreviewed.
2911
2912         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2913         (WTR::initializeWebViewConfiguration):
2914
2915 2015-09-08  Myles C. Maxfield  <mmaxfield@apple.com>
2916
2917         [WKTR] Allow changing the WKContextConfiguration between successive tests
2918         https://bugs.webkit.org/show_bug.cgi?id=148833
2919
2920         Reviewed by Tim Horton.
2921
2922         Previously, we were creating a single WKContext and it lived for the life of the entire test runner.
2923         However, there are certain tests which require specifying options in this object. This patch makes
2924         our existing code for recreating the test runner web view also recreate the WKContext.
2925
2926         As such, our options to the view are now options to the WKContextConfiguration. This patch renames the
2927         class.
2928
2929         * WebKitTestRunner/ContextConfigurationOptions.h: Renamed from Tools/WebKitTestRunner/ViewOptions.h.
2930         * WebKitTestRunner/PlatformWebView.h:
2931         (WTR::PlatformWebView::options):
2932         * WebKitTestRunner/TestController.cpp:
2933         (WTR::TestController::initialize):
2934         (WTR::TestController::generateContextConfiguration):
2935         (WTR::TestController::generatePageConfiguration):
2936         (WTR::TestController::createWebViewWithOptions):
2937         (WTR::TestController::ensureViewSupportsOptionsForTest):
2938         (WTR::updateContextConfigurationOptionsFromTestHeader):
2939         (WTR::TestController::contextConfigurationOptionsForTest):
2940         (WTR::TestController::platformCreateWebView):
2941         (WTR::TestController::platformCreateOtherPage):
2942         (WTR::updateViewOptionsFromTestHeader): Deleted.
2943         (WTR::TestController::viewOptionsForTest): Deleted.
2944         * WebKitTestRunner/TestController.h:
2945         (WTR::TestController::injectedBundlePath):
2946         (WTR::TestController::testPluginDirectory):
2947         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2948         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2949         (WTR::TestController::platformCreateWebView):
2950         (WTR::TestController::platformCreateOtherPage):
2951         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
2952         (WTR::PlatformWebView::PlatformWebView):
2953         (WTR::PlatformWebView::viewSupportsOptions):
2954         * WebKitTestRunner/efl/TestControllerEfl.cpp:
2955         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2956         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2957         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2958         (WTR::PlatformWebView::PlatformWebView):
2959         (WTR::PlatformWebView::viewSupportsOptions):
2960         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
2961         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2962         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2963         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2964         (WTR::PlatformWebView::PlatformWebView):
2965         (WTR::PlatformWebView::viewSupportsOptions):
2966         * WebKitTestRunner/ios/TestControllerIOS.mm:
2967         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2968         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2969         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2970         (WTR::PlatformWebView::PlatformWebView):
2971         (WTR::PlatformWebView::viewSupportsOptions):
2972         * WebKitTestRunner/mac/TestControllerMac.mm:
2973         (WTR::TestController::updatePlatformSpecificContextConfigurationOptionsForTest):
2974         (WTR::TestController::updatePlatformSpecificViewOptionsForTest): Deleted.
2975
2976 2015-09-08  Daniel Bates  <dabates@apple.com>
2977
2978         [Mac] Expose Enable/Disable Accelerated Drawing in MiniBrowser
2979         https://bugs.webkit.org/show_bug.cgi?id=148980
2980
2981         Reviewed by Alexey Proskuryakov.
2982
2983         Add setting to enable/disable accelerated drawing so as to support testing
2984         this feature in MiniBrowser on Mac.
2985
2986         * MiniBrowser/mac/SettingsController.h:
2987         * MiniBrowser/mac/SettingsController.m:
2988         (-[SettingsController _populateMenu]): Add menu item.
2989         (-[SettingsController validateMenuItem:]): Update setting when menu item is toggled.
2990         (-[SettingsController toggleAcceleratedDrawingEnabled:]): Added.
2991         (-[SettingsController acceleratedDrawingEnabled]): Added.
2992         * MiniBrowser/mac/WK1BrowserWindowController.m:
2993         (-[WK1BrowserWindowController didChangeSettings]): Apply setting in WebKit1.
2994         * MiniBrowser/mac/WK2BrowserWindowController.m:
2995         (-[WK2BrowserWindowController didChangeSettings]): Apply setting in WebKit2.
2996
2997 2015-09-08  Jason Marcell  <jmarcell@apple.com>
2998
2999         Unreviewed. Added myself as a commiter in contributors.json.
3000
3001         * Scripts/webkitpy/common/config/contributors.json:
3002
3003 2015-09-08  Keith Miller  <keith_miller@apple.com>
3004
3005         Unreviewed, added myself to the list of contributors.
3006
3007         * Scripts/webkitpy/common/config/contributors.json:
3008
3009 2015-09-08  Daniel Bates  <dabates@apple.com>
3010
3011         Dashboard: Remove use of z-index for ring overlay; use DOM ordering
3012         https://bugs.webkit.org/show_bug.cgi?id=148921
3013
3014         Reviewed by Alexey Proskuryakov.
3015
3016         The ring image is positioned above the platform icon in markup and we specify the CSS
3017         property z-index for the ring image so that it is painted on top of the platform icon
3018         instead of below it (by DOM ordering). Instead we can take advantage of the transparency
3019         of the ring image, switch the order of these DOM elements and remove the use of the CSS
3020         property z-index to achieve a similar effect.
3021
3022         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
3023         (documentReady): Create the platform icon image element before the ring image such that
3024         the ring image is painted on top of the platform icon.
3025         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
3026         (table.queue-grid td.logo img.ring): Removed property z-index.
3027
3028 2015-09-08  Daniel Bates  <dabates@apple.com>
3029
3030         Dashboard: Remove duplicate gear icon data URLs
3031         https://bugs.webkit.org/show_bug.cgi?id=148920
3032
3033         Reviewed by Alexey Proskuryakov.
3034
3035         Currently we duplicate the SVG data URL for the gear icon up to its fill color in the CSS property
3036         background-image associated with each of the three gear icon states: collapsed (.settings), hover
3037         (.settings:hover), and expanded (.settings-visible .settings). Instead we should use the gear icon
3038         as a mask and make use of the CSS background-color to define the fill color for each of these three
3039         states.
3040
3041         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
3042         (.settings): Use gear icon as mask and define CSS background-color for collapsed state. 
3043         (.settings:hover): Override CSS background-color for hover state.
3044         (.settings-visible .settings): Override CSS background-color for expanded state.
3045
3046 2015-09-07  Andy Estes  <aestes@apple.com>
3047
3048         [Mac] DebugRelease builds should link against libWebKitSystemInterfaceElCapitan.a on 10.11
3049         https://bugs.webkit.org/show_bug.cgi?id=148946
3050         <rdar://problem/22603981>
3051
3052         Reviewed by Dan Bernstein.
3053
3054         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
3055         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
3056
3057 2015-09-07  Hunseop Jeong  <hs85.jeong@samsung.com>
3058
3059         [EFL] Many of the css3/device-adapt/* tests failed after r188548.
3060         https://bugs.webkit.org/show_bug.cgi?id=148927
3061
3062         Reviewed by Csaba Osztrogonác.
3063
3064         device-adapt/* tests need the fixedLayout option but useFixedLayout option is
3065         overwritten by updatePlatformSpecificViewOptionsForTest after r188548.
3066
3067         * WebKitTestRunner/TestController.cpp:
3068         (WTR::shouldUseFixedLayout): Removed the unnecessary indentations.
3069         * WebKitTestRunner/efl/TestControllerEfl.cpp:
3070         (WTR::shouldUseFixedLayout): Return true if the test is related with 'device-adapt'.
3071
3072 2015-09-07  Andy Estes  <aestes@apple.com>
3073
3074         Fix the Production build after r189455.
3075
3076         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Somehow I added the All target using the
3077         In-App Purchase template instead of the Aggregate template. Whoops.
3078
3079 2015-09-06  Andy Estes  <aestes@apple.com>
3080
3081         WebKit.xcworkspace should be be able to build iOS platforms
3082         https://bugs.webkit.org/show_bug.cgi?id=148881
3083
3084         Reviewed by Daniel Bates.
3085
3086         Since we don't want to create platform-specific schemes, all projects in the workspace's schemes need to build
3087         for all supported platforms.
3088
3089         * MiniBrowser/Configurations/Base.xcconfig: Included iphoneos and iphonesimulator in SUPPORTED_PLATFORMS.
3090         * MiniBrowser/Configurations/MiniBrowser.xcconfig: Excluded all source files on iOS, and linked Cocoa and WebKit on Mac.
3091         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Ditto.
3092         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Stopped linking frameworks in Link Binaries With Libraries.
3093
3094 2015-09-06  Andy Estes  <aestes@apple.com>
3095
3096         WebKitTestRunner should build for iOS using the default target
3097         https://bugs.webkit.org/show_bug.cgi?id=148918
3098
3099         Reviewed by Daniel Bates.
3100
3101         When WebKitTestRunner was ported to iOS, a separate target (WebKitTestRunnerApp) was created for building the
3102         iOS variant. This is annoying because (1) all tools that invoke xcodebuild need to be taught to build this
3103         non-default target, and (2) a single Xcode scheme cannot be used to build both Mac and iOS variants.
3104
3105         This change adds a new default target (All) and makes it work for both Mac and iOS. Files that were built for
3106         both WebKitTestRunner and WebKitTestRunnerApp are now built in a static library target (WebKitTestRunner (Library)),
3107         and both apps now link this library. Files that are specific to Mac or iOS are excluded on the other platform.
3108         WebKitTestRunnerApp.app (which should be renamed to WebKitTestRunner.app) is skipped when installing on Mac, and
3109         WebKitTestRunner is skipped when installing on iOS.
3110
3111         The target dependency graph now looks like this:
3112
3113             All
3114                 WebKitTestRunnerApp
3115                     WebKitTestRunner (Library)
3116                         WebKitTestRunnerInjectedBundle
3117                             Derived Sources
3118                 WebKitTestRunner
3119                     WebKitTestRunner (Library)
3120                         WebKitTestRunnerInjectedBundle
3121                             Derived Sources
3122
3123         * Scripts/build-webkit: Stopped building the WebKitTestRunnerApp target on iOS.
3124         * Scripts/build-webkittestrunner: Ditto.
3125         * WebKitTestRunner/Configurations/Base.xcconfig: Set SUPPORTED_PLATFORMS to macosx, iphoneos, and iphonesimulator.
3126         * WebKitTestRunner/Configurations/BaseTarget.xcconfig: Set INSTALL_PATH here since it is the same for all targets.
3127         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Stopped setting INSTALL_PATH.
3128         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig: Moved frameworks from the build phase to here,
3129         excluded iOS-only files, and skipped installing on iOS.
3130         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig: Moved frameworks from the build phase to here,
3131         excluded Mac-only files, and skipped installing on Mac.
3132         * WebKitTestRunner/Configurations/WebKitTestRunnerLibrary.xcconfig: Skipped installing always.
3133         * WebKitTestRunner/Makefile: Stopped building the WebKitTestRunnerApp target on iOS.
3134         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Added new targets, removed frameworks from
3135         Link Binary With Libraries builds phases, moved common files to the WebKitTestRunner (Library) target, and added
3136         new configuration files.
3137
3138 2015-09-05  Joseph Pecoraro  <pecoraro@apple.com>
3139
3140         Web Inspector: Improve prepare-ChangeLog for multiple cases
3141         https://bugs.webkit.org/show_bug.cgi?id=148875
3142
3143         Reviewed by Timothy Hatcher.
3144
3145         * Scripts/prepare-ChangeLog:
3146         (get_function_line_ranges_for_javascript):
3147         - We were ignoring everything inside of an anonymous function expression,
3148           such as (function(){ ... }), which made InjectedScriptSource produce nothing.
3149           Better handle this by inserting a few tweaks.
3150         - Allow method syntax outside of classes as long as they are at the global level.
3151         - Avoid treating "get" and "set" as getter/setter functions in bad contexts.
3152
3153         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests-expected.txt:
3154         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/javascript_unittests.js:
3155         (Foo.prototype.method1):
3156         (Foo.prototype.method2):
3157         (Foo.prototype.method3.innerFunction):
3158         (Foo.prototype.method3):
3159         (insideGlobalAnonymousFunctionExpression):
3160         (foo.insideGlobalFunctionExpression):
3161         (IssueWithMapGetAndSet.prototype.method1.nestedFunctionInsideMethod1):
3162         (IssueWithMapGetAndSet.prototype.method1):
3163         (IssueWithMapGetAndSet.prototype.method2):
3164         (IssueWithMapGetAndSet.prototype.method3):
3165         (IssueWithMapGetAndSet):
3166
3167 2015-09-05  Yusuke Suzuki  <utatane.tea@gmail.com>
3168
3169         [ES6] Enable ES6 Module in JSC shell by default
3170         https://bugs.webkit.org/show_bug.cgi?id=148689
3171
3172         Reviewed by Geoffrey Garen.
3173
3174         * Scripts/run-javascriptcore-tests:
3175         (runJSCStressTests):
3176         * Scripts/run-jsc-stress-tests:
3177
3178 2015-09-04  Basile Clement  <basile_clement@apple.com>
3179
3180         Unreviewed, change my email address.
3181
3182         * Scripts/webkitpy/common/config/contributors.json:
3183
3184 2015-09-04  Beth Dakin  <bdakin@apple.com>
3185
3186         Should have a test to make sure links don't navigate after a cancelled force 
3187         click
3188         https://bugs.webkit.org/show_bug.cgi?id=148846
3189
3190         Reviewed by Tim Horton.
3191
3192         New EventSender function for a started then cancelled force click.
3193         * WebKitTestRunner/EventSenderProxy.h:
3194         * WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
3195         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
3196         (WTR::EventSendingController::mouseForceClick):
3197         (WTR::EventSendingController::startAndCancelMouseForceClick):
3198         (WTR::EventSendingController::mouseForceDown):
3199         * WebKitTestRunner/InjectedBundle/EventSendingController.h:
3200         * WebKitTestRunner/TestController.cpp:
3201         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
3202         * WebKitTestRunner/mac/EventSenderProxy.mm:
3203         (WTR::EventSenderProxy::mouseForceClick):
3204         (WTR::EventSenderProxy::startAndCancelMouseForceClick):
3205         (WTR::EventSenderProxy::mouseForceDown):
3206         (WTR::EventSenderProxy::mouseMoveTo):
3207
3208 2015-09-04  Tim Horton  <timothy_horton@apple.com>
3209
3210         Add a test for r179736 (programmatic navigation during swipe causing a crash)
3211         https://bugs.webkit.org/show_bug.cgi?id=148830
3212
3213         Reviewed by Beth Dakin.
3214
3215         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3216         (WTR::InjectedBundle::beginTesting):
3217         Make sure that TestRunner callbacks don't leak between tests!
3218
3219 2015-09-04  Anders Carlsson  <andersca@apple.com>
3220
3221         It should be possible to pass relative HTTP test paths to DumpRenderTree
3222         https://bugs.webkit.org/show_bug.cgi?id=148825
3223         <rdar://problem/22583866>
3224
3225         Reviewed by Tim Horton.
3226
3227         Convert the path to an absolute path if needed.
3228
3229         * DumpRenderTree/mac/DumpRenderTree.mm:
3230         (computeTestURL):
3231
3232 2015-09-04  Jason Marcell  <jmarcell@apple.com>
3233
3234         Fix Swift unit tests for prepare-ChangeLog.
3235         https://bugs.webkit.org/show_bug.cgi?id=148817
3236
3237         Reviewed by Alexey Proskuryakov.
3238
3239         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/swift_unittests-expected.txt: Fixed
3240         Swift unit tests for prepare-ChangeLog.
3241
3242 2015-09-04  Lucas Forschler  <lforschler@apple.com>
3243
3244         Modifications to the webkit-nightly logic.
3245         
3246         * WebKitLauncher/WebKitNightlyEnablerSparkle.m:
3247         (updateAlertPanel):
3248         * WebKitLauncher/main.m:
3249         (displayErrorAndQuit):
3250
3251 2015-09-04  Beth Dakin  <bdakin@apple.com>
3252
3253         Speculative build fix.
3254
3255         * WebKitTestRunner/mac/EventSenderProxy.mm:
3256
3257 2015-09-04  Brian Burg  <bburg@apple.com>
3258
3259         Web Inspector: InspectorController should support multiple frontend channels
3260         https://bugs.webkit.org/show_bug.cgi?id=148538
3261
3262         Reviewed by Joseph Pecoraro.
3263
3264         InspectorClients must explicitly disconnect their frontend channel(s) from the
3265         inspected page's InspectorController.
3266
3267         To make this possible, DumpRenderTree should not destroy non-primary views until
3268         it has tried to close any abandoned Web Inspector instances. Performing teardown
3269         in the reverse order prevents disconnection of the frontend channel because that
3270         prematurely destroys the inspector frontend client.
3271
3272         * DumpRenderTree/mac/DumpRenderTree.mm:
3273         (runTest):
3274         * DumpRenderTree/win/DumpRenderTree.cpp:
3275         (runTest):
3276
3277 2015-09-04  Beth Dakin  <bdakin@apple.com>
3278
3279         Need to be able to test default behaviors on force click
3280         https://bugs.webkit.org/show_bug.cgi?id=148758
3281
3282         Reviewed by Tim Horton.
3283
3284         This patch adds a new eventSender method to do a full, completed force click, 
3285         and it re-works all of the existing force methods to dispatch their events in 
3286         such a way that they will trigger the NSImmediateAction gesture recognizer. 
3287         To do this, first we need to send the events to the app rather than straight 
3288         to the view, and also needed to tweak some state and send the events in a 
3289         delayed fashion.
3290
3291         New public function mouseForceClick() and private helper functions to make 
3292         NSEvents.
3293         * WebKitTestRunner/EventSenderProxy.h:
3294
3295         New public function mouseForceClick().
3296         * WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
3297         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
3298         (WTR::EventSendingController::mouseMoveTo):
3299         (WTR::EventSendingController::mouseForceClick):
3300         (WTR::EventSendingController::mouseForceDown):
3301         * WebKitTestRunner/InjectedBundle/EventSendingController.h:
3302         * WebKitTestRunner/TestController.cpp:
3303         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
3304
3305         initPressureEventAtLocation needs to take a stageTransition and a window.
3306         * WebKitTestRunner/mac/EventSenderProxy.mm:
3307         (-[EventSenderSyntheticEvent initPressureEventAtLocation:globalLocation:stage:pressure:stageTransition:phase:time:eventNumber:window:]):
3308         (-[EventSenderSyntheticEvent stageTransition]):
3309         (-[EventSenderSyntheticEvent timestamp]):
3310         (-[EventSenderSyntheticEvent _cgsEventRecord]):
3311         (-[EventSenderSyntheticEvent window]):
3312
3313         In order to enter the gesture recognizer, we need to start with a mouse down 
3314         that has a NSEventMaskPressure modifier.
3315         (WTR::EventSenderProxy::sendMouseDownToStartPressureEvents):
3316
3317         This ensures that the events queue properly for the force monitor in AppKit.
3318         (WTR::spinRunLoopForForce):
3319
3320          We need to start the pressure change events with a began.
3321         (WTR::EventSenderProxy::beginPressureEvent):
3322
3323         These functions can be used to create the NSEvent for a pressure change every 
3324         time we need one.
3325         (WTR::EventSenderProxy::pressureChangeEvent):
3326
3327         Send the right series of events to emulate a full, completed force click.
3328         (WTR::EventSenderProxy::mouseForceClick):
3329
3330         Use all of the new things for these existing functions.
3331         (WTR::EventSenderProxy::mouseForceDown):
3332         (WTR::EventSenderProxy::mouseForceUp):
3333         (WTR::EventSenderProxy::mouseForceChanged):
3334
3335         Set NSFakeForceTouchDevice to YES.
3336         * WebKitTestRunner/mac/main.mm:
3337         (setDefaultsToConsistentValuesForTesting):
3338
3339 2015-09-04  Jason Marcell  <jmarcell@apple.com>
3340
3341         prepare-ChangeLog needs to know how to parse Swift files.
3342         https://bugs.webkit.org/show_bug.cgi?id=148784
3343         <rdar://problem/22510062>
3344
3345         Reviewed by Darin Adler.
3346
3347         * Scripts/prepare-ChangeLog:
3348         (get_function_line_ranges): Added entry for get_function_line_ranges_for_swift.
3349         (get_function_line_ranges_for_swift): Added function that knows how to parse Swift code.
3350         (parseSwiftFunctionArgs): Added function that knows how to parse Swift function arguments.
3351         * Scripts/webkitperl/prepare-ChangeLog_unittest/parser_unittests.pl: Added.
3352         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/swift_unittests-expected.txt: Ditto.
3353         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/swift_unittests.swift: Ditto.
3354         (freeFunction): Ditto.
3355         (MyClass.function): Ditto.
3356         (MyClass.functionWithArgument(_:)): Ditto.
3357         (MyClass.functionWithMoreArguments(_:arg2:)): Ditto.
3358         (MyClass.functionWithNamedFirstArgument(argument:)): Ditto.
3359         (MyClass.functionWithNamedFirstAndSecondArgument(first:second:)): Ditto.
3360         (MyClass.classFunction): Ditto.
3361         (MyClass.readWriteComputedVariable): Ditto.
3362         (MyClass.readOnlyComputedVariable): Ditto.
3363
3364 2015-09-04  Ryosuke Niwa  <rniwa@webkit.org>
3365
3366         Import css/css-color-3
3367         https://bugs.webkit.org/show_bug.cgi?id=148803
3368
3369         Reviewed by Chris Dumez.
3370
3371         Fixed a bug that the imported reference files used the same extention as tests.
3372         This would result in parsing errors if the tests were XML and references were HTML and vice versa.
3373
3374         * Scripts/webkitpy/w3c/test_importer.py:
3375         (TestImporter.find_importable_tests):
3376
3377 2015-09-03  Commit Queue  <commit-queue@webkit.org>
3378
3379         Unreviewed, rolling out r189338.
3380         https://bugs.webkit.org/show_bug.cgi?id=148785
3381
3382         Caused tons of crashes (Requested by cdumez on #webkit).
3383
3384         Reverted changeset:
3385
3386         "Web Inspector: InspectorController should support multiple
3387         frontend channels"
3388         https://bugs.webkit.org/show_bug.cgi?id=148538
3389         http://trac.webkit.org/changeset/189338
3390
3391 2015-09-03  Brian Burg  <bburg@apple.com>
3392
3393         Web Inspector: InspectorController should support multiple frontend channels
3394         https://bugs.webkit.org/show_bug.cgi?id=148538
3395
3396         Reviewed by Joseph Pecoraro.
3397
3398         InspectorClients must explicitly disconnect their frontend channel(s) from the
3399         inspected page's InspectorController.
3400
3401         To make this possible, DumpRenderTree should not destroy non-primary views until
3402         it has tried to close any abandoned Web Inspector instances. Performing teardown
3403         in the reverse order prevents disconnection of the frontend channel because that
3404         prematurely destroys the inspector frontend client.
3405
3406         * DumpRenderTree/mac/DumpRenderTree.mm:
3407         (runTest):
3408         * DumpRenderTree/win/DumpRenderTree.cpp:
3409         (runTest):
3410
3411 2015-09-03  Timothy Hatcher  <timothy@apple.com>
3412
3413         Update WebKit nightly icon to be more like Safari
3414         https://bugs.webkit.org/show_bug.cgi?id=148768
3415
3416         Reviewed by Joseph Pecoraro.
3417
3418         * WebKitLauncher/webkit.icns:
3419
3420 2015-09-03  Geoffrey Garen  <ggaren@apple.com>
3421
3422         JavaScriptCore should have some ES6 conformance tests
3423         https://bugs.webkit.org/show_bug.cgi?id=148771
3424
3425         Reviewed by Chris Dumez.
3426
3427         * Scripts/run-javascriptcore-tests:
3428         (runJSCStressTests): Added es6 as a test suite.
3429
3430         * Scripts/run-jsc-stress-tests: Added es6 as a test suite.
3431
3432         Some of these tests currently fail, so I also added a way to expect
3433         failure for now. We'll migrate failing tests to expected passes as we
3434         fix them.
3435
3436 2015-09-03  Tim Horton  <timothy_horton@apple.com>
3437
3438         Add a test for swipe-start hysteresis
3439         https://bugs.webkit.org/show_bug.cgi?id=148756
3440
3441         Reviewed by Anders Carlsson.
3442
3443         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3444         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3445         (WTR::cacheTestRunnerCallback):
3446         (WTR::TestRunner::clearTestRunnerCallbacks):
3447         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3448         Make sure that we log if a client tries to install a callback twice
3449         (since we use .add, the second call would not work).
3450
3451         Also, add clearTestRunnerCallbacks so tests can swap out installed
3452         callbacks.
3453
3454 2015-09-03  Anders Carlsson  <andersca@apple.com>
3455
3456         DumpRenderTree should automatically compute HTTP URLs for HTTP tests
3457         https://bugs.webkit.org/show_bug.cgi?id=148746
3458         rdar://problem/22568073
3459
3460         Reviewed by Tim Horton.
3461
3462         * DumpRenderTree/mac/DumpRenderTree.mm:
3463         (computeTestURL):
3464         Compute the test URL from the passed in path or URL. Special-case paths that contain /LayoutTests/http/tests. 
3465
3466         (runTest):
3467         Call computeTestURL.
3468
3469         (testPathFromURL):
3470         Get rid of this; computeTestURL does this for us now.
3471
3472         * Scripts/webkitpy/port/driver.py:
3473         (Driver._command_from_driver_input):
3474         Don't convert HTTP test paths to URLS before passing them to DumpRenderTree on Mac. That's handled by DRT itself now.
3475
3476 2015-09-03  Tim Horton  <timothy_horton@apple.com>
3477
3478         Swipe tests fail on Mavericks
3479         https://bugs.webkit.org/show_bug.cgi?id=148752
3480
3481         Reviewed by Beth Dakin.
3482
3483         * WebKitTestRunner/mac/EventSenderProxy.mm:
3484
3485 2015-09-03  Tim Horton  <timothy_horton@apple.com>
3486
3487         Fix the 32-bit build
3488
3489         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3490         (WTR::PlatformWebView::setNavigationGesturesEnabled):
3491
3492 2015-09-03  Tim Horton  <timothy_horton@apple.com>
3493
3494         Remove some logging that wasn't meant to be in the tree
3495
3496         * WebKitTestRunner/mac/EventSenderProxy.mm:
3497         (WTR::EventSenderProxy::swipeGestureWithWheelAndMomentumPhases):
3498
3499 2015-09-03  Tim Horton  <timothy_horton@apple.com>
3500
3501         [Mac] Add support for testing swipes
3502         https://bugs.webkit.org/show_bug.cgi?id=148700
3503
3504         Reviewed by Beth Dakin.
3505
3506         * WebKitTestRunner/EventSenderProxy.h:
3507         * WebKitTestRunner/InjectedBundle/Bindings/EventSendingController.idl:
3508         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3509         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
3510         (WTR::cgEventPhaseFromString):
3511         (WTR::cgEventMomentumPhaseFromString):
3512         (WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
3513         (WTR::EventSendingController::swipeGestureWithWheelAndMomentumPhases):
3514         * WebKitTestRunner/InjectedBundle/EventSendingController.h:
3515         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3516         (WTR::InjectedBundle::didReceiveMessageToPage):
3517         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3518         (WTR::TestRunner::installDidBeginSwipeCallback):
3519         (WTR::TestRunner::installWillEndSwipeCallback):
3520         (WTR::TestRunner::installDidEndSwipeCallback):
3521         (WTR::TestRunner::installDidRemoveSwipeSnapshotCallback):
3522         (WTR::TestRunner::callDidBeginSwipeCallback):
3523         (WTR::TestRunner::callWillEndSwipeCallback):
3524         (WTR::TestRunner::callDidEndSwipeCallback):
3525         (WTR::TestRunner::callDidRemoveSwipeSnapshotCallback):
3526         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3527         * WebKitTestRunner/TestController.cpp:
3528         (WTR::TestController::createOtherPage):
3529         (WTR::TestController::createWebViewWithOptions):
3530         (WTR::TestController::didReceiveMessageFromInjectedBundle):
3531         (WTR::TestController::didBeginNavigationGesture):
3532         (WTR::TestController::willEndNavigationGesture):
3533         (WTR::TestController::didEndNavigationGesture):
3534         (WTR::TestController::didRemoveNavigationGestureSnapshot):
3535         * WebKitTestRunner/TestController.h:
3536         * WebKitTestRunner/TestInvocation.cpp:
3537         (WTR::TestInvocation::didBeginSwipe):
3538         (WTR::TestInvocation::willEndSwipe):
3539         (WTR::TestInvocation::didEndSwipe):
3540         (WTR::TestInvocation::didRemoveSwipeSnapshot):
3541         * WebKitTestRunner/TestInvocation.h:
3542         Add callbacks when navigation gestures didBegin/willEnd/didEnd, and
3543         when the snapshot is removed.
3544
3545         Add swipeGestureWithWheelAndMomentumPhases, just like the equivalent
3546         mouseScrollBy function.
3547
3548         * WebKitTestRunner/mac/EventSenderProxy.mm:
3549         (-[EventSenderSyntheticEvent initPressureEventAtLocation:globalLocation:stage:pressure:phase:time:eventNumber:]):
3550         (-[EventSenderSyntheticEvent type]):
3551         (-[EventSenderSyntheticEvent subtype]):
3552         (-[EventSenderSyntheticEvent locationInWindow]):
3553         (-[EventSenderSyntheticEvent location]):
3554         (-[EventSenderSyntheticEvent momentumPhase]):
3555         (-[EventSenderSyntheticEvent _isTouchesEnded]):
3556         (-[EventSenderSyntheticEvent _cgsEventRecord]):
3557         Rename EventSenderPressureEvent to EventSenderSyntheticEvent and add some
3558         more adjustable values.
3559
3560         (WTR::EventSenderProxy::mouseForceDown):
3561         (WTR::EventSenderProxy::mouseForceUp):
3562         (WTR::EventSenderProxy::mouseForceChanged):
3563         Adopt EventSenderSyntheticEvent.
3564
3565         (WTR::nsEventPhaseFromCGEventPhase):
3566         (WTR::EventSenderProxy::swipeGestureWithWheelAndMomentumPhases):
3567         Make use of EventSenderSyntheticEvent to synthesize swipe gesture events.
3568
3569         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3570         (WTR::PlatformWebView::PlatformWebView):
3571         Enable swipe.
3572
3573 2015-09-03  Myles C. Maxfield  <mmaxfield@apple.com>
3574
3575         [WK2] Allow tagging tests with metadata which needs to be known at web process creation time
3576   &n