blob: 80a3627ba1283c7e17b780b77eec293c0707adef [file] [log] [blame]
2019-05-16 Alex Christensen <achristensen@webkit.org>
Add SPI to set a list of hosts to which to send custom header fields cross-origin
https://bugs.webkit.org/show_bug.cgi?id=197397
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
(expectLegacyHeaders):
(expectHeaders):
(-[CustomHeaderFieldsDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
(-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
(-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
2019-05-15 Aakash Jain <aakash_jain@apple.com>
Replace double-quotes with single quotes in steps.py
https://bugs.webkit.org/show_bug.cgi?id=197921
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/ews-build/steps.py:
2019-05-15 Keith Rollin <krollin@apple.com>
Rewrite generate-xcfilelists in Python
https://bugs.webkit.org/show_bug.cgi?id=197622
<rdar://problem/50508222>
Reviewed by Jonathan Bedard, Alex Christensen.
For a number of reasons, rewrite generate-xcfilelists in Python:
- The previous bash script was large and unmaintainable.
- We have more internal expertise with Python than with bash.
- The bash script used temporary files in /tmp that got stranded and
were owned by root, making them awkward to clear out.
<rdar://problem/49490262>
- We needed to complete support for engineers that built with Xcode
rather than the command line.
- There are some bugs leading to mildly corrupted .xcfilelist files.
It's not apparent the source of the bugs, but one general reason
might be due to approaches born of using bash. Rewriting in Python
may clear these up.
* Scripts/generate-xcfilelists:
* Scripts/webkitpy/common/attribute_saver.py: Added.
(AttributeSaver):
(AttributeSaver.__init__):
(AttributeSaver.__enter__):
(AttributeSaver.__exit__):
* Scripts/webkitpy/common/attribute_saver_unittest.py: Added.
(AttributeSaverTest):
(AttributeSaverTest.SimpleTestClass):
(AttributeSaverTest.SimpleTestClass.__init__):
(AttributeSaverTest.test_class):
(AttributeSaverTest.test_normal_default):
(AttributeSaverTest.test_normal_value):
(AttributeSaverTest.test_normal_value_on_exception):
(AttributeSaverTest.test_normal_value_on_normal_exit):
(AttributeSaverTest.test_normal_value_with_finally_on_exception):
(AttributeSaverTest.test_normal_value_with_finally_on_normal_exit):
(AttributeSaverTest.test_normal_value_with_else_on_exception):
(AttributeSaverTest.test_normal_value_with_else_on_normal_exit):
* Scripts/webkitpy/generate_xcfilelists_lib/__init__.py: Added.
* Scripts/webkitpy/generate_xcfilelists_lib/application.py: Added.
(Application):
(Application.__init__):
(Application.run):
(Application._initialize):
(Application._initialize.collect_attributes):
(Application._create_parser):
(_validate_args):
(_cmd_generate):
(_cmd_check):
(_cmd_subgenerate):
(_cmd_help):
(_do_generate):
(_do_merge):
(_report_results):
(_report_merge_results):
(_report_remediation_steps):
(_report_remediation_steps.add_to_message):
(_any_have_errors):
(_any_have_actions):
(_log_progress):
(_log_results):
(get_generate_xcfilelists_script_path):
(_get_root_dir):
(get_opensource_dir):
(get_build_scripts_dir):
(get_extract_dependencies_from_makefile_script):
(get_xcode_built_products_dir):
(_getenv):
* Scripts/webkitpy/generate_xcfilelists_lib/generators.py: Added.
(BaseGenerator):
(BaseGenerator.__init__):
(BaseGenerator.__str__):
(BaseGenerator.generate):
(BaseGenerator._sublaunch_under_xcode):
(BaseGenerator.subgenerate):
(BaseGenerator.merge):
(BaseGenerator.pickle_to_file):
(BaseGenerator.has_action):
(BaseGenerator.has_error):
(BaseGenerator.is_valid):
(BaseGenerator.report_error):
(BaseGenerator._generate_derived):
(BaseGenerator._merge_derived):
(BaseGenerator._generate_unified):
(BaseGenerator._merge_unified):
(BaseGenerator._replace):
(BaseGenerator._unexpand):
(BaseGenerator._find_added_lines):
(BaseGenerator._merge_added_lines):
(BaseGenerator._get_file_lines):
(BaseGenerator._getenv):
(BaseGenerator._get_project_file_path):
(BaseGenerator._get_project_dir):
(BaseGenerator._get_project_file_name):
(BaseGenerator._get_project_name):
(BaseGenerator._get_sym_root):
(BaseGenerator._get_obj_root):
(BaseGenerator._get_shared_precomps_dir):
(BaseGenerator._get_build_dirs):
(BaseGenerator._get_build_dirs.define_xcode_build_dirs):
(BaseGenerator._get_build_dirs.define_xcode_build_dirs.read_xcode_user_default):
(BaseGenerator._get_build_dirs.define_command_line_build_dirs):
(BaseGenerator._get_derived_sources_dir):
(BaseGenerator._get_xcfilelist_dir):
(BaseGenerator._get_input_derived_xcfilelist_project_path):
(BaseGenerator._get_output_derived_xcfilelist_project_path):
(BaseGenerator._get_input_unified_xcfilelist_project_path):
(BaseGenerator._get_output_unified_xcfilelist_project_path):
(BaseGenerator._get_generate_derived_sources_script):
(BaseGenerator._get_generate_unified_sources_script):
(JavaScriptCoreGenerator):
(JavaScriptCoreGenerator._get_project_file_path):
(JavaScriptCoreGenerator._get_generate_derived_sources_script):
(JavaScriptCoreGenerator._get_generate_unified_sources_script):
(WebCoreGenerator):
(WebCoreGenerator._get_project_file_path):
(WebCoreGenerator._get_generate_derived_sources_script):
(WebCoreGenerator._get_generate_unified_sources_script):
(WebKitGenerator):
(WebKitGenerator._get_project_file_path):
(WebKitGenerator._get_derived_sources_dir):
(WebKitGenerator._get_generate_derived_sources_script):
(WebKitGenerator._get_generate_unified_sources_script):
(DumpRenderTreeGenerator):
(DumpRenderTreeGenerator._get_project_file_path):
(DumpRenderTreeGenerator._get_generate_derived_sources_script):
(WebKitTestRunnerGenerator):
(WebKitTestRunnerGenerator._get_project_file_path):
(WebKitTestRunnerGenerator._get_generate_derived_sources_script):
* Scripts/webkitpy/generate_xcfilelists_lib/util.py: Added.
(debug_log):
(LogEntryHelper):
(LogEntryHelper.__init__):
(LogEntryHelper.log_entry):
(LogEntryHelper.log_result):
(LogEntryHelper.log_exception):
(LogEntryHelper._print):
(LogEntryExit):
(LogEntryExit._show_debug_logging):
(LogEntryExitClass):
(LogEntryExitClass._show_debug_logging):
(LogEntryExitGlobal):
(LogEntryExitGlobal._show_debug_logging):
(subprocess_run):
(is_running_under_xcode):
(CheckValidItemAction):
(CheckValidItemAction.__init__):
(CheckValidItemAction.__call__):
(CheckValidItemAction.validate_item):
(CheckCommandAction):
(CheckCommandAction.__call__):
(InvalidCommandError):
(InvalidArgumentError):
(InvalidConfigurationError):
(CalledProcessError):
(CalledProcessError.__str__):
* Scripts/webkitpy/xcode/__init__.py:
(xcode_hash_for_path):
(xcode_hash_for_path.convert_to_string):
* Scripts/webkitpy/xcode/sdk.py: Added.
(SDK):
(SDK.__init__):
(SDK.__repr__):
(SDK.as_xcode_specification):
(SDK.get_preferred_sdk_for_platform):
(SDK._parse_sdk):
* Scripts/webkitpy/xcode/sdk_unittest.py: Added.
(SDKTest):
2019-05-15 Aakash Jain <aakash_jain@apple.com>
[ews-build] Enabling uploading EWS archives to S3
https://bugs.webkit.org/show_bug.cgi?id=197914
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/Shared: Added.
* BuildSlaveSupport/Shared/transfer-archive-to-s3: Moved from Tools/BuildSlaveSupport/build.webkit.org-config/transfer-archive-to-s3.
(archiveExists): Replace tab with space.
(main): Added main method.
* BuildSlaveSupport/build.webkit.org-config/steps.py:
(TransferToS3): Updated path to the script.
* BuildSlaveSupport/build.webkit.org-config/transfer-archive-to-s3: Moved to Shared folder.
2019-05-15 Wenson Hsieh <wenson_hsieh@apple.com>
inputmode="numeric" should show a number pad with digits 0-9, instead of the numeric keyplane
https://bugs.webkit.org/show_bug.cgi?id=197916
<rdar://problem/50815427>
Reviewed by Timothy Hatcher.
Re-enable this previously flaky test, and rebaseline the result to to expect UIKeyboardTypeNumberPad for
inputmode="numeric".
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(TestWebKitAPI::TEST):
2019-05-15 Youenn Fablet <youenn@apple.com>
Reuse existing WebPageProxy quota handler for NetworkProcessProxy quota requests
https://bugs.webkit.org/show_bug.cgi?id=197463
<rdar://problem/47403621>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm: Added.
(-[QuotaDelegate init]):
(-[QuotaDelegate _webView:decideDatabaseQuotaForSecurityOrigin:currentQuota:currentOriginUsage:currentDatabaseUsage:expectedUsage:decisionHandler:]):
(-[QuotaDelegate quotaDelegateCalled]):
(-[QuotaDelegate grantQuota]):
(-[StorageSchemes webView:startURLSchemeTask:]):
(-[StorageSchemes webView:stopURLSchemeTask:]):
(-[QuotaMessageHandler userContentController:didReceiveScriptMessage:]):
(doTest):
2019-05-15 Youenn Fablet <youenn@apple.com>
Constant crashes under WebPage::isThrottleable() after r245299
https://bugs.webkit.org/show_bug.cgi?id=197902
<rdar://problem/50793796>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-05-15 Philippe Normand <pnormand@igalia.com>
[GTK][jhbuild] misc cleanups and bumps
https://bugs.webkit.org/show_bug.cgi?id=197913
Reviewed by Xabier Rodriguez-Calvar.
* gstreamer/jhbuild.modules: Bump to libva 2.4.1 and switch to Meson.
* gtk/jhbuild.modules: Bump to Brotli 1.0.5 and Wayland 1.16.
2019-05-15 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.NumberOfCachedProcesses
https://bugs.webkit.org/show_bug.cgi?id=195102
<rdar://problem/48456786>
Reviewed by Alex Christensen.
Try to wait longer for the number of processes to reach the expected number
and before failing.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-05-15 Alex Christensen <achristensen@webkit.org>
Allow NSFileCoordinator to be called from WebContent process
https://bugs.webkit.org/show_bug.cgi?id=197895
<rdar://problem/50107679>
Reviewed by Brent Fulgham.
Add a unit test that verifies calling the block succeeds.
* TestWebKitAPI/Tests/WebKitCocoa/AdditionalReadAccessAllowedURLsPlugin.mm:
(-[AdditionalReadAccessAllowedURLsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2019-05-14 Andy Estes <aestes@apple.com>
[Apple Pay] Payment APIs should be completely disabled in web views into which clients have injected user scripts
https://bugs.webkit.org/show_bug.cgi?id=197751
<rdar://problem/50631563>
Reviewed by Alex Christensen.
Added new API tests.
* TestWebKitAPI/Tests/WebKitCocoa/ApplePay.mm:
(-[TestApplePayScriptMessageHandler initWithAPIsAvailableExpectation:canMakePaymentsExpectation:]):
(-[TestApplePayScriptMessageHandler userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):
(-[TestApplePayScriptMessageHandler initWithExpectation:]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability.html:
2019-05-14 Youenn Fablet <youenn@apple.com>
A service worker process should app nap when all its clients app nap
https://bugs.webkit.org/show_bug.cgi?id=185626
<rdar://problem/46785908>
Reviewed by Alex Christensen.
Allow to enable app nap through test header.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2019-05-14 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r245281.
https://bugs.webkit.org/show_bug.cgi?id=197887
Broke API Test TestWebKitAPI.Challenge.ClientCertificate
(Requested by aakashjain on #webkit).
Reverted changeset:
"Add a unit test for client certificate authentication"
https://bugs.webkit.org/show_bug.cgi?id=197800
https://trac.webkit.org/changeset/245281
2019-05-14 Youenn Fablet <youenn@apple.com>
Add support for webkit-test-runner options to WPT importer
https://bugs.webkit.org/show_bug.cgi?id=197826
Reviewed by Alex Christensen.
In case of overwriting an existing test, check if the existing test
contains a <!-- webkit-test-runner --> comment and insert it back if
needed in the new test.
For exporter, forbid creating a WPT PR if there are changes containing
the webkit-test-runner string.
* Scripts/webkitpy/w3c/test_converter.py:
(convert_for_webkit):
(_W3CTestConverter.__init__):
(_W3CTestConverter.add_webkit_test_runner_options_if_needed):
(_W3CTestConverter.handle_starttag):
(_W3CTestConverter.handle_comment):
(_W3CTestConverter.handle_decl):
(_W3CTestConverter.handle_pi):
* Scripts/webkitpy/w3c/test_exporter.py:
(WebPlatformTestExporter.write_git_patch_file):
(WebPlatformTestExporter.make_pull_request):
* Scripts/webkitpy/w3c/test_importer.py:
(TestImporter.webkit_test_runner_options):
(TestImporter):
(TestImporter.add_webkit_test_runner_options_to_content):
(TestImporter.copy_html_file):
(TestImporter.write_html_template):
(TestImporter.write_html_files_for_templated_js_tests):
(TestImporter.import_tests):
* Scripts/webkitpy/w3c/test_importer_unittest.py:
(test_manual_slow_test):
(test_webkit_test_runner_options):
2019-05-14 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status bubble should turn orange when any build step fails
https://bugs.webkit.org/show_bug.cgi?id=197812
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble): Turn status-bubble orange if there is any failed step in the on-going build.
(StatusBubble._does_build_contains_any_failed_step): Method to check if build contains any failed step.
2019-05-14 Alex Christensen <achristensen@webkit.org>
Add a unit test for client certificate authentication
https://bugs.webkit.org/show_bug.cgi?id=197800
Reviewed by Youenn Fablet.
Make better abstractions for reading and writing from/to TCPServer.
Add a unit test that causes a client certificate authentication challenge to happen.
* TestWebKitAPI/TCPServer.cpp:
(TestWebKitAPI::TCPServer::TCPServer):
(TestWebKitAPI::TCPServer::read):
(TestWebKitAPI::TCPServer::write):
(TestWebKitAPI::TCPServer::respondWithChallengeThenOK):
(TestWebKitAPI::TCPServer::respondWithOK):
* TestWebKitAPI/TCPServer.h:
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(credentialWithIdentity):
(-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TEST):
(-[ClientCertificateDelegate webView:didFinishNavigation:]):
(-[ClientCertificateDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(-[ClientCertificateDelegate challengeCount]):
(TestWebKitAPI::TEST):
(respondWithChallengeThenOK): Deleted.
(credentialWithIdentityAndKeychainPath): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(TEST):
(readRequest): Deleted.
(writeResponse): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
(TestWebKitAPI::respondWithChallengeThenOK): Deleted.
2019-05-14 Said Abou-Hallawa <sabouhallawa@apple.com>
[CG] Adding support for HEIF-sequence ('public.heics') images
https://bugs.webkit.org/show_bug.cgi?id=197384
Reviewed by Simon Fraser.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentStateBeforeTesting):
Parse the new webkit-test-runner paramter: additionalSupportedImageTypes.
Make DRT call setAdditionalSupportedImageTypesForTesting() before starting
the test.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::stringForKey):
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::createTestSettingsDictionary):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
Parse the new webkit-test-runner paramter: additionalSupportedImageTypes.
Make WTR call setAdditionalSupportedImageTypesForTesting() before starting
the test.
2019-05-12 Yusuke Suzuki <ysuzuki@apple.com>
[JSC] Compress Watchpoint size by using enum type and Packed<> data structure
https://bugs.webkit.org/show_bug.cgi?id=197730
Reviewed by Filip Pizlo.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/Packed.cpp: Added.
(TestWebKitAPI::TEST):
2019-05-10 Chris Dumez <cdumez@apple.com>
Unreviewed, fix ProcessSwap.OpenerLinkAfterAPIControlledProcessSwappingOfOpener API test
It became flaky after r245198.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-05-10 Youenn Fablet <youenn@apple.com>
A service worker instance should be terminated when its SWServer is destroyed
https://bugs.webkit.org/show_bug.cgi?id=197801
<rdar://problem/50587270>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-05-10 Chris Dumez <cdumez@apple.com>
Do not wait until requestPermission() is called to fire deviceorientation events if permission was already granted
https://bugs.webkit.org/show_bug.cgi?id=197750
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
(TEST):
2019-05-10 Keith Miller <keith_miller@apple.com>
Remove legacy test262 import script
https://bugs.webkit.org/show_bug.cgi?id=197788
Reviewed by Yusuke Suzuki.
import-test262-tests doesn't work anymore. We should be using test262-import instead.
* Scripts/import-test262-tests: Removed.
2019-05-10 Charlie Turner <cturner@igalia.com>
[WPE] Forward libepoxy cflags
https://bugs.webkit.org/show_bug.cgi?id=197784
Reviewed by Žan Doberšek.
Patch by Zan Dobersek.
* wpe/backends/CMakeLists.txt: This is required to keep
-DMESA_EGL_NO_X11_HEADERS in the build, if we don't do this, EGL ends
up trying to include X11 headers even when they're not present in the
environment.
2019-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
Fix a bunch of compiler warnings
https://bugs.webkit.org/show_bug.cgi?id=197785
Reviewed by Don Olmstead.
Add preprocessor guards to avoid -Wunused-function warnings.
* TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
* TestWebKitAPI/Tests/WebCore/IntRect.cpp:
* TestWebKitAPI/Tests/WebCore/TransformationMatrix.cpp:
2019-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Add webkit_frame_get_id() API
https://bugs.webkit.org/show_bug.cgi?id=197270
Reviewed by Carlos Garcia Campos.
This was hard, but I added a test to verify that two different WebKitFrames of the same
WebKitWebPage return two different frame IDs.
* TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
(WebKitFrameTest::willSubmitFormCallback):
(WebKitFrameTest::testSubframe):
(registerTests):
* TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
(testWebKitFrameSubframe):
(beforeAll):
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(willSubmitFormCallback):
* TestWebKitAPI/Tests/WebKitGLib/resources/form-in-frame.html: Added.
* TestWebKitAPI/Tests/WebKitGLib/resources/webkitglib-tests.gresource.xml:
2019-05-10 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Add WebKitWebPage::did-associate-form-controls-for-frame and deprecate original did-associate-form-controls
https://bugs.webkit.org/show_bug.cgi?id=197271
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(formControlsAssociatedForFrameCallback):
(pageCreatedCallback):
(formControlsAssociatedCallback): Deleted.
2019-05-10 Adrian Perez de Castro <aperez@igalia.com>
[Flatpak] Use the safe PyYAML loader if available
https://bugs.webkit.org/show_bug.cgi?id=197771
Reviewed by Philippe Normand.
* flatpak/flatpakutils.py:
(load_manifest): Use yaml.safe_load() if available, with yaml.load()
still used as fallback when the former is not provided by the module.
2019-05-09 Fujii Hironori <Hironori.Fujii@sony.com>
WinCairo WebKitTestRunner should take platform/wk2/TestExpectations into account
https://bugs.webkit.org/show_bug.cgi?id=197734
Reviewed by Don Olmstead.
* Scripts/webkitpy/port/win.py:
(WinCairoPort._search_paths): Add 'wk2' and
additional_platform_directory to paths as well as other ports do.
2019-05-09 Daniel Bates <dabates@apple.com>
[iOS] Numpad comma key has incorrect keyIdentifier property
https://bugs.webkit.org/show_bug.cgi?id=197753
<rdar://problem/50636274>
Reviewed by Brent Fulgham.
Recognize "numpadComma" and return the appropriate HID usage code.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(hidUsageCodeForCharacter):
2019-05-09 Eric Carlson <eric.carlson@apple.com>
Refine AudioSession route sharing policy
https://bugs.webkit.org/show_bug.cgi?id=197742
<rdar://problem/50590818>
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
(TestWebKitAPI::TEST):
2019-05-09 Alex Christensen <achristensen@webkit.org>
Remove unnecessary test SPI after r244883
https://bugs.webkit.org/show_bug.cgi?id=197575
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
2019-05-09 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add migrations file to repository
https://bugs.webkit.org/show_bug.cgi?id=197729
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/ews-app/ews/migrations/0001_initial.py: Added. Auto-generated by Django based on models' information.
2019-05-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] Fix formatting issues and typos
https://bugs.webkit.org/show_bug.cgi?id=197737
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/ews-build/steps.py:
(CompileWebKit.evaluateCommand): Removed extra empty line.
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestRunWebKitPerlTests): Fixed typo.
* BuildSlaveSupport/ews-app/ews/models/step.py:
(Step.save_step): Changed log level to info so that it is logged in production.
2019-05-09 Aakash Jain <aakash_jain@apple.com>
[ews-app] Production and Development env should configure DEBUG appropriately
https://bugs.webkit.org/show_bug.cgi?id=197700
Reviewed by Jonathan Bedard.
* BuildSlaveSupport/ews-app/ews-app/settings.py:
2019-05-09 Xan López <xan@igalia.com>
[CMake] Detect SSE2 at compile time
https://bugs.webkit.org/show_bug.cgi?id=196488
Reviewed by Carlos Garcia Campos.
* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject): Do not add SSE2 flags here
for x86 builds. This is now handled in WebKitCompilerFlags.cmake.
2019-05-08 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Update dependencies to use libwpe + WPEBackend-fdo 1.3.0
https://bugs.webkit.org/show_bug.cgi?id=197697
Reviewed by Žan Doberšek.
* flatpak/org.webkit.WPEModules.yaml: Bump version and update checksums.
* wpe/jhbuild.modules: Ditto.
2019-05-08 Don Olmstead <don.olmstead@sony.com>
Update ANGLE
https://bugs.webkit.org/show_bug.cgi?id=197676
Reviewed by Alex Christensen.
* TestWebKitAPI/PlatformWin.cmake:
Remove unnecessary library linkage.
2019-05-08 Stephan Szabo <stephan.szabo@sony.com> and Fujii Hironori <Hironori.Fujii@sony.com>
[Win] build-webkit should be ready for Visual Studio 2019
https://bugs.webkit.org/show_bug.cgi?id=196622
Reviewed by Ross Kirsling.
1. Accommodated to the new msbuild.exe location of VS 2019.
2. Removed the hard coded "Visual Studio 15" generator.
build-webkit is going to choose a Visual Studio generator version
matching with the latest installed VS. If you invoke vcvars.bat
before build-webkit, it chooses the corresponding Visual Studio
generator version by cheking 'VisualStudioVersion' env var which
is set by vcvars.bat.
* Scripts/webkitdirs.pm: Renamed $vcBuildPath to $msBuildPath. Removed $msBuildInstallDir.
(msBuildPath): When looking for MSBuild, look in
"MSBuild\Current\bin" (the new expected location) and fallback
to "MSBuild\15.0\bin" if we can't find an MSBuild.exe in the
first location.
(msBuildInstallDir): Renamed to msBuildPath.
(generateBuildSystemFromCMakeProject): Use -A switch to specify x64.
Add -G "Visual Studio " switch if a env var 'VisualStudioVersion'
2019-05-08 Don Olmstead <don.olmstead@sony.com>
[PlayStation] Update port options
https://bugs.webkit.org/show_bug.cgi?id=197723
Reviewed by Ross Kirsling.
ICU headers were missing from TestWTF.
* TestWebKitAPI/PlatformPlayStation.cmake:
2019-05-08 Alex Christensen <achristensen@webkit.org>
Don't crash when DOMNode.addEventListener:listener:useCapture: is called with a nil listener
https://bugs.webkit.org/show_bug.cgi?id=197712
<rdar://problem/50429770>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm:
(TestWebKitAPI::TEST):
2019-05-08 Jonathan Bedard <jbedard@apple.com>
Change my status to be a WebKit reviewer.
* Scripts/webkitpy/common/config/contributors.json:
2019-05-08 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r244952.
Caused inspector to appear blank.
Reverted changeset:
"Web Inspector: Provide UIString descriptions to improve
localizations"
https://bugs.webkit.org/show_bug.cgi?id=195132
https://trac.webkit.org/changeset/244952
2019-05-08 Wenson Hsieh <wenson_hsieh@apple.com>
TestRunnerWKWebView's menu callbacks should be cleared upon UI script completion
https://bugs.webkit.org/show_bug.cgi?id=197685
Reviewed by Alex Christensen.
Fixes a bug in the test runner wherein didShowMenuCallback and didHideMenuCallback are not reset upon UI script
completion. See LayoutTests/ChangeLog for more details.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::platformClearAllCallbacks):
2019-05-07 Oriol Brufau <obrufau@igalia.com>
Unreviewed. Add myself as a committer.
* Scripts/webkitpy/common/config/contributors.json:
2019-05-07 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r245038.
Breaks internal builds.
Reverted changeset:
"Add SPI to set a list of hosts to which to send custom header
fields cross-origin"
https://bugs.webkit.org/show_bug.cgi?id=197397
https://trac.webkit.org/changeset/245038
2019-05-07 Joonghun Park <pjh0718@gmail.com>
Unreviewed. Add myself as a committer.
* Scripts/webkitpy/common/config/contributors.json:
2019-05-07 Eric Carlson <eric.carlson@apple.com>
Define media buffering policy
https://bugs.webkit.org/show_bug.cgi?id=196979
<rdar://problem/28383861>
Reviewed by Jer Noble.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/MediaBufferingPolicy.mm: Added.
(waitUntilBufferingPolicyIsEqualTo):
(TEST):
2019-05-07 Alex Christensen <achristensen@webkit.org>
Add SPI to set a list of hosts to which to send custom header fields cross-origin
https://bugs.webkit.org/show_bug.cgi?id=197397
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
(expectLegacyHeaders):
(expectHeaders):
(-[CustomHeaderFieldsDelegate webView:decidePolicyForNavigationAction:preferences:decisionHandler:]):
(-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
(-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]): Deleted.
2019-05-07 Keith Rollin <krollin@apple.com>
Add option to build-webkit to control whether or not XCBuild is used
https://bugs.webkit.org/show_bug.cgi?id=197668
<rdar://problem/50549728>
Reviewed by Tim Horton.
Add --[no-]xcbuild to build-webkit to force the use of XCBuild or not.
Also update build-webkit and the makefiles with the foundation for
automatically using XCBuild when the conditions allow it. This latter
facility is currently turned off until Xcode fully supports building
WebKit with XCBuild.
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
(XcodeOptions):
(canUseXCBuild):
2019-05-07 Andy Estes <aestes@apple.com>
run-bindings-tests should test global scope constructor generation
https://bugs.webkit.org/show_bug.cgi?id=197669
Reviewed by Alex Christensen.
* Scripts/webkitpy/bindings/main.py:
Updated to specify --testGlobalContextName and --testGlobalScopeConstructorsFile when
invoking preprocess-idls.pl.
2019-05-07 Youenn Fablet <youenn@apple.com>
Flaky API Test: TestWebKitAPI.ServiceWorkers.ServiceWorkerAndCacheStorageDefaultDirectories
https://bugs.webkit.org/show_bug.cgi?id=195997
<rdar://problem/50509884>
Reviewed by Chris Dumez.
Spin test until successful.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-05-07 Adrian Perez de Castro <aperez@igalia.com>
[Flatpak] webkit-build fails due to missing GTK2 in build environment
https://bugs.webkit.org/show_bug.cgi?id=197352
Reviewed by Philippe Normand.
The Flatpak runtimes do not include GTK 2.x anymore, which means that we need
to build it ourselves on top in order to be able to build the GTK 2.x plugin
process.
* flatpak/org.webkit.GTK.yaml: Add gtk2 package.
2019-05-07 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] Avoid crashing the UI process when writing empty data to the pasteboard
https://bugs.webkit.org/show_bug.cgi?id=197644
<rdar://problem/50526364>
Reviewed by Tim Horton.
Add a new API test to exercise a possible scenario where we may crash while writing data to the pasteboard.
* TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegate.mm:
* TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegatePlugIn.mm:
(-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:pasteboardDataForRange:]):
2019-05-07 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] MiniBrowser: load about:blank for new web views in automation mode
https://bugs.webkit.org/show_bug.cgi?id=197651
Reviewed by Žan Doberšek.
This is required since the process creation was delayed until something is loaded in the view.
* MiniBrowser/gtk/BrowserWindow.c:
(browser_window_get_or_create_web_view_for_automation):
* MiniBrowser/wpe/main.cpp:
(main):
2019-05-06 Tim Horton <timothy_horton@apple.com>
_overrideViewportWithArguments does not work when called before loading
https://bugs.webkit.org/show_bug.cgi?id=197638
<rdar://problem/50505111>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
(TEST):
2019-05-04 Per Arne Vollan <pvollan@apple.com>
-[WKWebsiteDataStore removeDataOfTypes:forDataRecords:completionHandler:] doesn't delete _WKWebsiteDataTypeCredentials
https://bugs.webkit.org/show_bug.cgi?id=197510
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
2019-05-06 Keith Rollin <krollin@apple.com>
Temporarily disable generate-xcfilelists
https://bugs.webkit.org/show_bug.cgi?id=197619
<rdar://problem/50507392>
Reviewed by Alex Christensen.
We need to perform a significant update to the generate-xcfilelist
scripts. This work involves coordinated work with another facility. If
the work does not occur in tandem, the build will be broken. To avoid
this, disable the invoking of the scripts during the transition. The
checking will be restored once the new scripts are in place.
* DumpRenderTree/Scripts/check-xcfilelists.sh:
* WebKitTestRunner/Scripts/check-xcfilelists.sh:
2019-05-04 Alex Christensen <achristensen@webkit.org>
Revert r244953 and r244954 because they broke internal builds.
https://bugs.webkit.org/show_bug.cgi?id=197534
* DumpRenderTree/ios/DumpRenderTreeBrowserView.h:
* DumpRenderTree/ios/PixelDumpSupportIOS.mm:
* DumpRenderTree/mac/DumpRenderTree.mm:
* DumpRenderTree/mac/DumpRenderTreeWindow.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
* TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
* TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm:
* TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
* TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
* TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
* TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
* TestWebKitAPI/ios/UIKitSPI.h: Added.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
* WebKitTestRunner/ios/GeneratedTouchesDebugWindow.mm:
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
* WebKitTestRunner/ios/TestControllerIOS.mm:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
* WebKitTestRunner/ios/mainIOS.mm:
2019-05-04 Alex Christensen <achristensen@webkit.org>
Merge the three UIKitSPI.h files into a single one in PAL
https://bugs.webkit.org/show_bug.cgi?id=197534
Reviewed by Darin Adler.
* DumpRenderTree/ios/DumpRenderTreeBrowserView.h:
* DumpRenderTree/ios/PixelDumpSupportIOS.mm:
* DumpRenderTree/mac/DumpRenderTree.mm:
* DumpRenderTree/mac/DumpRenderTreeWindow.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
* TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
* TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm:
* TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
* TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
* TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
* TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
* TestWebKitAPI/ios/UIKitSPI.h: Removed.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
* WebKitTestRunner/ios/GeneratedTouchesDebugWindow.mm:
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
* WebKitTestRunner/ios/TestControllerIOS.mm:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
* WebKitTestRunner/ios/mainIOS.mm:
2019-05-04 Nikita Vasilyev <nvasilyev@apple.com>
Web Inspector: Provide UIString descriptions to improve localizations
https://bugs.webkit.org/show_bug.cgi?id=195132
<rdar://problem/48457817>
Reviewed by Devin Rousso.
Allow WI.UIString to take:
- WI.UIString(string, key, comment)
- WI.UIString(string, comment)
- WI.UIString(string)
* Scripts/extract-localizable-js-strings:
2019-05-03 Wenson Hsieh <wenson_hsieh@apple.com>
REGRESSION (r244897): Caret may appear wider than normal after zooming to focus an editable element
https://bugs.webkit.org/show_bug.cgi?id=197579
Reviewed by Tim Horton.
Fixes a couple of flaky layout tests (ModifyInputAssistantItemBarButtonGroups and
OverrideInputAssistantItemBarButtonGroups) by programmatically blurring focused elements and waiting for the
input session to change, rather than relying on -resignFirstResponder and -waitForNextPresentationUpdate to
ensure that the the focused element has been blurred.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2019-05-02 Alexey Proskuryakov <ap@apple.com>
Add a tool to block spammer accounts
https://bugs.webkit.org/show_bug.cgi?id=197537
Reviewed by Darin Adler.
Usage: block-spammers email1 email2 ...
The tool finds and hides all bugs and comments from this account. Before any work
is done, these bugs and comments are displayed for confirmation.
* Scripts/block-spammers: Added.
(get_bugzilla_token):
(invalidate_bugzilla_token):
(get_user_info):
(get_user_info_self):
(can_use_this_tool):
(disable_user):
(get_bugs_created_by_user):
(get_bugs_commented_on_by_user):
(get_comments):
(hide_bug):
(hide_comments):
(ask_yes_no):
(sanitized_string):
(main):
2019-05-03 Jonathan Bedard <jbedard@apple.com>
run-apit-tests: Add --iterations and --repeat-each
https://bugs.webkit.org/show_bug.cgi?id=197563
Reviewed by Aakash Jain.
* Scripts/webkitpy/api_tests/manager.py:
(Manager.run): Add --iterations and --repeat-each/
* Scripts/webkitpy/api_tests/run_api_tests.py:
(parse_args): Duplicate the test list based on --iterations and --repeat-each.
2019-05-03 Aakash Jain <aakash_jain@apple.com>
New EWS: Clicking on white bubble navigates to page with only bubbles
https://bugs.webkit.org/show_bug.cgi?id=197520
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/templates/statusbubble.html: Disable clicking if bubble doesn't have any url.
2019-05-03 Daniel Bates <dabates@apple.com>
[lldb-webkit] Support adding pretty-printing for qualified types
https://bugs.webkit.org/show_bug.cgi?id=197518
Reviewed by Darin Adler.
Remove all "::"s from the name of the specified type when computing the name for the Python classes
that will provide summary and synthetic details as LLDB is not happy about registering such classes
when they contain :: in their name.
* lldb/lldb_webkit.py:
(addSummaryAndSyntheticFormattersForRawBitmaskType):
2019-05-03 Aakash Jain <aakash_jain@apple.com>
New EWS: patches on recently added queues listed as #1 for older bugs
https://bugs.webkit.org/show_bug.cgi?id=197496
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._queue_position):
2019-05-03 Aakash Jain <aakash_jain@apple.com>
webkit-patch --no-review upload does not submit patch to New EWS
https://bugs.webkit.org/show_bug.cgi?id=197519
<rdar://problem/50424887>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/tool/steps/submittoews.py:
(SubmitToEWS.run): Submit to both old and new EWS.
* Scripts/webkitpy/common/config/urls.py: Added url for new EWS server.
* Scripts/webkitpy/common/net/ewsserver.py: Added.
(EWSServer._server_url): Method to return server url.
(EWSServer._post_patch_to_ews): Method to post patch to ews.
(EWSServer.submit_to_ews): Method to submit the patch to ews using NetworkTransaction.
* Scripts/webkitpy/common/net/ewsserver_mock.py: Added Mock EWS Server.
* Scripts/webkitpy/common/net/ewsserver_unittest.py: Added unit-test for EWS Server.
* Scripts/webkitpy/common/net/statusserver_mock.py:
(MockStatusServer.submit_to_ews): Updated the log text.
* Scripts/webkitpy/tool/commands/queues_unittest.py: Updated unit-tests.
* Scripts/webkitpy/tool/commands/upload_unittest.py: Ditto.
* Scripts/webkitpy/tool/main.py:
(WebKitPatch.__init__): Initialize ews_server.
* Scripts/webkitpy/tool/mocktool.py:
(MockTool.__init__): Ditto.
2019-05-03 Chris Dumez <cdumez@apple.com>
ASSERTION FAILED: [weakThis->m_view window] == weakThis->m_targetWindowForMovePreparation
https://bugs.webkit.org/show_bug.cgi?id=197574
<rdar://problem/50453181>
Reviewed by Tim Horton.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/PrepareForMoveToWindow.mm:
(TEST):
2019-05-03 Yusuke Suzuki <ysuzuki@apple.com>
[JSC] Generator CodeBlock generation should be idempotent
https://bugs.webkit.org/show_bug.cgi?id=197552
Reviewed by Keith Miller.
* Scripts/run-javascriptcore-tests:
(runJSCStressTests):
* Scripts/run-jsc-stress-tests:
2019-05-03 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r244881.
https://bugs.webkit.org/show_bug.cgi?id=197559
Breaks compilation of jsconly on linux, breaking compilation
for jsc-i386-ews, jsc-mips-ews and jsc-armv7-ews (Requested by
guijemont on #webkit).
Reverted changeset:
"[CMake] Refactor WEBKIT_MAKE_FORWARDING_HEADERS into
WEBKIT_COPY_FILES"
https://bugs.webkit.org/show_bug.cgi?id=197174
https://trac.webkit.org/changeset/244881
2019-05-03 Zan Dobersek <zdobersek@igalia.com>
Unreviewed WPE build fix after r244898.
* WebKitTestRunner/wpe/TestControllerWPE.cpp:
(WTR::TestController::abortModal): Add the missing (no-op) definition.
2019-05-02 Alex Christensen <achristensen@webkit.org>
Mark U+01C0 as a homograph of U+006C
https://bugs.webkit.org/show_bug.cgi?id=197526
<rdar://problem/50301904>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
2019-05-02 Chris Dumez <cdumez@apple.com>
Add test coverage for <rdar://problem/49731231>
https://bugs.webkit.org/show_bug.cgi?id=196730
<rdar://problem/49731231>
Reviewed by Ryosuke Niwa.
Add support for testRunner.abortModal() in macOS's WebKitTestRunner in order
to match DumpRenderTree.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::abortModal):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::runModal):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::abortModal):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::abortModal):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::abortModal):
* WebKitTestRunner/win/TestControllerWin.cpp:
(WTR::TestController::abortModal):
2019-05-02 Christopher Reid <chris.reid@sony.com>
[CMake] Add support for LTO builds
https://bugs.webkit.org/show_bug.cgi?id=188986
Reviewed by Don Olmstead.
Add support to configure --lto-mode with cmake builds.
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):
2019-05-02 John Wilander <wilander@apple.com>
Make both filterForRegistrableDomains() in WebKit::NetworkProcess use WebCore::RegistrableDomain::uncheckedCreateFromHost()
https://bugs.webkit.org/show_bug.cgi?id=197521
<rdar://problem/49651503>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
(TestWebKitAPI::TEST):
Added a test for host strings with leading dots since they are
often used for the domain attribute in cookies.
2019-05-02 Per Arne Vollan <pvollan@apple.com>
-[WKWebsiteDataStore removeDataOfTypes:forDataRecords:completionHandler:] doesn't delete _WKWebsiteDataTypeCredentials
https://bugs.webkit.org/show_bug.cgi?id=197510
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
2019-05-02 Don Olmstead <don.olmstead@sony.com>
[CMake] Refactor WEBKIT_MAKE_FORWARDING_HEADERS into WEBKIT_COPY_FILES
https://bugs.webkit.org/show_bug.cgi?id=197174
Reviewed by Alex Christensen.
Make TestJSC dependent on JavaScriptCorePrivateFrameworkHeaders.
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformWPE.cmake:
2019-05-02 Alex Christensen <achristensen@webkit.org>
Build fix for internal branch.
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
RetainPtr.h was not explicitly included.
2019-05-02 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore errors when shutting down an already shutdown simulator
<https://bugs.webkit.org/show_bug.cgi?id=197514>
<rdar://problem/50390247>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice._shut_down):
2019-05-02 Frederic Wang <fwang@igalia.com>
[GTK][WPE] Disable "thin", "thick", "medium" values of mfrac@linethickness at runtime
https://bugs.webkit.org/show_bug.cgi?id=196142
This patch introduces some experimental runtime flag to let users
disable MathML features that are removed from MathML Core [1]. For now,
these features are only disabled on GTK and WPE ports.
[1] https://mathml-refresh.github.io/mathml-core/
Reviewed by Rob Buis.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
2019-05-01 Don Olmstead <don.olmstead@sony.com>
TestWebKitAPI config.h should be aware of what suite is being built
https://bugs.webkit.org/show_bug.cgi?id=196583
Reviewed by Konstantin Tokarev.
Migrate to WEBKIT_EXECUTABLE to define the Test* executables. As an added
benefit the macro defines BUILDING_* for the executable which allows the includes
of the config.h to be tailored to the test suite being built. Because of that the
dependencies of the Test* executable are specific to the test suite which may
speed up the build.
Some source files were including "PlatformUtilities.h" which includes WebKit headers
when "Utilities.h" is what was needed.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformJSCOnly.cmake:
* TestWebKitAPI/PlatformMac.cmake:
* TestWebKitAPI/PlatformPlayStation.cmake:
* TestWebKitAPI/PlatformUtilities.h:
* TestWebKitAPI/PlatformWPE.cmake:
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/Tests/WTF/RefPtr.cpp:
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
* TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
* TestWebKitAPI/Tests/WebCore/LineBreaking.mm:
* TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
* TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
* TestWebKitAPI/config.h:
2019-05-01 Jiewen Tan <jiewen_tan@apple.com>
Move Document::domainIsRegisterable to SecurityOrigin::isMatchingRegistrableDomainSuffix
https://bugs.webkit.org/show_bug.cgi?id=181950
<rdar://problem/43357371>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):
2019-05-01 Aakash Jain <aakash_jain@apple.com>
Remove webkitpy and bindings EWS queues from dashboard
https://bugs.webkit.org/show_bug.cgi?id=197475
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2019-05-01 Aakash Jain <aakash_jain@apple.com>
Remove webkitpy and bindings test queues from old EWS
https://bugs.webkit.org/show_bug.cgi?id=197468
Reviewed by Alexey Proskuryakov.
* QueueStatusServer/config/queues.py:
2019-04-30 Tim Horton <timothy_horton@apple.com>
Fix the WebKitTestRunner build
https://bugs.webkit.org/show_bug.cgi?id=197449
<rdar://problem/50334169>
Reviewed by Alexey Proskuryakov.
* WebKitTestRunner/mac/EventSenderProxy.mm:
(-[EventSenderSyntheticEvent initPressureEventAtLocation:globalLocation:stage:pressure:stageTransition:phase:time:eventNumber:window:]):
(WTR::EventSenderProxy::mouseForceChanged):
Use some SPI instead of IPI.
2019-04-30 Chris Dumez <cdumez@apple.com>
Regression(PSON) URL scheme handlers can no longer respond asynchronously
https://bugs.webkit.org/show_bug.cgi?id=197426
<rdar://problem/50256169>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONScheme setShouldRespondAsynchronously:]):
(-[PSONScheme webView:startURLSchemeTask:]):
(-[PSONScheme webView:stopURLSchemeTask:]):
2019-04-30 Chris Dumez <cdumez@apple.com>
Unreviewed, rolling out r244802.
Caused an API test failure
Reverted changeset:
"Regression(PSON) URL scheme handlers can no longer respond
asynchronously"
https://bugs.webkit.org/show_bug.cgi?id=197426
https://trac.webkit.org/changeset/244802
2019-04-30 Chris Dumez <cdumez@apple.com>
Regression(PSON) URL scheme handlers can no longer respond asynchronously
https://bugs.webkit.org/show_bug.cgi?id=197426
<rdar://problem/50256169>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONScheme setShouldRespondAsynchronously:]):
(-[PSONScheme webView:startURLSchemeTask:]):
(-[PSONScheme webView:stopURLSchemeTask:]):
2019-04-30 Chris Dumez <cdumez@apple.com>
Only use a related page's process if that page has not been closed yet
https://bugs.webkit.org/show_bug.cgi?id=197393
<rdar://problem/50302423>
Reviewed by Tim Horton.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-30 Aakash Jain <aakash_jain@apple.com>
[ews-build] Enable Bindings tests queue on new EWS
https://bugs.webkit.org/show_bug.cgi?id=197424
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble):
* BuildSlaveSupport/ews-build/config.json:
2019-04-30 Aakash Jain <aakash_jain@apple.com>
[ews-build] Configure ews151 for running various tests
https://bugs.webkit.org/show_bug.cgi?id=197419
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/config.json:
2019-04-30 Aakash Jain <aakash_jain@apple.com>
[ews-build] Parse and display bindings test failures
https://bugs.webkit.org/show_bug.cgi?id=197423
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(RunBindingsTests.__init__): Set timeout of 5 minutes.
(RunBindingsTests.start): Initialize log_observer for json output.
(RunBindingsTests.getResultSummary): Update step and build summary based on bindings test results.
(RunBindingsTests._addToLog): Method to add message to log.
* BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-test accordingly.
2019-04-30 Pablo Saavedra <psaavedra@igalia.com>
Unreviewed. Add myself as a committer.
* Scripts/webkitpy/common/config/contributors.json:
2019-04-30 Aakash Jain <aakash_jain@apple.com>
[ews-build] Enable webkitpy queue on new EWS
https://bugs.webkit.org/show_bug.cgi?id=197396
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble):
* BuildSlaveSupport/ews-build/config.json:
2019-04-30 Aakash Jain <aakash_jain@apple.com>
[ews-build] Parse and display webkitpy failures
https://bugs.webkit.org/show_bug.cgi?id=197395
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(RunWebKitPyTests.start): Initialize log_observer for json output.
(RunWebKitPyTests.getResultSummary): Update step and build summary based on webkitpy results.
(RunWebKitPyTests._addToLog): Method to add message to log.
* BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-test accordingly.
2019-04-29 Alex Christensen <achristensen@webkit.org>
<rdar://problem/50299396> Fix internal High Sierra build
https://bugs.webkit.org/show_bug.cgi?id=197388
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* MobileMiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
2019-04-29 Youenn Fablet <youenn@apple.com>
Remove spurious GVA printf logging
https://bugs.webkit.org/show_bug.cgi?id=197368
<rdar://problem/35975256>
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/port/mac.py:
(MacPort.logging_patterns_to_strip):
2019-04-29 Youenn Fablet <youenn@apple.com>
getDisplayMedia should be called on user gesture
https://bugs.webkit.org/show_bug.cgi?id=197356
<rdar://problem/50296074>
Reviewed by Eric Carlson.
Update test configuration to inject internals
so that we can use it to simulate a user click to call getDisplayMedia.
* TestWebKitAPI/Tests/WebKit/getDisplayMedia.html:
* TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
(TestWebKitAPI::GetDisplayMediaTest::SetUp):
2019-04-26 Stephanie Lewis <slewis@apple.com>
run-benchmarks should have an intial prep and restore env call for tasks that are too expensive to do for every iteration
https://bugs.webkit.org/show_bug.cgi?id=197339
Reviewed by Dewei Zhu.
Add two new functions prepare_inital_env and restore_env_after_all_testing around the entire
test run for setup steps that are too expensive to do every iteration.
* Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
(BenchmarkRunner._run_benchmark):
* Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
(BrowserDriver):
(BrowserDriver.prepare_initial_env):
(BrowserDriver.restore_env_after_all_testing):
* Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py:
(LinuxBrowserDriver.prepare_initial_env):
(LinuxBrowserDriver.restore_env_after_all_testing):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver.prepare_initial_env):
(OSXBrowserDriver.restore_env_after_all_testing):
2019-04-28 Andy Estes <aestes@apple.com>
Fix the watchOS engineering build.
* TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm:
(TestWebKitAPI::TEST): AVVideoPerformanceMetrics does not exist on watchOS.
2019-04-27 Chris Dumez <cdumez@apple.com>
[WKTR] Move test timeout handling to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=197333
Reviewed by Darin Adler.
Move test timeout handling in WebKitTestRunner to the UIProcess to play nicely with PSON. Previously,
we'd start the timeout timer in the InjectedBundle, which would fail to account of the time spent in
every WebContent process in the case of swapping.
Also, because of process caching, the timeout timer would sometime fire in a cached process and it
would lead to crashes when firing the timer.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
(WTR::InjectedBundle::done):
* WebKitTestRunner/InjectedBundle/InjectedBundle.h:
(WTR::InjectedBundle::shouldDumpPixels const):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
(WTR::TestRunner::waitUntilDone):
(WTR::TestRunner::setWaitUntilDone):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
* WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
* WebKitTestRunner/InjectedBundle/win/TestRunnerWin.cpp:
* WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::TestInvocation):
(WTR::TestInvocation::createTestSettingsDictionary):
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestInvocation::initializeWaitToDumpWatchdogTimerIfNeeded):
(WTR::TestInvocation::invalidateWaitToDumpWatchdogTimer):
(WTR::TestInvocation::waitToDumpWatchdogTimerFired):
(WTR::TestInvocation::setWaitUntilDone):
(WTR::TestInvocation::done):
* WebKitTestRunner/TestInvocation.h:
2019-04-25 Yusuke Suzuki <ysuzuki@apple.com>
[JSC] linkPolymorphicCall now does GC
https://bugs.webkit.org/show_bug.cgi?id=197306
Reviewed by Saam Barati.
The test is sensitive to allocations and even adding $vm makes it non-reproducible.
To add this test, we add `runWithoutBaseOption`.
* Scripts/run-jsc-stress-tests:
2019-04-26 Alexey Proskuryakov <ap@apple.com>
Update inactive reviewers' status to 'contributor'.
Accidentally skipped one at first.
* Scripts/webkitpy/common/config/contributors.json:
2019-04-26 Alexey Proskuryakov <ap@apple.com>
Update inactive reviewers' status to 'contributor'.
* Scripts/webkitpy/common/config/contributors.json: The change.
* Scripts/webkitpy/common/checkout/changelog_unittest.py:
* Scripts/webkitpy/common/checkout/checkout_mock.py:
* Scripts/webkitpy/common/checkout/checkout_unittest.py:
* Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:
* Scripts/webkitpy/tool/bot/ircbot_unittest.py:
* Scripts/webkitpy/tool/commands/queries_unittest.py:
* Scripts/webkitpy/tool/commands/upload_unittest.py:
Sadly, regression tests operate on a crazy mix of mock and live data for
contributors.json. It would be a substantial project to mock all code paths,
so changing the tests instead.
2019-04-26 Eric Carlson <eric.carlson@apple.com>
Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
https://bugs.webkit.org/show_bug.cgi?id=197171
<rdar://problem/47454979>
Reviewed by Youenn Fablet.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
(TestWebKitAPI::TEST):
2019-04-26 David Kilzer <ddkilzer@apple.com>
WebKitTestRunner leaks an NSDictionary and multiple JSStringRef objects
<https://webkit.org/b/197314>
<rdar://problem/50245252>
Reviewed by Simon Fraser.
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::lastUndoLabel const):
(WTR::UIScriptController::firstRedoLabel const):
- Use adopt(JSStringCreateWithCFString(...)) to fix leaks.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(-[HIDEventGenerator sendEventStream:completionBlock:]):
- Call -autorelease to fix leak of NSDictionary.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::accessibilitySpeakSelectionContent const):
(WTR::UIScriptController::selectFormPopoverTitle const):
(WTR::UIScriptController::textContentType const):
(WTR::UIScriptController::formInputLabel const):
(WTR::UIScriptController::scrollingTreeAsText const):
- Use adopt(JSStringCreateWithCFString(...)) to fix leaks.
2019-04-26 Jonathan Bedard <jbedard@apple.com>
webkitpy: Running a single test will always use the default device
https://bugs.webkit.org/show_bug.cgi?id=195472
<rdar://problem/48724825>
Reviewed by Lucas Forschler.
It makes more sense to have the Manager class handle the case where a user specifically requests a test which is
skipped on the current configuration. This changes the behavior when running part of a test shard, now tests explicitly
requested will be run regardless of what shard they are in.
* Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
(LayoutTestFinder.skip_tests): Caller should manage running skipped tests which were explicitly requested.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): If a test is marked as skipped for the configuration, but was specifically requested, run it anyways
on the default device type.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest.test_run_chunk): Explicitly requesting a test will override sharing behavior.
(RunTest.test_run_part): Ditto.
2019-04-26 Alex Christensen <achristensen@webkit.org>
Add ENABLE(CONTENT_EXTENSIONS) and namespace ContentExtensions to ResourceLoadInfo.h
https://bugs.webkit.org/show_bug.cgi?id=197165
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
2019-04-26 Ryan Haddad <ryanhaddad@apple.com>
Replace iOS build queue hardware
https://bugs.webkit.org/show_bug.cgi?id=197312
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/config.json:
Use newer hardware that supports macOS Mojave.
2019-04-26 Yoshiaki Jitsukawa <yoshiaki.jitsukawa@sony.com>
check-webkit-style complains the first block in while loop.
https://bugs.webkit.org/show_bug.cgi?id=197307
The style checker shouldn't complain about an open brace on
its own line if the last non-whitespace character on the previous
non-blank line is another open brace, because it's likely to
indicate the begining of a nested code block.
Reviewed by Alex Christensen.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_braces):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_braces):
2019-04-26 Sihui Liu <sihui_liu@apple.com>
Stop IDB transactions to release locked database files when network process is ready to suspend
https://bugs.webkit.org/show_bug.cgi?id=196372
<rdar://problem/48930116>
Reviewed by Brady Eidson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm: Added.
(-[IndexedDBSuspendImminentlyMessageHandler userContentController:didReceiveScriptMessage:]):
(runTestAndCheckResult):
(keepNetworkProcessActive):
(TEST):
2019-04-25 Simon Fraser <simon.fraser@apple.com>
REGRESSION (r234330): 3 legacy-animation-engine/compositing tests are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=188357
<rdar://problem/42986633>
Reviewed by Dean Jackson.
DumpRenderTree had no code that set page.setCompositingPolicyOverride() to Normal, so some
tests would fall into low memory mode and have different behavior.
Fix by moving the code that calls setCompositingPolicyOverride(Normal) from the WK2 layer
to Internals, so it's shared by DRT and WTR.
We no longer need the WK2 C SPI glue.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::prepare):
2019-04-25 Jonathan Bedard <jbedard@apple.com>
webkitpy: Including skipped tests in the final count
https://bugs.webkit.org/show_bug.cgi?id=197298
<rdar://problem/49705424>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/layout_tests/views/buildbot_results.py:
(BuildBotPrinter.print_run_results): The total number of tests run should exclude delibrately skipped tests.
2019-04-25 Timothy Hatcher <timothy@apple.com>
Disable date and time inputs on iOSMac.
https://bugs.webkit.org/show_bug.cgi?id=197287
rdar://problem/46794376
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-04-25 Alex Christensen <achristensen@webkit.org>
Fix test-webkitpy after r244653
https://bugs.webkit.org/show_bug.cgi?id=197131
* lldb/lldbWebKitTester/Configurations/Base.xcconfig:
Also use C++17.
2019-04-25 Per Arne Vollan <pvollan@apple.com>
-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:] never returns _WKWebsiteDataTypeCredentials
https://bugs.webkit.org/show_bug.cgi?id=196991
<rdar://problem/45507423>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(-[NavigationTestDelegate init]):
(-[NavigationTestDelegate waitForDidFinishNavigation]):
(-[NavigationTestDelegate webView:didFinishNavigation:]):
(-[NavigationTestDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TestWebKitAPI::TEST):
(TEST): Deleted.
2019-04-25 Alex Christensen <achristensen@webkit.org>
Revert some code accidentally committed with r244653
https://bugs.webkit.org/show_bug.cgi?id=197131
* TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm:
(TestWebKitAPI::TEST):
2019-04-25 Alex Christensen <achristensen@webkit.org>
Start using C++17
https://bugs.webkit.org/show_bug.cgi?id=197131
Reviewed by Darin Adler.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* MobileMiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
2019-04-25 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r244627.
https://bugs.webkit.org/show_bug.cgi?id=197282
Causing internal build failures (Requested by ShawnRoberts on
#webkit).
Reverted changeset:
"Create AVFoundationSoftLink.{h,mm} to reduce duplicate code"
https://bugs.webkit.org/show_bug.cgi?id=197171
https://trac.webkit.org/changeset/244627
2019-04-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Hardcoded text color in input fields
https://bugs.webkit.org/show_bug.cgi?id=126907
Reviewed by Michael Catanzaro.
Add dark-mode command line option to MiniBrowser.
* MiniBrowser/gtk/main.c:
(main):
2019-04-24 Zalan Bujtas <zalan@apple.com>
Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
https://bugs.webkit.org/show_bug.cgi?id=196948
<rdar://problem/49927131>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
(TEST):
The expected order of incoming events is
1. didInvalidateIntrinsicContentSize
2. didFirstLayout
At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
(and remember, all we care about is ordering).
2019-04-24 Eric Carlson <eric.carlson@apple.com>
Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
https://bugs.webkit.org/show_bug.cgi?id=197171
<rdar://problem/47454979>
Reviewed by Youenn Fablet.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
(TestWebKitAPI::TEST):
2019-04-24 Brady Eidson <beidson@apple.com>
XMLHTTPRequest POSTs to a custom WKURLSchemeHandler protocol are missing the HTTP body.
https://bugs.webkit.org/show_bug.cgi?id=191362
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm: Add a test that POSTs all sorts of things
from an XHR to a custom protocol.
2019-04-25 Simon Fraser <simon.fraser@apple.com>
DumpRenderTree doesn't call Internals::resetToConsistentState() before the first test
https://bugs.webkit.org/show_bug.cgi?id=197273
Reviewed by Dean Jackson.
Reorder code so that we create gTestRunner before calling resetWebViewToConsistentStateBeforeTesting(),
so that WebCoreTestSupport::resetInternalsObject() is always run.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentStateBeforeTesting):
(runTest):
2019-04-24 John Wilander <wilander@apple.com>
Age out unconverted Ad Click Attributions after one week.
https://bugs.webkit.org/show_bug.cgi?id=197238
<rdar://problem/50177349>
Reviewed by Chris Dumez.
This patch adds infrastructure to allow tests to expire all unconverted
attributions early.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::markAdClickAttributionsAsExpiredForTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::markAdClickAttributionsAsExpiredForTesting):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-04-24 Chris Dumez <cdumez@apple.com>
Fix flaky crashes in a couple of PSON API tests
https://bugs.webkit.org/show_bug.cgi?id=197239
Reviewed by Tim Horton.
Do not adopt the NSURLRequest returned by [NSURLRequest requestWithURL:].
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-24 Simon Fraser <simon.fraser@apple.com>
Make it possible to control the renderTreeAsText output by setting options on testRunner
https://bugs.webkit.org/show_bug.cgi?id=197133
Reviewed by Sam Weinig.
Add testRunner.setRenderTreeDumpOptions() and expose the subset of RenderAsTextFlag flags
that make sense in testing (those that don't dump unstable data like addresses), and plumb
these flags through the various framework layers.
Convert RenderAsTextBehavior to an OptionSet<RenderAsTextFlag>.
Fix code generation in WebKitTestRunner to generate bindings for IDL const values,
and hand-code DumpRenderTree bindings.
Some cleanup of the TestRunners, using member initializers.
* DumpRenderTree/TestRunner.cpp:
(TestRunner::TestRunner):
(setRenderTreeDumpOptionsCallback):
(TestRunner::staticFunctions):
(TestRunner::setRenderTreeDumpOptions):
* DumpRenderTree/TestRunner.h:
(TestRunner::renderTreeDumpOptions const):
* DumpRenderTree/mac/DumpRenderTree.mm:
(dump):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::dump):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
(WTR::TestRunner::setRenderTreeDumpOptions):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(WTR::TestRunner::renderTreeDumpOptions const):
2019-04-24 Alex Christensen <achristensen@webkit.org>
WKContentRuleLists should have a maximum FileProtection of CompleteUnlessOpen
https://bugs.webkit.org/show_bug.cgi?id=197078
<rdar://problem/49564348>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(TEST_F):
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:startURLSchemeTask:]): Deleted.
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:stopURLSchemeTask:]): Deleted.
Unfortunately, setting the NSFileProtectionKey attribute is only supported on iOS devices.
2019-04-24 Alex Christensen <achristensen@webkit.org>
Add unit test for r239322
https://bugs.webkit.org/show_bug.cgi?id=197236
Reviewed by Chris Dumez.
I initially developed this as a unit test for rdar://problem/48797895 but it seems that isn't quite ready.
May as well add the test infrastructure which was needed before and will be needed in the future.
* TestWebKitAPI/TCPServer.cpp:
(TestWebKitAPI::TCPServer::TCPServer):
* TestWebKitAPI/TCPServer.h:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(TestWebKitAPI::downloadAtRate):
* TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/Proxy.mm: Added.
(-[ProxyDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(-[ProxyDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(TEST):
2019-04-24 Chris Dumez <cdumez@apple.com>
URL set by document.open() is communicated with the WebPageProxy but not the WebFrameProxy
https://bugs.webkit.org/show_bug.cgi?id=197214
<rdar://problem/49237544>
Reviewed by Alex Christensen.
Extend API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
(TEST):
2019-04-24 Philippe Normand <pnormand@igalia.com>
[Build][GStreamer] Update to 1.16.0
https://bugs.webkit.org/show_bug.cgi?id=197157
Reviewed by Xabier Rodriguez-Calvar.
The upstreamed patches were removed and a new one was added for a
regression detected in the scaletempo GStreamer element. The GNOME
Flatpak was migrated to 3.32 and I switched a few modules to Meson
on the way, as it is the preferred build system now in GStreamer
1.16.
* flatpak/files/httpd-autogen.sh:
* flatpak/flatpakutils.py:
(FlatpakPackage.install):
(WebkitFlatpak.run_in_sandbox):
* flatpak/org.webkit.CommonModules.yaml:
* flatpak/org.webkit.WebKit.yaml:
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Removed.
* gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Removed.
* gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Removed.
* gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Removed.
* gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Removed.
* gstreamer/patches/gst-plugins-base-0001-parsebin-Post-STREAM_COLLECTION-on-EVENT_STREAM_COLL.patch: Removed.
* gstreamer/patches/gst-plugins-good-0001-qtdemux-Detect-and-expose-CEA-608-708-Closed-Caption.patch: Removed.
* gstreamer/patches/gst-plugins-good-0001-qtdemux-Do-not-run-the-preferred-decryptor-context-q.patch: Removed.
* gstreamer/patches/gst-plugins-good-0002-qtdemux-Do-not-unref-a-NULL-stream_tags.patch: Removed.
* gstreamer/patches/gst-plugins-good-0002-qtdemux-add-context-for-a-preferred-protection.patch: Removed.
* gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch: Removed.
* gstreamer/patches/gst-plugins-good-0003-qtdemux-also-push-buffers-without-encryption-info-in.patch: Removed.
* gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Removed.
* gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Removed.
* gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Removed.
* gstreamer/patches/gst-plugins-good-0011-matroska-Add-the-WebM-encrypted-content-support-in-m.patch: Removed.
* gstreamer/patches/gst-plugins-good-0012-matroskdemux-do-not-use-MapInfo.data-after-unmapping.patch: Removed.
* gstreamer/patches/gst-plugins-good-0013-Avoid-warning-when-reporting-about-decryptors.patch: Removed.
* gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Removed.
* gstreamer/patches/gst-plugins-good-scaletempo-Advertise-interleaved-layout-in-caps-temp.patch: Added.
* gstreamer/patches/gstreamer-0001-protection-Add-a-new-definition-for-unspecified-syst.patch: Removed.
* gstreamer/patches/gstreamer-0002-protection-Fix-the-string-to-define-unspecified-syst.patch: Removed.
2019-04-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] MiniBrowser: also set the passed bg-color when receiving arguments
https://bugs.webkit.org/show_bug.cgi?id=197156
Reviewed by Michael Catanzaro.
The background color is only set when MiniBrowser is launched without arguments. This regressed when tabs
support was added.
* MiniBrowser/gtk/BrowserTab.c:
(browser_tab_set_background_color): Set the passed in color as web view background color.
* MiniBrowser/gtk/BrowserTab.h:
* MiniBrowser/gtk/BrowserWindow.c:
(browser_window_init): Initialize backgroundColor.
(browser_window_append_view): Call browser_tab_set_background_color().
(browser_window_set_background_color): Save the passed in color. This function should now be called before tabs
are added.
* MiniBrowser/gtk/main.c:
(main): Call browser_window_set_background_color() before creating the tabs.
2019-04-23 John Wilander <wilander@apple.com>
Move Ad Click Attribution from internal feature to experimental feature
https://bugs.webkit.org/show_bug.cgi?id=197218
<rdar://problem/47651691>
Reviewed by Brent Fulgham.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
2019-04-23 Andy Estes <aestes@apple.com>
[iOS] QuickLook documents loaded from file: URLs should be allowed to perform same-document navigations
https://bugs.webkit.org/show_bug.cgi?id=196749
<rdar://problem/35773454>
Reviewed by Daniel Bates.
Added a new QuickLook API test and added new expectations to existing QuickLook tests.
* TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
(-[QuickLookDelegate webView:didStartProvisionalNavigation:]):
(-[QuickLookDelegate webView:didFinishNavigation:]):
(-[QuickLookDelegate _webView:didFailNavigation:withError:userInfo:]):
(-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
(runTest):
(runTestDecideBeforeLoading):
(runTestDecideAfterLoading):
(TEST):
2019-04-23 John Wilander <wilander@apple.com>
Remove Ad Click Attribution data when removing website data
https://bugs.webkit.org/show_bug.cgi?id=197215
<rdar://problem/47668988>
Reviewed by Chris Dumez.
This patch adds test infrastructure to delete Ad Click Attribution data
through WebsiteDataStore::removeData().
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::clearAdClickAttribution):
(WTR::TestRunner::clearAdClickAttributionsThroughWebsiteDataRemoval):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::clearAdClickAttributionsThroughWebsiteDataRemoval):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-04-23 Jonathan Bedard <jbedard@apple.com>
webkitpy: Kill unresponsive worker processes
https://bugs.webkit.org/show_bug.cgi?id=197205
<rdar://problem/50104388>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/common/message_pool.py:
(_MessagePool.__init__): Add close timeout.
(_MessagePool._close): Send termination before joining workers, kill unresponsive workers.
2019-04-23 Alex Christensen <achristensen@webkit.org>
Add unit tests for WKWebView.serverTrust
https://bugs.webkit.org/show_bug.cgi?id=197202
Reviewed by Youenn Fablet
* TestWebKitAPI/TCPServer.cpp:
(TestWebKitAPI::deleter<BIO>::operator()):
(TestWebKitAPI::deleter<SSL>::operator()):
(TestWebKitAPI::deleter<X509>::operator()):
(TestWebKitAPI::deleter<SSL_CTX>::operator()):
(TestWebKitAPI::deleter<EVP_PKEY>::operator()):
(TestWebKitAPI::TCPServer::TCPServer):
(TestWebKitAPI::TCPServer::listenForConnections):
* TestWebKitAPI/TCPServer.h:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TestWebKitAPI::TEST):
(verifyCertificateAndPublicKey):
(-[ServerTrustDelegate webView:didFinishNavigation:]):
(-[ServerTrustDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(TestWebKitAPI::downloadAtRate):
* TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(TEST):
2019-04-23 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r244556.
https://bugs.webkit.org/show_bug.cgi?id=197212
Causing build failures on multiple builders (Requested by
ShawnRoberts on #webkit).
Reverted changeset:
"Create AVFoundationSoftLink.{h,mm} to reduce duplicate code"
https://bugs.webkit.org/show_bug.cgi?id=197171
https://trac.webkit.org/changeset/244556
2019-04-23 Alex Christensen <achristensen@webkit.org>
Fix iOS build.
https://bugs.webkit.org/show_bug.cgi?id=195537
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setOpenPanelFilesMediaIcon):
AdoptWK constructor is private now. Use adoptWK instead.
2019-04-23 Andres Gonzalez <andresg_22@apple.com>
Accessibility text search and selection API enhancements.
https://bugs.webkit.org/show_bug.cgi?id=197095
<rdar://problem/48181791>
Reviewed by Chris Fleizach.
Added new API JS binding code for searchTextWithCriteria to both WTR and DRT.
* DumpRenderTree/AccessibilityTextMarker.h:
* DumpRenderTree/AccessibilityUIElement.cpp:
(searchTextWithCriteriaCallback):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(convertVectorToObjectArray):
(convertNSArrayToVector):
(searchTextParameterizedAttributeForCriteria):
(AccessibilityUIElement::getLinkedUIElements):
(AccessibilityUIElement::getDocumentLinks):
(AccessibilityUIElement::getChildren):
(AccessibilityUIElement::getChildrenWithRange):
(AccessibilityUIElement::rowHeaders const):
(AccessibilityUIElement::columnHeaders const):
(AccessibilityUIElement::uiElementArrayAttributeValue const):
(AccessibilityUIElement::searchTextWithCriteria):
(AccessibilityUIElement::attributesOfColumnHeaders):
(AccessibilityUIElement::attributesOfRowHeaders):
(AccessibilityUIElement::attributesOfColumns):
(AccessibilityUIElement::attributesOfRows):
(AccessibilityUIElement::attributesOfVisibleCells):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::convertVectorToObjectArray):
(WTR::convertNSArrayToVector):
(WTR::searchTextParameterizedAttributeForCriteria):
(WTR::AccessibilityUIElement::getLinkedUIElements):
(WTR::AccessibilityUIElement::getDocumentLinks):
(WTR::AccessibilityUIElement::getUIElementsWithAttribute const):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::rowHeaders const):
(WTR::AccessibilityUIElement::columnHeaders const):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue const):
(WTR::AccessibilityUIElement::searchTextWithCriteria):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::convertElementsToObjectArray): Deleted.
2019-04-23 Guy Lewin <guy@lewin.co.il>
Multiple File Input Icon Set Regardless of File List
https://bugs.webkit.org/show_bug.cgi?id=195537
Reviewed by Alexey Proskuryakov.
Add setOpenPanelFilesMediaIcon to TestRunner in order to test icon and
display string in iOS file inputs
* DumpRenderTree/TestRunner.cpp:
(SetOpenPanelFilesMediaIconCallback):
(TestRunner::staticFunctions):
(TestRunner::setOpenPanelFilesMediaIcon):
* DumpRenderTree/TestRunner.h:
(TestRunner::openPanelFilesMediaIcon const):
* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setOpenPanelFilesMediaIcon):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::runOpenPanel):
(WTR::TestController::resetStateToConsistentValues):
* WebKitTestRunner/TestController.h:
(WTR::TestController::openPanelFileURLsMediaIcon const):
(WTR::TestController::setOpenPanelFileURLsMediaIcon):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2019-04-23 Eric Carlson <eric.carlson@apple.com>
Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
https://bugs.webkit.org/show_bug.cgi?id=197171
<rdar://problem/47454979>
Reviewed by Youenn Fablet.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
(TestWebKitAPI::TEST):
2019-04-23 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add unit tests for UnApplyPatchIfRequired
https://bugs.webkit.org/show_bug.cgi?id=197197
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestUnApplyPatchIfRequired):
(TestUnApplyPatchIfRequired.test_success):
(TestUnApplyPatchIfRequired.test_failure):
(TestUnApplyPatchIfRequired.test_skip):
2019-04-23 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add unit tests for CleanWorkingDirectory
https://bugs.webkit.org/show_bug.cgi?id=197195
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestCleanWorkingDirectory):
(TestCleanWorkingDirectory.test_success):
(TestCleanWorkingDirectory.test_failure):
2019-04-23 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use explicit imports instead of wildcard imports
https://bugs.webkit.org/show_bug.cgi?id=197194
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
* BuildSlaveSupport/ews-build/loadConfig.py:
* BuildSlaveSupport/ews-build/steps_unittest.py:
2019-04-23 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add unit tests for DownloadBuiltProduct
https://bugs.webkit.org/show_bug.cgi?id=197193
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestDownloadBuiltProduct):
(TestDownloadBuiltProduct.setUp):
(TestDownloadBuiltProduct.tearDown):
(TestDownloadBuiltProduct.test_success):
(TestDownloadBuiltProduct.test_failure):
2019-04-23 Aakash Jain <aakash_jain@apple.com>
[ews-app] Exception while loading status-bubble when no build step has started
https://bugs.webkit.org/show_bug.cgi?id=196676
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble.get_build_timestamp): Check if build step is present before accessing its timestamp.
2019-04-23 Stephan Szabo <stephan.szabo@sony.com>
[PlayStation] Support running of JSC tests on remote playstation devices
https://bugs.webkit.org/show_bug.cgi?id=197170
Reviewed by Ross Kirsling.
Script changes
* Scripts/run-javascriptcore-tests:
(runJSCStressTests): Pass arguments for playstation to
run-jsc-stress-tests
* Scripts/run-jsc-stress-tests:
Handle $hostOS=="playstation" for determineArchitecture, turning
off $isFTLPlatform and runProfiler and defaulting test writer.
* Scripts/webkitdirs.pm:
(jscPath): PlayStation WebKit executables have .elf extension
(executableProductDir): PlayStation builds on Windows hosts but
uses bin directory rather than bin64/bin32 for executable output
location.
* Scripts/webkitruby/jsc-stress-test-writer-playstation.rb: Added.
2019-04-23 Don Olmstead <don.olmstead@sony.com>
[CMake][Win] Use target oriented design for WebKit
https://bugs.webkit.org/show_bug.cgi?id=197173
Reviewed by Alex Christensen.
* TestWebKitAPI/PlatformWin.cmake: Add WebKitFrameworkHeaders as a dependency.
* TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp: Remove unused header.
2019-04-23 Chris Dumez <cdumez@apple.com>
[Process-Swap-On-Navigation] WebKit hangs when going back to a form submission's page due to Process-Swap-On-Navigation on iOS 12.2 and higher
https://bugs.webkit.org/show_bug.cgi?id=197097
<rdar://problem/50048318>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONScheme webView:startURLSchemeTask:]):
2019-04-23 Carlos Garcia Campos <cgarcia@igalia.com>
[ATK] Implement AtkComponentIface scroll_to methods
https://bugs.webkit.org/show_bug.cgi?id=196856
Reviewed by Michael Catanzaro.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::scrollToMakeVisible): Call atk_component_scroll_to().
(WTR::AccessibilityUIElement::scrollToGlobalPoint): Call atk_component_scroll_to_point().
* gtk/jhbuild.modules: Bump atk, at-spi2-core and at-spi2-atk to their latest stable version.
2019-04-22 Aakash Jain <aakash_jain@apple.com>
[ews-build] Improve summary for UploadBuiltProduct step
https://bugs.webkit.org/show_bug.cgi?id=197182
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(UploadBuiltProduct): Added descriptionDone.
(UploadBuiltProduct.getResultSummary): Overrided getResultSummary.
* BuildSlaveSupport/ews-build/steps_unittest.py:
(TestUploadBuiltProduct.test_success): Updated unit-test.
(TestUploadBuiltProduct.test_failure): Added unit-test for failure case.
2019-04-22 Aakash Jain <aakash_jain@apple.com>
[ews-build] Trigger queues only after uploading the archive
https://bugs.webkit.org/show_bug.cgi?id=197180
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(Factory.__init__):
(BuildFactory.__init__): Remove trigger step from factories.
(BuildFactory.propertiesToPassToTriggers): Deleted.
* BuildSlaveSupport/ews-build/steps.py:
(ConfigureBuild.__init__): Confiure triggers property.
(Trigger): Step to trigger other queues.
(Trigger.propertiesToPassToTriggers): Method to construct properties to pass to triggerred builds.
(UploadBuiltProduct.finished): Trigger builds after upload is successful.
2019-04-22 Alex Christensen <achristensen@webkit.org>
Deprecate WKContextCreateWithInjectedBundlePath
https://bugs.webkit.org/show_bug.cgi?id=197169
Reviewed by Youenn Fablet.
* TestWebKitAPI/PlatformUtilities.cpp:
(TestWebKitAPI::Util::createContextWithInjectedBundle):
Use WKContextCreateWithConfiguration instead of WKContextCreateWithInjectedBundlePath after having set its injected bundle path.
2019-04-22 Alex Christensen <achristensen@webkit.org>
REGRESSION(r230681) Do not use stored credentials if WKBundlePageResourceLoadClient.shouldUseCredentialStorage returns false
https://bugs.webkit.org/show_bug.cgi?id=197093
<rdar://problem/49708268>
Reviewed by Chris Dumez.
Add a test that does two loads. The first load shouldUseCredentialStorage returns true and we provide a persistent credential.
The second load shouldUseCredentialStorage returns false and we verify that a challenge is received with no suggested credential.
We also need to make the TCPServer able to handle more than one connection because we need these two loads to come from the same protection space,
and our current Cocoa implementation of NetworkSession uses two NSURLSessions that don't share a connection cache, one for loads with credentials
and one for loads without credentials, so there are two TCP connections to the same server in this test.
* TestWebKitAPI/TCPServer.cpp:
(TestWebKitAPI::TCPServer::TCPServer):
(TestWebKitAPI::TCPServer::~TCPServer):
(TestWebKitAPI::TCPServer::socketBindListen):
(TestWebKitAPI::TCPServer::waitForAndReplyToRequests): Deleted.
* TestWebKitAPI/TCPServer.h:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/BasicProposedCredentialPlugIn.mm: Added.
(-[BasicProposedCredentialPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(respondWithChallengeThenOK):
(TestWebKitAPI::TEST):
(-[ProposedCredentialDelegate webView:didFinishNavigation:]):
(-[ProposedCredentialDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TEST):
2019-04-22 Chris Dumez <cdumez@apple.com>
Delayed WebProcessLaunch may break the _relatedWebView SPI
https://bugs.webkit.org/show_bug.cgi?id=197160
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-22 Dean Johnson <dean_johnson@apple.com>
Use curl to download packages for webkitpy autoinstaller
https://bugs.webkit.org/show_bug.cgi?id=197164
Reviewed by Darin Adler.
* Scripts/webkitpy/common/system/autoinstall.py:
(AutoInstaller._download): Use curl(1) to download packages necessary for
webkitpy/thirdparty/autoinstalled since Python2's urllib2 module can result in unnecessary
errors which are not present when using curl(1).
2019-04-22 Chris Dumez <cdumez@apple.com>
Unreviewed, rolling out r244502.
Caused crashes on the bots
Reverted changeset:
"Delayed WebProcessLaunch may break the _relatedWebView SPI"
https://bugs.webkit.org/show_bug.cgi?id=197160
https://trac.webkit.org/changeset/244502
2019-04-22 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r244437.
Still breaks internal tests.
Reverted changeset:
"InjectedBundle parameters often need initialization function
called before unarchiving"
https://bugs.webkit.org/show_bug.cgi?id=189709
https://trac.webkit.org/changeset/244437
2019-04-22 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use singular verb in failure description in case of single api test failure
https://bugs.webkit.org/show_bug.cgi?id=197013
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(AnalyzeAPITestsResults.analyzeResults):
2019-04-22 Chris Dumez <cdumez@apple.com>
Delayed WebProcessLaunch may break the _relatedWebView SPI
https://bugs.webkit.org/show_bug.cgi?id=197160
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-22 Carlos Garcia Campos <cgarcia@igalia.com>
REGRESSION(r241289): [GTK] accessibility/removed-continuation-element-causes-crash.html and accessibility/removed-anonymous-block-child-causes-crash.html crashes
https://bugs.webkit.org/show_bug.cgi?id=194630
Reviewed by Michael Catanzaro.
Return early from getAttributeSet() is passed in accessible is nullptr.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2019-04-21 Wenson Hsieh <wenson_hsieh@apple.com>
Defer EditorState updates until the next layer tree flush in a few additional circumstances
https://bugs.webkit.org/show_bug.cgi?id=197145
<rdar://problem/50078170>
Reviewed by Darin Adler.
Adjusts several editing API tests to wait for a presentation update following a selection change, programmatic
focus, or showing the font manager.
* TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
(TEST):
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(TestWebKitAPI::TEST):
2019-04-21 Brian Burg <bburg@apple.com>
WebDriver: add hooks to make it possible to easily run WPT WebDriver web server by itself
https://bugs.webkit.org/show_bug.cgi?id=197125
<rdar://problem/50061468>
Reviewed by Darin Adler.
Sometimes I want to run wptserve independently of tests. Make it easier to script that
using this class rather than making our own ./wpt serve invocation.
* Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
(WebDriverW3CWebServer):
(WebDriverW3CWebServer.document_root): Expose this to clients.
(WebDriverW3CWebServer.wait): Add a method that blocks until the server dies.
(WebDriverW3CWebServer.__enter__):
(WebDriverW3CWebServer.__exit__):
Make it possible to use the web server with a 'with' statement.
2019-04-20 Don Olmstead <don.olmstead@sony.com>
[CMake][Win] Use target oriented design for WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=197112
Reviewed by Konstantin Tokarev.
Fix includes and libraries for DumpRenderTree after changes to WebKitLegacy targets.
* DumpRenderTree/CMakeLists.txt:
* DumpRenderTree/PlatformWin.cmake:
* DumpRenderTree/win/EventSender.cpp:
2019-04-20 Aakash Jain <aakash_jain@apple.com>
Update text for old EWS submit button
https://bugs.webkit.org/show_bug.cgi?id=197140
Reviewed by Alexey Proskuryakov.
* QueueStatusServer/templates/statusbubble.html:
2019-04-20 Aakash Jain <aakash_jain@apple.com>
[ews-app] New EWS should poll bugzilla more frequently
https://bugs.webkit.org/show_bug.cgi?id=197138
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
(FetchLoop.__init__):
2019-04-20 Aakash Jain <aakash_jain@apple.com>
[ews-app] Submit to EWS buttons are not aligned properly with status-bubbles
https://bugs.webkit.org/show_bug.cgi?id=197139
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
* QueueStatusServer/templates/statusbubble.html:
2019-04-20 Chris Dumez <cdumez@apple.com>
Unreviewed, fix iOS build with recent SDKs.
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2019-04-19 Keith Miller <keith_miller@apple.com>
Add script to merge run_benchmark jsons
https://bugs.webkit.org/show_bug.cgi?id=197107
Reviewed by Michael Saboff.
The script basically recursively decends through all json objects until it gets
to an array or JSON primitive and concats or takes the first value, respectively.
This patch also adds +x bits to the compare-results script so it
can be run directly from the command line. I had to add a new line so that svn
will accept the change... yay svn!
* Scripts/compare-results:
* Scripts/merge-result-jsons: Added.
(readJSONFile):
(deepAppend):
(mergeJSONs):
(main):
2019-04-18 Ryosuke Niwa <rniwa@webkit.org>
Crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener
https://bugs.webkit.org/show_bug.cgi?id=197079
Reviewed by Darin Adler.
Added a regression test. It hits a slightly different backtrace but of the same class of issues.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm: Added.
2019-04-18 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r244434.
https://bugs.webkit.org/show_bug.cgi?id=197089
caused 1 API test failure (Requested by zalan on #webkit).
Reverted changeset:
"Regression (r244291): Broken API Test
AutoLayoutRenderingProgressRelativeOrdering"
https://bugs.webkit.org/show_bug.cgi?id=196948
https://trac.webkit.org/changeset/244434
2019-04-18 Wenson Hsieh <wenson_hsieh@apple.com>
Add new compatibility mode API on WKNavigation
https://bugs.webkit.org/show_bug.cgi?id=197069
<rdar://problem/50025800>
Reviewed by Tim Horton.
Add a block property for -didCommitNavigation to TestNavigationDelegate.
* TestWebKitAPI/cocoa/TestNavigationDelegate.h:
* TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
(-[TestNavigationDelegate webView:didCommitNavigation:]):
2019-04-18 Don Olmstead <don.olmstead@sony.com>
[CMake] Make WebCore headers copies
https://bugs.webkit.org/show_bug.cgi?id=182512
<rdar://problem/37510435>
Reviewed by Alex Christensen.
Added WebCorePrivateFrameworkHeaders as a dependency of TestWebKitAPI for all
ports.
WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. Any includes
of WebCore headers using "*.h" were modified to <WebCore/*.h>
* DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
* DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h:
* DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h:
* DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
* TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp:
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
2019-04-18 Jer Noble <jer.noble@apple.com>
Add support for parsing FairPlayStreaming PSSH boxes.
https://bugs.webkit.org/show_bug.cgi?id=197064
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebCore/ISOBox.cpp:
(TestWebKitAPI::TEST):
2019-04-18 Brent Fulgham <bfulgham@apple.com>
InjectedBundle parameters often need initialization function called before unarchiving
https://bugs.webkit.org/show_bug.cgi?id=189709
<rdar://problem/44573653>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
(-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
2019-04-18 Zalan Bujtas <zalan@apple.com>
Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
https://bugs.webkit.org/show_bug.cgi?id=196948
<rdar://problem/49927131>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
(TEST):
The expected order of incoming events is
1. didInvalidateIntrinsicContentSize
2. didFirstLayout
At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
(and remember, all we care about is ordering).
2019-04-18 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r244299.
Breaks internal tests.
Reverted changeset:
"InjectedBundle parameters often need initialization function
called before unarchiving"
https://bugs.webkit.org/show_bug.cgi?id=189709
https://trac.webkit.org/changeset/244299
2019-04-18 Yusuke Suzuki <ysuzuki@apple.com>
[WTF] StringBuilder should set correct m_is8Bit flag when merging
https://bugs.webkit.org/show_bug.cgi?id=197053
Reviewed by Saam Barati.
* TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
(TestWebKitAPI::TEST):
2019-04-17 Tim Horton <timothy_horton@apple.com>
[iOS Sim Debug] REGRESSION (r244151) TestWebKitAPI.WebKit.OverrideViewportArguments is failing (197028)
https://bugs.webkit.org/show_bug.cgi?id=197028
<rdar://problem/49985290>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
(TEST):
Liberal application of waitForNextPresentationUpdate works around a race
where if the page rapidly changes its viewport arguments (or an API client
rapidly changes its viewport arguments), we'd get stuck thinking that the
user had intentionally zoomed the page, and stop resetting the initial scale.
This deserves a separate bug, but no need to keep the test failing while
we think about it.
2019-04-17 Tim Horton <timothy_horton@apple.com>
REGRESSION (r241988): Switching tabs is slow
https://bugs.webkit.org/show_bug.cgi?id=197037
<rdar://problem/49951473>
Reviewed by Simon Fraser.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ReparentWebViewTimeout.mm: Added.
(TEST):
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView addToTestWindow]):
Add a test that hangs without this fix.
2019-04-17 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r244400.
Caused testing to exit early with assertionon Debug WK2
Reverted changeset:
"UI↔Web deadlock when printing with a JavaScript alert
visible"
https://bugs.webkit.org/show_bug.cgi?id=196839
https://trac.webkit.org/changeset/244400
2019-04-17 Brady Eidson <beidson@apple.com>
Link clicks in PDFs shouldn't send referrer headers.
<rdar://problem/21142581> and https://bugs.webkit.org/show_bug.cgi?id=196980
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm: Added.
(putPDFBytesCallback):
(emptyReleaseInfoCallback):
(createPDFWithLinkToURL):
(TEST):
2019-04-17 Tim Horton <timothy_horton@apple.com>
UI↔Web deadlock when printing with a JavaScript alert visible
https://bugs.webkit.org/show_bug.cgi?id=196839
<rdar://problem/49157642>
Reviewed by Andy Estes.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm: Added.
(-[PrintOnAlertUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST):
2019-04-17 Alex Christensen <achristensen@webkit.org>
WKRetainPtr's adoption constructor should be private
https://bugs.webkit.org/show_bug.cgi?id=197019
Reviewed by Tim Horton.
* DumpRenderTree/mac/DumpRenderTree.mm:
(dumpFramesAsText):
* TestWebKitAPI/InjectedBundleController.cpp:
(TestWebKitAPI::InjectedBundleController::initialize):
* TestWebKitAPI/PlatformUtilities.cpp:
(TestWebKitAPI::Util::createContextWithInjectedBundle):
(TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
(TestWebKitAPI::Util::createContextForInjectedBundleTest):
(TestWebKitAPI::Util::toWK):
* TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
(TestWebKitAPI::DOMWindowExtensionBasic::initialize):
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
(TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
* TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
(TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
* TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash_Bundle.cpp:
(TestWebKitAPI::DocumentStartUserScriptAlertCrashTest::initialize):
* TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/Find.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FindMatches.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/GetInjectedBundleInitializationUserDataCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle_Bundle.cpp:
(TestWebKitAPI::HitTestResultNodeHandleTest::getContextMenuFromDefaultMenu):
* TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp:
(TestWebKitAPI::InjectedBundleNoDisableOverrideBuiltinsBehaviorTest::initialize):
(TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
* TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest_Bundle.cpp:
(TestWebKitAPI::InjectedBundleFrameHitTestTest::frameLoadFinished):
* TestWebKitAPI/Tests/WebKit/InjectedBundleInitializationUserDataCallbackWins.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp:
(TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize):
* TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
(TestWebKitAPI::loadAlternateHTMLString):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
(TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
* TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
(TestWebKitAPI::buildAndPerformTest):
* TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PasteboardNotifications.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
* TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
* TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
(TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::getMenuItemTitleCallback):
(WTR::createMouseMessageBody):
(WTR::EventSendingController::mouseDown):
(WTR::EventSendingController::mouseUp):
(WTR::EventSendingController::mouseMoveTo):
(WTR::EventSendingController::mouseForceClick):
(WTR::EventSendingController::startAndCancelMouseForceClick):
(WTR::EventSendingController::mouseForceDown):
(WTR::EventSendingController::mouseForceUp):
(WTR::EventSendingController::mouseForceChanged):
(WTR::EventSendingController::leapForward):
(WTR::EventSendingController::scheduleAsynchronousClick):
(WTR::createKeyDownMessageBody):
(WTR::EventSendingController::keyDown):
(WTR::EventSendingController::scheduleAsynchronousKeyDown):
(WTR::EventSendingController::mouseScrollBy):
(WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
(WTR::EventSendingController::continuousMouseScrollBy):
(WTR::EventSendingController::addTouchPoint):
(WTR::EventSendingController::updateTouchPoint):
(WTR::EventSendingController::setTouchModifier):
(WTR::EventSendingController::setTouchPointRadius):
(WTR::EventSendingController::touchStart):
(WTR::EventSendingController::touchMove):
(WTR::EventSendingController::touchEnd):
(WTR::EventSendingController::touchCancel):
(WTR::EventSendingController::clearTouchPoints):
(WTR::EventSendingController::releaseTouchPoint):
(WTR::EventSendingController::cancelTouchPoint):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didCreatePage):
(WTR::InjectedBundle::didReceiveMessage):
(WTR::InjectedBundle::didReceiveMessageToPage):
(WTR::InjectedBundle::booleanForKey):
(WTR::InjectedBundle::done):
(WTR::InjectedBundle::dumpToStdErr):
(WTR::InjectedBundle::outputText):
(WTR::InjectedBundle::postNewBeforeUnloadReturnValue):
(WTR::InjectedBundle::postAddChromeInputField):
(WTR::InjectedBundle::postRemoveChromeInputField):
(WTR::InjectedBundle::postFocusWebView):
(WTR::InjectedBundle::postSetBackingScaleFactor):
(WTR::InjectedBundle::postSetWindowIsKey):
(WTR::InjectedBundle::postSetViewSize):
(WTR::InjectedBundle::postSimulateWebNotificationClick):
(WTR::InjectedBundle::postSetAddsVisitedLinks):
(WTR::InjectedBundle::setGeolocationPermission):
(WTR::InjectedBundle::setMockGeolocationPosition):
(WTR::InjectedBundle::setMockGeolocationPositionUnavailableError):
(WTR::InjectedBundle::isGeolocationProviderActive const):
(WTR::InjectedBundle::imageCountInGeneralPasteboard const):
(WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
(WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin const):
(WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
(WTR::InjectedBundle::setCustomPolicyDelegate):
(WTR::InjectedBundle::setHidden):
(WTR::InjectedBundle::setCacheModel):
(WTR::InjectedBundle::shouldProcessWorkQueue const):
(WTR::InjectedBundle::processWorkQueue):
(WTR::InjectedBundle::queueBackNavigation):
(WTR::InjectedBundle::queueForwardNavigation):
(WTR::InjectedBundle::queueLoad):
(WTR::InjectedBundle::queueLoadHTMLString):
(WTR::InjectedBundle::queueReload):
(WTR::InjectedBundle::queueLoadingScript):
(WTR::InjectedBundle::queueNonLoadingScript):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::frameToStr):
(WTR::InjectedBundlePage::InjectedBundlePage):
(WTR::dumpFrameDescriptionSuitableForTestResult):
(WTR::dumpFrameScrollPosition):
(WTR::dumpDescendantFrameScrollPositions):
(WTR::dumpFrameText):
(WTR::dumpDescendantFramesText):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::shouldDumpPixels const):
(WTR::TestRunner::setDumpPixels):
(WTR::TestRunner::whatToDump const):
(WTR::TestRunner::setWhatToDump):
(WTR::TestRunner::setWaitUntilDone):
(WTR::TestRunner::shouldWaitUntilDone const):
(WTR::TestRunner::setShouldDumpFrameLoadCallbacks):
(WTR::TestRunner::shouldDumpFrameLoadCallbacks):
(WTR::TestRunner::clearAllDatabases):
(WTR::TestRunner::setIDBPerOriginQuota):
(WTR::TestRunner::originsWithApplicationCache):
(WTR::TestRunner::setCanOpenWindows):
(WTR::TestRunner::setXSSAuditorEnabled):
(WTR::TestRunner::setMediaDevicesEnabled):
(WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
(WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
(WTR::TestRunner::setCustomUserAgent):
(WTR::TestRunner::setWebAPIStatisticsEnabled):
(WTR::TestRunner::setModernMediaControlsEnabled):
(WTR::TestRunner::setWebGL2Enabled):
(WTR::TestRunner::setWritableStreamAPIEnabled):
(WTR::TestRunner::setReadableByteStreamAPIEnabled):
(WTR::TestRunner::setEncryptedMediaAPIEnabled):
(WTR::TestRunner::setAllowsAnySSLCertificate):
(WTR::TestRunner::setPluginsEnabled):
(WTR::TestRunner::setValueForUser):
(WTR::TestRunner::setAudioResult):
(WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
(WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
(WTR::TestRunner::setAlwaysAcceptCookies):
(WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
(WTR::TestRunner::isDoingMediaCapture const):
(WTR::TestRunner::queueLoad):
(WTR::TestRunner::setRejectsProtectionSpaceAndContinueForAuthenticationChallenges):
(WTR::TestRunner::setHandlesAuthenticationChallenges):
(WTR::TestRunner::setShouldLogCanAuthenticateAgainstProtectionSpace):
(WTR::TestRunner::setShouldLogDownloadCallbacks):
(WTR::TestRunner::setAuthenticationUsername):
(WTR::TestRunner::setAuthenticationPassword):
(WTR::TestRunner::secureEventInputIsEnabled const):
(WTR::TestRunner::setBlockAllPlugins):
(WTR::TestRunner::setPluginSupportedMode):
(WTR::TestRunner::setShouldDecideNavigationPolicyAfterDelay):
(WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
(WTR::TestRunner::setNavigationGesturesEnabled):
(WTR::TestRunner::setIgnoresViewportScaleLimits):
(WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
(WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
(WTR::TestRunner::terminateNetworkProcess):
(WTR::TestRunner::terminateServiceWorkerProcess):
(WTR::TestRunner::runUIScript):
(WTR::TestRunner::setStatisticsDebugMode):
(WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
(WTR::TestRunner::setStatisticsLastSeen):
(WTR::TestRunner::setStatisticsPrevalentResource):
(WTR::TestRunner::setStatisticsVeryPrevalentResource):
(WTR::TestRunner::dumpResourceLoadStatistics):
(WTR::TestRunner::isStatisticsPrevalentResource):
(WTR::TestRunner::isStatisticsVeryPrevalentResource):
(WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
(WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
(WTR::TestRunner::setStatisticsHasHadUserInteraction):
(WTR::TestRunner::isStatisticsHasHadUserInteraction):
(WTR::TestRunner::setStatisticsGrandfathered):
(WTR::TestRunner::isStatisticsGrandfathered):
(WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
(WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
(WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
(WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
(WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
(WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
(WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
(WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
(WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
(WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
(WTR::TestRunner::statisticsUpdateCookieBlocking):
(WTR::TestRunner::statisticsSubmitTelemetry):
(WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
(WTR::TestRunner::setStatisticsIsRunningTest):
(WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
(WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
(WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
(WTR::TestRunner::setStatisticsGrandfatheringTime):
(WTR::TestRunner::setStatisticsMaxStatisticsEntries):
(WTR::TestRunner::setStatisticsPruneEntriesDownTo):
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
(WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
(WTR::TestRunner::statisticsDeleteCookiesForHost):
(WTR::TestRunner::setStatisticsCacheMaxAgeCap):
(WTR::TestRunner::statisticsResetToConsistentState):
(WTR::TestRunner::setStorageAccessAPIEnabled):
(WTR::TestRunner::getAllStorageAccessEntries):
(WTR::TestRunner::addMockMediaDevice):
(WTR::TestRunner::clearMockMediaDevices):
(WTR::TestRunner::removeMockMediaDevice):
(WTR::TestRunner::resetMockMediaDevices):
(WTR::TestRunner::connectMockGamepad):
(WTR::TestRunner::disconnectMockGamepad):
(WTR::TestRunner::setMockGamepadDetails):
(WTR::TestRunner::setMockGamepadAxisValue):
(WTR::TestRunner::setMockGamepadButtonValue):
(WTR::TestRunner::removeAllSessionCredentials):
(WTR::TestRunner::clearDOMCache):
(WTR::TestRunner::clearDOMCaches):
(WTR::TestRunner::hasDOMCache):
(WTR::TestRunner::domCacheSize):
(WTR::TestRunner::setAllowStorageQuotaIncrease):
(WTR::TestRunner::getApplicationManifestThen):
(WTR::TestRunner::injectUserScript):
(WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
(WTR::TestRunner::addTestKeyToKeychain):
(WTR::TestRunner::cleanUpKeychain):
(WTR::TestRunner::keyExistsInKeychain):
(WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
(WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
(WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
(WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
(WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
(WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::initialize):
(WTR::parseStringTestHeaderValueAsRelativePath):
(WTR::updateTestOptionsFromTestHeader):
(WTR::TestController::runTest):
(WTR::TestController::didReceiveLiveDocumentsList):
(WTR::TestController::didReceiveMessageFromInjectedBundle):
(WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestController::didFinishNavigation):
(WTR::TestController::didReceiveAuthenticationChallenge):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestInvocation::uiScriptDidComplete):
(WTR::TestInvocation::didReceiveAllStorageAccessEntries):
* WebKitTestRunner/WebNotificationProvider.cpp:
(WTR::WebNotificationProvider::closeWebNotification):
* WebKitTestRunner/WorkQueueManager.cpp:
(WTR::ScriptItem::ScriptItem):
(WTR::WorkQueueManager::queueLoad):
(WTR::WorkQueueManager::queueLoadHTMLString):
2019-04-17 Alex Christensen <achristensen@webkit.org>
Add a comment to make my test from r244139 less mysterious.
https://bugs.webkit.org/show_bug.cgi?id=196744
As suggested by Darin Adler.
* TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
(-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2019-04-17 Chris Dumez <cdumez@apple.com>
Remember device orientation permission for the duration of the browsing session
https://bugs.webkit.org/show_bug.cgi?id=196992
<rdar://problem/49946067>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
(-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
(TEST):
2019-04-17 Aakash Jain <aakash_jain@apple.com>
[ews-app] Clicking 'submit to new ews' doesn't reload status-bubble
https://bugs.webkit.org/show_bug.cgi?id=196675
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/submittoews.py:
(SubmitToEWS): Added @xframe_options_exempt similar to statusbubble.py
2019-04-16 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] [WebKit2] Add support for honoring -[UIMenuItem dontDismiss]
https://bugs.webkit.org/show_bug.cgi?id=196919
<rdar://problem/41630459>
Reviewed by Tim Horton.
Add iOS support for several new testing hooks. See below for more detail.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isDismissingMenu const):
Add a new script controller method to query whether the platform menu (on iOS, the callout bar) is done
dismissing. We consider the menu to be dismissing in between the `-WillHide` and `-DidHide` notifications sent
by UIKit when dismissing the callout bar (i.e. UIMenuController).
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::isDismissingMenu const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setAllowedMenuActions):
Add a new helper method to specify a list of allowed actions when bringing up the menu. On iOS, in the case of
actions supported by the platform, this matches against method selector names (for instance, "SelectAll", or
"Copy", or "Paste"). In the case of the custom actions installed via `installCustomMenuAction`, we instead match
against the name of the custom action.
(WTR::TestRunner::installCustomMenuAction):
Add a new helper method to install a custom action for the context menu (on iOS, this is the callout bar). This
takes the name of the action (which appears in a button in the callout bar), whether the action should cause
the callout bar to automatically dismiss, and finally, a JavaScript callback that is invoked when the action is
triggered.
(WTR::TestRunner::performCustomMenuAction):
Invoked when the custom menu action is triggered.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::installCustomMenuAction):
(WTR::TestController::setAllowedMenuActions):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::performCustomMenuAction):
Add plumbing to call back into the injected bundle when performing the custom action.
* WebKitTestRunner/TestInvocation.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::installCustomMenuAction):
(WTR::TestController::setAllowedMenuActions):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView initWithFrame:configuration:]):
(-[TestRunnerWKWebView becomeFirstResponder]):
(-[TestRunnerWKWebView _addCustomItemToMenuControllerIfNecessary]):
Helper method that converts web view's current custom menu action info into a UIMenuItem, and adds it to the
shared menu controller. This is also invoked when the web view becomes first responder, which matches behavior
in the Mail app on iOS.
(-[TestRunnerWKWebView installCustomMenuAction:dismissesAutomatically:callback:]):
(-[TestRunnerWKWebView setAllowedMenuActions:]):
(-[TestRunnerWKWebView resetCustomMenuAction]):
(-[TestRunnerWKWebView performCustomAction:]):
(-[TestRunnerWKWebView canPerformAction:withSender:]):
(-[TestRunnerWKWebView _willHideMenu]):
(-[TestRunnerWKWebView _didHideMenu]):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
Reset both any custom installed actions on the shared menu controller, as well as the list of allowed actions,
if specified.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isDismissingMenu const):
2019-04-16 Megan Gardner <megan_gardner@apple.com>
Allow sharing from imageSheet on an image document
https://bugs.webkit.org/show_bug.cgi?id=196891
<rdar://problem/25377386>
Reviewed by Tim Horton.
Test to make sure that the correct imageURL is extracted from an image element.
* TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
(TestWebKitAPI::TEST):
2019-04-16 Alex Christensen <achristensen@webkit.org>
REGRESSION(r244162) Clearing website data from ephemeral WKWebsiteDataStore should finish instead of asserting or hanging
https://bugs.webkit.org/show_bug.cgi?id=196995
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TEST):
2019-04-16 Chris Dumez <cdumez@apple.com>
URL set by document.open() is not communicated to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=196941
<rdar://problem/49237544>
Reviewed by Geoff Garen.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
(-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TEST):
2019-04-16 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r244321.
https://bugs.webkit.org/show_bug.cgi?id=196968
Causing all WK2 Debug builds to exit early after Assertion
failures. (Requested by ShawnRoberts on #webkit).
Reverted changeset:
"URL set by document.open() is not communicated to the
UIProcess"
https://bugs.webkit.org/show_bug.cgi?id=196941
https://trac.webkit.org/changeset/244321
2019-04-15 Aakash Jain <aakash_jain@apple.com>
Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
https://bugs.webkit.org/show_bug.cgi?id=196948
Reviewed by Zalan Bujtas.
* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
(TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
2019-04-15 Chris Dumez <cdumez@apple.com>
URL set by document.open() is not communicated to the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=196941
<rdar://problem/49237544>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
(-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TEST):
2019-04-15 Dean Johnson <dean_johnson@apple.com>
Using Tools/Scripts/clean-webkit should not install requests
https://bugs.webkit.org/show_bug.cgi?id=196940
Reviewed by Lucas Forschler.
* Scripts/webkitpy/common/system/autoinstall.py: Drive-by fix for no logging handlers
existing, depending on the path autoinstalled is run through.
* Scripts/webkitpy/port/base.py: Import webkitpy.results.upload.Upload only where it's
needed.
(Port.configuration_for_upload):
(Port.commits_for_upload):
2019-04-15 Alex Christensen <achristensen@webkit.org>
Add a DiagnosticLogging method taking an arbitrary dictionary of values.
https://bugs.webkit.org/show_bug.cgi?id=196773
Reviewed by Jer Noble.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDiagnosticLogging.mm:
(-[TestLoggingDelegate _webView:logDiagnosticMessage:description:valueDictionary:]):
(TEST):
2019-04-15 Aakash Jain <aakash_jain@apple.com>
ews-build should clearly indicate flaky test failures
https://bugs.webkit.org/show_bug.cgi?id=196947
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(AnalyzeAPITestsResults.analyzeResults):
2019-04-15 Brent Fulgham <bfulgham@apple.com>
InjectedBundle parameters often need initialization function called before unarchiving
https://bugs.webkit.org/show_bug.cgi?id=189709
<rdar://problem/44573653>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
(-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
2019-04-12 Ryosuke Niwa <rniwa@webkit.org>
HashTable::removeIf always shrinks the hash table by half even if there is nothing left
https://bugs.webkit.org/show_bug.cgi?id=196681
Reviewed by Darin Adler.
Added tests.
* TestWebKitAPI/Tests/WTF/HashSet.cpp:
(WTF_HashSet.RemoveIf):
(WTF_HashSet.RemoveIfShrinkToBestSize):
2019-04-15 John Wilander <wilander@apple.com>
Send delayed Ad Click Attribution conversion requests to the click source
https://bugs.webkit.org/show_bug.cgi?id=196838
<rdar://problem/47650157>
Reviewed by Chris Dumez and Youenn Fablet.
This patch adds test infrastructure to override the default behavior in
WebKit::NetworkAdClickAttribution.
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::dumpAdClickAttribution):
(WTR::TestRunner::clearAdClickAttribution):
(WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
(WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setAdClickAttributionOverrideTimerForTesting):
(WTR::TestController::setAdClickAttributionConversionURLForTesting):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-04-15 Aakash Jain <aakash_jain@apple.com>
[ews-app] status-bubble should display position in queue
https://bugs.webkit.org/show_bug.cgi?id=196607
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._queue_position): Method to calculate patch's position in queue.
2019-04-15 Aakash Jain <aakash_jain@apple.com>
[ews-build] Do not run clean build by default on EWS builders
https://bugs.webkit.org/show_bug.cgi?id=196897
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(ApplyPatch.start): Do not create .buildbot-patched file. This is a special file for Buildbot and if this
file is present, during the Source checkout, Buildbot cleans the working directory completely (including removing
untracked directories like WebKitBuild).
(CheckOutSource.__init__): Pass method=clean so that Buildbot clean the working directory. This does not remove
untracked files/directories (like WebKitBuild).
2019-04-15 Per Arne Vollan <pvollan@apple.com>
TestRunner::notifyDone() should be safely reentrant
https://bugs.webkit.org/show_bug.cgi?id=196898
Reviewed by Darin Adler.
It is currently possible that TestRunner::notifyDone() will call itself, since
notifyDone() will force a repaint, which can start executing JavaScript, which
may call notifyDone() again. This can lead to test failures and flakiness.
Fix this by setting the m_waitToDump flag before calling the dump() method.
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::notifyDone):
(TestRunner::forceImmediateCompletion):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::notifyDone):
(TestRunner::forceImmediateCompletion):
2019-04-15 Philippe Normand <pnormand@igalia.com>
[GTK][WPE] Add enable-media websetting
https://bugs.webkit.org/show_bug.cgi?id=196863
Reviewed by Michael Catanzaro.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings): Add test for the enable-media web-setting.
2019-04-14 Wenson Hsieh <wenson_hsieh@apple.com>
API test WKAttachmentTests.AddAttachmentToConnectedImageElement is a flaky failure on Mac Release builds
https://bugs.webkit.org/show_bug.cgi?id=196905
<rdar://problem/49886096>
Reviewed by Tim Horton.
This flaky test exercises a race condition between when attachment insertion updates are dispatched from the web
process to the UI process, and when script is executed via -[WKWebView evaluateJavaScript:completionHandler:].
Since attachment insertion and removal updates from the web process to the UI process are scheduled on a zero-
delay timer, we end up with this sequence of events in the problematic (failure) case:
(a) [UI] Run script #1 (which calls `HTMLAttachmentElement.getAttachmentIdentifier`)
...IPC from UI to web process...
(b) [Web] Evaluate script #1 in the web process, which schedules attachment updates on a zero-delay timer
...IPC from web to UI process...
(c) [UI] Invoke completion handler for script #1
(d) [UI] Run script #2 (which calls `document.querySelector('img').attachmentIdentifier`)
...IPC from UI to web process...
(e) [Web] Evaluate script #2 in the web process
(f) [Web] Zero-delay timer fires and dispatches attachment updates to the UI process
...which means that script #2 will complete before the UI process has received the attachment updates sent in
step (f). However, in the case where the flaky test succeeds, the zero-delay timer in (f) fires *before* script
#2 is run in step (e).
This patch fixes the flaky test by waiting until attachment insertion updates are guaranteed to be received in
the UI process by waiting on a script message posted by the web process, after attachment updates are
dispatched.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2019-04-14 Aakash Jain <aakash_jain@apple.com>
Disable Flaky API Test WKAttachmentTests.AddAttachmentToConnectedImageElement
https://bugs.webkit.org/show_bug.cgi?id=196909
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2019-04-13 Tadeu Zagallo <tzagallo@apple.com>
CodeCache should check that the UnlinkedCodeBlock was successfully created before caching it
https://bugs.webkit.org/show_bug.cgi?id=196880
Reviewed by Yusuke Suzuki.
Add a new function for bytecode cache tests that does not forceDiskCache
for the second run: runBytecodeCacheNoAssetion. This is necessary for the
test added in this patch, since the code is invalid and therefore won't be
cached. It should also be useful for tests that evaluate dynamically
generated code.
* Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
* Scripts/run-jsc-stress-tests:
2019-04-12 Eric Carlson <eric.carlson@apple.com>
Update AudioSession route sharing policy
https://bugs.webkit.org/show_bug.cgi?id=196776
<rdar://problem/46501611>
Reviewed by Jer Noble.
* TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
(TestWebKitAPI::routeSharingPolicyLongFormVideo):
(TestWebKitAPI::routeSharingPolicyLongFormAudio):
(TestWebKitAPI::TEST):
2019-04-12 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Software keyboard is shown too frequently on some websites
https://bugs.webkit.org/show_bug.cgi?id=195856
<rdar://problem/49191395>
Reviewed by Darin Adler.
Add support for attaching or detaching the hardware keyboard on iOS in layout tests.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setHardwareKeyboardAttached):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setHardwareKeyboardAttached):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
Additionally link against GraphicsServices in WebKitTestRunner.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
(WTR::UIScriptController::setHardwareKeyboardAttached):
2019-04-12 Ludovico de Nittis <ludovico.denittis@collabora.com>
[GTK][WPE] Fix pacman install-dependencies packages
https://bugs.webkit.org/show_bug.cgi?id=196817
Reviewed by Žan Doberšek.
python3-setuptools is called python-setuptools
ruby-highline is only available on AUR
libv4l-devel is incorporated in v4l-utils
* gtk/install-dependencies:
* wpe/install-dependencies:
2019-04-11 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] REGRESSION(r243860): Many tests failing
https://bugs.webkit.org/show_bug.cgi?id=196791
Reviewed by Joanmarie Diggs.
Rework the accessibility unit test to use DBus for the communication with the server. This way we can load
multiple documents and check that accessibility hierarchy is updated after a navigation.
* TestWebKitAPI/Tests/WebKitGtk/AccessibilityTestServer.cpp:
(loadChangedCallback):
* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(AccessibilityTest::AccessibilityTest):
(AccessibilityTest::~AccessibilityTest):
(AccessibilityTest::loadHTMLAndWaitUntilFinished):
(AccessibilityTest::findTestServerApplication):
(AccessibilityTest::findDocumentWeb):
(AccessibilityTest::findRootObject):
(AccessibilityTest::waitUntilChildrenRemoved):
(AccessibilityTest::ensureProxy):
(testAtspiBasicHierarchy):
(beforeAll):
(afterAll):
2019-04-11 Aakash Jain <aakash_jain@apple.com>
[ews-build] Handle bug titles with unicode characters
https://bugs.webkit.org/show_bug.cgi?id=196802
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch._is_bug_closed):
2019-04-11 Michael Saboff <msaboff@apple.com>
Improve the Inline Cache Stats code
https://bugs.webkit.org/show_bug.cgi?id=196836
Reviewed by Saam Barati.
Added a new script to consolidate and arrange the output of --useICStats option.
This script merges the output from every group into one large table and sorts it from most common to
least common. It also counts the slow path GetById and PutById variants and then calculates the
percentage of gets or puts for each unique base,property pair compared to all the gets and puts.
Put together, this is useful to see what property accesses are not getting cached.
* Scripts/ic-stats.py: Added.
(ICStats):
(ICStats.__init__):
(ICStats.parse):
(ICStats.dumpStats):
(usage):
2019-04-10 Alex Christensen <achristensen@webkit.org>
WKNavigationResponse._downloadAttribute should be nil when no download attribute is present
https://bugs.webkit.org/show_bug.cgi?id=196809
<rdar://49800762>
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(TEST):
2019-04-10 Said Abou-Hallawa <sabouhallawa@apple.com>
requestAnimationFrame should execute before the next frame
https://bugs.webkit.org/show_bug.cgi?id=177484
Reviewed by Simon Fraser.
Add trace points for the page RenderingUpdate.
* Tracing/SystemTracePoints.plist:
2019-04-10 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] Use a bundled vswhere.exe instead of downloading by update-vswhere.py
https://bugs.webkit.org/show_bug.cgi?id=196760
Reviewed by Don Olmstead.
vswhere.exe has been bundled since Visual Studio 2017 version
15.2. We shouldn't download vswhere.exe.
* Scripts/build-jsc: Do not call update-vswhere.py.
* Scripts/build-webkit: Ditto.
* Scripts/update-vswhere.py: Removed.
* Scripts/webkitdirs.pm:
(requireModulesForVSWhere): Deleted.
(pickCurrentVisualStudioInstallation): Deleted.
(visualStudioInstallDirVSWhere): Return the latest installed VS
installation path by using the bundled vswhere.exe.
(setupCygwinEnv): Removed a unused variable $visualStudioPath.
(visualStudioInstallDirFallback): Removed.
2019-04-10 Aakash Jain <aakash_jain@apple.com>
[ews-build] PrintConfiguration should display Xcode version instead of SDKVersion
https://bugs.webkit.org/show_bug.cgi?id=196780
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-build/steps.py:
* BuildSlaveSupport/ews-build/steps_unittest.py:
2019-04-10 Alex Christensen <achristensen@webkit.org>
Add SPI WKNavigationResponse._downloadAttribute
https://bugs.webkit.org/show_bug.cgi?id=196755
<rdar://49587365>
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
(-[NavigationResponseTestDelegate navigationResponse]):
(-[NavigationResponseTestDelegate waitForNavigationResponseCallback]):
(-[NavigationResponseTestDelegate waitForNavigationFinishedCallback]):
(-[NavigationResponseTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[NavigationResponseTestDelegate webView:didFinishNavigation:]):
(-[NavigationResponseTestDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
(readRequest):
(writeResponse):
(TEST):
2019-04-10 Tim Horton <timothy_horton@apple.com>
Add modern API for overriding the page's specified viewport configuration
https://bugs.webkit.org/show_bug.cgi?id=167734
<rdar://problem/30331795>
Reviewed by Simon Fraser.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm: Added.
2019-04-10 Tadeu Zagallo <tzagallo@apple.com>
Add support for incremental bytecode cache updates
https://bugs.webkit.org/show_bug.cgi?id=195000
Reviewed by Filip Pizlo.
Exit when the initial run to generate bytecode fails.
* Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
2019-04-10 Alex Christensen <achristensen@webkit.org>
RemoteObjectRegistry message receiver should be removed when WebPage::close is called instead of waiting until dealloc
https://bugs.webkit.org/show_bug.cgi?id=196744
<rdar://49415309>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
(-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
2019-04-10 Wenson Hsieh <wenson_hsieh@apple.com>
Add a way to opt into modern compatibility mode in layout tests
https://bugs.webkit.org/show_bug.cgi?id=196770
<rdar://problem/49777550>
Reviewed by Antoine Quint.
Add a new test option to enable modern compatibility mode in layout tests.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
(WTR::TestController::enableModernCompatibilityMode):
2019-04-10 Andy Estes <aestes@apple.com>
Try to fix the 32-bit watchOS build.
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
2019-04-10 Antoine Quint <graouts@apple.com>
Enable Pointer Events on watchOS
https://bugs.webkit.org/show_bug.cgi?id=196771
<rdar://problem/49040909>
Reviewed by Dean Jackson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-04-10 Philippe Normand <pnormand@igalia.com>
Unreviewed. Fix WPE accessibility tests after r244059.
We are failing to load the injected bundle due to undefined symbol
AccessibilityUIElement::replaceTextInRange().
* WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
(WTR::AccessibilityUIElement::replaceTextInRange):
2019-04-10 Takashi Komori <Takashi.Komori@sony.com>
[WinCairo][MiniBrowser] Pull down menu "Disable JavaScript" doesn't work.
https://bugs.webkit.org/show_bug.cgi?id=196727
Reviewed by Fujii Hironori.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::create):
2019-04-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add unit tests for PrintConfiguration
https://bugs.webkit.org/show_bug.cgi?id=196752
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
2019-04-09 Keith Rollin <krollin@apple.com>
Unreviewed build maintenance -- update .xcfilelists.
* DumpRenderTree/DerivedSources-input.xcfilelist:
* DumpRenderTree/DerivedSources-output.xcfilelist:
2019-04-09 Zalan Bujtas <zalan@apple.com>
[AutoSizing] Avoid making text paragraphs scroll horizontally when there is a wide table
https://bugs.webkit.org/show_bug.cgi?id=196743
<rdar://problem/43897551>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm: expected behavior change.
(TEST):
2019-04-09 Youenn Fablet <youenn@apple.com>
Close service worker database on network process suspension
https://bugs.webkit.org/show_bug.cgi?id=196623
<rdar://problem/48930869>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-04-09 Daniel Bates <dabates@apple.com>
[iPad] Should open popover when the spacebar is pressed
https://bugs.webkit.org/show_bug.cgi?id=196360
<rdar://problem/49389129>
Reviewed by Brent Fulgham.
Add testing infrastructure to support waiting for a popover to be presented or dismissed.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingPopover const): Added.
(WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
(WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptContext.h:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setWillPresentPopoverCallback): Added.
(WTR::UIScriptController::willPresentPopoverCallback const): Added.
(WTR::UIScriptController::setDidDismissPopoverCallback): Added.
(WTR::UIScriptController::didDismissPopoverCallback const): Added.
(WTR::UIScriptController::isShowingPopover const): Added.
(WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
(WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView initWithFrame:configuration:]): Update some state.
(-[TestRunnerWKWebView resetInteractionCallbacks]): Ditto.
(-[TestRunnerWKWebView _willPresentPopover]): Added.
(-[TestRunnerWKWebView _didDismissPopover]): Added.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingPopover const): Added.
(WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
(WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
2019-04-09 Alex Christensen <achristensen@webkit.org>
Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
https://bugs.webkit.org/show_bug.cgi?id=196665
<rdar://45115669>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(goBack):
(+[SimpleLookupContext sharedLookupContext]):
(-[SimpleLookupContext lookUpURL:completionHandler:]):
(TEST):
(+[Simple3LookupContext sharedLookupContext]): Deleted.
(-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
2019-04-09 John Wilander <wilander@apple.com>
Pick up Ad Click Attribution conversions in NetworkResourceLoader::willSendRedirectedRequest()
https://bugs.webkit.org/show_bug.cgi?id=196558
<rdar://problem/47650245>
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
(TestWebKitAPI::TEST):
Added tests of WebCore::AdClickAttribution::parseConversionRequest().
2019-04-09 Don Olmstead <don.olmstead@sony.com>
[CMake] Apple builds should use ICU_INCLUDE_DIRS
https://bugs.webkit.org/show_bug.cgi?id=196720
Reviewed by Konstantin Tokarev.
* TestWebKitAPI/PlatformMac.cmake:
2019-04-09 Jonathan Bedard <jbedard@apple.com>
iOS 12 Simulator Release WK2 frequently timing out while running layout tests
https://bugs.webkit.org/show_bug.cgi?id=196694
<rdar://problem/48388734>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/port/image_diff.py:
(ImageDiffer.diff_image): If the ImageDiff process has data, kill it before running again.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.has_available_stdout): Check if stdout has data in it.
(ServerProcess._wait_for_data_and_update_buffers_using_select):
(ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
* Scripts/webkitpy/port/server_process_mock.py:
(MockServerProcess.has_available_stdout):
* Scripts/webkitpy/port/server_process_unittest.py:
(TestServerProcess.serial_test_basic):
2019-04-09 Jer Noble <jer.noble@apple.com>
Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
https://bugs.webkit.org/show_bug.cgi?id=196097
Reviewed by Eric Carlson.
Drive-by bug fix: allow tests to play audio without a user gesture by default.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2019-04-09 Pablo Saavedra <psaavedra@igalia.com>
[JSCOnly] Add an i386 JSCOnly EWS that runs tests
https://bugs.webkit.org/show_bug.cgi?id=196690
Reviewed by Michael Catanzaro.
* QueueStatusServer/config/queues.py:
* Scripts/webkitpy/common/config/ews.json:
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(test_ews_name):
2019-04-09 Chris Dumez <cdumez@apple.com>
Loads using loadHTMLString() cause flashing when process-swapping
https://bugs.webkit.org/show_bug.cgi?id=196714
<rdar://problem/49637354>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-09 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix ATK accessibility tests after r244059.
We are failing to load the injected bundle due to undefined symbol
AccessibilityUIElement::replaceTextInRange().
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::replaceTextInRange):
2019-04-08 Fujii Hironori <Hironori.Fujii@sony.com>
AX: Support API: accessibilityReplaceRange:withText
https://bugs.webkit.org/show_bug.cgi?id=196636
Unreviewed build fix for Windows port.
* WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
(WTR::AccessibilityUIElement::replaceTextInRange): Added.
2019-04-08 Don Olmstead <don.olmstead@sony.com>
[CMake][WinCairo] Separate copied headers into different directories
https://bugs.webkit.org/show_bug.cgi?id=196655
Reviewed by Michael Catanzaro.
* DumpRenderTree/CMakeLists.txt:
* MiniBrowser/win/CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformWin.cmake:
2019-04-08 Jonathan Bedard <jbedard@apple.com>
Log stack-trace for run-webkit-tests when interrupted
https://bugs.webkit.org/show_bug.cgi?id=176393
<rdar://problem/34262310>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/common/interrupt_debugging.py: Added.
(log_stack_trace): Given a Python frame object, log a stack trace to the provided file.
(StackTraceFileContext): Context which allows stack-traces to be printed to stderr or to a file.
(log_stack_trace_on_term): Attach a listener to SIGTERM so that a stack-trace can be logged when a program is terminated.
(log_stack_trace_on_ctrl_c): Attach a listener to SIGINT so that a stack-trace can be logged when a program is CTRL+Ced.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(main): Set handlers to log stack trace on interruption.
2019-04-08 Fujii Hironori <Hironori.Fujii@sony.com>
AX: Support API: accessibilityReplaceRange:withText
https://bugs.webkit.org/show_bug.cgi?id=196636
Unreviewed build fix for Windows port.
* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::replaceTextInRange): Changed the return value type from void to bool.
2019-04-08 Aakash Jain <aakash_jain@apple.com>
[ews-build] Scripts using Buildbot API have CORS error
https://bugs.webkit.org/show_bug.cgi?id=196709
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-build/master.cfg: Set allowed_origins appropriately.
2019-04-08 Chris Fleizach <cfleizach@apple.com>
AX: Support API: accessibilityReplaceRange:withText
https://bugs.webkit.org/show_bug.cgi?id=196636
Reviewed by Daniel Bates.
* DumpRenderTree/AccessibilityUIElement.cpp:
(replaceTextInRangeCallback):
(AccessibilityUIElement::replaceTextInRange):
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::replaceTextInRange):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(AccessibilityUIElement::replaceTextInRange):
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::replaceTextInRange):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::AccessibilityUIElement::replaceTextInRange):
2019-04-08 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Do not allow starting selection drags when selection views are not visible
https://bugs.webkit.org/show_bug.cgi?id=196686
<rdar://problem/49399192>
Reviewed by Tim Horton.
Adjust some existing API tests to make the web view become first responder before trying to begin dragging, and
also add some new API tests to cover scenarios where the web view is not first responder.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
Add a switch to optionally make the web view first responder when starting the simulated drag.
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator initWithWebView:]):
(-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
2019-04-08 Justin Fan <justin_fan@apple.com>
[Web GPU] Fix Web GPU experimental feature on iOS
https://bugs.webkit.org/show_bug.cgi?id=196632
Reviewed by Myles C. Maxfield.
Properly make Web GPU available on iOS 11+.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-04-08 Aakash Jain <aakash_jain@apple.com>
[ews-build] Do not upload archive when Compile Fails
https://bugs.webkit.org/show_bug.cgi?id=196674
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-build/factories.py:
(BuildFactory.__init__): Remove steps which require dynamic decision about whether to run or not.
* BuildSlaveSupport/ews-build/steps.py:
(CompileWebKit.evaluateCommand): Dynamically decide which steps to run based on compile status.
(CompileWebKitToT.evaluateCommand): Explicitly override Compile.evaluateCommand so that it
doesn't inherit CompileWebKit.evaluateCommand which dynamically adds more steps.
2019-04-08 Guillaume Emont <guijemont@igalia.com>
Enable DFG on MIPS
https://bugs.webkit.org/show_bug.cgi?id=196689
Reviewed by Žan Doberšek.
Since the bytecode change, we enabled the baseline JIT on mips in
r240432, but DFG is still missing. With this change, all tests are
passing on a ci20 board.
* Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
2019-04-08 Philippe Normand <pnormand@igalia.com>
[Flatpak] Second run update-webkitwpe-flatpak fails
https://bugs.webkit.org/show_bug.cgi?id=192702
Reviewed by Carlos Garcia Campos.
* flatpak/flatpakutils.py:
(FlatpakObject.flatpak): Fix typo.
(FlatpakPackage.install): When installing, also update to the configured remote commit.
* flatpak/org.webkit.WebKit.yaml: Update GNOME 3.28 SDK/runtime hashes.
2019-04-05 Sergio Villar Senin <svillar@igalia.com>
[GTK][WPE] outlook.live.com displays old-fashioned UI
https://bugs.webkit.org/show_bug.cgi?id=196642
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST): New Mac platform quirk test.
2019-04-07 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r243956.
https://bugs.webkit.org/show_bug.cgi?id=196688
Broke API Test SafeBrowsing.WKWebViewGoBackIFrame (Requested
by aakashjain on #webkit).
Reverted changeset:
"Clicking "Go Back" from a safe browsing warning from an
iframe should navigate the WKWebView back to the previous
page"
https://bugs.webkit.org/show_bug.cgi?id=196665
https://trac.webkit.org/changeset/243956
2019-04-06 Ryosuke Niwa <rniwa@webkit.org>
Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
https://bugs.webkit.org/show_bug.cgi?id=196669
Reviewed by Geoffrey Garen.
Added three new unit tests for WeakHashSet.
* TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
(WTF_WeakPtr.WeakHashSetConstObjects):
(WTF_WeakPtr.WeakHashSetComputesEmpty):
(WTF_WeakPtr.WeakHashSetComputeSize):
2019-04-06 Wenson Hsieh <wenson_hsieh@apple.com>
Hide next and previous form control buttons when WKWebView is editable
https://bugs.webkit.org/show_bug.cgi?id=196672
<rdar://problem/35625321>
Reviewed by Tim Horton.
Add a new API test.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(-[TestWKWebView lastTrailingBarButtonGroup]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2019-04-05 Yongjun Zhang <yongjun_zhang@apple.com>
We should pass minimumEffectiveDeviceWidth to web process on new page creation.
https://bugs.webkit.org/show_bug.cgi?id=196077
<rdar://problem/49108202>
Reviewed by Chris Dumez.
Add an API test to verify the minimumEffectDeviceWidth is passed to web content process
on new web view.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-05 Saam Barati <sbarati@apple.com>
Make compare-results understand MotionMark
https://bugs.webkit.org/show_bug.cgi?id=196666
Reviewed by Yusuke Suzuki.
* Scripts/compare-results:
(PLT5Results):
(detectMotionMark):
(detectMotionMark1_1):
(motionMarkResults):
(motionMark1_1Results):
(detectBenchmark):
(biggerIsBetter):
(main):
2019-04-05 Alex Christensen <achristensen@webkit.org>
Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
https://bugs.webkit.org/show_bug.cgi?id=196665
<rdar://45115669>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(goBack):
(+[SimpleLookupContext sharedLookupContext]):
(-[SimpleLookupContext lookUpURL:completionHandler:]):
(TEST):
(+[Simple3LookupContext sharedLookupContext]): Deleted.
(-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
2019-04-05 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add configuration and architecture for windows builders
https://bugs.webkit.org/show_bug.cgi?id=196660
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/config.json:
2019-04-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Don't run subsequent rounds if interrupted
https://bugs.webkit.org/show_bug.cgi?id=196646
Reviewed by Aakash Jain.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Bail out if interrupted.
2019-04-05 Sihui Liu <sihui_liu@apple.com>
Test sessionStorage in PSON private browsing mode
https://bugs.webkit.org/show_bug.cgi?id=196561
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-04-05 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r243833.
https://bugs.webkit.org/show_bug.cgi?id=196645
This change breaks build of WPE and GTK ports (Requested by
annulen on #webkit).
Reverted changeset:
"[CMake][WTF] Mirror XCode header directories"
https://bugs.webkit.org/show_bug.cgi?id=191662
https://trac.webkit.org/changeset/243833
2019-04-04 Simon Fraser <simon.fraser@apple.com>
Simple iframe scrolling test fails to get a composited scrolling frame in WebKitTestRunnerApp
https://bugs.webkit.org/show_bug.cgi?id=196635
Reviewed by Antti Koivisto.
InjectedBundle::beginTesting() calling WKBundleSetAsyncFrameScrollingEnabled() makes it impossible
for a test to enable async frame scrolling via:
<!-- webkit-test-runner [ internal:AsyncFrameScrollingEnabled=true ] -->
so remove it and have TestController::resetPreferencesToConsistentValues() set the default value.
Test: scrollingcoordinator/ios/programmatic-frame-scroll.html
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2019-04-04 Alexey Proskuryakov <ap@apple.com>
Use a correct LC_RPATH when building with ASan
https://bugs.webkit.org/show_bug.cgi?id=196576
Reviewed by David Kilzer.
* asan/asan.xcconfig: As a temporary hack, just force LC_RPATH on all binaries,
so that ../Frameworks is checked. This is simpler and more reliable than updating
each SPC service xcconfig.
2019-04-04 Aakash Jain <aakash_jain@apple.com>
Disable Flaky API Test TestWebKitAPI.WebKit.FocusTextInputContext
https://bugs.webkit.org/show_bug.cgi?id=196629
Reviewed by Lucas Forschler.
* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
2019-04-04 Aakash Jain <aakash_jain@apple.com>
[ews-app] while waiting in queue status-bubble for testers queues should display build information from builder queue
https://bugs.webkit.org/show_bug.cgi?id=196618
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble): Added QUEUE_TRIGGERS.
(StatusBubble._build_bubble): Get the build from builder if tester has not started the build yet.
(StatusBubble._get_parent_queue): Get the name of the parent (builder) queue.
(StatusBubble.get_latest_build_for_queue): If the queue doesn't have any build yet, return build information from
its parent(builder).
2019-04-04 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status-bubble steps are sometimes displayed in reverse order
https://bugs.webkit.org/show_bug.cgi?id=196625
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._steps_messages): Explicitly specify order_by('uid').
2019-04-04 Aakash Jain <aakash_jain@apple.com>
Disable Flaky API Test TestWebKitAPI.KeyboardInputTests.KeyboardTypeForInput
https://bugs.webkit.org/show_bug.cgi?id=196630
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2019-04-04 Youenn Fablet <youenn@apple.com>
Pass storage quota parameters from UIProcess to NetworkProcess as part of WebsiteDataStore parameters
https://bugs.webkit.org/show_bug.cgi?id=196543
Reviewed by Alex Christensen.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generatePageConfiguration):
2019-04-04 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status bubble should not display skipped buildbot steps
https://bugs.webkit.org/show_bug.cgi?id=196584
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-04-04 Aakash Jain <aakash_jain@apple.com>
[ews-app] configure localhost as BUILDBOT_SERVER_HOST in testing mode
https://bugs.webkit.org/show_bug.cgi?id=196620
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/config.py:
2019-04-04 Per Arne Vollan <pvollan@apple.com>
[Win] DumpRenderTreeWatchDog.py is not checked into source
https://bugs.webkit.org/show_bug.cgi?id=196567
<rdar://problem/49525901>
Reviewed by Lucas Forschler.
This script is used on Win EWS bots to terminate hanging DRT processes.
* EWSTools/dumprendertreewatchdog.py: Added.
2019-04-04 Chris Dumez <cdumez@apple.com>
Unreviewed, roll out r243858 which made tests time out.
Disable new API tests on Windows instead.
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST):
2019-04-03 Carlos Garcia Campos <cgarcia@igalia.com>
[ATK] Cleanup WebPageAccessibilityObjectAtk
https://bugs.webkit.org/show_bug.cgi?id=196537
Reviewed by Michael Catanzaro.
Also consider files under atk directories as exceptions for GObject conventions.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
2019-04-03 Fujii Hironori <Hironori.Fujii@sony.com>
The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
https://bugs.webkit.org/show_bug.cgi?id=196588
<rdar://problem/49365787>
Unreviewed build fix for Windows port.
error C3861: 'kill': identifier not found
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST): Replaced kill with WKPageTerminate.
2019-04-03 Aakash Jain <aakash_jain@apple.com>
[ews-build] Cancel build and similar operations should have authentication
https://bugs.webkit.org/show_bug.cgi?id=196520
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/master.cfg: Configure authentication using admin's username and password from
environment variables.
2019-04-03 Aakash Jain <aakash_jain@apple.com>
[ews-build] Do not trigger queues which are not in production yet
https://bugs.webkit.org/show_bug.cgi?id=196581
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/config.json:
2019-04-03 Chris Dumez <cdumez@apple.com>
Unreviewed, fix typo in the name of API test added in r243848.
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST):
2019-04-03 Chris Dumez <cdumez@apple.com>
The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
https://bugs.webkit.org/show_bug.cgi?id=196588
<rdar://problem/49365787>
Reviewed by Ryosuke Niwa.
Add API test coverage.
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::nullJavaScriptCallback):
(TestWebKitAPI::didCrashCheckFrames):
(TestWebKitAPI::TEST):
2019-04-03 Jonathan Bedard <jbedard@apple.com>
run-webkit-tests: Upload test results (new results database)
https://bugs.webkit.org/show_bug.cgi?id=196577
<rdar://problem/34841155>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Upload results after each device shard, since the configuration will be
different for each device.
(Manager._results_to_upload_json_trie): Convert a TestRunResults object to a trie to be
uploaded to a results database.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args): Add new 'Upload Options' and prepare 'Results JSON Options' for deprecation.
2019-04-03 Myles C. Maxfield <mmaxfield@apple.com>
-apple-trailing-word is needed for browser detection
https://bugs.webkit.org/show_bug.cgi?id=196575
Unreviewed.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-04-03 Don Olmstead <don.olmstead@sony.com>
[CMake][WTF] Mirror XCode header directories
https://bugs.webkit.org/show_bug.cgi?id=191662
Reviewed by Konstantin Tokarev.
Use WTFFramework as a dependency and include frameworks/WTF.cmake for AppleWin internal
builds.
* CMakeLists.txt:
* DumpRenderTree/CMakeLists.txt:
* DumpRenderTree/PlatformWin.cmake:
* MiniBrowser/win/CMakeLists.txt:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformWin.cmake:
* WebKitTestRunner/PlatformGTK.cmake:
* WebKitTestRunner/PlatformWin.cmake:
2019-04-03 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status bubble should not display certain infrastructure status messages
https://bugs.webkit.org/show_bug.cgi?id=196550
Reviewed by Lucas Forschler.
Do not display the steps which are un-needed for end-user. This information is still avaiable
if the user click on the bubble and look at the Buildbot build.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._steps_messages):
(StatusBubble._should_display_step): Method to decide whether to display the step or not.
2019-04-03 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use https for sending data to ews-app
https://bugs.webkit.org/show_bug.cgi?id=196492
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/events.py:
2019-04-03 Myles C. Maxfield <mmaxfield@apple.com>
Remove support for -apple-trailing-word
https://bugs.webkit.org/show_bug.cgi?id=196525
Reviewed by Zalan Bujtas.
This CSS property is nonstandard and not used.
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-04-03 Youenn Fablet <youenn@apple.com>
Add a test for DOMCache on multiple browsing in case of private browsing
https://bugs.webkit.org/show_bug.cgi?id=196524
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(-[SWMessageHandlerForCacheStorage userContentController:didReceiveScriptMessage:]):
2019-04-03 Jonathan Bedard <jbedard@apple.com>
[ews] Clean out ~/Library/Logs/CoreSimulator/ on reboot
https://bugs.webkit.org/show_bug.cgi?id=196540
Reviewed by Aakash Jain.
* EWSTools/start-queue-mac.sh: Remove CoreSimulator logs.
2019-04-03 Wenson Hsieh <wenson_hsieh@apple.com>
Add plumbing for a compatibility mode preference in WebKit
https://bugs.webkit.org/show_bug.cgi?id=196005
Reviewed by Tim Horton.
Add new API tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/ios/PreferredCompatibilityMode.mm: Added.
2019-04-03 Claudio Saavedra <csaavedra@igalia.com>
[WPE][GTK] Update libsrtp dependency package for Debian
https://bugs.webkit.org/show_bug.cgi?id=196528
Reviewed by Frédéric Wang.
* gtk/install-dependencies:
* wpe/install-dependencies:
2019-04-02 Fujii Hironori <Hironori.Fujii@sony.com>
[WK2] Add support for Window's beforeprint / afterprint events
https://bugs.webkit.org/show_bug.cgi?id=196478
<rdar://problem/49535124>
Unreviewed build fix for MSVC.
> WebKitTestRunner\TestController.cpp(267): error C2397: conversion from 'double' to 'float' requires a narrowing conversion
And, there is a style guideline. <https://webkit.org/code-style-guidelines/#floating-point-literals>
* WebKitTestRunner/TestController.cpp:
(WTR::printFrame): Use int and float literals.
2019-04-02 Aakash Jain <aakash_jain@apple.com>
[ews-build] Reassign bots to queues
* BuildSlaveSupport/ews-build/config.json: Reassigned ews150 and ews152.
2019-04-02 Chris Dumez <cdumez@apple.com>
[WK2] Add support for Window's beforeprint / afterprint events
https://bugs.webkit.org/show_bug.cgi?id=196478
Reviewed by Alex Christensen.
Add minimal implementation for printFrame in WebKitTestRunner.
* WebKitTestRunner/TestController.cpp:
(WTR::printFrame):
(WTR::TestController::createOtherPage):
(WTR::TestController::createWebViewWithOptions):
2019-04-02 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status bubble hover over message should clearly indicate that build is in-progress
https://bugs.webkit.org/show_bug.cgi?id=196491
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-04-02 Aakash Jain <aakash_jain@apple.com>
[ews-build] Configure buildbot try credentials in environment variables
https://bugs.webkit.org/show_bug.cgi?id=196501
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py: Read credentials from environment variables.
* BuildSlaveSupport/ews-app/ews/common/buildbot.py: Rename BUILDBOT_PB_USERNAME to BUILDBOT_TRY_USERNAME.
* BuildSlaveSupport/ews-app/ews/config.py: Ditto.
2019-04-02 Wenson Hsieh <wenson_hsieh@apple.com>
REGRESSION (r243726): Crash at unrecognized selector: -[WKWebpagePreferences webpagePreferences]
https://bugs.webkit.org/show_bug.cgi?id=196496
<rdar://problem/49521634>
Reviewed by Chris Dumez.
Add new API tests (see WebKit ChangeLog for more detail).
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(TEST):
2019-04-02 David Kilzer <ddkilzer@apple.com>
Rename CLANG_ADDRESS_SANITIZER Xcode variable to ENABLE_ADDRESS_SANITIZER
<https://webkit.org/b/196499>
Reviewed by Alexey Proskuryakov.
* asan/asan.xcconfig: Change CLANG_ADDRESS_SANITIZER to
ENABLE_ADDRESS_SANITIZER.
2019-04-02 Fujii Hironori <Hironori.Fujii@sony.com>
[CMake] WEBKIT_MAKE_FORWARDING_HEADERS shouldn't use POST_BUILD to copy generated headers
https://bugs.webkit.org/show_bug.cgi?id=182757
Reviewed by Don Olmstead.
* TestWebKitAPI/PlatformGTK.cmake: Removed the workaround of using an intermediate target.
* TestWebKitAPI/PlatformWPE.cmake: Ditto.
2019-04-01 Jonathan Bedard <jbedard@apple.com>
run-api-tests: Upload test results
https://bugs.webkit.org/show_bug.cgi?id=196323
<rdar://problem/49356714>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/api_tests/manager.py:
(Manager):
(Manager.run): Upload results to a results database.
* Scripts/webkitpy/api_tests/run_api_tests.py:
(parse_args): Add upload arguments.
* Scripts/webkitpy/port/base.py:
(Port):
(Port.configuration_for_upload): Creates a configuration dictionary for uploading results.
(Port.commits_for_upload): Create a list of commits from the WebKit repository tests are run from along
with commits from any other associated repositories.
* Scripts/webkitpy/port/device.py:
(Device):
(Device.build_version): Access build_versoin of underlying platform device.
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest):
(IOSSimulatorTest.test_configuration_for_upload):
* Scripts/webkitpy/port/device_port.py:
(DevicePort):
(DevicePort.configuration_for_upload): Devices are unique because their configuration is not
the same as the machine uploading results.
* Scripts/webkitpy/port/mac.py:
(MacPort):
(MacPort.configuration_for_upload): Define SDK in upload configuration for Mac.
* Scripts/webkitpy/port/mac_unittest.py:
(MacTest):
(MacTest.test_configuration_for_upload):
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._create_device_with_runtime):
(SimulatedDevice.__init__): Create simulated device with a build_version.
* Scripts/webkitpy/xcode/simulated_device_unittest.py:
(test_existing_simulator):
2019-04-01 Aakash Jain <aakash_jain@apple.com>
Remove extra newline characters (Follow-up fix to r243707)
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-04-01 Aakash Jain <aakash_jain@apple.com>
[ews-app] Use API_KEY to accept results data
https://bugs.webkit.org/show_bug.cgi?id=196461
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-app/ews/views/results.py:
(Results.post): Validate EWS_API_KEY before accepting any data.
* BuildSlaveSupport/ews-build/events.py:
(Events.sendData): Send EWS_API_KEY if available along with event data.
2019-04-01 Wenson Hsieh <wenson_hsieh@apple.com>
Unable to copy and paste a PDF from Notes into Mail compose body
https://bugs.webkit.org/show_bug.cgi?id=196442
<rdar://problem/48573098>
Reviewed by Tim Horton.
Add new API tests to exercise pasting CNContact and MKMapItem-backed item providers. Additionally, adjust an
existing test that pastes a PDF file as an attachment to not require UIPreferredPresentationStyleAttachment
to be specified on the item providers.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::mapItemForTesting):
(TestWebKitAPI::contactItemForTesting):
2019-04-01 Tim Horton <timothy_horton@apple.com>
Make UIWKDocumentContext rects per-character instead of per-word
https://bugs.webkit.org/show_bug.cgi?id=196459
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
(TEST):
Adjust test results due to switching to per-character rects.
2019-04-01 Chris Dumez <cdumez@apple.com>
UIProcess crash when a prewarmed process is terminated
https://bugs.webkit.org/show_bug.cgi?id=196451
<rdar://problem/49245471>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
(TEST):
2019-04-01 Aakash Jain <aakash_jain@apple.com>
[ews-app] Display OS and Xcode configuration in status-bubble's hover-over message
https://bugs.webkit.org/show_bug.cgi?id=196449
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble.get_os_details): Method to get OS and Xcode details.
(StatusBubble._build_bubble): Moved the timestamp logic to common method.
(StatusBubble.get_build_timestamp): Method to get the timestamp to display for the build.
2019-04-01 Aakash Jain <aakash_jain@apple.com>
[ews-build] Remove force schedulers from OpenSource EWS Buildbot
https://bugs.webkit.org/show_bug.cgi?id=196444
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py: Remove ForceSchedulers.
2019-04-01 Alex Christensen <achristensen@webkit.org>
Add SPI to canonicalize NSURLs with WTF::URL
https://bugs.webkit.org/show_bug.cgi?id=196415
<rdar://problem/44980271>
Reviewed by Darin Adler.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitLegacy/mac/URLCanonicalization.mm: Added.
(TestWebKitAPI::TEST):
2019-04-01 Zan Dobersek <zdobersek@igalia.com>
[WPE] EventSenderProxy constructor is called before a PlatformWindow is usable
https://bugs.webkit.org/show_bug.cgi?id=196441
Reviewed by Carlos Garcia Campos.
Don't cache the wpe_view_backend object that might not exist yet at the
time of EventSenderProxy constructor invocation, but instead retrieve
that object whenever it's required for event dispatching. This should
avoid crashes in this constructor now that it's invoked before any
PlatformWindow has been set up (as changed in r243496).
* WebKitTestRunner/EventSenderProxy.h:
* WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
(WTR::viewBackend):
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::keyDown):
(WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
2019-03-31 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][WebKit] MiniBrowser should support high DPI display
https://bugs.webkit.org/show_bug.cgi?id=196391
Reviewed by Alex Christensen.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::WebKitBrowserWindow): Call resetZoom to set the page zoom factor.
(WebKitBrowserWindow::resetZoom): Changed the default page zoom factor from 1 to the device scale factor.
* MiniBrowser/win/stdafx.h: Define WEBCORE_EXPORT.
2019-03-31 Sam Weinig <weinig@apple.com>
Remove more i386 specific configurations
https://bugs.webkit.org/show_bug.cgi?id=196430
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
ENABLE_WEB_AUTHN_macosx and ENABLE_WEB_RTC_macosx can now be enabled unconditionally on macOS.
2019-03-31 Andy Estes <aestes@apple.com>
[iOS] WebKit should consult the navigation response policy delegate before previewing a QuickLook document
https://bugs.webkit.org/show_bug.cgi?id=196433
<rdar://problem/49293305>
Reviewed by Tim Horton.
Enhanced API test coverage to include all navigation response policy decisions in both
linked-before and linked-on-or-after modes. Also added new expectations for all tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ios/PreviewConverter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
(readFile):
(-[QuickLookDelegate initWithExpectedFileURL:responsePolicy:]):
(-[QuickLookDelegate initWithExpectedFileURL:previewMIMEType:responsePolicy:]):
(-[QuickLookDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[QuickLookDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
(-[QuickLookDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
(-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
(-[QuickLookDelegate _webViewWebProcessDidCrash:]):
(-[QuickLookDelegate _downloadDidStart:]):
(-[QuickLookDelegate _download:didReceiveResponse:]):
(-[QuickLookDelegate _download:didReceiveData:]):
(-[QuickLookDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(-[QuickLookDelegate _downloadDidFinish:]):
(-[QuickLookDelegate _download:didFailWithError:]):
(-[QuickLookDelegate _downloadDidCancel:]):
(-[QuickLookDelegate verifyDownload]):
(runTest):
(runTestDecideBeforeLoading):
(runTestDecideAfterLoading):
(TEST):
(-[QuickLookAsyncDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[QuickLookPasswordDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
(-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]):
(-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
(-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
(-[QuickLookNavigationDelegate webView:didFinishNavigation:]): Deleted.
(-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
(-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
(-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
(-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]): Deleted.
(-[QuickLookDecidePolicyDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
(-[QuickLookDecidePolicyDelegate webView:didFailProvisionalNavigation:withError:]): Deleted.
(-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]): Deleted.
(-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]): Deleted.
2019-03-30 Dominik Infuehr <dinfuehr@igalia.com>
[CMake] add testdfg as target with build-jsc
https://bugs.webkit.org/show_bug.cgi?id=196393
Reviewed by Saam Barati.
Added testdfg as one of the targets to build when
using CMake.
* Scripts/build-jsc:
2019-03-29 Myles C. Maxfield <mmaxfield@apple.com>
Delete WebMetal implementation in favor of WebGPU
https://bugs.webkit.org/show_bug.cgi?id=195418
Reviewed by Dean Jackson.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Removed.
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Removed.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebMetalEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2019-03-29 Chris Dumez <cdumez@apple.com>
REGRESSION (r243523): Six form-related watchOS layout tests are timing out
https://bugs.webkit.org/show_bug.cgi?id=196405
<rdar://problem/49428130>
Reviewed by Wenson Hsieh.
Add a shouldPresentPopovers=false WebKitTestRunner option to cause WKTR to swizzle
the popover presentation methods to be no-ops. Use this in the new test added in
r243523 so that we do not swizzle those methods for all tests. This is needed because
those WatchOS tests rely on the popover getting presented and interactive.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformInitialize):
(WTR::TestController::platformResetStateToConsistentValues):
2019-03-29 Takashi Komori <Takashi.Komori@sony.com>
[Curl] Add Server Trust Evaluation Support.
https://bugs.webkit.org/show_bug.cgi?id=191646
Reviewed by Fujii Hironori.
Implemented MiniBrowser UI for asking if user trusts the server.
* MiniBrowser/win/Common.cpp:
(askServerTrustEvaluation):
(replaceString):
* MiniBrowser/win/Common.h:
* MiniBrowser/win/MiniBrowserLib.rc:
* MiniBrowser/win/MiniBrowserLibResource.h:
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(createPEMString):
(WebKitBrowserWindow::didReceiveAuthenticationChallenge):
(WebKitBrowserWindow::canTrustServerCertificate):
* MiniBrowser/win/WebKitBrowserWindow.h:
2019-03-29 Cathie Chen <cathiechen@igalia.com>
Implement ResizeObserver.
https://bugs.webkit.org/show_bug.cgi?id=157743
Reviewed by Simon Fraser.
Support resizeObserverEnabled webPreferences.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-03-28 John Wilander <wilander@apple.com>
Resource Load Statistics: IPC to the WebsiteDataStore in the UI process from NetworkProcess::deleteWebsiteDataForRegistrableDomains()
https://bugs.webkit.org/show_bug.cgi?id=196281
<rdar://problem/48938748>
Reviewed by Alex Christensen.
This patch adds the function isStatisticsHasLocalStorage() to the
TestRunner. With it, the page can query the WebsiteDataStore in the
UI process to make sure that it sees LocalStorage.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::isStatisticsHasLocalStorage):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::isStatisticsHasLocalStorage):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-03-28 Jiewen Tan <jiewen_tan@apple.com>
API::Data::createWithoutCopying should do a null check before calling CFRelease
https://bugs.webkit.org/show_bug.cgi?id=196276
<rdar://problem/48059859>
Reviewed by Alex Christensen.
Add an API test that will pass a nil to API::Data::createWithoutCopying via NavigationState::NavigationClient::webCryptoMasterKey.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
* TestWebKitAPI/Tests/WebKitCocoa/WebCryptoMasterKey.mm: Added.
(-[WebCryptoMasterKeyNavigationDelegate _webCryptoMasterKeyForWebView:]):
(-[WebCryptoMasterKeyNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TestWebKitAPI::TEST):
2019-03-28 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] webkit_web_resource_get_data_finish can return NULL without setting error
https://bugs.webkit.org/show_bug.cgi?id=186276
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
(webViewLoadChanged):
(testWebResourceGetDataError):
(testWebResourceGetDataEmpty):
(beforeAll):
(webViewloadChanged): Deleted.
2019-03-27 Andy Estes <aestes@apple.com>
REGRESSION (r242686): package-root creates roots with broken symlinks in WebKit.framework/XPCServices/
https://bugs.webkit.org/show_bug.cgi?id=196317
Reviewed by Dan Bernstein.
package-root copies built products into a staging directory using ditto(1), which does not
follow symbolic links as it traverses a directory. Now that the files in
WebKit.framework/XPCServices/ are symbolic links to a location outside of the framework
itself, these become broken links when ditto'd into the staging directory.
To account for this, change package-root to copy using cp(1) in a mode that follows symlinks.
* Scripts/package-root:
2019-03-27 Aakash Jain <aakash_jain@apple.com>
[ews-app] Update display text of Submit for ews analysis
https://bugs.webkit.org/show_bug.cgi?id=196309
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
2019-03-27 David Kilzer <ddkilzer@apple.com>
run-webkit-tests should check for leaks in WebKit processes
<https://webkit.org/b/193772>
<rdar://problem/46526680>
Reviewed by Ryosuke Niwa.
This works by doing the following:
- Add a "#LIST CHILD PROCESSES" command to WebKitTestRunnner.
The list of child processes are returned one per line:
process.name: pid
- Run the "#LIST CHILD PROCESSES" command just before the
"#CHECK FOR WORLD LEAKS" command, and store the list of child
processes on the ServerProcess object.
- When the `--leaks` switch is handled, run check_for_leaks() on
each child process after the main test harness.
* DumpRenderTree/mac/DumpRenderTree.mm:
(handleControlCommand):
- Use strncmp() instead of strcmp().
- Add support for handling "#LIST CHILD PROCESSES" command.
* Scripts/webkitpy/port/base.py:
(Port.check_for_leaks):
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.check_for_leaks):
- Rename redundant 'process_pid' argument to 'process_id'.
* Scripts/webkitpy/port/driver.py:
(Driver.do_post_tests_work):
- Restructure the logic since "#CHECK FOR WORLD LEAKS" is no
longer the only command this sends to WebKitTestRunner.
- If the `--leaks` switch is present, send the
"#LIST CHILD PROCESSES" to WebKitTestRunner and store the
result using Port.set_webkit_processes().
(Driver._parse_child_processes_output):
- Add helper method to parse list of child process names and
process IDs returned from WebKitTestRunner.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort.check_for_leaks):
- Rename redundant 'process_pid' argument to 'process_id'.
* Scripts/webkitpy/port/leakdetector.py:
(LeakDetector._parse_leaks_output):
- Return early if there is no leaks_output.
(LeakDetector.check_for_leaks):
- Rename redundant 'process_pid' argument to 'process_id'.
* Scripts/webkitpy/port/server_process.py:
(ServerProcess.__init__):
(ServerProcess.child_processes):
(ServerProcess.set_child_processes):
- Add instance variable to Port to store list of child process
names and process IDs returned from WebKitTestRunner.
(ServerProcess._start):
- Clear self._child_processes.
(ServerProcess.stop):
- If self._child_processes is set, call
self._port.check_for_leaks() for each child process.
* Scripts/webkitpy/port/server_process_unittest.py:
(TrivialMockPort.check_for_leaks):
- Rename redundant 'process_pid' argument to 'process_id'.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess.stop):
- If self._child_processes is set, call
self._port.check_for_leaks() for each child process.
* Scripts/webkitpy/port/watch_device.py:
(WatchDevicePort.check_for_leaks):
- Rename redundant 'process_pid' argument to 'process_id'.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::dumpResponse):
- Extract method from findAndDumpWorldLeaks() so that it may be
reused by findAndDumpWebKitProcessIdentifiers().
(WTR::TestController::findAndDumpWebKitProcessIdentifiers):
- Add method to output process name and process ID of both the
WebContent and Networking processes.
(WTR::TestController::findAndDumpWorldLeaks):
- Fix missing newline in output when there were no abandoned
documents.
- Call dumpResponse() for extracted code.
(WTR::TestController::handleControlCommand):
- Restructure the logic for "#CHECK FOR WORLD LEAKS".
- Use strncmp() instead of strcmp().
- Call findAndDumpWebKitProcessIdentifiers() when
"#LIST CHILD PROCESSES" command is sent.
* WebKitTestRunner/TestController.h:
(WTR::TestController::dumpResponse):
(WTR::TestController::findAndDumpWebKitProcessIdentifiers):
- Declare methods.
2019-03-27 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Add GLib API test cases after r243434.
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
(testWebViewActiveURI):
(serverCallback):
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(sendRequestCallback):
2019-03-27 Carlos Garcia Campos <cgarcia@igalia.com>
Geolocation request not complete when watch request was started in a different web process
https://bugs.webkit.org/show_bug.cgi?id=195996
Reviewed by Alex Christensen.
Add a test case.
* TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
(TestWebKitAPI::runJavaScriptAlert):
(TestWebKitAPI::TEST):
2019-03-26 Keith Rollin <krollin@apple.com>
Update the way generate-xcfilelists returns strings from functions
https://bugs.webkit.org/show_bug.cgi?id=195975
<rdar://problem/49040807>
Reviewed by Dean Jackson.
There are places where generate-xcfilelists executes assignments with
statements like:
FOO=$(some_function)
where "some_function" return a string by echoing it. E.g.
some_function()
{
echo "Hello, World"
}
This is a common idiom, but it has a problem if "some_function" needs
to call "exit" in an attempt to halt the entire script right then and
there. Since "some_function" is called inside of $(), it's being
executed in a sub-shell. Calling exit in that sub-shell simply exits
that shell; it doesn't not exit the outer shell in which the main part
of the script is still running. As such, the main script keeps
executing when the intent was for the script to halt.
The solution to this is to use a different idiom for returning
strings. The one we now is to pass in the name of the variable to
receive the string result:
some_function()
{
variable_name=$1
eval $variable_name ="Hello, World"
}
The call site now looks like
some_function FOO
Because there's no invocation of a sub-shell, some_function can now
call "exit" if it wants to, and the entire script will exit at that
point.
* Scripts/generate-xcfilelists:
2019-03-26 Chris Dumez <cdumez@apple.com>
Add basic layout test coverage for File Picker on iOS
https://bugs.webkit.org/show_bug.cgi?id=196265
Reviewed by Wenson Hsieh.
Add layout test infrastructure to test the file picker on iOS.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::dismissFilePicker):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::dismissFilePicker):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createWebViewWithOptions):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(overridePresentViewController):
(WTR::TestController::platformInitialize):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::dismissFilePicker):
2019-03-26 Wenson Hsieh <wenson_hsieh@apple.com>
Implement async paste method on UIWKInteractionViewProtocol
https://bugs.webkit.org/show_bug.cgi?id=196267
<rdar://problem/49236346>
Reviewed by Tim Horton.
Add a new test to exercise the new SPI. Additionally, add staging forward declarations for
-pasteWithCompletionHandler:, and remove some old existing staging declarations for other bits of UIKit SPI that
are now a part of all iOS 12 internal SDKs.
* TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
While we're here, also change a few iOS 11.3 checks to just be about PLATFORM(IOS) (since we don't build for iOS
prior to 12, these version checks are effectively only about iOS vs. tvOS or watchOS).
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
* TestWebKitAPI/ios/UIKitSPI.h:
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use PostgreSQL for ews.webkit.org database
https://bugs.webkit.org/show_bug.cgi?id=196270
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews-app/settings.py:
2019-03-26 Jonathan Bedard <jbedard@apple.com>
[ews] Reset simctl states on reboot
https://bugs.webkit.org/show_bug.cgi?id=196260
Rubber-stamped by Aakash Jain.
* EWSTools/start-queue-mac.sh:
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use PostgreSQL for ews-build database
https://bugs.webkit.org/show_bug.cgi?id=196229
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg:
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-build] Get master_hostname dynamically in master.cfg
https://bugs.webkit.org/show_bug.cgi?id=196255
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg: Get hostname dynamically. Also do not
send events data in test mode.
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Set db_constraint to False for Foreign Keys
https://bugs.webkit.org/show_bug.cgi?id=196252
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/step.py:
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-build] is_test_mode_enabled should default to True
https://bugs.webkit.org/show_bug.cgi?id=196248
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg: Reverse the environment variable used to decide is_test_mode_enabled.
2019-03-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add webkitperl to ENABLED_QUEUES
https://bugs.webkit.org/show_bug.cgi?id=196253
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-03-25 Alexey Proskuryakov <ap@apple.com>
Address NSWindow sometimes using WebKitTestRunnerEvent too early
https://bugs.webkit.org/show_bug.cgi?id=196211
rdar://problem/49110552
Reviewed by Tim Horton.
* WebKitTestRunner/TestController.cpp: (WTR::TestController::initialize):
Make sure that EventSenderProxy always exists when running tests. We used to create
it when resetting before the first test, which is a bit too late.
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
(WTR::TestController::platformCreateOtherPage):
(WTR::TestController::finishCreatingPlatformWebView):
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::PlatformWebView):
Moved some code that made NSWindow use NSEvent during web view creation. We may
need to move more if some other case us found, but this is enough for now.
2019-03-26 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix typo in GLib geolocation API after r243285.
gelocation -> geolocation.
* TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp:
(testGeolocationManagerWatchPosition):
2019-03-25 Alex Christensen <achristensen@webkit.org>
Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
https://bugs.webkit.org/show_bug.cgi?id=196213
Reviewed by Geoff Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
(credentialWithIdentityAndKeychainPath):
(-[ChallengeDelegate webView:didFinishNavigation:]):
(-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TestWebKitAPI::TEST):
2019-03-25 Alex Christensen <achristensen@webkit.org>
Expected shouldn't assume its contained types are copyable
https://bugs.webkit.org/show_bug.cgi?id=195986
Reviewed by JF Bastien.
* TestWebKitAPI/Tests/WTF/Expected.cpp:
(TestWebKitAPI::NonCopyable::operator== const):
(TestWebKitAPI::NonCopyable::operator!= const):
(TestWebKitAPI::TEST):
2019-03-25 Tim Horton <timothy_horton@apple.com>
Remove some now-unnecessary dynamic class lookup
https://bugs.webkit.org/show_bug.cgi?id=196237
Reviewed by Simon Fraser.
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
(makeRequest):
(TEST):
2019-03-25 Fujii Hironori <Hironori.Fujii@sony.com>
Unreviewed, rolling out r243450.
AppleWin and WinCairo port builds get broken.
Reverted changeset:
"Add test for fix of #196095"
https://bugs.webkit.org/show_bug.cgi?id=196097
https://trac.webkit.org/changeset/243450
2019-03-25 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r243465.
https://bugs.webkit.org/show_bug.cgi?id=196226
the test doesn't build (Requested by thorton on #webkit).
Reverted changeset:
"Do not terminate the NetworkProcess if a third party
application sends a NSCredential with a SecIdentityRef"
https://bugs.webkit.org/show_bug.cgi?id=196213
https://trac.webkit.org/changeset/243465
2019-03-25 Alex Christensen <achristensen@webkit.org>
Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
https://bugs.webkit.org/show_bug.cgi?id=196213
Reviewed by Geoff Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
(credentialWithIdentityAndKeychainPath):
(-[ChallengeDelegate webView:didFinishNavigation:]):
(-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
(TestWebKitAPI::TEST):
2019-03-25 Aakash Jain <aakash_jain@apple.com>
[ews-build] Gracefully handle missing patch_id in events
https://bugs.webkit.org/show_bug.cgi?id=196216
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/events.py:
2019-03-25 Aakash Jain <aakash_jain@apple.com>
[ews-build] use lz4 compression for improving buildbot performance
https://bugs.webkit.org/show_bug.cgi?id=196155
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg:
2019-03-25 Wenson Hsieh <wenson_hsieh@apple.com>
Pull some API testing helper methods out of TestWKWebView
https://bugs.webkit.org/show_bug.cgi?id=196212
Reviewed by Tim Horton.
Refactor some more API testing utility methods, so that they can be used in
tests that do not use TestWKWebView.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[WKWebView loadTestPageNamed:]):
(-[WKWebView synchronouslyLoadHTMLString:baseURL:]):
(-[WKWebView synchronouslyLoadHTMLString:]):
(-[WKWebView synchronouslyLoadTestPageNamed:]):
(-[TestWKWebView loadTestPageNamed:]): Deleted.
(-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]): Deleted.
(-[TestWKWebView synchronouslyLoadHTMLString:]): Deleted.
(-[TestWKWebView synchronouslyLoadTestPageNamed:]): Deleted.
2019-03-25 Jer Noble <jer.noble@apple.com>
Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
https://bugs.webkit.org/show_bug.cgi?id=196097
Reviewed by Eric Carlson.
Drive-by bug fix: allow tests to play audio without a user gesture by default.
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2019-03-25 Wenson Hsieh <wenson_hsieh@apple.com>
Pull IPadUserInterfaceSwizzler out into a separate header file
https://bugs.webkit.org/show_bug.cgi?id=196193
Reviewed by Anders Carlsson.
Pull the IPadUserInterfaceSwizzler helper class out into a separate file, so that it may
be used in other API tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
(TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler): Deleted.
(TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom): Deleted.
* TestWebKitAPI/ios/IPadUserInterfaceSwizzler.h: Added.
(TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler):
(TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom):
2019-03-25 Gyuyoung Kim <gyuyoung.kim@webkit.org>
Remove NavigatorContentUtils in WebCore/Modules
https://bugs.webkit.org/show_bug.cgi?id=196070
Reviewed by Alex Christensen.
NavigatorContentUtils was to support the custom scheme spec [1].
However, in WebKit side, no port has supported the feature in
WebKit layer after EFL port was removed. So there has been the
only IDL implementation of the NavigatorContentUtils in WebCore.
So we don't need to keep the implementation in WebCore anymore.
[1] https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-03-24 Andy Estes <aestes@apple.com>
[watchOS] Remove unused Proximity Networking code
https://bugs.webkit.org/show_bug.cgi?id=196188
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
(TEST):
2019-03-23 Keith Miller <keith_miller@apple.com>
Refactor clz/ctz and fix getLSBSet.
https://bugs.webkit.org/show_bug.cgi?id=196162
Reviewed by Saam Barati.
Add tests for clz, ctz, getLSBSet, and getMSBSet.
* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST):
2019-03-23 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] check-webkit-style doesn't complain about identifiers with underscores in files under glib, gtk or wpe dirs
https://bugs.webkit.org/show_bug.cgi?id=196143
Reviewed by Michael Catanzaro.
Fix the check for the exception of identifiers starting with webkit_ in files under glib, gtk or wpe
directories.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_names):
2019-03-22 Philippe Normand <pnormand@igalia.com>
[Flatpak] Manifest expanding fails for qt WPE extension
https://bugs.webkit.org/show_bug.cgi?id=196148
Reviewed by Alex Christensen.
* flatpak/flatpakutils.py:
(expand_submodules_recurse): The last recurse manifest expand
iteration might lead to a single module so take it into account
and don't try to recurse further.
2019-03-22 Chris Dumez <cdumez@apple.com>
[ iOS Simulator] REGRESSION (r241821) Layout Test platform/ipad/fast/viewport/viewport-unchanged-by-minimum-effective-width-if-not-ignore-meta-viewport.html is a flaky failure on bots
https://bugs.webkit.org/show_bug.cgi?id=195348
<rdar://problem/48622090>
Reviewed by Alex Christensen.
Make sure webView.configuration.preferences._shouldIgnoreMetaViewport gets reset
to NO when test.options().shouldIgnoreMetaViewport is false.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformConfigureViewForTest):
2019-03-22 Chris Dumez <cdumez@apple.com>
Prewarmed processes should be usable with any website data store
https://bugs.webkit.org/show_bug.cgi?id=196104
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
(runInitialWarmedProcessUsedTest):
(TEST):
2019-03-22 David Kilzer <ddkilzer@apple.com>
Back out local changes to Alex's Subversion working directory
They were accidentally committed.
* Scripts/webkitpy/common/system/abstractexecutive.py:
(AbstractExecutive.wait_newest):
* Scripts/webkitpy/common/system/executive.py:
(Executive.running_pids):
* Scripts/webkitpy/common/system/executive_mock.py:
(MockExecutive.running_pids):
* Scripts/webkitpy/common/system/executive_unittest.py:
(ExecutiveTest.serial_test_running_pids):
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.check_for_leaks):
* Scripts/webkitpy/port/leakdetector.py:
(LeakDetector.check_for_leaks):
- This was the hack attached to Bug 193772.
* WebKitTestRunner/mac/WebKitTestRunnerEvent.mm:
(+[WebKitTestRunnerEvent mouseLocation]):
- This works around a crash on an internal build.
2019-03-22 Tim Horton <timothy_horton@apple.com>
Fix the build after r243354
https://bugs.webkit.org/show_bug.cgi?id=196138
<rdar://problem/49145951>
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
(TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2019-03-21 Tim Horton <timothy_horton@apple.com>
Adopt UIWKDocumentContext
https://bugs.webkit.org/show_bug.cgi?id=196040
<rdar://problem/48642440>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm: Added.
(makeRequest):
(-[TestWKWebView synchronouslyRequestDocumentContext:]):
(-[TestWKWebView synchronouslyAdjustSelectionWithDelta:]):
(applyStyle):
(TEST):
Add tests for UIWKDocumentContext.
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
(TEST):
(recursiveFindWKContentView): Deleted.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(recursiveFindWKContentView):
(-[TestWKWebView wkContentView]):
* TestWebKitAPI/ios/UIKitSPI.h:
Share the WKContentView finding code between tests.
2019-03-21 Simon Fraser <simon.fraser@apple.com>
[iOS WK2] Turn on async overflow scrolling by default
https://bugs.webkit.org/show_bug.cgi?id=196011
rdar://problem/48453859
Reviewed by Antti Koivisto.
Explicitly turn off the async overflow scrolling internal feature for tests by default,
since so many basic layout tests have different results when compositing is triggered for
overflow.
Individual tests will re-enable with <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2019-03-21 Aakash Jain <aakash_jain@apple.com>
[ews-build] Retry API test in case of failures
https://bugs.webkit.org/show_bug.cgi?id=196004
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(UnApplyPatchIfRequired.doStepIf): Updated doStepIf to include patchFailedAPITests.
(CompileWebKitToT.doStepIf): Ditto.
(RunAPITests.evaluateCommand): Check if tests failed and retry them if required.
(ReRunAPITests): Re-run API tests.
(ReRunAPITests.evaluateCommand): Check if tests failed and retry on clean build if required.
(RunAPITestsWithoutPatch): Run API tests without patch.
(RunAPITestsWithoutPatch.doStepIf):
(RunAPITestsWithoutPatch.hideStepIf):
(RunAPITestsWithoutPatch.evaluateCommand):
(AnalyzeAPITestsResults): Analyze API test results from previous runs.
(AnalyzeAPITestsResults.start):
(AnalyzeAPITestsResults.analyzeResults): Analyze API test results.
(AnalyzeAPITestsResults.getBuildStepByName): Search for a build step by name.
(AnalyzeAPITestsResults.getTestsResults): Get the test results from previous API tesst steps.
* BuildSlaveSupport/ews-build/steps_unittest.py: Monkey patched FakeBuild.
2019-03-21 Aakash Jain <aakash_jain@apple.com>
[ews-build] Update queues configurations
https://bugs.webkit.org/show_bug.cgi?id=196074
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/config.json: Updated queues from iOS11 to iOS12,
added new bots, reassigned bots for various builders, moved few builders to another scheduler.
2019-03-21 Aakash Jain <aakash_jain@apple.com>
[ews-app] Generate status-bubble hover-over messages (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=195680
<rdar://problem/48903534>
Unreviewed infrastructure fix.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble): Do not append to details_message in the cases in which it wasn't defined earlier.
2019-03-21 Andy Estes <aestes@apple.com>
[iOS] Apple Pay should be available in documents with no user agent scripts
https://bugs.webkit.org/show_bug.cgi?id=196061
<rdar://problem/48649391>
Reviewed by Brady Eidson.
Added API tests and related infrastructure.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ApplePay.mm: Added.
(-[TestApplePayScriptMessageHandler initWithExpectation:]):
(-[TestApplePayScriptMessageHandler userContentController:didReceiveScriptMessage:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/apple-pay-active-session.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability-in-iframe.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability.html: Added.
* TestWebKitAPI/cocoa/TestProtocol.mm:
(-[TestProtocol startLoading]):
* TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.h: Added.
* TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.mm: Added.
(-[WebProcessPlugInWithInternals webProcessPlugIn:didCreateBrowserContextController:]):
(-[WebProcessPlugInWithInternals webProcessPlugInBrowserContextController:didClearWindowObjectForFrame:inScriptWorld:]):
2019-03-21 Jonathan Bedard <jbedard@apple.com>
REGRESSSION (r243297): webkitpy tests broken
https://bugs.webkit.org/show_bug.cgi?id=196108
Reviewed by Aakash Jain.
r243297 updated contributors.json, which broke a few unit tests.
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:
(IRCCommandTest.test_whois):
* Scripts/webkitpy/tool/commands/suggestnominations_unittest.py:
2019-03-21 Chris Dumez <cdumez@apple.com>
WebKit should throw when trying to create a WKWebView with a related view that is using a different data store
https://bugs.webkit.org/show_bug.cgi?id=196041
<rdar://problem/49083230>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm:
(TEST):
2019-03-21 Alex Christensen <achristensen@webkit.org>
Add SPI to inform applications of WKContentRuleList actions
https://bugs.webkit.org/show_bug.cgi?id=195965
<rdar://problem/42664365>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::allActionsForResourceLoad):
(TestWebKitAPI::testRequest):
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
(Notification::description):
(Notification::operator== const):
(toVector):
(-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
(-[ContentRuleListNotificationDelegate _webView:contentRuleListWithIdentifier:performedActionOnURL:blockedLoad:blockedCookies:madeHTTPS:notifications:]):
(makeContentRuleList):
(TEST):
(makeWarnContentRuleList): Deleted.
2019-03-21 Timothy Hatcher <timothy@apple.com>
Style check error "WK_MAC_TBA is neither a version number nor WK_IOS_TBA" is confusing.
https://bugs.webkit.org/show_bug.cgi?id=196088
Reviewed by Brian Burg.
Fix the error messages used when looking for macos(WK_IOS_TBA) or ios(WK_MAC_TBA).
Support checks when only one platform is specified. Also deprecate macosx() and
force the use of macos() instead.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_min_versions_of_wk_api_available):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_min_versions_of_wk_api_available):
2019-03-21 Alexey Proskuryakov <ap@apple.com>
Update status inactive committers' status to 'contributor'.
* Scripts/webkitpy/common/config/contributors.json:
2019-03-21 Xan Lopez <xan@igalia.com>
[JSC][x86] Drop support for x87 floating point
https://bugs.webkit.org/show_bug.cgi?id=194853
Reviewed by Don Olmstead.
Force SSE2 on x86/32bit builds.
* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):
2019-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
[GLIB] User data not correctly passed to callback of functions and constructors with no parameters
https://bugs.webkit.org/show_bug.cgi?id=196073
Reviewed by Michael Catanzaro.
Add test cases to check functions and constructors with no arguments but receiving user data.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(checkUserData):
(testJSCFunction):
(fooCreateWithUserData):
(testJSCClass):
2019-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix GTK build with GLib < 2.58 after r243285.
Add g_assert_cmpfloat_with_epsilon macro if not defined.
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2019-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Add API to provide geolocation information
https://bugs.webkit.org/show_bug.cgi?id=195940
Reviewed by Michael Catanzaro.
Add a new test to check the new API.
* TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp: Added.
(testGeolocationManagerCurrentPosition):
(testGeolocationManagerWatchPosition):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewGeolocationPermissionRequests): Stop using ENABLE(GEOLOCATION) conditionals for geolocation tests.
(beforeAll): Ditto.
* TestWebKitAPI/glib/CMakeLists.txt:
2019-03-21 Carlos Garcia Campos <cgarcia@igalia.com>
[GLib] Returning G_TYPE_OBJECT from a method does not work
https://bugs.webkit.org/show_bug.cgi?id=195574
Reviewed by Michael Catanzaro.
Add new test cases to check the behavior of constructors and functions returning GObject and boxed types.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(getGFile):
(getParent):
(createGString):
(getGString):
(getGStringCopyWillRaise):
(getGStringCopy):
(getGStringStr):
(getGStringLen):
(freeGString):
(testJSCClass):
2019-03-20 Saam Barati <sbarati@apple.com>
DFG::AbstractValue::validateOSREntry is wrong when isHeapTop and the incoming value is Empty
https://bugs.webkit.org/show_bug.cgi?id=195721
Reviewed by Filip Pizlo.
* Scripts/run-javascriptcore-tests:
2019-03-20 Simon Fraser <simon.fraser@apple.com>
Rename ENABLE_ACCELERATED_OVERFLOW_SCROLLING macro to ENABLE_OVERFLOW_SCROLLING_TOUCH
https://bugs.webkit.org/show_bug.cgi?id=196049
Reviewed by Tim Horton.
This macro is about the -webkit-overflow-scrolling CSS property, not accelerated
overflow scrolling in general, so rename it.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-03-20 Daniel Bates <dabates@apple.com>
REGRESSION (r243153): [iOS] TestWebKitAPI.FocusPreservationTests.ChangingFocusedNodeResetsFocusPreservationState is failing
https://bugs.webkit.org/show_bug.cgi?id=196031
<rdar://problem/49078172>
Reviewed by Tim Horton.
The test incorrectly assumes that calling -[WKWebView resignFirstResponder] is identical to dismissing the
<select> picker. This is no longer the case following r243135. Instead use testing SPI that invokes that
same code path used when the Done button is pressed to dismiss the <select> picker.
* TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
(TestWebKitAPI::TEST):
2019-03-20 Chris Dumez <cdumez@apple.com>
Regression(PSON): ViewGestureController is not properly notified of process swaps on iOS
https://bugs.webkit.org/show_bug.cgi?id=196029
<rdar://problem/48954651>
Reviewed by Tim Horton.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-03-20 Aakash Jain <aakash_jain@apple.com>
[ews-build] Improve failure summary string for ApplyPatch step
https://bugs.webkit.org/show_bug.cgi?id=195995
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-build/steps.py:
(ApplyPatch.getResultSummary): Override getResultSummary.
2019-03-20 Joanmarie Diggs <jdiggs@igalia.com>
AX: Implement support for new meter ARIA role
https://bugs.webkit.org/show_bug.cgi?id=195966
Reviewed by Chris Fleizach.
Update Core role for ATK_ROLE_LEVEL_BAR from AXProgressIndicator
to AXLevelIndicator.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2019-03-19 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Implement FIDO AppID extension
https://bugs.webkit.org/show_bug.cgi?id=143491
<rdar://problem/48298273>
Reviewed by Brent Fulgham.
Add a test that covers the new flag of convertToU2fSignCommand.
* TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/FidoTestData.h:
* TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
(TestWebKitAPI::TEST):
2019-03-19 Keith Rollin <krollin@apple.com>
Add support for more platforms to generate-xcfilelists
https://bugs.webkit.org/show_bug.cgi?id=195977
Reviewed by Alexey Proskuryakov.
generate-xcfilelists incorrectly complains when involved with building
WebKit for iphonesimulator:
$ make debug SDKROOT=iphonesimulator.internal -C Internal/
### (die get_canonical_platform_name main main) Unrecognized platform name: iphonesimulator
Address this by teaching generate-xcfilelists about more platforms.
* Scripts/generate-xcfilelists:
2019-03-19 John Wilander <wilander@apple.com>
Resource Load Statistics (experimental): Clear non-cookie website data for sites that have been navigated to, with link decoration, by a prevalent resource
https://bugs.webkit.org/show_bug.cgi?id=195923
<rdar://problem/49001272>
Reviewed by Alex Christensen.
This patch does the following to the TestRunner:
- Adds setStatisticsCrossSiteLoadWithLinkDecoration().
- Makes setStatisticsTimeToLiveUserInteraction() wait for completion.
- Makes statisticsProcessStatisticsAndDataRecords() wait for completion.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
(WTR::TestController::setStatisticsTimeToLiveUserInteraction):
(WTR::TestController::statisticsProcessStatisticsAndDataRecords):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-03-19 Christopher Reid <chris.reid@sony.com>
[CMake] Support more clang and gcc sanitizers
https://bugs.webkit.org/show_bug.cgi?id=195956
Reviewed by Michael Catanzaro.
* Scripts/webkitdirs.pm: Updating ENABLE_ADDRESS_SANITIZER to ENABLE_SANITIZERS=address
2019-03-19 Aakash Jain <aakash_jain@apple.com>
[ews-build] Improve summary for PrintConfiguration step
https://bugs.webkit.org/show_bug.cgi?id=195945
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(PrintConfiguration.getResultSummary): Override getResultSummary.
2019-03-19 Aakash Jain <aakash_jain@apple.com>
[ews-build] Improve summary for CheckOutSource step
https://bugs.webkit.org/show_bug.cgi?id=195963
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CheckOutSource.getResultSummary):
2019-03-19 Daniel Bates <dabates@apple.com>
[iOS] Focus not preserved when switching between tabs
https://bugs.webkit.org/show_bug.cgi?id=195820
<rdar://problem/43614450>
Reviewed by Brent Fulgham.
Add tests to ensure that we restore focus when resigning and becoming first responder.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(TestWebKitAPI::TEST):
2019-03-19 Alex Christensen <achristensen@webkit.org>
Make WTFLogChannelState and WTFLogLevel enum classes
https://bugs.webkit.org/show_bug.cgi?id=195904
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebCore/Logging.cpp:
(TestWebKitAPI::TEST_F):
2019-03-19 Xabier Rodriguez Calvar <calvaris@igalia.com>
[GStreamer][EME] Backported mssdemux protection data crash fix
https://bugs.webkit.org/show_bug.cgi?id=195918
Reviewed by Philippe Normand.
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Added.
2019-03-19 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, rolling out r243132.
Broke GTK build
Reverted changeset:
"Make WTFLogChannelState and WTFLogLevel enum classes"
https://bugs.webkit.org/show_bug.cgi?id=195904
https://trac.webkit.org/changeset/243132
2019-03-19 Zan Dobersek <zdobersek@igalia.com>
Unreviewed follow-up to r243073, fixing WPE MiniBrowser launching.
* Scripts/webkitdirs.pm:
(builtDylibPathForName): Adjust the shared library name that's changed
with the API version bump in r243073.
2019-03-18 Alex Christensen <achristensen@webkit.org>
Make WTFLogChannelState and WTFLogLevel enum classes
https://bugs.webkit.org/show_bug.cgi?id=195904
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebCore/Logging.cpp:
(TestWebKitAPI::TEST_F):
2019-03-18 Alex Christensen <achristensen@webkit.org>
Disable flaky test added in r2431100
https://webkit.org/b/195785
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(TestWebKitAPI::TEST):
Apparently bots don't hit 150kb/s as reliably as I do locally. Can't say I'm too surprised.
2019-03-18 Timothy Hatcher <timothy@apple.com>
WKWebView.GetContentsShouldReturnAttributedString is crashing on iOS Simulator.
https://bugs.webkit.org/show_bug.cgi?id=195916
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
(TEST(WKWebView, GetContentsShouldReturnAttributedString): Fix iOS code path to pass.
2019-03-18 Alexey Proskuryakov <ap@apple.com>
Add a secondary e-mail address for Fujii Hironori to make tools happier.
* Scripts/webkitpy/common/config/contributors.json:
2019-03-18 Alex Christensen <achristensen@webkit.org>
Implement DownloadMonitor to prevent long-running slow downloads from background apps
https://bugs.webkit.org/show_bug.cgi?id=195785
Reviewed by Geoffrey Garen.
* TestWebKitAPI/TCPServer.cpp: Added.
(TestWebKitAPI::TCPServer::TCPServer):
(TestWebKitAPI::TCPServer::~TCPServer):
(TestWebKitAPI::TCPServer::socketBindListen):
(TestWebKitAPI::TCPServer::waitForAndReplyToRequests):
* TestWebKitAPI/TCPServer.h: Added.
(TestWebKitAPI::TCPServer::port const):
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[DownloadMonitorTestDelegate _downloadDidStart:]):
(-[DownloadMonitorTestDelegate _downloadDidCancel:]):
(-[DownloadMonitorTestDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(-[DownloadMonitorTestDelegate _download:didReceiveData:]):
(TestWebKitAPI::respondSlowly):
(TestWebKitAPI::webViewWithDownloadMonitorSpeedMultiplier):
(TestWebKitAPI::downloadAtRate):
(TestWebKitAPI::TEST):
2019-03-18 Saam Barati <sbarati@apple.com>
Add a plan file for JetStream 2
https://bugs.webkit.org/show_bug.cgi?id=190734
Reviewed by Mark Lam.
* Scripts/webkitpy/benchmark_runner/data/plans/jetstream2.plan: Added.
2019-03-18 Chris Dumez <cdumez@apple.com>
Delay WebProcess launch until a load is triggered in a Web view
https://bugs.webkit.org/show_bug.cgi?id=195758
<rdar://problem/48126013>
Reviewed by Geoff Garen.
Add API test coverage. Also update some existing API tests to not expect
constructing a WKWebView to launch both a WebProcess and a NetworkProcess.
* TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/GetBackingScaleFactor.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(TEST):
(testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
2019-03-18 Xan Lopez <xan@igalia.com>
[CMake] Prevent potential warning when determining $architecture
https://bugs.webkit.org/show_bug.cgi?id=195891
Reviewed by Michael Catanzaro.
It's possible for generateBuildSystemForCMakeProject to be called
before determineArchitecture() is ever called. This will make the
first eq check with $architecture to be bogus (and print a
warning). Change that to an eq check with architecture(), which
implicitly calls determineArchitecture() if needed, and change all
the other similar cases in the method in the same way to prevent
future bugs like this one.
* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):
2019-03-18 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Tarballs generated with “make dist” cannot build documentation
https://bugs.webkit.org/show_bug.cgi?id=195885
Reviewed by Carlos Garcia Campos.
* wpe/manifest.txt.in: Add missing Tools/glib/common.py file to be included in release tarballs.
2019-03-18 Adrian Perez de Castro <aperez@igalia.com>
[GTK][WPE] Cryptic error from Tools/gtkdoc/generate-gtkdoc
https://bugs.webkit.org/show_bug.cgi?id=195883
Reviewed by Carlos Garcia Campos.
* gtkdoc/gtkdoc.py:
(GTKDoc._run_command): When commands fail to run, include the full command line for
the program invocation and the output it has generated on the standard error stream.
2019-03-18 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Bump dependencies to wpe-1.0 and wpebackend-fdo-1.0
https://bugs.webkit.org/show_bug.cgi?id=195786
Reviewed by Philippe Normand.
* flatpak/org.webkit.WPEModules.yaml: Use libwpe 1.1.90 and wpebackend-fdo 1.1.91.
* wpe/jhbuild.modules: Ditto.
2019-03-16 Aakash Jain <aakash_jain@apple.com>
[ews-build] Don't run clean builds on EWS builders
https://bugs.webkit.org/show_bug.cgi?id=195851
Reviewed by Geoffrey Garen.
* BuildSlaveSupport/ews-build/factories.py:
2019-03-16 Sihui Liu <sihui_liu@apple.com>
REGRESSION (r243019): Failing API test: WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming
https://bugs.webkit.org/show_bug.cgi?id=195849
Reviewed by Chris Dumez.
We should expect IDB database files to be at path IndexedDB/v1/ after r243019.
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(runWebsiteDataStoreCustomPaths):
2019-03-15 Jonathan Bedard <jbedard@apple.com>
webkitpy: Upload test results
https://bugs.webkit.org/show_bug.cgi?id=195755
<rdar://problem/48896182>
Reviewed by Aakash Jain.
Establish a new format for uploading results that is not tied to layout tests, apply
that format to webkitpy tests.
* Scripts/webkitpy/common/checkout/scm/git.py:
(Git.native_branch): Return what branch the current checkout is on.
* Scripts/webkitpy/common/checkout/scm/scm_mock.py:
* Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
* Scripts/webkitpy/common/checkout/scm/svn.py:
(SVN.native_branch): Ditto.
* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo.build_version): Return a build version for Mac.
* Scripts/webkitpy/common/system/platforminfo_mock.py:
(MockPlatformInfo.__init__):
(MockPlatformInfo.build_version):
* Scripts/webkitpy/results: Added.
* Scripts/webkitpy/results/__init__.py: Added.
* Scripts/webkitpy/results/options.py: Added.
(upload_options): OptParse list for upload options.
* Scripts/webkitpy/results/upload.py: Added.
(Upload): Class which enforces the upload format expected by the results server.
(Upload.Expectations):
(Upload.create_configuration):
(Upload.create_commit):
(Upload.create_details):
(Upload.create_run_stats):
(Upload.create_test_result):
(Upload.__init__):
(Upload.Encoder): Encode Upload object as json.
(Upload.upload): Upload results to the results server, returning 'True' if the upload is successful.
* Scripts/webkitpy/results/upload_unittest.py: Added.
* Scripts/webkitpy/test/main.py:
(Tester._parse_args): Add upload arguments.
(Tester._run_tests): Allow results to be uploaded.
* Scripts/webkitpy/test/runner.py:
(Runner.__init__): Record which tests were run, rather than just counting them.
(Runner.handle):
* Scripts/webkitpy/test/runner_unittest.py:
(RunnerTest.test_run):
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook.find_module): Add requests auto-install.
(AutoinstallImportHook._install_requests):
* Scripts/webkitpy/tool/commands/queues_unittest.py:
(PatchProcessingQueueTest.test_upload_results_archive_for_patch): Update os name for testing.
2019-03-15 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Crash under -[TestRunnerWKWebView _didShowMenu] while running layout tests on iOS simulator
https://bugs.webkit.org/show_bug.cgi?id=195810
Reviewed by Tim Horton.
Ensure that the process of resetting web view state between tests doesn't also invoke testing callbacks
registered by the previous layout test. This fixes an occasional crash when hiding the callout menu after
ending certain layout tests.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView dealloc]):
(-[TestRunnerWKWebView resetInteractionCallbacks]):
Pull logic to reset all of TestRunnerWKWebView's callback handler blocks into a separate helper method; use this
helper method when destroying the web view, and when resetting state between tests.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
Hide the callout menu *after* clearing out interaction callbacks registered on the web view.
2019-03-15 Sihui Liu <sihui_liu@apple.com>
[ Mojave WK1 ] Layout Test storage/indexeddb/database-odd-names.html is failing
https://bugs.webkit.org/show_bug.cgi?id=190350
<rdar://problem/45089503>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-shm:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-wal:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-1.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-2.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm: Added.
(-[IndexedDBFileNameMessageHandler userContentController:didReceiveScriptMessage:]):
(runTest):
(createDirectories):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/StoreBlobThenDelete.mm:
(TEST):
2019-03-15 Timothy Hatcher <timothy@apple.com>
Add support to WebPage for getting the contents as an attributed string.
https://bugs.webkit.org/show_bug.cgi?id=195636
rdar://problem/45055697
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
(TEST(WKWebView, GetContentsShouldReturnAttributedString): Added.
2019-03-15 Chris Dumez <cdumez@apple.com>
[PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
https://bugs.webkit.org/show_bug.cgi?id=195747
Reviewed by Geoff Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-03-15 Shawn Roberts <sroberts@apple.com>
Unreviewed, rolling out r242952.
Causing API failures on iOS Simulator
Reverted changeset:
"[PSON] Make sure the WebProcessCache is leverage when
relaunching a process after termination"
https://bugs.webkit.org/show_bug.cgi?id=195747
https://trac.webkit.org/changeset/242952
2019-03-14 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][MinBrowser][WK2] Implement createNewPage of WKPageUIClient to open a new window
https://bugs.webkit.org/show_bug.cgi?id=195740
Reviewed by Ross Kirsling.
window.open doesn't work for WebKitBrowserWindow because it is not
implemented yet.
1. Implemented createNewPage callback of WKPageUIClient.
2. Changed MainWindow to take a BrowserWindow factory function
instead of BrowserWindowType to be flexible to create
BrowserWindow with extra settings.
3. Renamed MainWindow::BrowserWindowType to BrowserWindowType
because it is not relevant with MainWindow anymore.
* MiniBrowser/win/Common.cpp:
(parseCommandLine):
* MiniBrowser/win/Common.h:
(CommandLineOptions::CommandLineOptions):
* MiniBrowser/win/MainWindow.cpp:
(MainWindow::MainWindow):
(MainWindow::create):
(MainWindow::init):
(MainWindow::WndProc):
* MiniBrowser/win/MainWindow.h:
* MiniBrowser/win/PrintWebUIDelegate.cpp:
(PrintWebUIDelegate::createWebViewWithRequest):
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::create): Moved WKPageConfigurationRef related code from WebKitBrowserWindow::WebKitBrowserWindow.
(WebKitBrowserWindow::WebKitBrowserWindow): Added a WKPageConfigurationRef parameter.
(WebKitBrowserWindow::updateProxySettings):
(WebKitBrowserWindow::createNewPage):
* MiniBrowser/win/WebKitBrowserWindow.h:
* MiniBrowser/win/WinMain.cpp:
(wWinMain):
2019-03-14 Simon Fraser <simon.fraser@apple.com>
Make it possible to test scrolling tree layer manipulation more easily
https://bugs.webkit.org/show_bug.cgi?id=195780
Reviewed by Tim Horton.
Add a boolean attribute 'scrollUpdatesDisabled' on UIScriptController that
cuts off communication of scrolling tree scrolls back to the web process
(in RemoteScrollingCoordinatorProxy::scrollingTreeNodeDidScroll()). This
allows tests to trigger scrolls which run the scrolling tree layer positioning
logic, but never get another commit from the web process that might mask
scrolling tree bugs.
WKWebView's testing protocol get @property _scrollingUpdatesDisabledForTesting,
whose getters and setters are overridden by TestRunnerWKWebView. Plumbing
via PageClient and WebPageProxy makes this flag reachable by RemoteScrollingCoordinatorProxy.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::scrollUpdatesDisabled const):
(WTR::UIScriptController::setScrollUpdatesDisabled):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::scrollUpdatesDisabled const):
(WTR::UIScriptController::setScrollUpdatesDisabled):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView _scrollingUpdatesDisabledForTesting]):
(-[TestRunnerWKWebView _setScrollingUpdatesDisabledForTesting:]):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::scrollUpdatesDisabled const):
(WTR::UIScriptController::setScrollUpdatesDisabled):
2019-03-14 Youenn Fablet <youenn@apple.com>
Move IDB storage in private browsing mode to NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=195602
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
(TEST):
2019-03-14 Aakash Jain <aakash_jain@apple.com>
[ews-build] Make descriptionDone messages more readable
https://bugs.webkit.org/show_bug.cgi?id=195760
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
* BuildSlaveSupport/ews-build/steps_unittest.py:
2019-03-14 Aakash Jain <aakash_jain@apple.com>
[ews-build] Generate status-bubble hover-over messages
https://bugs.webkit.org/show_bug.cgi?id=195680
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble):
(StatusBubble._build_bubble): Generate bubble['details_message'] which would be displayed
on hover-over.
(StatusBubble._iso_time):
(StatusBubble._steps_messages): Returns status messages from steps to be displayed in
hover-over message.
(StatusBubble._most_recent_step_message): Returns status message from most recent step.
2019-03-14 Aakash Jain <aakash_jain@apple.com>
[ews-app] Gracefully handle the case when state_string is None
https://bugs.webkit.org/show_bug.cgi?id=195753
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/step.py:
2019-03-14 Aakash Jain <aakash_jain@apple.com>
[ews-app] Status bubble display pending for currently running build step
https://bugs.webkit.org/show_bug.cgi?id=195744
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/events.py:
(Events.stepStarted): If state_string is pending, replace it with step name.
2019-03-14 Chris Dumez <cdumez@apple.com>
Add WebsitePolicy for the client to specify the device orientation & motion access policy
https://bugs.webkit.org/show_bug.cgi?id=195750
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationAccessPolicy:]):
(-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[WebsitePoliciesDeviceOrientationUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
2019-03-14 Chris Dumez <cdumez@apple.com>
[PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
https://bugs.webkit.org/show_bug.cgi?id=195747
Reviewed by Geoff Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-03-13 Wenson Hsieh <wenson_hsieh@apple.com>
Make -[_WKAttachment setFileWrapper:contentType:completion:] robust when given a nil completion handler
https://bugs.webkit.org/show_bug.cgi?id=195725
<rdar://problem/48545062>
Reviewed by Tim Horton.
Test that we don't crash when changing the file wrapper of an invalid attachment, if the given completion
handler is nil.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2019-03-13 Sam Weinig <sam@webkit.org>
Add utility function to allow easy reverse range-based iteration of a container
https://bugs.webkit.org/show_bug.cgi?id=195542
Reviewed by Antti Koivisto.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/IteratorRange.cpp: Added.
(TestWebKitAPI::TEST):
Add test to ensure WTF::makeReversedRange() works correctly and uses the correct types.
2019-03-13 Chris Dumez <cdumez@apple.com>
Use a ServiceWorker process per registrable domain
https://bugs.webkit.org/show_bug.cgi?id=195649
Reviewed by Youenn Fablet.
Update API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-03-13 Chris Dumez <cdumez@apple.com>
REGRESSION(PSON, r240660): Navigation over process boundary is flashy when using Cmd-left/right arrow to navigate
https://bugs.webkit.org/show_bug.cgi?id=195684
<rdar://problem/48294714>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-03-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Remove unused patch view
https://bugs.webkit.org/show_bug.cgi?id=195669
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/urls.py:
* BuildSlaveSupport/ews-app/ews/views/patch.py: Removed.
2019-03-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Use Buildbot result code variables
https://bugs.webkit.org/show_bug.cgi?id=195668
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-app/ews/common/buildbot.py:
(Buildbot): Added Buildbot result code variables.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble): Used Buildbot result code variables.
2019-03-13 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Expand submodule recursively
https://bugs.webkit.org/show_bug.cgi?id=195672
Building WPE with flatpak was impossible without that as it was raising an exception.
Also update wpebackend-fdo to match what is built in jhbuild
Reviewed by Philippe Normand.
* flatpak/flatpakutils.py:
(expand_submodules_recurse):
(expand_manifest):
* flatpak/org.webkit.WPEModules.yaml:
2019-03-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] status bubble should be hidden for certain builds
https://bugs.webkit.org/show_bug.cgi?id=194597
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._should_show_bubble_for_build): Hide bubble for builds which were skipped
because the patch didn't have relevant changes.
(StatusBubble._should_show_bubble_for_queue): Hide bubbles for queues which are not deployed
in production yet.
2019-03-12 Ross Kirsling <ross.kirsling@sony.com>
[Win] Fix a slew of simple clang-cl warnings.
https://bugs.webkit.org/show_bug.cgi?id=195652
Reviewed by Don Olmstead.
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
(WTR::PlatformWebView::windowSnapshotImage): -Wunused-variable
2019-03-12 Justin Fan <justin_fan@apple.com>
[Web GPU] Update GPURenderPipelineDescriptor and add GPUColorStateDescriptor.format
https://bugs.webkit.org/show_bug.cgi?id=195518
<rdar://problem/46322356>
Reviewed by Myles C. Maxfield.
* DumpRenderTree/DerivedSources-input.xcfilelist:
* DumpRenderTree/DerivedSources-output.xcfilelist:
2019-03-12 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r242825.
https://bugs.webkit.org/show_bug.cgi?id=195648
"Broke webkitpy tests with my change to
lldb_dump_class_layout.py" (Requested by rmorisset on
#webkit).
Reverted changeset:
"Alter Tools/Scripts/dump-class-layout to be able to dump all
classes with suspicious padding"
https://bugs.webkit.org/show_bug.cgi?id=195573
https://trac.webkit.org/changeset/242825
2019-03-12 Aakash Jain <aakash_jain@apple.com>
[ews-build] Show status bubbles while the patch is waiting in queue
https://bugs.webkit.org/show_bug.cgi?id=195618
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble): Added ALL_QUEUES and ENABLED_QUEUES. Only certain queues are
enabled in initial deployment.
(StatusBubble._build_bubble): Display bubble even when build hasn't started.
(StatusBubble.get_latest_build_for_queue): Get latest build for a given queue.
(StatusBubble.get_builds_for_queue): Get all builds for a given queue.
(StatusBubble._should_show_bubble_for): Display bubble for only ENABLED_QUEUES for now.
(StatusBubble._build_bubbles_for_patch):
2019-03-12 Robin Morisset <rmorisset@apple.com>
Alter Tools/Scripts/dump-class-layout to be able to dump all classes with suspicious padding
https://bugs.webkit.org/show_bug.cgi?id=195573
Reviewed by Simon Fraser.
Also modified the script so that when multiple types match a given name it shows them all and not arbitrarily pick one.
* Scripts/dump-class-layout:
(main):
* lldb/lldb_dump_class_layout.py:
(ClassLayout.__init__):
(ClassLayout._compute_padding_recursive):
(LLDBDebuggerInstance.dump_layout_for_classname):
(LLDBDebuggerInstance):
(LLDBDebuggerInstance.dump_all_wasteful_layouts):
(LLDBDebuggerInstance.layout_for_classname): Deleted.
2019-03-12 Chris Dumez <cdumez@apple.com>
Device Orientation access permission should be denied unless explicitly granted by the client
https://bugs.webkit.org/show_bug.cgi?id=195625
Reviewed by Youenn Fablet.
add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm: Added.
(-[DeviceOrientationMessageHandler userContentController:didReceiveScriptMessage:]):
(-[DeviceOrientationPermissionUIDelegate initWithHandler:]):
(-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
(runDeviceOrientationTest):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[WebsitePoliciesDeviceOrientationUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
2019-03-12 Jer Noble <jer.noble@apple.com>
Flaky API Test TestWebKitAPI.WebKitLegacy.ScrollingDoesNotPauseMedia
https://bugs.webkit.org/show_bug.cgi?id=195137
<rdar://problem/48810307>
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:
(TestWebKitAPI::TEST):
2019-03-12 Aakash Jain <aakash_jain@apple.com>
[ews-build] Change urls from uat to production
https://bugs.webkit.org/show_bug.cgi?id=195566
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/config.py:
* BuildSlaveSupport/ews-build/events.py:
* BuildSlaveSupport/ews-build/steps.py:
2019-03-12 Aakash Jain <aakash_jain@apple.com>
[ews-build] change max_builds for local-worker to 1
https://bugs.webkit.org/show_bug.cgi?id=195568
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py:
2019-03-12 Tim Horton <timothy_horton@apple.com>
Fix the build
* TestRunnerShared/spi/PencilKitTestSPI.h:
* TestWebKitAPI/ios/PencilKitTestSPI.h:
2019-03-12 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Load events may occur in unexpected order when JS redirects page before subresource load finishes
https://bugs.webkit.org/show_bug.cgi?id=194131
Reviewed by Michael Catanzaro.
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
(uriChanged):
(testUnfinishedSubresourceLoad):
(serverCallback):
(beforeAll):
2019-03-11 Alex Christensen <achristensen@webkit.org>
WTF::Expected should use std::addressof instead of operator&
https://bugs.webkit.org/show_bug.cgi?id=195604
Reviewed by Myles Maxfield.
* TestWebKitAPI/Tests/WTF/Expected.cpp:
(TestWebKitAPI::Unique::Unique):
(TestWebKitAPI::Unique::operator&):
(TestWebKitAPI::TEST):
2019-03-11 Ross Kirsling <ross.kirsling@sony.com>
Add Optional to Forward.h.
https://bugs.webkit.org/show_bug.cgi?id=195586
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebCore/ApduTest.cpp:
* TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp:
Remove unnecessary includes from headers.
2019-03-11 Simon Fraser <simon.fraser@apple.com>
Add testing API to hit-test and scroll overflow scrollers
https://bugs.webkit.org/show_bug.cgi?id=195278
Reviewed by Antti Koivisto.
Add UIScriptController::immediateScrollElementAtContentPointToOffset() to enable
testing of the view hit-testing code path, and immediate scrolling of overflow:scroll.
Tests: scrollingcoordinator/ios/scroll-element-at-point.html
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::enclosingScrollViewIncludingSelf):
(WTR::UIScriptController::immediateScrollElementAtContentPointToOffset):
2019-03-11 Tim Horton <timothy_horton@apple.com>
API test WebKit.RequestTextInputContext fails on iOS
https://bugs.webkit.org/show_bug.cgi?id=195585
Reviewed by Wenson Hsieh and Simon Fraser.
* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
(applyStyle):
(TEST):
Add a viewport, so that the coordinates match up on iOS.
Scroll by moving the UIScrollView's contentOffset.
2019-03-11 Chris Dumez <cdumez@apple.com>
Assert in WebPageProxy::suspendCurrentPageIfPossible()
https://bugs.webkit.org/show_bug.cgi?id=195506
<rdar://problem/48733477>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-03-11 Shawn Roberts <sroberts@apple.com>
Adding myself to contributors.json
Unreviewed, addming myself to contributors.json .
* Scripts/webkitpy/common/config/contributors.json:
2019-03-11 Alex Christensen <achristensen@webkit.org>
Add a WKContentRuleList variant that uses copied memory instead of mmap'd shared memory for class A containerized apps
https://bugs.webkit.org/show_bug.cgi?id=195511
<rdar://problem/44873269>
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:startURLSchemeTask:]):
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:stopURLSchemeTask:]):
(TEST_F):
2019-03-11 Chris Dumez <cdumez@apple.com>
Regression(r242664) WebKit.WebsitePoliciesDeviceOrientationEventEnabled API test is timing out
https://bugs.webkit.org/show_bug.cgi?id=195561
Reviewed by Youenn Fablet.
Make sure the JS in the test requests for permission to receive device orientation events.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2019-03-11 Youenn Fablet <youenn@apple.com>
Allow storage quota increase by default in WTR
https://bugs.webkit.org/show_bug.cgi?id=195541
Reviewed by Geoffrey Garen.
Allow storage quota increase by default in WTR.
Move from testRunner.allowStorageQuotaIncrease to testRunner.setAllowStorageQuotaIncrease.
Use this for tests that explicitly need cache increase.
Instead of increasing quota by 2, make sure the next request is
granted by adding all given parameters.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setAllowStorageQuotaIncrease):
(WTR::TestRunner::allowCacheStorageQuotaIncrease): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setAllowStorageQuotaIncrease):
(WTR::TestController::allowCacheStorageQuotaIncrease): Deleted.
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
(WTR::TestController::setAllowStorageQuotaIncrease):
(WTR::TestController::allowCacheStorageQuotaIncrease): Deleted.
* WebKitTestRunner/cocoa/TestWebsiteDataStoreDelegate.mm:
(-[TestWebsiteDataStoreDelegate requestStorageSpace:frameOrigin:quota:currentSize:spaceRequired:decisionHandler:]):
2019-03-11 Xan Lopez <xan@igalia.com>
[CMake] Build 32bit binaries on Linux/64bit when the --32-bit is passed to build-jsc
https://bugs.webkit.org/show_bug.cgi?id=194147
Reviewed by Michael Saboff.
To make --32-bit work correctly on Linux/64bit we need to:
- Set FORCE_32BIT on, which will be read by CMake to set WTF_CPU
correctly. Ideally we'd just redefine CMAKE_SYSTEM_PROCESSOR, but
unfortunately CMake only allows us to do this during
crosscompilation, which is overkill here.
- Set CMAKE_PREFIX_PATH and CMAKE_LIBRARY_ARCHITECTURE so that the
pkg-config detection module uses the x86 .pc files instead of the
x86_64 ones.
- Set the -m32 flags for the compiler.
* Scripts/webkitdirs.pm:
(generateBuildSystemFromCMakeProject):
2019-03-08 Dewei Zhu <dewei_zhu@apple.com>
Add MotionMark-1.1 plan file for run-benchmark script.
https://bugs.webkit.org/show_bug.cgi?id=195481
Rubber-stamped by Darin Adler.
Run-benchmark script should support MontionMark-1.1.
* Scripts/webkitpy/benchmark_runner/data/plans/motionmark1.1.plan: Added.
2019-03-11 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add support for submit-to-ews url
https://bugs.webkit.org/show_bug.cgi?id=195477
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
* BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
* BuildSlaveSupport/ews-app/ews/templates/submittoews.html: Copied from QueueStatusServer/templates/submittoews.html.
* BuildSlaveSupport/ews-app/ews/urls.py:
* BuildSlaveSupport/ews-app/ews/views/submittoews.py: Added.
2019-03-11 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r242688, r242643, r242624.
Caused multiple layout test failures and crashes on iOS and macOS.
Reverted changeset:
"requestAnimationFrame should execute before the next frame"
https://bugs.webkit.org/show_bug.cgi?id=177484
https://trac.webkit.org/changeset/242624/webkit
* Tracing/SystemTracePoints.plist:
2019-03-11 John Wilander <wilander@apple.com>
Resource Load Statistics: Make it possible exclude localhost from classification
https://bugs.webkit.org/show_bug.cgi?id=195474
<rdar://problem/47520577>
Reviewed by Brent Fulgham.
This patch allows for localhost to be excluded from classification and
treatment as a prevalent resource.
The WebKit Tools change adds a new function called
testRunner.setStatisticsIsRunningTest() which can be used to control this
behavior.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsIsRunningTest):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsIsRunningTest):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-03-11 Aakash Jain <aakash_jain@apple.com>
[ews-build] Disable waterfall and console view for ews-build.webkit.org
https://bugs.webkit.org/show_bug.cgi?id=195560
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg:
2019-03-11 Alex Christensen <achristensen@webkit.org>
Unreviewed, rolling out r242698.
API test crashes on bots.
Reverted changeset:
"Add a WKContentRuleList variant that uses copied memory
instead of mmap'd shared memory for class A containerized
apps"
https://bugs.webkit.org/show_bug.cgi?id=195511
https://trac.webkit.org/changeset/242698
2019-03-11 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE] Enable web process sandbox
https://bugs.webkit.org/show_bug.cgi?id=195169
Reviewed by Daniel Bates.
* wpe/install-dependencies:
* wpe/jhbuild.modules:
2019-03-11 Aakash Jain <aakash_jain@apple.com>
[ews-app] Use port 17000 for worker communication
https://bugs.webkit.org/show_bug.cgi?id=195558
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/master.cfg:
2019-03-11 Aakash Jain <aakash_jain@apple.com>
[ews-build] unit-tests fail when passwords.json is missing
https://bugs.webkit.org/show_bug.cgi?id=195557
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py:
(loadBuilderConfig):
* BuildSlaveSupport/ews-build/loadConfig_unittest.py:
(ConfigDotJSONTest.test_configuration):
* BuildSlaveSupport/ews-build/master.cfg:
2019-03-11 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r242702.
Broke High Sierra builders.
Reverted changeset:
"Add utility function to allow easy reverse range-based
iteration of a container"
https://bugs.webkit.org/show_bug.cgi?id=195542
https://trac.webkit.org/changeset/242702
2019-03-11 Sam Weinig <sam@webkit.org>
Add utility function to allow easy reverse range-based iteration of a container
https://bugs.webkit.org/show_bug.cgi?id=195542
Reviewed by Antti Koivisto.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/IteratorRange.cpp: Added.
(TestWebKitAPI::TEST):
Add test to ensure WTF::makeReversedRange() works correctly and uses the correct types.
2019-03-10 Alex Christensen <achristensen@webkit.org>
Add a WKContentRuleList variant that uses copied memory instead of mmap'd shared memory for class A containerized apps
https://bugs.webkit.org/show_bug.cgi?id=195511
<rdar://problem/44873269>
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebKitCocoa/WKContentExtensionStore.mm:
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:startURLSchemeTask:]):
(-[TestSchemeHandlerSubresourceShouldBeBlocked webView:stopURLSchemeTask:]):
(TEST_F):
2019-03-10 Tim Horton <timothy_horton@apple.com>
Add SPI to retrieve the set of text inputs in a given rect, and later focus one
https://bugs.webkit.org/show_bug.cgi?id=195499
Reviewed by Darin Adler.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm: Added.
(-[WKWebView synchronouslyRequestTextInputContextsInRect:]):
(-[WKWebView synchronouslyFocusTextInputContext:]):
(applyStyle):
(applyIframe):
(TEST):
Add some tests for this SPI.
2019-03-10 Yusuke Suzuki <utatane.tea@gmail.com>
[WTF] Align assumption in RunLoopWin to the other platform's RunLoop
https://bugs.webkit.org/show_bug.cgi?id=181151
Reviewed by Don Olmstead.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformWin.cmake:
Enable TestWTF RunLoop tests in all platforms.
* TestWebKitAPI/Tests/WTF/RunLoop.cpp:
(TestWebKitAPI::DerivedOneShotTimer::DerivedOneShotTimer):
(TestWebKitAPI::DerivedOneShotTimer::fired):
(TestWebKitAPI::TEST):
Only a few platforms support nested RunLoop.
(TestWebKitAPI::DerivedRepeatingTimer::DerivedRepeatingTimer):
(TestWebKitAPI::DerivedRepeatingTimer::fired):
2019-03-10 David Quesada <david_quesada@apple.com>
ASSERT(m_downloads.isEmpty()) fails in DownloadProxyMap::~DownloadProxyMap()
https://bugs.webkit.org/show_bug.cgi?id=152480
Reviewed by Chris Dumez.
Add a unit test based on Daniel Bates's test case that starts a download, ensures
there are no additional references to the process pool besides the one held by
the download, waits for the download to finish (in the sense that the
DownloadProxyMap is done tracking the DownloadProxy), and doesn't crash. For good
measure, also check that the process pool has been deallocated at the end of the
test. The test wouldn't be meaningful if the process pool were still alive.
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[WaitUntilDownloadCanceledDelegate _downloadDidStart:]):
(-[WaitUntilDownloadCanceledDelegate _downloadDidCancel:]):
The download will be canceled because the delegate does not implement the
method to decide the download's destination, so this is where we know the
DownloadProxyMap is done with the DownloadProxy.
(TEST):
2019-03-08 Chris Dumez <cdumez@apple.com>
Add support for Device Orientation / Motion permission API
https://bugs.webkit.org/show_bug.cgi?id=195329
<rdar://problem/47645367>
Reviewed by Geoffrey Garen.
Add test infrastructure to help test the Device Orientation / Motion permission API.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::shouldAllowDeviceOrientationAndMotionAccess):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::handleDeviceOrientationAndMotionAccessRequest):
* WebKitTestRunner/TestController.h:
(WTR::TestController::setShouldAllowDeviceOrientationAndMotionAccess):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2019-03-08 Saam barati <sbarati@apple.com>
Add a compare-results script to compare benchmark results
https://bugs.webkit.org/show_bug.cgi?id=195486
<rdar://problem/48723397>
Reviewed by Geoffrey Garen.
This patch adds a script to compare benchmark results using Welch's two-tailed t test.
Initially, this patch only reasons about PLT5/JetStream2/Speedometer2. It will be easy
to extend it to learn about our other benchmarks.
* Scripts/compare-results: Added.
(readJSONFile):
(detectJetStream2):
(JetStream2Results):
(detectSpeedometer2):
(Speedometer2Results):
(detectPLT5):
(PLT5Results):
(detectBenchmark):
(biggerIsBetter):
(ttest):
(getOptions):
(main):
2019-03-08 Stephanie Lewis <slewis@apple.com>
Ensure old tab state is cleared between iterations of run-benchmark
https://bugs.webkit.org/show_bug.cgi?id=195393
<rdar://problem/46885583>
Reviewed by Dewei Zhu.
a) ensure the default to restore state is not set
b) terminate Safari correctly
c) Set the system default to ignore Persistent State in Safari
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver): fix terminate processes to call terminate before killing.
(OSXBrowserDriver.prepare_env):
(OSXBrowserDriver.restore_env):
(OSXBrowserDriver.close_browsers):
(OSXBrowserDriver._terminate_processes):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py: add bundle id
(OSXChromeDriver):
(OSXChromeCanaryDriver):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py: ditto
(OSXFirefoxDriver):
(OSXFirefoxNightlyDriver):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py: add preferences to not restore state, bundle id
(OSXSafariDriver):
(OSXSafariDriver.prepare_env):
2019-03-08 Diego Pino Garcia <dpino@igalia.com>
[GTK] Several InputMethodFilter tests are failing
https://bugs.webkit.org/show_bug.cgi?id=195408
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebKit/gtk/InputMethodFilter.cpp:
Regressed in r241751.
Hexadecimal values of keycodes are expressed now in upper letters.
Composited characters should be cast to UTF8 strings.
(TestWebKitAPI::TEST):
2019-03-07 Tomas Popela <tpopela@redhat.com>
[GTK] Make Tools/gtkdoc python3 compatible
https://bugs.webkit.org/show_bug.cgi?id=195359
Reviewed by Carlos Garcia Campos.
* gtkdoc/generate-gtkdoc:
ConfigParser was reworked in Python 3.2 so we have adapt the code to
work with Python 2 and 3.
(get_gtkdoc_module_paths):
The iteritems() was removed in Python 3, so let's use items() that's
available in Python 2 and 3.
(get_generator_for_config):
* gtkdoc/gtkdoc.py:
(GTKDoc._run_command):
The sys.stdout.write() is expecting str in Python 3 and not bytes
(that are coming from stdout.encode()). Use sys.stdout.buffer.write()
for passing the bytes there.
2019-03-07 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] Remove -DUCHAR_TYPE=wchar_t stopgap and learn to live with char16_t.
https://bugs.webkit.org/show_bug.cgi?id=195346
<rdar://problem/48667048>
Unreviewed build fix for clang-cl.
* DumpRenderTree/win/DumpRenderTree.cpp:
(setApplicationId): Replaced calling String::charactersWithNullTermination with String::wideCharacters to get wchar_t.
2019-03-07 Said Abou-Hallawa <sabouhallawa@apple.com>
requestAnimationFrame should execute before the next frame
https://bugs.webkit.org/show_bug.cgi?id=177484
Reviewed by Simon Fraser.
Add trace points for the page RenderingUpdate.
* Tracing/SystemTracePoints.plist:
2019-03-07 Zalan Bujtas <zalan@apple.com>
[ContentChangeObserver] Add a setting to be able to turn content change observation on/off
https://bugs.webkit.org/show_bug.cgi?id=195353
<rdar://problem/48626394>
Reviewed by Simon Fraser.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetPreferencesToConsistentValues):
2019-03-07 John Wilander <wilander@apple.com>
Resource Load Statistics: Make it possible to purge only script-accessible cookies
https://bugs.webkit.org/show_bug.cgi?id=195383
<rdar://problem/48570136>
Reviewed by Brent Fulgham.
This patch adds test infrastructure to purge only script-accessible cookies,
including a new testRunner function called statisticsDeleteCookiesForHost().git a
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::statisticsDeleteCookiesForHost):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::statisticsDeleteCookiesForHost):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-03-07 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r242354.
https://bugs.webkit.org/show_bug.cgi?id=195402
breaks layout tests in all configurations (Requested by
zdobersek on #webkit).
Reverted changeset:
"[WPE] Enable web process sandbox"
https://bugs.webkit.org/show_bug.cgi?id=195169
https://trac.webkit.org/changeset/242354
2019-03-06 Ross Kirsling <ross.kirsling@sony.com>
[Win] Remove -DUCHAR_TYPE=wchar_t stopgap and learn to live with char16_t.
https://bugs.webkit.org/show_bug.cgi?id=195346
Reviewed by Fujii Hironori.
* TestWebKitAPI/Tests/WTF/StringOperators.cpp:
(TestWebKitAPI::TEST):
Delete wchar tests -- these are MSVC-only and we won't be using String::operator+ going forward anyway.
* DumpRenderTree/win/DumpRenderTree.cpp:
(findFontFallback):
(addFontFallbackIfPresent):
(removeFontFallbackIfPresent):
(main):
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
(TestWebKitAPI::Util::moduleDirectory):
(TestWebKitAPI::Util::createInjectedBundlePath):
Use wchar helpers as needed.
2019-03-06 Rob Buis <rbuis@igalia.com>
Consider supporting the `referrerpolicy` attribute.
https://bugs.webkit.org/show_bug.cgi?id=179053
Reviewed by Darin Adler.
Add a runtime flag for referrerpolicy attribute.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
2019-03-05 Daniel Bates <dabates@apple.com>
Update expected API test result following r242379
(https://bugs.webkit.org/show_bug.cgi?id=195125)
Update expected x-coordinate of selection rect now that the left padding of
a textarea is sized in ems (so dependent on the font size) just like the left
padding of a text field.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
2019-03-05 David Quesada <david_quesada@apple.com>
[WK2] It should be possible to follow links with 'download' attributes
https://bugs.webkit.org/show_bug.cgi?id=195145
rdar://problem/48462642
Reviewed by Alex Christensen.
Add a unit test to verify that activating links with 'download' attributes now
navigates to the linked resource, rather than starts downloading it. Add another
to verify that it is still possible to explicitly download the link via the
'Download' navigation action policy.
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[DownloadAttributeTestDelegate init]):
(-[DownloadAttributeTestDelegate waitForDidFinishNavigation]):
(-[DownloadAttributeTestDelegate waitForDownloadDidStart]):
(-[DownloadAttributeTestDelegate webView:didFinishNavigation:]):
(-[DownloadAttributeTestDelegate webView:didStartProvisionalNavigation:]):
(-[DownloadAttributeTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[DownloadAttributeTestDelegate _downloadDidStart:]):
(TEST):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::decidePolicyForNavigationAction):
* WebKitTestRunner/TestController.h:
2019-03-05 Takashi Komori <Takashi.Komori@sony.com>
[Curl] Implement Cookie Accept Policy.
https://bugs.webkit.org/show_bug.cgi?id=191645
Reviewed by Fujii Hironori.
* TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
(TestWebKitAPI::Curl::TEST_F):
2019-03-05 Youenn Fablet <youenn@apple.com>
Rename requestCacheStorageSpace to requestStorageSpace
https://bugs.webkit.org/show_bug.cgi?id=195282
Reviewed by Chris Dumez.
* WebKitTestRunner/cocoa/TestWebsiteDataStoreDelegate.mm:
(-[TestWebsiteDataStoreDelegate requestStorageSpace:frameOrigin:quota:currentSize:spaceRequired:decisionHandler:]):
(-[TestWebsiteDataStoreDelegate requestCacheStorageSpace:frameOrigin:quota:currentSize:spaceRequired:decisionHandler:]): Deleted.
2019-03-05 Brady Eidson <beidson@apple.com>
Correctly handle sandbox extensions when the same WKWebView loads multiple file:// URLs.
<rdar://problem/47820581> and https://bugs.webkit.org/show_bug.cgi?id=195291
Reviewed by Tim Horton.
Loading a file: URL into a WKWebView and then loading another file: url from a completely
different directory into that same WKWebView should work.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/LoadFileURL.mm: Added.
2019-02-28 Ryosuke Niwa <rniwa@webkit.org>
Add WeakHashSet
https://bugs.webkit.org/show_bug.cgi?id=195152
Reviewed by Antti Koivisto.
Added tests for WeakHashSet.
* TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
(TestWebKitAPI::Base::Base): Moved.
(TestWebKitAPI::Derived::foo): Moved.
(WTF::WeakReference<TestWebKitAPI::Base>): Added to track the number of live WeakReference.
(WTF::WeakReference<TestWebKitAPI::Base>::WeakReference):
(WTF::WeakReference<TestWebKitAPI::Base>::~WeakReference):
(TestWebKitAPI::computeSizeOfWeakHashSet): Added.
2019-03-04 Chris Dumez <cdumez@apple.com>
Do not share WebProcesses between private and regular sessions
https://bugs.webkit.org/show_bug.cgi?id=195189
<rdar://problem/48421064>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2019-03-04 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE] Enable web process sandbox
https://bugs.webkit.org/show_bug.cgi?id=195169
Reviewed by Daniel Bates.
* wpe/install-dependencies:
* wpe/jhbuild.modules:
2019-03-04 Carlos Garcia Campos <cgarcia@igalia.com>
[GLib] Returning G_TYPE_OBJECT from a constructor does not work
https://bugs.webkit.org/show_bug.cgi?id=195206
Reviewed by Žan Doberšek.
Add a new test case.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(testJSCClass):
2019-03-04 Charlie Turner <cturner@igalia.com>
[WPE] Inline wl_array_for_each to workaround C++ compatibility issue
https://bugs.webkit.org/show_bug.cgi?id=194898
Reviewed by Žan Doberšek.
* wpe/backends/WindowViewBackend.cpp: wl_array_for_each relies on
a GCC extension that permits arithmetic on void* pointer. Inline
the macro until this issue is fixed upstream.
2019-03-03 Tim Horton <timothy_horton@apple.com>
Rid the world of WK_API_ENABLED
https://bugs.webkit.org/show_bug.cgi?id=195263
Reviewed by Dan Bernstein.
List of changed files elided because it's useless.
2019-03-03 Ross Kirsling <ross.kirsling@sony.com>
Unreviewed follow-up to r242292.
By Darin's suggestion, adopt an approach that uses EXPECT_STREQ without scattering utf8().data() everywhere.
* TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
(TestWebKitAPI::testStrip): Renamed from strip.
(TestWebKitAPI::TEST):
2019-03-03 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, remove accidentally-committed URLHelpers.cpp test
This test isn't built by any port and was committed in r240962 by mistake. See bug #174816
and bug #194272 for details.
* TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Removed.
2019-03-03 Tim Horton <timothy_horton@apple.com>
Remove some more unused 32-bit code
https://bugs.webkit.org/show_bug.cgi?id=195255
Reviewed by Darin Adler.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/TestNetscapePlugIn/Tests/mac/SupportsCarbonEventModel.cpp: Removed.
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(NPP_New):
(NPP_HandleEvent):
(handleEventCarbon): Deleted.
2019-03-02 Ross Kirsling <ross.kirsling@sony.com>
Unreviewed follow-up to r242292. Keep EXPECT_STREQ in tests per Darin's request.
* TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
(TestWebKitAPI::TEST):
2019-03-01 Darin Adler <darin@apple.com>
Finish removing String::format
https://bugs.webkit.org/show_bug.cgi?id=194893
Reviewed by Daniel Bates.
'
* Tools/TestWebKitAPI/Tests/WTF/StringConcatenate.cpp: Add tests for pad().
2019-03-01 Alex Christensen <achristensen@webkit.org>
Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier
https://bugs.webkit.org/show_bug.cgi?id=195229
<rdar://problem/48520362>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2019-03-01 Simon Fraser <simon.fraser@apple.com>
Add a system trace scope for event region building
https://bugs.webkit.org/show_bug.cgi?id=195226
Reviewed by Jon Lee.
This trace scope measures the time spend converting element rects into Region objects,
which can be large on some pages.
The value for "Display Refresh Dispatch to main thread" was wrong and I fixed it.
* Tracing/SystemTracePoints.plist:
2019-03-01 Ross Kirsling <ross.kirsling@sony.com>
EnvironmentUtilities::stripValuesEndingWithString isn't thread-safe
https://bugs.webkit.org/show_bug.cgi?id=194612
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
Just test the new string-processing function and don't touch the actual environment.
(Test cases are all as before, but based on operator== instead of strcmp.)
2019-03-01 Aakash Jain <aakash_jain@apple.com>
[ews-app] Update primary keys for handling multiple Buildbot instances
https://bugs.webkit.org/show_bug.cgi?id=195120
Reviewed by Stephanie Lewis.
Use a new primary key uid for build and step tables. Previous primary keys build_id and step_id
were not enough to handle multiple buildbot instances. This new primary key uid would be generated
by a combination of buildbot_instance_id and current primary key. e.g.: buildbot_instance_id + build_id
* BuildSlaveSupport/ews-app/ews/models/build.py: Added new primary key uid.
* BuildSlaveSupport/ews-app/ews/models/step.py: Ditto.
* BuildSlaveSupport/ews-app/ews/models/buildbotinstance.py: Generate uid and instance_id.
* BuildSlaveSupport/ews-app/ews/views/results.py: Updated to receive hostname in events.
* BuildSlaveSupport/ews-build/events.py: Send hostname along-with events.
* BuildSlaveSupport/ews-build/master.cfg: Ditto.
2019-03-01 Don Olmstead <don.olmstead@sony.com>
[WinCairo] Enable service worker
https://bugs.webkit.org/show_bug.cgi?id=188318
Reviewed by Youenn Fablet.
* DumpRenderTree/DumpRenderTreePrefix.h:
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/win/TestWebKitAPIPrefix.h:
* WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.h:
* WebKitTestRunner/WebKitTestRunnerPrefix.h:
2019-03-01 Justin Fan <justin_fan@apple.com>
[Web GPU] 32-bit builds broken by attempt to disable WebGPU on 32-bit
https://bugs.webkit.org/show_bug.cgi?id=195191
Rubber-stamped by Dean Jackson.
Dropping support for 32-bit entirely, so I'm intentionally leaving 32-bit broken.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-03-01 Yusuke Suzuki <ysuzuki@apple.com>
Unreviewed, fix lldb webkitpy tests
https://bugs.webkit.org/show_bug.cgi?id=194375
Since we changed the value of Is8Bit flag in StringImpl, we change lldb webkitpy tests accordingly.
* lldb/lldb_webkit.py:
(WTFStringImplProvider.is_8bit):
2019-02-28 David Quesada <david_quesada@apple.com>
Expose APINavigationAction.shouldPerformDownload() on WKNavigationAction
https://bugs.webkit.org/show_bug.cgi?id=195121
rdar://problem/48450302
Reviewed by Alex Christensen.
Add API tests for -WKNavigationAction._shouldPerformDownload in various
configurations where the 'download' attribute is absent, blank, or populated
with a filename, and where the anchor element is same-origin or cross-origin
(meaning the 'download' attribute shouldn't be honored).
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/NavigationAction.mm: Added.
(-[NavigationActionTestDelegate init]):
(-[NavigationActionTestDelegate navigationAction]):
(-[NavigationActionTestDelegate waitForNavigationActionCallback]):
(-[NavigationActionTestDelegate waitForDidFinishNavigation]):
(-[NavigationActionTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[NavigationActionTestDelegate webView:didFinishNavigation:]):
(TEST):
2019-02-28 Antoine Quint <graouts@apple.com>
Enable the Pointer Events runtime flag by default
https://bugs.webkit.org/show_bug.cgi?id=195156
Reviewed by Dean Jackson.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
2019-02-28 Wenson Hsieh <wenson_hsieh@apple.com>
Several PasteImage API tests are flaky
https://bugs.webkit.org/show_bug.cgi?id=195160
Reviewed by Tim Horton.
Some of these tests, such as PasteTIFFImage, don't wait for the inserted image element to finish loading before
querying the image element's size; a few other tests, such as PastePNGFile, are racy since they may begin
listening for a "load" event after image load is already complete.
To address this, make these tests first register a "load" event handler, then run script to insert an image
element into the document, and finally wait until the load event is observed before checking image size.
* TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
2019-02-28 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.PageZoomLevelAfterSwap
https://bugs.webkit.org/show_bug.cgi?id=195107
Reviewed by Alex Christensen.
Give some time for the zoom level to get restored.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-28 Sihui Liu <sihui_liu@apple.com>
Stop using legacy IDB path by default when creating WebProcessPool from websiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=194958
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBUserDelete.mm:
(TEST):
2019-02-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Update method to save build to handle builder_display_name
https://bugs.webkit.org/show_bug.cgi?id=195047
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-app/ews/models/build.py: Updated to handle builder_name and builder_display_name.
* BuildSlaveSupport/ews-app/ews/views/results.py: Ditto.
2019-02-28 Justin Fan <justin_fan@apple.com>
[Web GPU] Enable Web GPU only on 64-bit
https://bugs.webkit.org/show_bug.cgi?id=195139
Because Metal is only supported on 64 bit apps.
Unreviewed build fix.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-02-27 Youenn Fablet <youenn@apple.com>
Flaky API Test: TestWebKitAPI.ServiceWorkers.ServiceWorkerAndCacheStorageSpecificDirectories
https://bugs.webkit.org/show_bug.cgi?id=194959
Reviewed by Chris Dumez.
Spin loop until getting the condition to remove flakiness.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2019-02-27 Aakash Jain <aakash_jain@apple.com>
[ews-build] Buildbot should include builder_display_name in the build events
https://bugs.webkit.org/show_bug.cgi?id=195045
Reviewed by Dewei Zhu.
* BuildSlaveSupport/ews-build/events.py:
(Events.buildStarted): Included builder_display_name in event data. Also renamed
buildername to builder_name to be consistent in naming style.
(Events.buildFinished): Ditto.
2019-02-27 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.SessionStorage
https://bugs.webkit.org/show_bug.cgi?id=194480
Reviewed by Brady Eidson.
Update existing API test to make it more likely to reproduce the issue.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-27 Brady Eidson <beidson@apple.com>
Universal links from Google search results pages don't open the app.
<rdar://problem/46887179> and https://bugs.webkit.org/show_bug.cgi?id=195126
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/ShouldOpenExternalURLsInNewWindowActions.mm:
* TestWebKitAPI/cocoa/TestNavigationDelegate.h:
* TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
(-[TestNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2019-02-27 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.NumberOfCachedProcesses
https://bugs.webkit.org/show_bug.cgi?id=195102
Reviewed by Geoffrey Garen.
If the number of processes is not yet what we expect, wait a bit and check again to give
processes some time to exit.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-27 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.NavigateToDataURLThenBack
https://bugs.webkit.org/show_bug.cgi?id=194545
Reviewed by Brady Eidson.
Make sure the test navigates forward and then back only once. Previously, navigating
back would trigger a navigation again in a timer.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-13 Ryan Haddad <ryanhaddad@apple.com>
High Sierra Debug JSC test queue should use faster hardware
https://bugs.webkit.org/show_bug.cgi?id=194603
Rubber-stamped by Alexey Proskuryakov.
Adjust queues to free up faster hardware for use on the High Sierra Debug JSC queue.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
* QueueStatusServer/config/queues.py:
* Scripts/webkitpy/common/config/ews.json:
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(test_ews_name):
2019-02-27 John Wilander <wilander@apple.com>
Adopt WebCore::RegistrableDomain in WebCore::ResourceLoadStatistics and WebKit::NetworkProcessProxy
https://bugs.webkit.org/show_bug.cgi?id=195071
<rdar://problem/48417690>
Reviewed by Alex Christensen and Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
(TestWebKitAPI::createURL):
Convenience function.
(TestWebKitAPI::TEST):
WebCore::AdClickAttribution now takes a URL when creating Source and
Destination.
* TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
(TestWebKitAPI::TEST):
WebCore::AdClickAttribution now takes a URL when creating Source and
Destination.
2019-02-27 Antoine Quint <graouts@apple.com>
Support Pointer Events on macOS
https://bugs.webkit.org/show_bug.cgi?id=195008
<rdar://problem/47454419>
Reviewed by Dean Jackson.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures): Enable the PointerEvents runtime feature in DumpRenderTree such that tests targeting WK1 may test the Pointer Events feature.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-02-26 Mark Lam <mark.lam@apple.com>
Remove remaining poisoning code.
https://bugs.webkit.org/show_bug.cgi?id=194138
Reviewed by Saam Barati.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/Poisoned.cpp: Removed.
* TestWebKitAPI/Tests/WTF/PoisonedRef.cpp: Removed.
* TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp: Removed.
* TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp: Removed.
* TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp: Removed.
* TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp: Removed.
2019-02-26 Alex Christensen <achristensen@webkit.org>
Move ephemeral local storage from WebProcess to UIProcess
https://bugs.webkit.org/show_bug.cgi?id=195074
<rdar://problem/47937975>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-20 Jer Noble <jer.noble@apple.com>
[Cocoa] Media elements will restart network buffering just before suspending
https://bugs.webkit.org/show_bug.cgi?id=193691
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm: Added.
(TEST):
2019-02-26 Takashi Komori <Takashi.Komori@sony.com>
[Curl] Load HTTP body of 401 response when AuthenticationChange is cancelled.
https://bugs.webkit.org/show_bug.cgi?id=191652
Reviewed by Alex Christensen.
Fix WinCairo MiniBrowser behavior of authentication dialog.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::didReceiveAuthenticationChallenge):
2019-02-26 Youenn Fablet <youenn@apple.com>
WebPageProxy should nullify m_userMediaPermissionRequestManager after resetting the media state
https://bugs.webkit.org/show_bug.cgi?id=195028
<rdar://problem/48243733>
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-26 Philippe Normand <pnormand@igalia.com>
[WPE] Add API for webview background color configuration
https://bugs.webkit.org/show_bug.cgi?id=192305
Reviewed by Michael Catanzaro.
* MiniBrowser/wpe/main.cpp:
(main): Add a new option to configure the webview background
color. Example: --bg-color=transparent.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewBackgroundColor): Enable background color API tests for WPE.
(beforeAll): Ditto.
2019-02-25 Yongjun Zhang <yongjun_zhang@apple.com>
scalableNativeWebpageParameters() is not preserved on new page navigation.
https://bugs.webkit.org/show_bug.cgi?id=194892
<rdar://problem/47538280>
Reviewed by Wenson Hsieh.
Allow UIScriptController to set WKWebView's _allowsViewportShrinkToFit property with a new `setAllowsViewportShrinkToFit` method.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::allowsViewportShrinkToFit):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::setAllowsViewportShrinkToFit):
2019-02-25 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add model for handling multiple Buildbot instances
https://bugs.webkit.org/show_bug.cgi?id=194863
Reviewed by Stephanie Lewis.
* BuildSlaveSupport/ews-app/ews/models/buildbotinstance.py: Added.
2019-02-25 Aakash Jain <aakash_jain@apple.com>
[ews-app] Remove BuilderMapping table
https://bugs.webkit.org/show_bug.cgi?id=194961
Reviewed by Stephanie Lewis.
Store builder name directly in build table, instead of having a separate
table for it.
* BuildSlaveSupport/ews-app/ews/models/__init__.py:
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py: Removed.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-02-25 John Wilander <wilander@apple.com>
Introduce and adopt new class RegistrableDomain for eTLD+1
https://bugs.webkit.org/show_bug.cgi?id=194791
<rdar://problem/48179240>
Reviewed by Alex Christensen, Fujii Hironori, and Brent Fulgham.
This patch adds an API test and replaces two instances of
"TopPrivatelyOwnedDomains" with "RegistrableDomains" in message names.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
(TestWebKitAPI::TEST):
Changed two strings to make sure the registrable domains are still considered
invalid and pass the test.
* TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp: Added.
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
2019-02-25 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Bump WPEBackend-fdo requirement to API version 1.0
https://bugs.webkit.org/show_bug.cgi?id=195001
Reviewed by Carlos Garcia Campos.
API version 1.0 always includes the functionality previously guarded with
WPE_BACKEND_CHECK_VERSION(): remove the guards and always use the new functions
unconditionally.
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::createWebViewBackend): Remove usage of WPE_BACKEND_CHECK_VERSION().
* TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
(WebViewTest::showInWindow): Ditto.
(WebViewTest::hideView): Ditto.
* wpe/backends/HeadlessViewBackend.cpp:
(WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend): Ditto.
* wpe/backends/ViewBackend.cpp:
(WPEToolingBackends::ViewBackend::ViewBackend): Use libWPEBackend-fdo-1.0 as library name.
* wpe/backends/WindowViewBackend.cpp:
(WPEToolingBackends::WindowViewBackend::WindowViewBackend): Remove usage of
WPE_BACKEND_CHECK_VERSION().
* wpe/jhbuild.modules: Build a version WPEBackend-fdo with the updated API version.
2019-02-25 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Add support for flatpak > 1.1.2
https://bugs.webkit.org/show_bug.cgi?id=194088
Flatpak 1.2 is now out so we need to support that
version now.
Reviewed by Michael Catanzaro.
* flatpak/flatpakutils.py:
(check_flatpak):
(FlatpakPackages.__init__):
(FlatpakPackages.__detect_packages):
(FlatpakPackages.__detect_packages.in):
(FlatpakRepos.update):
2019-02-25 Zan Dobersek <zdobersek@igalia.com>
[WPE] Bump WPEBackend-fdo Jhbuild package to latest changes
https://bugs.webkit.org/show_bug.cgi?id=194998
Reviewed by Carlos Garcia Campos.
* wpe/jhbuild.modules: Bump the WPEBackend-fdo package, converting it
to a Git checkout and using the latest commit containing various fixes
and improvements.
2019-02-24 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Remove user agent quirk for washingtonpost.com
https://bugs.webkit.org/show_bug.cgi?id=194981
Reviewed by Žan Doberšek.
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::TEST):
2019-02-23 Keith Miller <keith_miller@apple.com>
Add new mac target numbers
https://bugs.webkit.org/show_bug.cgi?id=194955
Reviewed by Tim Horton.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
* MiniBrowser/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/Base.xcconfig:
2019-02-22 Basuke Suzuki <basuke.suzuki@sony.com>
[WinCairo] Enable wk1/wk2 suffix for platform search path.
https://bugs.webkit.org/show_bug.cgi?id=194846
Reviewed by Don Olmstead.
Added _search_paths() and _port_specific_expectations_files() for
WinCairoPort.
* Scripts/webkitpy/port/win.py:
(WinCairoPort.default_baseline_search_path):
(WinCairoPort):
(WinCairoPort._port_specific_expectations_files):
(WinCairoPort._search_paths):
2019-02-22 Tim Horton <timothy_horton@apple.com>
ProcessSwap.PageOverlayLayerPersistence fails on iOS and in debug builds
https://bugs.webkit.org/show_bug.cgi?id=194963
Reviewed by Dean Jackson.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
Do a `contains` check instead of `equals`, because in debug builds we
put the GraphicsLayer pointer in a prefix.
2019-02-22 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Callout menu overlaps in-page controls when editing a comment in github.com's issue tracker
https://bugs.webkit.org/show_bug.cgi?id=194873
<rdar://problem/46701974>
Reviewed by Tim Horton.
Add a couple of UIScriptController methods to make callout menu testing on iOS easier (see below).
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::menuRect const):
(WTR::UIScriptController::isShowingMenu const):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::menuRect const):
Add a function to query the bounds of the callout menu in content coordinates.
(WTR::UIScriptController::isShowingMenu const):
Add a function to query whether the callout menu is shown (i.e., has finished its appearance animation).
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::rectForMenuAction const):
(WTR::UIScriptController::menuRect const):
(WTR::UIScriptController::isShowingMenu const):
(WTR::findViewInHierarchyOfType): Deleted.
2019-02-22 Chris Dumez <cdumez@apple.com>
Regression(PSON) Unable to preview password-protected documents on iCloud.com
https://bugs.webkit.org/show_bug.cgi?id=194954
<rdar://problem/48127957>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
(-[PSONNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
(-[PSONNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
2019-02-22 Chris Dumez <cdumez@apple.com>
REGRESSION(PSON) Scroll position is sometimes not restored on history navigation
https://bugs.webkit.org/show_bug.cgi?id=194924
<rdar://problem/48216125>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-22 Chris Dumez <cdumez@apple.com>
Unreviewed, disable API test added in r241928 on iOS.
The cache is not enabled on devices with less than 3GB of RAM.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-21 Simon Fraser <simon.fraser@apple.com>
Hardcode Visual Viewports on everywhere except iOS WK1
https://bugs.webkit.org/show_bug.cgi?id=194928
Reviewed by Zalan Bujtas.
Remove the WK1 and WK2 preferences and MiniBrowser menu item for "visual viewports",
change the default value of the Setting to 'true', and hardcode WebView on iOS to
set it to false. The setting has shipped for several years and there's no need to turn
it off now.
Similarly, disable the "Visual Viewport API" on iOS WK1, since it makes no sense if
Visual Viewports are not enabled.
Remove the "visualViewportEnabled" flag and unused code paths from scrolling tree code
that only runs in WK2
* MiniBrowser/mac/SettingsController.h:
* MiniBrowser/mac/SettingsController.m:
(-[SettingsController init]):
(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController visualViewportEnabled]): Deleted.
(-[SettingsController toggleVisualViewportEnabled:]): Deleted.
* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController didChangeSettings]):
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController didChangeSettings]):
2019-02-21 Ryosuke Niwa <rniwa@webkit.org>
Discard cached processes when clearing website data store
https://bugs.webkit.org/show_bug.cgi?id=194894
Reviewed by Chris Dumez.
Added a test case.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(TestWebKitAPI.ProcessSwap.NumberOfCachedProcesses): Added.
2019-02-21 Alex Christensen <achristensen@webkit.org>
Clicking "Go Back" on a safe browsing warning before a WKWebView has loaded any page should request to close the WKWebView
https://bugs.webkit.org/show_bug.cgi?id=194914
<rdar://problem/47586889>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(-[SafeBrowsingNavigationDelegate webViewDidClose:]):
(TEST):
(-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]): Deleted.
2019-02-21 David Kilzer <ddkilzer@apple.com>
Leak of CFErrorRef objects (1.92 Kbytes) in com.apple.WebKit.WebContent.Development running WebKit layout tests on iOS Simulator
<https://webkit.org/b/194761>
Reviewed by Myles Maxfield.
* WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
(WTR::activateSystemCoreWebFonts): Log `error` to console if
CTFontManagerRegisterFontsForURL() fails (macOS only). Update
to use ARC-compliant cast.
(WTR::activateFonts): Change `0` to `nullptr`. Update to use
ARC-compliant cast.
(WTR::installFakeHelvetica): Log `error` to console if
CTFontManagerRegisterFontsForURL() fails, but only on supported
platforms (macOS Mojave/iOS 12 and newer, not iOS Simulator).
Call CFRelease() on `error` to fix the leak. Update to use
ARC-compliant cast.
(WTR::uninstallFakeHelvetica): Update to use ARC-compliant
cast.
2019-02-21 Chris Dumez <cdumez@apple.com>
Flaky API Test: TestWebKitAPI.ProcessSwap.SuspendedPageLimit
https://bugs.webkit.org/show_bug.cgi?id=194481
Reviewed by Alex Christensen.
Give the processes a chance to shutdown and wait until we reached the expected number
of processes.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-21 Tim Horton <timothy_horton@apple.com>
Fix the macOS build
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-21 Tim Horton <timothy_horton@apple.com>
Fix ProcessSwap.PageOverlayLayerPersistence on macOS
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
I am a backwards.
2019-02-21 Tim Horton <timothy_horton@apple.com>
Fix ProcessSwap.PageOverlayLayerPersistence on macOS
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
We can't find the UI-side layer on macOS because we don't use UI-side compositing.
We could force on UI-side compositing, but I feel like the test might be more
valuable exercising the normal path on each platform (though the original
bug was also UI-side specific). Though we can't validate that the overlay
layer was installed successfully, there are layout tests that do that.
2019-02-21 Tim Horton <timothy_horton@apple.com>
Crash under RemoteLayerTreePropertyApplier::applyProperties when reattaching to old process
https://bugs.webkit.org/show_bug.cgi?id=194845
<rdar://problem/47944579>
Reviewed by Antti Koivisto.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-21 Zalan Bujtas <zalan@apple.com>
[LFC][Floats] Add support for placing formatting roots in-between floats.
https://bugs.webkit.org/show_bug.cgi?id=194902
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-21 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Do not hardcode WPEBackend-fdo library name for linking tests
https://bugs.webkit.org/show_bug.cgi?id=194901
Unreviewed build fix.
* TestWebKitAPI/PlatformWPE.cmake: Set TestWebKitAPIBase to be linked
against the detected ${WPEBACKEND_FDO_LIBRARIES} instead of hardcoding
WPEBackend-fdo-0.1 as library name.
2019-02-21 Rob Buis <rbuis@igalia.com>
Update MIME type parser
https://bugs.webkit.org/show_bug.cgi?id=180526
Reviewed by Darin Adler.
Add tests involving leading and trailing whitespace, non-token
characters and quoted strings.
* TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp:
(TestWebKitAPI::TEST):
2019-02-20 Don Olmstead <don.olmstead@sony.com>
[CMake][Win] Only build DumpRenderTree when WebKit Legacy is enabled
https://bugs.webkit.org/show_bug.cgi?id=194884
Reviewed by Michael Catanzaro.
* PlatformWin.cmake:
2019-02-20 Chris Dumez <cdumez@apple.com>
Add API test for <rdar://problem/47471222>
https://bugs.webkit.org/show_bug.cgi?id=194847
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-20 Chris Dumez <cdumez@apple.com>
Regression(PSON) "Reload without content extensions" does not work when the main resource is blocked
https://bugs.webkit.org/show_bug.cgi?id=194872
<rdar://problem/47924500>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-20 Jer Noble <jer.noble@apple.com>
Add a git utility method that allows the caller to determine if a specific commitish is within a specified range of commits.
https://bugs.webkit.org/show_bug.cgi?id=191332
Reviewed by Dean Jackson.
* Scripts/git-is-in-range: Added.
2019-02-20 Andy Estes <aestes@apple.com>
[Xcode] Add SDKVariant.xcconfig to various Xcode projects
https://bugs.webkit.org/show_bug.cgi?id=194869
Rubber-stamped by Jer Noble.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
* MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2019-02-20 Chris Dumez <cdumez@apple.com>
Regression(PSON) Crash under WebKit::WebPageProxy::decidePolicyForNavigationActionSync
https://bugs.webkit.org/show_bug.cgi?id=194857
<rdar://problem/47759323>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-20 Chris Dumez <cdumez@apple.com>
[WKTR] Avoid starting new NetworkProcesses unnecessarily when running the layout tests
https://bugs.webkit.org/show_bug.cgi?id=194829
<rdar://problem/47889906>
Reviewed by Alexey Proskuryakov.
Every time the TestOptions were changing we were creating both a new Web view and
a new WKContext, which would start a new Network process. In most cases, we only
need to contruct a new Web view and we do can keep reusing the same WKContext.
This patch implements this optimization and thus avoids spinning a lot of new
Network processes while running the layout tests.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generateContextConfiguration const):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::createWebViewWithOptions):
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::ContextOptions::hasSameInitializationOptions const):
(WTR::TestOptions::ContextOptions::shouldEnableProcessSwapOnNavigation const):
(WTR::TestOptions::hasSameInitializationOptions const):
(WTR::TestOptions::shouldEnableProcessSwapOnNavigation const): Deleted.
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformAddTestOptions const):
2019-02-20 Adrian Perez de Castro <aperez@igalia.com>
[WPE][GTK] Enable support for CONTENT_EXTENSIONS
https://bugs.webkit.org/show_bug.cgi?id=167941
Reviewed by Carlos Garcia Campos.
* MiniBrowser/gtk/main.c:
(filterSavedCallback): Added.
(main): Support loading a JSON rule set file for content filtering.
* MiniBrowser/wpe/main.cpp:
(filterSavedCallback): Added.
(main): Support loading a JSON rule set file for content filtering.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentFilterStore.cpp: Added.
(WTF::refGPtr): Added locally for WebKitUserContentFilter, as it would not be used anywhere else.
(WTF::derefGPtr): Ditto.
(testEmptyStore):
(testSaveInvalidFilter):
(testSaveLoadFilter):
(testSavedFilterIdentifierMatch):
(testRemoveFilter):
(testSaveMultipleFilters):
(testSaveFilterFromFile):
(testFilterPersistence):
(beforeAll):
(afterAll):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
(removeOldInjectedContentAndResetLists): Also reset content filters.
(isCSSBlockedForURLAtPath): Added. Tests whether the test filter, which blocks a
CSS style sheet, has blocked the load of the CSS by looking at the resulting style of
the element affected by the style sheet.
(getUserContentFilter): Added. Stores the test filter in a WebKitUserContentFilterStore
and returns it to be used by tests.
(testUserContentManagerContentFilter): Added. Tests whether adding and removing a filter
from the WebKitUserContentManager results in the a CSS style sheet being blocked.
(serverCallback): Add support for serving a CSS style sheet for testing.
(beforeAll): Add call to testUserContentManagerContentFilter().
* TestWebKitAPI/glib/CMakeLists.txt: Added TestWebKitUserContentFilterStore.
2019-02-19 Keith Rollin <krollin@apple.com>
Add timing information to build output
https://bugs.webkit.org/show_bug.cgi?id=194839
<rdar://problem/48219609>
Reviewed by Alexey Proskuryakov.
Configure xcodebuild with -ShowBuildOperationDuration, causing it to
emit each project's build time to its output. E.g.,
** BUILD SUCCEEDED ** [0.132 sec]
* Scripts/webkitdirs.pm:
(XcodeOptions):
2019-02-19 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r241784.
Broke all OpenSource builds.
Reverted changeset:
"Web Inspector: Improve ES6 Class instances in Heap Snapshot
instances view"
https://bugs.webkit.org/show_bug.cgi?id=172848
https://trac.webkit.org/changeset/241784
2019-02-19 Zalan Bujtas <zalan@apple.com>
[LFC][Floats] Remove redundant intersecting logic
https://bugs.webkit.org/show_bug.cgi?id=194804
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-19 Dean Jackson <dino@apple.com>
Clean-up output from generate-xcfilelists so it can be filtered
https://bugs.webkit.org/show_bug.cgi?id=194795
Reviewed by Joseph Pecoraro (and Keith Rollin).
Replace the "..." with "GXCF:" in generate-xcfilelists output, and
make a slight tweak to filter-build-webkit so such lines are marked
as plain.
* Scripts/filter-build-webkit:
* Scripts/generate-xcfilelists:
2019-02-19 Pablo Saavedra <psaavedra@igalia.com>
pytest is not correctly auto-installed
https://bugs.webkit.org/show_bug.cgi?id=194707
Reviewed by Carlos Garcia Campos.
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_pytest):
2019-02-18 Chris Dumez <cdumez@apple.com>
REGRESSION (PSON): Can't access optumbank.com from myuhc.com
https://bugs.webkit.org/show_bug.cgi?id=194797
<rdar://problem/48055151>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-18 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Support pasting item-provider-backed data on the pasteboard as attachment elements
https://bugs.webkit.org/show_bug.cgi?id=194670
<rdar://problem/39066529>
Reviewed by Tim Horton.
Remove code and tests for subresource URL replacement, and also add a new test to verify that copied data can be
pasted in an editable area as attachment elements.
* TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegatePlugIn.mm:
(-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:replacementURLForResource:mimeType:]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::InjectedBundlePage):
2019-02-18 Alex Christensen <achristensen@webkit.org>
Fix API test after r241728
​https://bugs.webkit.org/show_bug.cgi?id=194723
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
The test should check the default preference value, not make sure the preference is NO after setting it to YES :/
2019-02-18 Daniel Bates <dabates@apple.com>
[iOS] Keyups for non-modifier keys identified as "Dead" when not focused in a content-editable element
https://bugs.webkit.org/show_bug.cgi?id=192824
<rdar://problem/47100332>
Reviewed by Wenson Hsieh.
Fix a bug where the wrong usage code was used for F13 thru F24.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(keyCodeForDOMFunctionKey):
2019-02-18 Tadeu Zagallo <tzagallo@apple.com>
Bytecode cache should a have a boot-specific validation
https://bugs.webkit.org/show_bug.cgi?id=194769
<rdar://problem/48149509>
Reviewed by Keith Miller.
Add test for WTF::bootSessionUUIDString()
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/UUID.cpp: Added.
(TEST):
2019-02-18 Alex Christensen <achristensen@webkit.org>
Disable safe browsing in WKWebView and remove its WKPreferences API
https://bugs.webkit.org/show_bug.cgi?id=194723
<rdar://problem/48122993>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
(safeBrowsingView):
Make tests use SPI instead of API.
2019-02-17 Fujii Hironori <Hironori.Fujii@sony.com>
Use dumpJSConsoleLogInStdErr=true webkit-test-runner option for non-imported tests instead of using DumpJSConsoleLogInStdErr expectation in TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=194586
Reviewed by Ross Kirsling.
* DumpRenderTree/win/DumpRenderTree.cpp:
(runTest): Pass true to setDumpJSConsoleLogInStdErr if options.dumpJSConsoleLogInStdErr is true.
* Scripts/webkitpy/port/driver.py:
(Driver._command_from_driver_input): Convert Cygwin absolute path of tests to Windows path.
2019-02-17 David Kilzer <ddkilzer@apple.com>
Unreviewed, rolling out r241620.
"Causes use-after-free crashes running layout tests with ASan and GuardMalloc."
(Requested by ddkilzer on #webkit.)
Reverted changeset:
"[WTF] Add environment variable helpers"
https://bugs.webkit.org/show_bug.cgi?id=192405
https://trac.webkit.org/changeset/241620
2019-02-16 Zalan Bujtas <zalan@apple.com>
[LFC] RenderImage's default intrinsic size is 0.
https://bugs.webkit.org/show_bug.cgi?id=194745
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-16 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Add support for block replaced intrinsic width.
https://bugs.webkit.org/show_bug.cgi?id=194705
Reviewed by Simon Fraser.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-16 Zalan Bujtas <zalan@apple.com>
[LFC] Apply min/max width constraints to preferred width computation
https://bugs.webkit.org/show_bug.cgi?id=194739
Reviewed by Simon Fraser.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-15 Ross Kirsling <ross.kirsling@sony.com>
[WTF] Add environment variable helpers
https://bugs.webkit.org/show_bug.cgi?id=192405
Reviewed by Michael Catanzaro.
* DumpRenderTree/mac/DumpRenderTree.mm:
(libraryPathForDumpRenderTree):
* DumpRenderTree/win/DumpRenderTree.cpp:
(libraryPathForDumpRenderTree):
* TestRunnerShared/IOSLayoutTestCommunication.cpp:
(setUpIOSLayoutTestCommunication):
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
(beforeAll):
* TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
(main):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
(WebKitTestBus::run):
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::getOutputDir):
(WTR::initializeFontConfigSetting):
* WebKitTestRunner/InjectedBundle/gtk/InjectedBundleGtk.cpp:
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.cpp:
(WTR::topLevelPath):
* WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp:
(WTR::topLevelPath):
(WTR::getOutputDir):
(WTR::activateFonts):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::libraryPathForTesting):
(WTR::TestController::generateContextConfiguration const):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::decideDestinationWithSuggestedFilename):
(WTR::TestController::platformAdjustContext):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaPlatformInitialize):
(WTR::TestController::platformAdjustContext):
* WebKitTestRunner/gtk/main.cpp:
(main):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::configureContentExtensionForTest):
* WebKitTestRunner/wpe/main.cpp:
(main):
Utilize WTF::Environment where possible.
2019-02-15 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] WKWebView callout bar is missing Change Writing Direction item
https://bugs.webkit.org/show_bug.cgi?id=190015
<rdar://problem/44810366>
Reviewed by Tim Horton.
Make an existing API test that exercises platform SPI to change the inline text writing direction run only on
macOS, and add a new API test that uses similarly named SPI on iOS to change the base writing direction.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
(TestWebKitAPI::TEST):
2019-02-15 Chris Dumez <cdumez@apple.com>
Regression(PSON) Navigating quickly back and forth can lead to getting 'about:blank' in the backforward list
https://bugs.webkit.org/show_bug.cgi?id=194717
<rdar://problem/47884404>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-15 Youenn Fablet <youenn@apple.com>
Make navigator.mediaDevices SecureContext
https://bugs.webkit.org/show_bug.cgi?id=194666
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKitCocoa/UserMediaDisabled.mm:
(MediaCaptureDisabledTest::loadTestAndWaitForMessage):
(TEST_F):
2019-02-15 Brian Burg <bburg@apple.com>
[Mac] WebInspectorUI.framework does not need to be soft-linked anymore
https://bugs.webkit.org/show_bug.cgi?id=194411
<rdar://problem/47787614>
Reviewed by Joseph Pecoraro.
Remove unnecessary soft linking macro usage.
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::inspectorTestStubURL):
(SOFT_LINK_STAGED_FRAMEWORK): Deleted.
* WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
(WTR::TestRunner::inspectorTestStubURL):
2019-02-15 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r241559 and r241566.
https://bugs.webkit.org/show_bug.cgi?id=194710
Causes layout test crashes under GuardMalloc (Requested by
ryanhaddad on #webkit).
Reverted changesets:
"[WTF] Add environment variable helpers"
https://bugs.webkit.org/show_bug.cgi?id=192405
https://trac.webkit.org/changeset/241559
"Unreviewed build fix for WinCairo Debug after r241559."
https://trac.webkit.org/changeset/241566
2019-02-15 Zalan Bujtas <zalan@apple.com>
[LFC] Out-of-flow box is never a float box
https://bugs.webkit.org/show_bug.cgi?id=194704
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-10 Darin Adler <darin@apple.com>
Replace more uses of String::format with StringConcatenate (mostly non-Apple platform-specific cases)
https://bugs.webkit.org/show_bug.cgi?id=194487
Reviewed by Daniel Bates.
* DumpRenderTree/win/DumpRenderTree.cpp:
(applicationId): Use makeString instead of String::format.
(main): Ditto.
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
(TestWebKitAPI::Util::createURLForResource): Ditto.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
(WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks): Ditto.
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::attributeSetToString): Use StringBuilder functions directly instead of g_strconcat.
(WTR::attributesOfElement): Use StringBuilder functions directly instead of String::format.
(WTR::createStringWithAttributes): Use appendLiteral.
(WTR::AccessibilityUIElement::helpText const): Ditto.
(WTR::AccessibilityUIElement::attributedStringForRange): Use StringBuilder functions
directly instead of using String::format.
(WTR::AccessibilityUIElement::url): Use makeString instead of String::format.
(WTR::stringAtOffset): Use StringBuilder::appendNumber instead of String::format.
2019-02-15 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r241564.
Caused 50+ Timeouts on Mac WK2, mostly in the http/ directory
Reverted changeset:
"[Mac] WebInspectorUI.framework does not need to be soft-
linked anymore"
https://bugs.webkit.org/show_bug.cgi?id=194411
https://trac.webkit.org/changeset/241564
2019-02-15 Saam barati <sbarati@apple.com>
[WebAssembly] Write a new register allocator for Air O0 and make BBQ use it
https://bugs.webkit.org/show_bug.cgi?id=194036
Reviewed by Yusuke Suzuki.
* Scripts/run-jsc-stress-tests:
2019-02-14 Tim Horton <timothy_horton@apple.com>
Fix the build.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::drawSquareInEditableImage):
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::drawSquareInEditableImage):
2019-02-14 Tim Horton <timothy_horton@apple.com>
Fix the build.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::drawSquareInEditableImage):
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::drawSquareInEditableImage):
2019-02-14 Brian Burg <bburg@apple.com>
[Mac] WebInspectorUI.framework does not need to be soft-linked anymore
https://bugs.webkit.org/show_bug.cgi?id=194411
<rdar://problem/47787614>
Reviewed by Joseph Pecoraro.
Remove unnecessary soft linking macro usage.
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::inspectorTestStubURL):
(SOFT_LINK_STAGED_FRAMEWORK): Deleted.
* WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
(WTR::TestRunner::inspectorTestStubURL):
2019-02-14 Aakash Jain <aakash_jain@apple.com>
[ews-app] status bubble should fetch builder name info from BuilderMapping table
https://bugs.webkit.org/show_bug.cgi?id=194599
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
2019-02-14 Aakash Jain <aakash_jain@apple.com>
[ews-app] Set Foreign Key in Django build model
https://bugs.webkit.org/show_bug.cgi?id=194667
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
(Build):
2019-02-14 Ross Kirsling <ross.kirsling@sony.com>
[WTF] Add environment variable helpers
https://bugs.webkit.org/show_bug.cgi?id=192405
Reviewed by Michael Catanzaro.
* DumpRenderTree/mac/DumpRenderTree.mm:
(libraryPathForDumpRenderTree):
* DumpRenderTree/win/DumpRenderTree.cpp:
(libraryPathForDumpRenderTree):
* TestRunnerShared/IOSLayoutTestCommunication.cpp:
(setUpIOSLayoutTestCommunication):
* TestWebKitAPI/Tests/WebKit/EnvironmentUtilitiesTest.cpp:
(TestWebKitAPI::strip):
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
(beforeAll):
* TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
(main):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
(WebKitTestBus::run):
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
(WTR::getOutputDir):
(WTR::initializeFontConfigSetting):
* WebKitTestRunner/InjectedBundle/gtk/InjectedBundleGtk.cpp:
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.cpp:
(WTR::topLevelPath):
* WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp:
(WTR::topLevelPath):
(WTR::getOutputDir):
(WTR::activateFonts):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::libraryPathForTesting):
(WTR::TestController::generateContextConfiguration const):
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::decideDestinationWithSuggestedFilename):
(WTR::TestController::platformAdjustContext):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaPlatformInitialize):
(WTR::TestController::platformAdjustContext):
* WebKitTestRunner/gtk/main.cpp:
(main):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::configureContentExtensionForTest):
* WebKitTestRunner/wpe/main.cpp:
(main):
Utilize WTF::Environment where possible.
2019-02-14 Chris Dumez <cdumez@apple.com>
[PSON] Introduce a WebContent Process cache
https://bugs.webkit.org/show_bug.cgi?id=194594
<rdar://problem/46793397>
Reviewed by Geoff Garen.
Update API tests to turn on the WebContent Process cache.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-14 Jiewen Tan <jiewen_tan@apple.com>
Unreviewed, build fix after r241480
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
(-[DragAndDropSimulator initWithWebView:]):
2019-02-14 Chris Fleizach <cfleizach@apple.com>
AX: ARIA Reflection was disabled in error
https://bugs.webkit.org/show_bug.cgi?id=194647
<rdar://problem/48068336>
Reviewed by Ryosuke Niwa.
Remove test override now that this feature should be enabled by default.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2019-02-14 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r241486.
https://bugs.webkit.org/show_bug.cgi?id=194655
causing API failures in builds (Requested by ShawnRoberts on
#webkit).
Reverted changeset:
"[Cocoa] Media elements will restart network buffering just
before suspending"
https://bugs.webkit.org/show_bug.cgi?id=193691
https://trac.webkit.org/changeset/241486
2019-02-14 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapse] Replaced boxes don't collapse through their margins
https://bugs.webkit.org/show_bug.cgi?id=194622
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-14 Zalan Bujtas <zalan@apple.com>
[LFC] Shrink-to-fit-width should be constrained by min/max width
https://bugs.webkit.org/show_bug.cgi?id=194653
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-13 Ryosuke Niwa <rniwa@webkit.org>
Crash in WKBundleFrameGetParentFrame when called inside didRemoveFrameFromHierarchy
https://bugs.webkit.org/show_bug.cgi?id=194641
Reviewed by Geoffrey Garen.
Added a call to WKBundleFrameGetParentFrame to an existing test for didRemoveFrameFromHierarchy
so that the test would fail without this fix.
* TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
(TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
2019-02-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Change log level for a log statement
Unreviewed minor fix.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
(Patch.save_patch):
2019-02-13 Jer Noble <jer.noble@apple.com>
[Cocoa] Media elements will restart network buffering just before suspending
https://bugs.webkit.org/show_bug.cgi?id=193691
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm: Added.
(TEST):
2019-02-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Fetch builder id to name mapping
https://bugs.webkit.org/show_bug.cgi?id=194355
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/common/buildbot.py:
(Buildbot.get_builder_id_to_name_mapping):
(Buildbot._get_display_name_from_builder_name):
2019-02-12 Jiewen Tan <jiewen_tan@apple.com>
Further restricting webarchive loads
https://bugs.webkit.org/show_bug.cgi?id=194567
<rdar://problem/47610130>
Reviewed by Youenn Fablet.
Besides adding API tests, this patch also enhances DragAndDropSimulator to allow
navigations on drop.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/LoadWebArchive.mm: Added.
(-[TestLoadWebArchiveNavigationDelegate webView:didFinishNavigation:]):
(-[TestLoadWebArchiveNavigationDelegate webView:didFailProvisionalNavigation:withError:]):
(-[TestLoadWebArchiveNavigationDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/mac/helloworld.webarchive: Added.
* TestWebKitAPI/Tests/mac/load-web-archive-1.html: Added.
* TestWebKitAPI/Tests/mac/load-web-archive-2.html: Added.
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
(-[DragAndDropSimulator initWithWebViewFrame:configuration:]):
(-[DragAndDropSimulator _webView:dragDestinationActionMaskForDraggingInfo:]):
2019-02-13 John Wilander <wilander@apple.com>
Store Ad Click Attribution requests in the network process
https://bugs.webkit.org/show_bug.cgi?id=194510
<rdar://problem/47650118>
Reviewed by Alex Christensen and Daniel Bates.
This patch adds two TestRunner functions:
- dumpAdClickAttribution()
- clearAdClickAttribution()
They call into the network process to dump and clear Ad Click
Attribution state, respectively.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::dumpAdClickAttribution):
(WTR::TestRunner::clearAdClickAttribution):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::AdClickAttributionStringResultCallbackContext::AdClickAttributionStringResultCallbackContext):
(WTR::adClickAttributionStringResultCallback):
(WTR::TestController::dumpAdClickAttribution):
(WTR::AdClickAttributionVoidCallbackContext::AdClickAttributionVoidCallbackContext):
(WTR::adClickAttributionVoidCallback):
(WTR::TestController::clearAdClickAttribution):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::dumpResults):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
(WTR::TestInvocation::dumpAdClickAttribution):
* WebKitTestRunner/TestInvocation.h:
2019-02-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Generate status-bubble
https://bugs.webkit.org/show_bug.cgi?id=194572
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
(StatusBubble._build_bubble):
(StatusBubble._should_show_bubble_for):
(StatusBubble._build_bubbles_for_patch):
2019-02-13 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add status bubble html template
https://bugs.webkit.org/show_bug.cgi?id=194571
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/templates: Added.
* BuildSlaveSupport/ews-app/ews/templates/statusbubble.html: Copied from QueueStatusServer/templates/statusbubble.html.
2019-02-12 Chris Dumez <cdumez@apple.com>
Regression(PSON) MESSAGE_CHECK() hit under WebPageProxy::didFailProvisionalLoadForFrameShared()
https://bugs.webkit.org/show_bug.cgi?id=194568
<rdar://problem/47944490>
Reviewed by Ryosuke Niwa.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:didStartProvisionalNavigation:]):
2019-02-12 Jonathan Bedard <jbedard@apple.com>
webkitpy: Remove bug_dummy from parsed test expectations
https://bugs.webkit.org/show_bug.cgi?id=194562
<rdar://problem/47853999>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationParser):
(TestExpectationParser.expectation_for_skipped_test): Remove DUMMY_BUG_MODIFIER from
skipped tests.
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
2019-02-12 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add method to fetch patch
https://bugs.webkit.org/show_bug.cgi?id=194518
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
(Patch.get_patch):
2019-02-12 Zalan Bujtas <zalan@apple.com>
[LFC] Expand tests coverage (60 new tests -> 860)
Unreviewed test gardening (run-singly, --child-processes=1).
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-12 Wenson Hsieh <wenson_hsieh@apple.com>
Allow pages to trigger programmatic paste from script on iOS
https://bugs.webkit.org/show_bug.cgi?id=194271
<rdar://problem/47808810>
Reviewed by Tim Horton.
Add support for interacting with the callout bar on iOS during layout tests. See below for more detail.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::platformSetDidShowMenuCallback):
(WTR::UIScriptController::platformSetDidHideMenuCallback):
(WTR::UIScriptController::rectForMenuAction const):
Add new mechanisms to make it possible to interact with and query the state of the callout menu on iOS. This
includes determining the rect (in content view coordinates) of the menu's controls, and callbacks to register
for when the menu is shown or hidden.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptContext.h:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setDidShowMenuCallback):
(WTR::UIScriptController::didShowMenuCallback const):
(WTR::UIScriptController::setDidHideMenuCallback):
(WTR::UIScriptController::didHideMenuCallback const):
(WTR::UIScriptController::platformSetDidShowMenuCallback):
(WTR::UIScriptController::platformSetDidHideMenuCallback):
(WTR::UIScriptController::rectForMenuAction const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
Add a new test option to determine whether DOM paste is enabled. DOM paste is currently enabled everywhere by
default, but these new programmatic paste tests require it to be disabled in order for confirmation UI to show.
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::calendarType const):
(WTR::UIScriptController::platformUndoManager const):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView initWithFrame:configuration:]):
(-[TestRunnerWKWebView dealloc]):
(-[TestRunnerWKWebView _didShowMenu]):
(-[TestRunnerWKWebView _didHideMenu]):
Listen to when the callout bar is presented and dismissed, and invoke testing callbacks as needed.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::handleMenuWillHideNotification):
(WTR::handleMenuDidHideNotification):
(WTR::TestController::platformInitialize):
(WTR::TestController::platformDestroy):
(WTR::TestController::platformResetStateToConsistentValues):
Additionally ensure that any callout menu presented by a previous layout test is dismissed before running the
next test by hiding the callout bar if necessary, and then waiting for the "DidHide" notification.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::forEachViewInHierarchy):
(WTR::findViewInHierarchyOfType):
Move `forEachViewInHierarchy` so that we can use it throughout the file, and then add some additional helper
functions that dig through a given view's hierarchy in search of a view of a given class.
(WTR::UIScriptController::selectionStartGrabberViewRect const):
(WTR::UIScriptController::selectionEndGrabberViewRect const):
(WTR::UIScriptController::selectionCaretViewRect const):
(WTR::UIScriptController::selectionRangeViewRects const):
(WTR::UIScriptController::platformSetDidShowMenuCallback):
(WTR::UIScriptController::platformSetDidHideMenuCallback):
Tweak these to use `platformContentView` instead of grabbing the content view from WKWebView directly.
(WTR::UIScriptController::rectForMenuAction const):
Add a new UIScriptController method to get the rect of the action in the contextual menu (on iOS, this is the
callout bar) whose label matches the given string.
(WTR::UIScriptController::platformContentView const):
Add a `platformContentView()` helper on UIScriptController so that we can stop grabbing the value for key
"_currentContentView" from various places in this file. Additionally, rewrite `platformUndoManager()` in terms
of this new helper, and move the code out from iOS/macOS-specific files into UIScriptControllerCocoa.
(WTR::UIScriptController::platformUndoManager const): Deleted.
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::platformContentView const):
(WTR::UIScriptController::platformUndoManager const): Deleted.
2019-02-12 Jonathan Bedard <jbedard@apple.com>
webkitpy: No option to only show unexpected failures in results.html for iPad
https://bugs.webkit.org/show_bug.cgi?id=194554
<rdar://problem/47922442>
Rubber-stamped by Aakash Jain.
Just because a TestExpecations file does not exist for a specific platform does not mean that
TestExpecations are not being used, given that platforms inherit test expectations.
* Scripts/webkitpy/port/base.py:
(Port.uses_test_expectations_file): Check all possible locations of a TestExpectations file.
* Scripts/webkitpy/port/base_unittest.py:
(PortTest.test_uses_test_expectations_file):
2019-02-12 Alex Christensen <achristensen@webkit.org>
Remove setDefersLoading infrastructure from WebKit2
https://bugs.webkit.org/show_bug.cgi?id=194506
Reviewed by Brady Eidson.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setDefersLoading): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2019-02-12 Alex Christensen <achristensen@webkit.org>
WebPage::close needs to remove all message receivers associated with that WebPage, not WebPage::~WebPage
https://bugs.webkit.org/show_bug.cgi?id=194522
<rdar://problem/47789393>
Reviewed by Chris Dumez.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm: Added.
(-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-12 Andy Estes <aestes@apple.com>
[iOSMac] Enable Parental Controls Content Filtering
https://bugs.webkit.org/show_bug.cgi?id=194521
<rdar://39732376>
Reviewed by Tim Horton.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-02-12 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add intrinsic width support for float boxes.
https://bugs.webkit.org/show_bug.cgi?id=194528
Reviewed by Antti Koivisto.
Expand tests coverage (2 new tests -> 800).
(This is the correct test ordering --runs-singly --child-processes=1)
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-12 Rob Buis <rbuis@igalia.com>
Implement serializing in MIME type parser
https://bugs.webkit.org/show_bug.cgi?id=193909
Reviewed by Darin Adler.
Add various tests involving upper case, non-ASCII, control/null characters,
various HTTP whitespace, single quotes and an unpaired surrogate.
* TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp:
(TestWebKitAPI::escapeNonASCIIPrintableCharacters):
(TestWebKitAPI::serializeIfValid):
(TestWebKitAPI::TEST):
2019-02-11 Myles C. Maxfield <mmaxfield@apple.com>
[Cocoa] Ask platform for generic font family mappings
https://bugs.webkit.org/show_bug.cgi?id=187723
<rdar://problem/41892438>
Reviewed by Brent Fulgham.
Allow testing infrastructure to use fonts that are returned from CTFontDescriptorCreateForCSSFamily().
* DumpRenderTree/mac/DumpRenderTree.mm:
(allowedFontFamilySet):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::allowedFontFamilySet):
2019-02-11 Adrian Perez de Castro <aperez@igalia.com>
[GTK][WPE] Add content extensions support in WKTR and unskip layout tests
https://bugs.webkit.org/show_bug.cgi?id=193622
Reviewed by Michael Catanzaro.
This adds support for loading content extension rule sets from the JSON files which
accompany the corresponding layout test, using the C API. The Cocoa specific parts
of WKTR for this could be removed, but that is left for a follow-up patch with
cleanups.
* Scripts/webkitperl/FeatureList.pm: Add an option to toggle CONTENT_EXTENSIONS.
* WebKitTestRunner/TestController.cpp:
(WTR::testPath): Subtract one from the length when constructing the result std::string to
avoid having the null-terminator copied into the result.
(WTR::TestController::configureViewForTest): Call configureContentExtensionForTest() as
part of the preparations to run a test.
(WTR::ContentExtensionStoreCallbackContext::ContentExtensionStoreCallbackContext): Added.
(WTR::contentExtensionStoreCallback): Added.
(WTR::contentExtensionJSONPath): Used to calculate the path to the JSON rule set to be
used for content extensions test.
(WTR::TestController::configureContentExtensionForTest): Added, handles enabling content
extensions and compiling the JSON rule set for tests involving content extensions.
(WTR::TestController::resetContentExtensions): Removes the content extension built for
testing and disables content extensions.
(WTR::TestController::resetPreferencesToConsistentValues): Add a call to
resetContentExtensions().
(WTR::TestController::userContentController): Added implementation for ports other than Cocoa.
* WebKitTestRunner/TestController.h: Add declarations for resetContentExtensions(),
configureContentExtensionForTest(), and userContentController().
2019-02-11 Daniel Bates <dabates@apple.com>
[iOS] Mouse/Touch/Pointer events are missing modifier keys
https://bugs.webkit.org/show_bug.cgi?id=191446
<rdar://problem/45929460>
Reviewed by Tim Horton.
Add support infrastructure for testing touch and stylus taps when holding modifier keys.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::arrayLength):
(WTR::parseModifierArray):
(WTR::UIScriptController::singleTapAtPoint): Implemented in terms of singleTapAtPointWithModifiers().
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPoint): Implemented in terms of stylusTapAtPointWithModifiers().
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
2019-02-11 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r241272 and r241276.
https://bugs.webkit.org/show_bug.cgi?id=194514
Broke the Apple Internal build and the fix requires human
intervention :( (Requested by dydz on #webkit).
Reverted changesets:
"[iOS] Mouse/Touch/Pointer events are missing modifier keys"
https://bugs.webkit.org/show_bug.cgi?id=191446
https://trac.webkit.org/changeset/241272
"Fix internal iOS build after r241272"
https://bugs.webkit.org/show_bug.cgi?id=191446
https://trac.webkit.org/changeset/241276
2019-02-11 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r241269.
Caused 5 layout tests crashes on Mac WK1
Reverted changeset:
"DumpRenderTree should report unknown options"
https://bugs.webkit.org/show_bug.cgi?id=191303
https://trac.webkit.org/changeset/241269
2019-02-11 Wenson Hsieh <wenson_hsieh@apple.com>
fast/forms/ios/force-gregorian-calendar-for-credit-card-expiry.html does not work on iPad
https://bugs.webkit.org/show_bug.cgi?id=194313
Reviewed by Tim Horton.
Add a helper to determine whether the web view is presenting modal UI.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isPresentingModally const):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::isPresentingModally const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::calendarType const): Deleted.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isPresentingModally const):
(WTR::UIScriptController::calendarType const):
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::calendarType const):
2019-02-11 Joseph Pecoraro <pecoraro@apple.com>
GCHeapInspector: Show the retained sizes in more places
https://bugs.webkit.org/show_bug.cgi?id=194464
Reviewed by Simon Fraser.
* GCHeapInspector/gc-heap-inspector.html:
* GCHeapInspector/script/interface.js:
(HeapInspectorUtils.humanReadableSize):
(HeapInspectorUtils.spanForNode.let.nodeHTML.node.className.span):
(HeapInspectorUtils.spanForNode.span.span):
(HeapSnapshotInspector.prototype.buildAllObjectsByType):
(HeapSnapshotInspector.prototype.buildRoots):
2019-02-11 Daniel Bates <dabates@apple.com>
[iOS] Mouse/Touch/Pointer events are missing modifier keys
https://bugs.webkit.org/show_bug.cgi?id=191446
<rdar://problem/45929460>
Reviewed by Tim Horton.
Add support infrastructure for testing touch and stylus taps when holding modifier keys.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::arrayLength):
(WTR::parseModifierArray):
(WTR::UIScriptController::singleTapAtPoint): Implemented in terms of singleTapAtPointWithModifiers().
(WTR::UIScriptController::singleTapAtPointWithModifiers): Added.
(WTR::UIScriptController::stylusTapAtPoint): Implemented in terms of stylusTapAtPointWithModifiers().
(WTR::UIScriptController::stylusTapAtPointWithModifiers): Added.
2019-02-11 Darshan Kadu <dkadu@igalia.com>
DumpRenderTree should report unknown options
https://bugs.webkit.org/show_bug.cgi?id=191303
Reviewed by Frédéric Wang.
Added RELEASE_ASSERT_NOT_REACHED for DumpRenderTree/TestOptions.cpp
to report unknown options.
Added and assigned test options which are currently used in tests.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
2019-02-11 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r241229.
Revision broke internal builds for watchOS.
Reverted changeset:
"[Cocoa] Ask platform for generic font family mappings"
https://bugs.webkit.org/show_bug.cgi?id=187723
https://trac.webkit.org/changeset/241229
2019-02-11 Takashi Komori <Takashi.Komori@sony.com>
[WinCairo][MiniBrowser] Basic authentication always fails.
https://bugs.webkit.org/show_bug.cgi?id=194496
Reviewed by Don Olmstead.
* MiniBrowser/win/DialogHelper.h:
(Dialog::getText):
2019-02-11 Philippe Normand <pnormand@igalia.com>
[GStreamer] GstMappedBuffer testsuite build fails
https://bugs.webkit.org/show_bug.cgi?id=194495
Reviewed by Carlos Garcia Campos.
Fix the build by explicitely adding the gstreamer1.0-audio include
directories to the include path.
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformWPE.cmake:
2019-02-04 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Add enable-javascript-markup setting
https://bugs.webkit.org/show_bug.cgi?id=193439
Reviewed by Michael Catanzaro.
Add test cases to check the new setting.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
(testWebKitSettingsJavaScriptMarkup):
(beforeAll):
2019-02-10 Darin Adler <darin@apple.com>
Switch uses of StringBuilder with String::format for hex numbers to use HexNumber.h instead
https://bugs.webkit.org/show_bug.cgi?id=194485
Reviewed by Daniel Bates.
* WebKitTestRunner/TestController.cpp: Removed unnecessary include of HexNumber.h.
2019-02-09 Benjamin Poulain <benjamin@webkit.org>
Add more tests for clampTo<>()
https://bugs.webkit.org/show_bug.cgi?id=194462
Reviewed by Geoffrey Garen.
Darin suggested to test the very last floating point number
at the boundaries when truncating to integer.
I added test for max/min and max-1/min-1.
* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::TEST):
2019-02-09 Darin Adler <darin@apple.com>
Eliminate unnecessary String temporaries by using StringConcatenateNumbers
https://bugs.webkit.org/show_bug.cgi?id=194021
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
(TestWebKitAPI::TEST): Change tests to use EXPECT_STREQ so failure messages are easier
to understand. Updated tests for changes to FormattedNumber::fixedPrecision.
2019-02-09 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add intrinsic width support for basic inline containers
https://bugs.webkit.org/show_bug.cgi?id=194473
Reviewed by Antti Koivisto.
Expand tests coverage (11 new tests -> 798)
* LayoutReloaded/misc/LFC-passing-tests.txt: not sure why run-singly keeps producing different ordering.
2019-02-09 Benjamin Poulain <benjamin@webkit.org>
Fix MiniBrowser's entitlements
https://bugs.webkit.org/show_bug.cgi?id=192431
Reviewed by Joseph Pecoraro.
MiniBrowser's Extensions Manager was broken. The entitlement was missing for opening
files, making it impossible to load any extension.
* MiniBrowser/MiniBrowser.entitlements:
2019-02-08 Myles C. Maxfield <mmaxfield@apple.com>
[Cocoa] Ask platform for generic font family mappings
https://bugs.webkit.org/show_bug.cgi?id=187723
<rdar://problem/41892438>
Reviewed by Brent Fulgham.
Allow testing infrastructure to use fonts that are returned from CTFontDescriptorCreateForCSSFamily().
* DumpRenderTree/mac/DumpRenderTree.mm:
(allowedFontFamilySet):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::allowedFontFamilySet):
2019-02-08 Alexander Mikhaylenko <exalm7659@gmail.com>
[GTK] Implement back/forward touchpad gesture
https://bugs.webkit.org/show_bug.cgi?id=193919
Reviewed by Michael Catanzaro.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings): Add a test for 'enable-back-forward-navigation-gestures' property.
2019-02-08 Alex Christensen <achristensen@webkit.org>
Add SPI to use networking daemon instead of XPC service
https://bugs.webkit.org/show_bug.cgi?id=194427
Reviewed by Geoffrey Garen
* MiniBrowser/MiniBrowser.entitlements:
2019-02-08 Aakash Jain <aakash_jain@apple.com>
[ews-build] Ensure that every builder in config.json has short name
https://bugs.webkit.org/show_bug.cgi?id=194461
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py:
* BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-tests.
2019-02-08 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add short name to config.json
https://bugs.webkit.org/show_bug.cgi?id=194456
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/config.json: Added short name.
* BuildSlaveSupport/ews-build/loadConfig.py:
(loadBuilderConfig): Set the short name as the builder description.
2019-02-08 Jonathan Bedard <jbedard@apple.com>
webkitpy: CrashLogs.find_all_logs may return a string or a dictionary
https://bugs.webkit.org/show_bug.cgi?id=194418
Reviewed by Lucas Forschler.
Do not include errors trying when finding crashlogs at the end of
a run-webkit-tests run since we don't process those errors.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._look_for_all_crash_logs_in_log_dir):
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort._look_for_all_crash_logs_in_log_dir):
* Scripts/webkitpy/port/watch_device.py:
(WatchDevicePort._look_for_all_crash_logs_in_log_dir):
2019-02-08 Beth Dakin <bdakin@apple.com>
Add afterScreenUpdates to WKSnapshotConfiguration
https://bugs.webkit.org/show_bug.cgi?id=194362
-and corresponding-
<rdar://problem/40655528> Please add an "after screen updates" property to
WKSnapshotConfiguration (to solve blank snapshots)
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewSnapshot.mm:
(TEST):
2019-02-08 Benjamin Poulain <benjamin@webkit.org>
clampTo(): do not convert the input to double when dealing with integers
https://bugs.webkit.org/show_bug.cgi?id=194263
<rdar://problem/47692312>
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WTF/MathExtras.cpp:
(TestWebKitAPI::testClampFloatingPointToFloatingPoint):
(TestWebKitAPI::testClampFloatingPointToInteger):
(TestWebKitAPI::testClampSameSignIntegers):
(TestWebKitAPI::testClampUnsignedToSigned):
(TestWebKitAPI::testClampSignedToUnsigned):
2019-02-07 Jonathan Bedard <jbedard@apple.com>
webkitpy: Respect --dedicated-simulators flag
https://bugs.webkit.org/show_bug.cgi?id=194416
<rdar://problem/47894722>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/port/device_port.py:
(DevicePort.supported_device_types): If --dedicated-simulators is passed, all
available devices can be safely ignored.
2019-02-07 Keith Rollin <krollin@apple.com>
Remove extra copy of 100x100-red.tga
https://bugs.webkit.org/show_bug.cgi?id=194371
<rdar://problem/47873465>
Reviewed by Said Abou-Hallawa.
In order to help it pass its tests, Bug 194190 added a second copy of
the file 100x100-red.tga. However, it turns out that this additional
file wasn't actually needed, and that that sole previous copy was
sufficient. At the same time, this second copy -- which was copied to
the same location in the build output as the first copy -- now caused
XCBuild to complain because there were two production rules for the
same output file. Address this by removing the newly-added extra copy.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/100x100-red.tga: Removed.
2019-02-07 Alex Christensen <achristensen@webkit.org>
Deprecate WKBundlePageSetDefersLoading
https://bugs.webkit.org/show_bug.cgi?id=191394
Reviewed by Dean Jackson.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setDefersLoading):
2019-02-07 Zalan Bujtas <zalan@apple.com>
[LFC][Out-of-flow] Use the containing block's padding width when computing min/max width.
https://bugs.webkit.org/show_bug.cgi?id=194391
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-06 Keith Rollin <krollin@apple.com>
Remove Info.plist from MobileMiniBrowser.framework's Copy Bundle Resources phase
https://bugs.webkit.org/show_bug.cgi?id=193975
<rdar://problem/47643306>
Reviewed by Tim Horton.
The MobileMiniBrowser.framework's Copy Bundle Resources phase copies
the Info.plist file into the bundle. This step is not necessary as the
implicit "bundle up all the build products into a framework" build
phase does this already. Having the Copy Bundle Resources phase do
this causes a conflict under XCBuild, which objects to two build
phases producing the same file (Info.plist). Address this by removing
Info.plist from the Copy Bundle Resources phase.
* MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
2019-02-06 Keith Rollin <krollin@apple.com>
Really enable the automatic checking and regenerations of .xcfilelists during builds
https://bugs.webkit.org/show_bug.cgi?id=194357
<rdar://problem/47861231>
Reviewed by Chris Dumez.
Bug 194124 was supposed to enable the automatic checking and
regenerating of .xcfilelist files during the build. While related
changes were included in that patch, the change to actually enable the
operation somehow was omitted. This patch actually enables the
operation. The check-xcfilelist.sh scripts now check
WK_DISABLE_CHECK_XCFILELISTS, and if it's "1", opts-out the developer
from the checking.
* DumpRenderTree/Scripts/check-xcfilelists.sh:
* WebKitTestRunner/Scripts/check-xcfilelists.sh:
2019-02-06 David Kilzer <ddkilzer@apple.com>
WTR::InjectedBundlePage::willSendRequestForFrame() leaks a WKDataRef
<https://webkit.org/b/194286>
<rdar://problem/47815558>
Reviewed by Alexey Proskuryakov.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::willSendRequestForFrame): Use
WKRetainPtr<> to avoid leaking the WKDataRef.
2019-02-06 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, fix a typo
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2019-02-06 Olivier Blin <olivier.blin@softathome.com>
[GTK][WPE] force libpsl build to use ICU in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=194288
Reviewed by Carlos Garcia Campos.
* gtk/jhbuild.modules:
Require ICU for libpsl build in jhbuild, like done in WPE.
2019-02-06 Michael Catanzaro <mcatanzaro@igalia.com>
REGRESSION(r240785): [SOUP] Broke cookie persistent storage
https://bugs.webkit.org/show_bug.cgi?id=194209
Reviewed by Carlos Garcia Campos.
Enhance TestCookieManager to ensure this doesn't happen again.
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
(testCookieManagerPersistentStorage):
(beforeAll):
2019-02-05 Wenson Hsieh <wenson_hsieh@apple.com>
Rename TestOptions.ignoreSynchronousMessagingTimeoutsForTesting
https://bugs.webkit.org/show_bug.cgi?id=194324
Reviewed by Andy Estes.
Rename ignoreSynchronousMessagingTimeoutsForTesting to just ignoreSynchronousMessagingTimeouts. The -ForTesting
part of the name is already implicit, since this is in testing code in TestOptions.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generateContextConfiguration const):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2019-02-05 Aakash Jain <aakash_jain@apple.com>
[ews-build] Allow * as platform for builders and workers
https://bugs.webkit.org/show_bug.cgi?id=188533
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig.py:
(checkWorkersAndBuildersForConsistency):
2019-02-05 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add few bots to config.json
https://bugs.webkit.org/show_bug.cgi?id=194304
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/config.json:
2019-02-05 Keith Rollin <krollin@apple.com>
Enable the automatic checking and regenerations of .xcfilelists during builds
https://bugs.webkit.org/show_bug.cgi?id=194124
<rdar://problem/47721277>
Reviewed by Tim Horton.
Bug 193790 add a facility for checking -- during build time -- that
any needed .xcfilelist files are up-to-date and for updating them if
they are not. This facility was initially opt-in by setting
WK_ENABLE_CHECK_XCFILELISTS until other pieces were in place and until
the process seemed robust. Its now time to enable this facility and
make it opt-out. If there is a need to disable this facility, set and
export WK_DISABLE_CHECK_XCFILELISTS=1 in your environment before
running `make` or `build-webkit`, or before running Xcode from the
command line.
Additionally, remove the step that generates a list of source files
going into the UnifiedSources build step. It's only necessarily to
specify Sources.txt and SourcesCocoa.txt as inputs.
* Scripts/generate-xcfilelists:
2019-02-05 Olivier Blin <olivier.blin@softathome.com>
[GTK][WPE] force libpsl build to use ICU in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=194288
Reviewed by Philippe Normand.
In jhbuild, libpsl depends on ICU, but its configure script may decide to use libidn instead of ICU.
This can cause build failures if libidn is detected but libunistring is not available.
Make sure that ICU is used for runtime and builtin PSL data.
* gtk/jhbuild.modules:
* wpe/jhbuild.modules:
2019-02-05 Aakash Jain <aakash_jain@apple.com>
[ews-app] Modified timestamp should be updated on updating data
https://bugs.webkit.org/show_bug.cgi?id=194295
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py:
* BuildSlaveSupport/ews-app/ews/models/step.py:
2019-02-05 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r240742.
Causes crashes on iOS simulator.
Reverted changeset:
"[iOS] Keyups for non-modifier keys identified as "Dead" when
not focused in a content-editable element"
https://bugs.webkit.org/show_bug.cgi?id=192824
https://trac.webkit.org/changeset/240742
2019-02-05 Jonathan Bedard <jbedard@apple.com>
run-webkit-tests emits message "...running None" when running tests
https://bugs.webkit.org/show_bug.cgi?id=194133
<rdar://problem/47724738>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/xcode/device_type.py:
(DeviceType.__str__): Use both version mapping tables and use just the variant
name if no version name is available.
* Scripts/webkitpy/xcode/device_type_unittest.py:
(DeviceTypeTest):
(DeviceTypeTest.test_unmapped_version): Test case where the version does not have
an associated named.
2019-02-05 Olivier Blin <olivier.blin@softathome.com>
[WPE] require python3-setuptools for meson build in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=194287
Reviewed by Philippe Normand.
python3-setuptools is needed to build meson in jhbuild.
It is already required by the GTK port.
* wpe/install-dependencies:
2019-02-05 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add method to save BuilderMapping to database
https://bugs.webkit.org/show_bug.cgi?id=194264
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py:
(BuilderMapping.__str__):
(BuilderMapping):
(BuilderMapping.save_mapping):
(BuilderMapping.update_mapping):
(BuilderMapping.get_existing_mapping):
(BuilderMapping.is_valid_mapping):
2019-02-05 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add timestamp fields for BuilderMappings
https://bugs.webkit.org/show_bug.cgi?id=194266
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py:
(BuilderMapping):
2019-02-04 Ms2ger <Ms2ger@igalia.com>
[GTK][WPE] Need a function to convert internal URI to display ("pretty") URI
https://bugs.webkit.org/show_bug.cgi?id=174816
Reviewed by Michael Catanzaro.
Add tests for webkit_uri_for_display().
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitURIUtilities.cpp: Added.
(testURIForDisplayUnaffected):
(testURIForDisplayAffected):
(beforeAll):
(afterAll):
* TestWebKitAPI/glib/CMakeLists.txt:
2019-02-04 Jonathan Bedard <jbedard@apple.com>
webkitpy: Precedence of booted devices should match precedence in DEFAULT_DEVICE_TYPES
https://bugs.webkit.org/show_bug.cgi?id=194158
<rdar://problem/47737268>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/port/device_port.py:
(DevicePort.supported_device_types): Sort supported device types by the DEFAULT_DEVICE_TYPES.
2019-02-04 Said Abou-Hallawa <said@apple.com>
[CG] Enable setAdditionalSupportedImageTypes for WK1
https://bugs.webkit.org/show_bug.cgi?id=194190
Reviewed by Tim Horton.
Add a test similar to the one under WebKit Cocoa but make it create a
WebView instead of a WKWebView.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/100x100-red.tga: Added.
* TestWebKitAPI/Tests/mac/AdditionalSupportedImageTypes.html: Added.
* TestWebKitAPI/Tests/mac/AdditionalSupportedImageTypes.mm: Added.
(-[AdditionalSupportedImageTypesTest webView:didFinishLoadForFrame:]):
(TestWebKitAPI::runTest):
(TestWebKitAPI::TEST):
2019-02-04 Zalan Bujtas <zalan@apple.com>
[First paint] Adjust "finishedParsingMainDocument" flag by taking deferred and async scripts into account.
https://bugs.webkit.org/show_bug.cgi?id=194168
Reviewed by Simon Fraser.
Test if the firstVisuallyNoneEmpty milestone fires before the deferred script's post-message.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/FirstVisuallyNonEmptyMilestoneWithDeferredScript.mm: Added.
(-[FirstPaintMessageHandler userContentController:didReceiveScriptMessage:]):
(-[RenderingProgressNavigationDelegate _webView:renderingProgressDidChange:]):
(TEST):
* TestWebKitAPI/Tests/WebKit/deferred-script-load.html: Added.
* TestWebKitAPI/Tests/WebKit/deferred-script.js: Added.
2019-02-04 Dean Johnson <dean_johnson@apple.com>
REGRESSION (r237269): webkit-patch what-broke is broken
https://bugs.webkit.org/show_bug.cgi?id=193025
Reviewed by Aakash Jain.
* Scripts/webkitpy/common/host.py:
(Host.buildbot):
(Host.bugzilla): Renamed to 'buildbot'.
2019-02-04 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] API test WKAttachmentTests.InsertAndRemoveDuplicateAttachment is failing after r240902
https://bugs.webkit.org/show_bug.cgi?id=194207
Reviewed by Tim Horton.
Fix this API test by making it robust against smart paste on iOS. Currently, this test pastes an attachment
element and assumes that the pasted attachment is adjacent to the original one. However, after enabling smart
paste, we now insert an extra space in between. Instead of executing "DeleteBackward" twice to test removing the
attachment elements, we delete backwards once to remove the pasted attachment, and move the selection to the
start and delete forwards to remove the original attachment.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2019-02-04 Youenn Fablet <youenn@apple.com>
Capture state should be managed consistently when doing process swapping
https://bugs.webkit.org/show_bug.cgi?id=194122
<rdar://problem/47609293>
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[GetUserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[GetUserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
(-[GetUserMediaUIDelegate _webView:mediaCaptureStateDidChange:]):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::isDoingMediaCapture const):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::isDoingMediaCapture const):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::isDoingMediaCapture const):
2019-02-03 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] WebKitTestRunners is failing to create the IndexedDB directory.
https://bugs.webkit.org/show_bug.cgi?id=194142
Reviewed by Ross Kirsling.
There three 'separator' variables in TestController.cpp. Renamed
it 'pathSeparator', and unified them.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generateContextConfiguration const):
(WTR::createTestURL):
(WTR::TestController::platformAdjustContext):
2019-02-03 Simon Fraser <simon.fraser@apple.com>
Make setNeedsLayout on the root more explicitly about triggering its side-effects
https://bugs.webkit.org/show_bug.cgi?id=194198
Reviewed by Antti Koivisto.
No need to set the banner heights on navigation now, since Page stores them.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController webView:didFinishNavigation:]):
2019-02-03 John Wilander <wilander@apple.com>
Parse and handle Ad Click Attribution attributes in HTMLAnchorElement::handleClick()
https://bugs.webkit.org/show_bug.cgi?id=194104
<rdar://problem/47649991>
Reviewed by Chris Dumez, Daniel Bates, and Darin Adler.
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
(TestWebKitAPI::TEST):
Changed numeric types from unsigned short to uint32_t.
2019-02-02 David Kilzer <ddkilzer@apple.com>
Leak of NSArray (4.25 Kbytes) in com.apple.WebKit.WebContent running WebKit layout tests on iOS Simulator
<https://webkit.org/b/194178>
<rdar://problem/47753473>
Reviewed by Alexey Proskuryakov.
* WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
(WTR::uninstallFakeHelvetica): Pass nullptr into
CTFontManagerUnregisterFontsForURLs() to ignore any errors.
2019-02-02 Zalan Bujtas <zalan@apple.com>
[LFC] Initialize ICB's style with fixed width/height.
https://bugs.webkit.org/show_bug.cgi?id=194188
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-02 Zalan Bujtas <zalan@apple.com>
[LFC] Add missing case to out-of-flow non-replaced horizontal used margin value computation
https://bugs.webkit.org/show_bug.cgi?id=194185
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-12-16 Darin Adler <darin@apple.com>
Convert additional String::format clients to alternative approaches
https://bugs.webkit.org/show_bug.cgi?id=192746
Reviewed by Alexey Proskuryakov.
* WebKitTestRunner/TestController.cpp:
(WTR::originUserVisibleName): Use makeString and reduce the use of std::string
as an intermediate in code that ultimately constructs a WTF::String.
(WTR::userMediaOriginHash): Use makeString.
(WTR::TestController::didNavigateWithNavigationData): More of the same.
(WTR::TestController::didPerformClientRedirect): Ditto.
(WTR::TestController::didPerformServerRedirect): Ditto.
(WTR::TestController::didUpdateHistoryTitle): Ditto.
2019-02-01 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add unit test to verify builder keys
https://bugs.webkit.org/show_bug.cgi?id=194152
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/loadConfig_unittest.py:
(ConfigDotJSONTest.test_builder_keys): Added unit-test.
2019-02-01 Zalan Bujtas <zalan@apple.com>
[LFC] Expand tests coverage (12 new tests -> 787)
Unreviewed test gardening.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-01 Zalan Bujtas <zalan@apple.com>
[LFC] Fix statically positioned replaced out-of-flow horizontal geometry
https://bugs.webkit.org/show_bug.cgi?id=194163
Reviewed by Simon Fraser.
775
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-01 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Consistent 1 sec hang when triggering modal alerts while handling synchronous touch events
https://bugs.webkit.org/show_bug.cgi?id=194140
<rdar://problem/47728098>
Reviewed by Tim Horton.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
Add a new TestRunner hook to make modal JavaScript alerts dismiss asynchronously. This is used by the new layout
test to induce an IPC deadlock when presenting a modal alert during touch start.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::runJavaScriptAlert):
Add a client callback function for running JavaScript alerts.
(WTR::TestController::createOtherPage):
(WTR::TestController::generateContextConfiguration const):
Add a test option to disable IPC timeouts for a layout test. This forces the test to reliably time out without
the fix in this patch.
(WTR::TestController::createWebViewWithOptions):
Plumb TestOptions to generateContextConfiguration.
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::TestController::resetStateToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
(WTR::TestController::setShouldDismissJavaScriptAlertsAsynchronously):
(WTR::TestController::handleJavaScriptAlert):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2019-02-01 Chris Dumez <cdumez@apple.com>
REGRESSION: Flaky ASSERTION FAILED: m_uncommittedState.state == State::Committed on http/tests/cookies/same-site/fetch-after-top-level-navigation-initiated-from-iframe-in-cross-origin-page.html
https://bugs.webkit.org/show_bug.cgi?id=193740
<rdar://problem/47527267>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-02-01 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add display name field to BuilderMapping model
https://bugs.webkit.org/show_bug.cgi?id=194153
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py:
(BuilderMapping):
2019-02-01 Youenn Fablet <youenn@apple.com>
API Test broken: TestWebKitAPI.WebKit2.GetUserMediaReprompt
https://bugs.webkit.org/show_bug.cgi?id=194155
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKit/getUserMedia.html:
Revert use of async functions as it seems it cannot be evaluated from TestWebKitAPI.
Keep calling enumerateDevices to continue cover https://bugs.webkit.org/show_bug.cgi?id=194106.
2019-02-01 Zalan Bujtas <zalan@apple.com>
[LFC] Adjust replaced element's intrinsic ratio
https://bugs.webkit.org/show_bug.cgi?id=194154
Reviewed by Antti Koivisto.
761
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-01 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Show test results in minibrowser
https://bugs.webkit.org/show_bug.cgi?id=194150
Reviewed by Žan Doberšek.
* Scripts/webkitpy/port/wpe.py:
(WPEPort.show_results_html_file):
2019-02-01 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] MiniBrowser: add ky bindings for back/forward navigation
https://bugs.webkit.org/show_bug.cgi?id=194151
Reviewed by Žan Doberšek.
ALT + <- go back
ALT + -> go forward
* MiniBrowser/wpe/main.cpp:
(main):
2019-02-01 Zalan Bujtas <zalan@apple.com>
[LFC] Set intrinsic size on Layout::Replaced
https://bugs.webkit.org/show_bug.cgi?id=194139
Reviewed by Antti Koivisto.
744
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-02-01 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] MiniBrowser: use g_file_new_for_commandline_arg
https://bugs.webkit.org/show_bug.cgi?id=194146
Reviewed by Xabier Rodriguez-Calvar.
It allows to open relative paths.
* MiniBrowser/wpe/main.cpp:
(main):
2019-01-31 Ryan Haddad <ryanhaddad@apple.com>
Update flakiness dashboard configuration after recent queue changes
https://bugs.webkit.org/show_bug.cgi?id=194127
Rubber-stamped by Aakash Jain.
Apple Windows queues were updated in r237755, and Sierra was removed in r239859.
* TestResultServer/static-dashboards/builders.jsonp:
2019-01-31 Youenn Fablet <youenn@apple.com>
Add an API test to cover UIClient checkUserMediaPermissionForOrigin being nullptr
https://bugs.webkit.org/show_bug.cgi?id=194106
<rdar://problem/47676333>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::didFinishNavigation):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/getUserMedia.html:
2019-01-31 Chris Dumez <cdumez@apple.com>
Page zoom level is lost after a process swap or a crash
https://bugs.webkit.org/show_bug.cgi?id=194105
<rdar://problem/47610781>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:didCommitNavigation:]):
2019-01-31 Alex Christensen <achristensen@webkit.org>
Revert r238819 which is unneeded and caused a performance regression.
https://bugs.webkit.org/show_bug.cgi?id=192272
<rdar://problem/46664625>
* TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
(-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
(-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]): Deleted.
2019-01-31 Jiewen Tan <jiewen_tan@apple.com>
Formalize WebKitAdditions mechanism of LoadOptimizer
https://bugs.webkit.org/show_bug.cgi?id=193886
<rdar://problem/47696809>
Reviewed by Brent Fulgham.
* MiniBrowser/MiniBrowser.entitlements:
Make com.apple.security.temporary-exception.mach-lookup.global-name an array.
2019-01-31 Zalan Bujtas <zalan@apple.com>
[LFC] Margin before/after/start/end initial value is 0 and not auto.
https://bugs.webkit.org/show_bug.cgi?id=194090
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-31 Zalan Bujtas <zalan@apple.com>
[LFC] Use the used margin values in outOfFlowReplacedHorizontalGeometry consistently
https://bugs.webkit.org/show_bug.cgi?id=194074
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-31 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Add support for block level replaced box.
https://bugs.webkit.org/show_bug.cgi?id=194071
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-31 Fujii Hironori <Hironori.Fujii@sony.com>
Fix WebKitTestRunner's testPath with Windows full paths
https://bugs.webkit.org/show_bug.cgi?id=194012
Reviewed by Alex Christensen.
updateTestOptionsFromTestHeader failed to open test files because
testPath returned wrong file paths. It returned a path "/C:/..."
if a URL "file:///C:/..." was given.
* WebKitTestRunner/TestController.cpp:
(WTR::testPath): Removed the first '/' if the path starts with something like "/C:/".
2019-01-31 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Bump font related dependencies to match the GTK+ port
https://bugs.webkit.org/show_bug.cgi?id=194017
Reviewed by Žan Doberšek.
* wpe/jhbuild.modules:
* wpe/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
* wpe/patches/icudata-stdlibs.patch: Added.
2019-01-30 Ryosuke Niwa <rniwa@webkit.org>
Enable swipe tests on iOS
https://bugs.webkit.org/show_bug.cgi?id=194076
Reviewed by Geoffrey Garen.
Removed the superflous call to prepareForAsyncTask and asyncTaskComplete as
it causes a debug assertion failure in runUIScript.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::beginBackSwipe):
(WTR::UIScriptController::completeBackSwipe):
2019-01-30 Keith Rollin <krollin@apple.com>
Use correct printf format specifier
https://bugs.webkit.org/show_bug.cgi?id=194062
<rdar://problem/47686167>
Reviewed by Alexey Proskuryakov.
LayoutTestSpellChecker.mm is trying to format a variable of type
NSTextCheckingType with %tu (unsigned ptrdiff_t), when the type is
actually an unsigned long long. Fix this by formatting with %llu.
* TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
(-[LayoutTestTextCheckingResult description]):
2019-01-30 Ryosuke Niwa <rniwa@webkit.org>
REGRESSION(r240541): WebKit.WebsitePoliciesCustomJavaScriptUserAgent is failing since introduction on iOS
https://bugs.webkit.org/show_bug.cgi?id=193979
Reviewed by Wenson Hsieh.
Fix the test for iOS. Make the test work with iOS UA string.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2019-01-30 Ryan Haddad <ryanhaddad@apple.com>
Replace High Sierra LLINT CLoop bot due to hardware failure
https://bugs.webkit.org/show_bug.cgi?id=194066
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/config.json:
2019-01-30 Keith Rollin <krollin@apple.com>
[NSDragItem init] is unavailable
https://bugs.webkit.org/show_bug.cgi?id=194059
<rdar://problem/47685715>
Reviewed by Wenson Hsieh.
[NSDragItem init] is marked as NS_UNAVAILABLE. This affects
DumpRenderTree and TestWebKitAPI, which both try to create an
NSDragItem in a manner that invokes this method. Address this by using
-initWithPasteboardWriter instead.
Note that the parameter passed to initWithPasteboardWriter is likely
incorrect. In both cases, the object passed does not conform to
NSPasteboardWriting. However, with this fix, we're no worse off than
before, and can now perform builds with newer compilers and SDKs until
a real fix can be crafted. That work is tracked in
https://bugs.webkit.org/show_bug.cgi?id=194060
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
(-[DumpRenderTreeDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
* TestWebKitAPI/mac/TestDraggingInfo.mm:
(-[TestDraggingInfo enumerateDraggingItemsWithOptions:forView:classes:searchOptions:usingBlock:]):
2019-01-30 Daniel Bates <dabates@apple.com>
[iOS] Keyups for non-modifier keys identified as "Dead" when not focused in a content-editable element
https://bugs.webkit.org/show_bug.cgi?id=192824
<rdar://problem/47100332>
Reviewed by Wenson Hsieh.
Fix a bug where the wrong usage code was used for F13 thru F24.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(keyCodeForDOMFunctionKey):
2019-01-30 Chris Dumez <cdumez@apple.com>
Regression(PSON) Load hang can occur on history navigation
https://bugs.webkit.org/show_bug.cgi?id=194030
<rdar://problem/47656939>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-30 Zalan Bujtas <zalan@apple.com>
[LFC] Expand tests coverage.
Unreviewed test gardening.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-30 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Add openjpeg support
https://bugs.webkit.org/show_bug.cgi?id=194019
Reviewed by Michael Catanzaro.
* flatpak/org.webkit.CommonModules.yaml:
2019-01-30 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r240708.
https://bugs.webkit.org/show_bug.cgi?id=194022
It broke WPE build (Requested by KaL on #webkit).
Reverted changeset:
"[WPE] Bump font related dependencies to match the GTK+ port"
https://bugs.webkit.org/show_bug.cgi?id=194017
https://trac.webkit.org/changeset/240708
2019-01-30 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] nextBreakablePosition returns the same position on hyphen characters
https://bugs.webkit.org/show_bug.cgi?id=194001
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-30 Zalan Bujtas <zalan@apple.com>
[LFC] Use the used margin values in outOfFlowReplacedVerticalGeometry consistently
https://bugs.webkit.org/show_bug.cgi?id=194020
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-30 Chris Fleizach <cfleizach@apple.com>
AX: Support color well on iOS
https://bugs.webkit.org/show_bug.cgi?id=194010
Reviewed by Joanmarie Diggs.
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::stringAttributeValue):
2019-01-30 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Bump font related dependencies to match the GTK+ port
https://bugs.webkit.org/show_bug.cgi?id=194017
Reviewed by Žan Doberšek.
* wpe/jhbuild.modules:
* wpe/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
* wpe/patches/icudata-stdlibs.patch: Added.
2019-01-29 Alexey Proskuryakov <ap@apple.com>
[Mac] Update window scale API usage
https://bugs.webkit.org/show_bug.cgi?id=193991
rdar://problem/47614795
Reviewed by Tim Horton.
* DumpRenderTree/mac/DumpRenderTree.mm:
(changeWindowScaleIfNeeded):
* DumpRenderTree/mac/DumpRenderTreeWindow.h:
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::changeWindowScaleIfNeeded):
2019-01-29 Chris Dumez <cdumez@apple.com>
REGRESSION: ProcessSwap.DoSameSiteNavigationAfterCrossSiteProvisionalLoadStarted Failing on iOS
https://bugs.webkit.org/show_bug.cgi?id=193977
<rdar://problem/47643716>
Reviewed by Geoff Garen.
Update API test to address flakiness on iOS. Instead of doing the last navigation after receiving the
didStartProvisionalLoad, do we right after we answer the navigation policy request. Flakiness was due
to the previous provisional committing *before* we make the last load.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-29 Youenn Fablet <youenn@apple.com>
Adopt new SPI to evaluate server certificate trust
https://bugs.webkit.org/show_bug.cgi?id=193355
Reviewed by Alex Christensen.
Add infrastructure to handle HTTPS server trust evaluation testing.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
(WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
(WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::TestController::didReceiveAuthenticationChallenge):
(WTR::TestController::canDoServerTrustEvaluationInNetworkProcess const):
* WebKitTestRunner/TestController.h:
(WTR::TestController::serverTrustEvaluationCallbackCallsCount const):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::canDoServerTrustEvaluationInNetworkProcess const):
2019-01-29 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add build step to print bot Configuration
https://bugs.webkit.org/show_bug.cgi?id=193887
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(PrintConfiguration): Build step to print configuration.
* BuildSlaveSupport/ews-build/factories.py:
2019-01-29 Chris Dumez <cdumez@apple.com>
Regression (r240046): [PSON] Spurious changes to [WKWebView url] and [WKWebView loading] after [WKWebView loadRequest]
https://bugs.webkit.org/show_bug.cgi?id=193967
<rdar://problem/47635348>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONLoadingObserver observeValueForKeyPath:ofObject:change:context:]):
2019-01-29 Aakash Jain <aakash_jain@apple.com>
[ews-app] Handle incoming results data
https://bugs.webkit.org/show_bug.cgi?id=193973
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/results.py:
2019-01-29 Aakash Jain <aakash_jain@apple.com>
[ews-app] Make the results url generic
https://bugs.webkit.org/show_bug.cgi?id=193928
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/urls.py:
2019-01-29 Aakash Jain <aakash_jain@apple.com>
[ews-build] Configure buildbot to send events to ews-app
https://bugs.webkit.org/show_bug.cgi?id=193968
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/events.py: Added.
* BuildSlaveSupport/ews-build/master.cfg:
2019-01-29 Keith Rollin <krollin@apple.com>
Add .xcfilelists to Run Script build phases
https://bugs.webkit.org/show_bug.cgi?id=193792
<rdar://problem/47201785>
Reviewed by Alex Christensen.
As part of supporting XCBuild, update the necessary Run Script build
phases in their Xcode projects to refer to their associated
.xcfilelist files.
Note that the addition of these files bumps the Xcode project version
number to something that's Xcode 10 compatible. This change means that
older versions of the Xcode IDE can't read these projects. Nor can it
fully load workspaces that refer to these projects (the updated
projects are shown as non-expandable placeholders). `xcodebuild` can
still build these projects; it's just that the IDE can't open them.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2019-01-29 John Wilander <wilander@apple.com>
Add data abstraction and validation for Ad Click Attribution
https://bugs.webkit.org/show_bug.cgi?id=193916
<rdar://problem/47603481>
Reviewed by Daniel Bates, Brent Fulgham, and Alex Christensen.
Ad click attribution has two steps. First, the storage of an ad
campaign ID for a click that takes the user to a destination
site. Second, a conversion on the destination site that can be
attributed to the ad click.
This patch adds a class that represents a request for ad click
attribution. Validation makes sure that the bits of entropy
reported through this mechanism is limited.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp: Added.
(TestWebKitAPI::TEST):
2019-01-29 Chris Dumez <cdumez@apple.com>
REGRESSION (PSON): Twitter link gets stuck at t.co after navigating back in tab
https://bugs.webkit.org/show_bug.cgi?id=193932
<rdar://problem/47598947>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-29 Zalan Bujtas <zalan@apple.com>
Adding new passing LFC tests.
Unreviewed test gardening.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-29 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Remove incorrect downcast<Container>
https://bugs.webkit.org/show_bug.cgi?id=193964
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-29 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Do not ignore next sibling box while laying out BFC.
https://bugs.webkit.org/show_bug.cgi?id=193954
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-29 Carlos Garcia Campos <cgarcia@igalia.com>
WebDriver: add support for running subtests
https://bugs.webkit.org/show_bug.cgi?id=193904
Reviewed by Michael Catanzaro.
pytest already supports it by passing test.py::subtest, so we can do the same.
* Scripts/webkitpy/webdriver_tests/pytest_runner.py:
(get_item_name): Made this global.
(CollectRecorder.__init__): Receive the parameter to ignore.
(CollectRecorder.pytest_collectreport): Collect also the subtests.
(TestExpectationsMarker.pytest_collection_modifyitems): Use get_item_name().
(collect): Add parameter to ignore.
* Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
(WebDriverSeleniumExecutor.collect): Pass the driver name as parameter to ignore.
* Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
(WebDriverTestRunnerSelenium.collect_tests): Handle subtest name in test path.
(WebDriverTestRunnerSelenium.run): Ditto.
* Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
(WebDriverTestRunnerW3C.collect_tests): Ditto.
(WebDriverTestRunnerW3C.run): Ditto.
2019-01-28 Ryosuke Niwa <rniwa@webkit.org>
User agent string override for navigator.userAgent should be site specific quirks
https://bugs.webkit.org/show_bug.cgi?id=193950
Reviewed by Brent Fulgham.
Updated per the _WKWebsitePolicies rename.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2019-01-28 Ross Kirsling <ross.kirsling@sony.com>
Remove unnecessary `using namespace WTF`s (or at least restrict their scope).
https://bugs.webkit.org/show_bug.cgi?id=193941
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WTF/ConcurrentPtrHashSet.cpp:
* TestWebKitAPI/Tests/WTF/Condition.cpp:
* TestWebKitAPI/Tests/WTF/Lock.cpp:
* TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
* TestWebKitAPI/Tests/WTF/ParkingLot.cpp:
* TestWebKitAPI/Tests/WTF/RedBlackTree.cpp:
* TestWebKitAPI/Tests/WTF/ScopedLambda.cpp:
* TestWebKitAPI/Tests/WTF/Time.cpp:
* TestWebKitAPI/Tests/WTF/UniqueArray.cpp:
* TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
* TestWebKitAPI/Tests/WebCore/Logging.cpp:
* WebKitTestRunner/InjectedBundle/cocoa/InjectedBundlePageCocoa.mm:
2019-01-28 Yusuke Suzuki <ysuzuki@apple.com>
Unreviewed, reorder my emails to fix autocomplete in bugzilla
* Scripts/webkitpy/common/config/contributors.json:
2019-01-28 Andy Estes <aestes@apple.com>
[watchOS] Enable Parental Controls content filtering
https://bugs.webkit.org/show_bug.cgi?id=193939
<rdar://problem/46641912>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-01-28 David Kilzer <ddkilzer@apple.com>
REGRESSION (r236481): Move soft-linking of LocalAuthentication.framework out of LocalAuthenticationSoftLink.h
<https://webkit.org/b/193884>
Reviewed by Jiewen Tan.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Add LocalAuthentication to
`frameworks_with_soft_links`.
2019-01-28 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][WebKitTestRunner] Error: test and reference images have different sizes. Test image is 784x561, reference image is 800x600
https://bugs.webkit.org/show_bug.cgi?id=193891
Reviewed by Ross Kirsling.
There were three problems in window sizes of WebView and the host window.
1. The sizes of pixel image output were incorrect.
2. The host window is going to appear after window.resize was invoked.
3. window.resize resized only the host window, not WebView.
This change solves them with a following approach.
a. PlatformWebView::PlatformWebView creates the initial host window as zero size.
b. Changes the host window style from WS_OVERLAPPEDWINDOW to WS_POPUP
as well as DumpRenderTree in order to match the client area and the window area.
c. PlatformWebView::resizeTo simply calls PlatformWebView::setWindowFrame as well as Mac port and GTK port.
d. PlatformWebView::setWindowFrame changes both window sizes.
e. PlatformWebView::setWindowFrame moves the host window to the out side of screen if m_options.shouldShowWebView.
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
(WTR::PlatformWebView::PlatformWebView): Create the host window
and WebView as zero size. Use WS_POPUP instead of WS_OVERLAPPEDWINDOW.
(WTR::PlatformWebView::resizeTo): Calls PlatformWebView::setWindowFrame.
(WTR::PlatformWebView::setWindowFrame): Change both window sizes.
2019-01-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add method to save Step data to database
https://bugs.webkit.org/show_bug.cgi?id=193890
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/step.py:
(Step.save_step): Method to save step data.
(Step.update_step): Method to update step data.
(Step.get_existing_step): Method to fetch existing step from database.
(Step.is_valid_result): Method to validate valid step result.
2019-01-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add method to save Build data to database
https://bugs.webkit.org/show_bug.cgi?id=193735
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
(Build.save_build): Method to save build information to database.
(Build.get_existing_build): Method to fetch existing build from database.
(Build.is_valid_result): Method to validate build result.
* BuildSlaveSupport/ews-app/ews/common/util.py:
(is_valid_int_id): Method to validate valid id.
2019-01-28 Chris Dumez <cdumez@apple.com>
Regression(PSON) Crash under WebPageProxy::didStartProgress()
https://bugs.webkit.org/show_bug.cgi?id=193915
<rdar://problem/47560907>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename id variables
https://bugs.webkit.org/show_bug.cgi?id=193883
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py:
* BuildSlaveSupport/ews-app/ews/models/step.py:
* BuildSlaveSupport/ews-app/ews/urls.py:
* BuildSlaveSupport/ews-app/ews/views/patch.py:
* BuildSlaveSupport/ews-app/ews/views/results.py:
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2019-01-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Allow certain fields to be empty
https://bugs.webkit.org/show_bug.cgi?id=193892
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py:
* BuildSlaveSupport/ews-app/ews/models/step.py:
2019-01-28 Rob Buis <rbuis@igalia.com>
Update MIME type parser
https://bugs.webkit.org/show_bug.cgi?id=180526
Reviewed by Frédéric Wang.
* TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp:
(TestWebKitAPI::TEST):
2019-01-28 Zalan Bujtas <zalan@apple.com>
[LFC][MarginCollapsing][Quirks] Quirk margin values get propagated through margin collapsing
https://bugs.webkit.org/show_bug.cgi?id=193896
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-12-15 Darin Adler <darin@apple.com>
Replace many uses of String::format with more type-safe alternatives
https://bugs.webkit.org/show_bug.cgi?id=192742
Reviewed by Mark Lam.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::cacheTestRunnerCallback): Use makeString.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
(WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
2019-01-27 Jiewen Tan <jiewen_tan@apple.com>
Use a load optimizer for some sites
https://bugs.webkit.org/show_bug.cgi?id=193881
<rdar://problem/46325455>
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/TestLoadOptimizer.mm: Added.
2019-01-27 Chris Fleizach <cfleizach@apple.com>
AX: Introduce a static accessibility tree
https://bugs.webkit.org/show_bug.cgi?id=193348
<rdar://problem/47203295>
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-01-26 Zalan Bujtas <zalan@apple.com>
[LFC] The default values for top/bottom in contentHeightForFormattingContextRoot should not be 0.
https://bugs.webkit.org/show_bug.cgi?id=193867
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-26 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Ignore last inflow child's collapsed through margin after when computing containing block's height.
https://bugs.webkit.org/show_bug.cgi?id=193865
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-25 Ryosuke Niwa <rniwa@webkit.org>
Need a mechanism to override navigator.userAgent
https://bugs.webkit.org/show_bug.cgi?id=193762
<rdar://problem/47504939>
Reviewed by Brent Fulgham.
Added test cases for _WKWebsitePolicies.customJavaScriptUserAgent.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[CustomJavaScriptUserAgentDelegate webView:didFinishNavigation:]):
2019-01-25 Dean Jackson <dino@apple.com>
REGRESSION: Some USDz from 3rd party websites don't go directly to AR QL
https://bugs.webkit.org/show_bug.cgi?id=193831
<rdar://problem/47399263>
Reviewed by Chris Dumez.
Two new tests that exercise cross-origin and same-origin System
Previews.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-25 Keith Rollin <krollin@apple.com>
Update Xcode projects with "Check .xcfilelists" build phase
https://bugs.webkit.org/show_bug.cgi?id=193790
<rdar://problem/47201374>
Reviewed by Alex Christensen.
Support for XCBuild includes specifying inputs and outputs to various
Run Script build phases. These inputs and outputs are specified as
.xcfilelist files. Once created, these .xcfilelist files need to be
kept up-to-date. In order to check that they are up-to-date or not,
add an Xcode build step that invokes an external script that performs
the checking. If the .xcfilelists are found to be out-of-date, update
them, halt the build, and instruct the developer to restart the build
with up-to-date files.
At this time, the checking and regenerating is performed only if the
WK_ENABLE_CHECK_XCFILELISTS environment variable is set to 1. People
who want to use this facility can set this variable and test out the
checking/regenerating. Once it seems like there are no egregious
issues that upset a developer's workflow, we'll unconditionally enable
this facility.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/Scripts/check-xcfilelists.sh: Added.
* WebKitTestRunner/Scripts/check-xcfilelists.sh: Added.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2019-01-25 Keith Rollin <krollin@apple.com>
Update Xcode projects with "Apply Configuration to XCFileLists" build target
https://bugs.webkit.org/show_bug.cgi?id=193781
<rdar://problem/47201153>
Reviewed by Alex Christensen.
Part of generating the .xcfilelists used as part of adopting XCBuild
includes running `make DerivedSources.make` from a standalone script.
It’s important for this invocation to have the same environment as
when the actual build invokes `make DerivedSources.make`. If the
environments are different, then the two invocations will provide
different results. In order to get the same environment in the
standalone script, have the script launch xcodebuild targeting the
"Apply Configuration to XCFileLists" build target, which will then
re-invoke our standalone script. The script is now running again, this
time in an environment with all workspace, project, target, xcconfig
and other environment variables established.
The "Apply Configuration to XCFileLists" build target accomplishes
this task via a small embedded shell script that consists only of:
eval "${WK_SUBLAUNCH_SCRIPT_PARAMETERS[@]}"
The process that invokes "Apply Configuration to XCFileLists" first
sets WK_SUBLAUNCH_SCRIPT_PARAMETERS to an array of commands to be
evaluated and exports it into the shell environment. When xcodebuild
is invoked, it inherits the value of this variable and can `eval` the
contents of that variable. Our external standalone script can then set
WK_SUBLAUNCH_SCRIPT_PARAMETERS to the path to itself, along with a set
of command-line parameters needed to restart itself in the appropriate
state.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2019-01-25 Alex Christensen <achristensen@webkit.org>
Add SPI to inform an application that "Go Back" has been clicked from a safe browsing warning
https://bugs.webkit.org/show_bug.cgi?id=193802
<rdar://problem/46010580>
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(-[SafeBrowsingNavigationDelegate _webViewDidClickGoBackFromSafeBrowsingWarning:]):
(TEST):
2019-01-25 Daniel Bates <dabates@apple.com>
[iOS] uiController.keyDown() does not translate Control modified key
https://bugs.webkit.org/show_bug.cgi?id=192898
Reviewed by Wenson Hsieh.
Implement uiController.keyDown() in terms of HIDEventGenerator so that UIKit performs
key translation, as applicable. Among other cases, key translation occurs when performing
a Control key modified key sequence. Writing uiController.keyDown() in terms of HIDEventGenerator
also makes the behavior of uiController.keyDown() more closely match the behavior of a
human pressing down and releasing key(s) using a hardware keyboard.
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(-[HIDEventGenerator sendMarkerHIDEventWithCompletionBlock:]): Renamed; formerly named _sendMarkerHIDEventWithCompletionBlock.
(-[HIDEventGenerator touchDown:touchCount:completionBlock:]):
(-[HIDEventGenerator liftUp:touchCount:completionBlock:]):
(-[HIDEventGenerator stylusDownAtPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
(-[HIDEventGenerator stylusMoveToPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
(-[HIDEventGenerator stylusUpAtPoint:completionBlock:]):
(-[HIDEventGenerator stylusTapAtPoint:azimuthAngle:altitudeAngle:pressure:completionBlock:]):
(-[HIDEventGenerator sendTaps:location:withNumberOfTouches:completionBlock:]):
(-[HIDEventGenerator longPress:completionBlock:]):
(-[HIDEventGenerator dragWithStartPoint:endPoint:duration:completionBlock:]):
Update code for above renaming.
(hidUsageCodeForCharacter): Translate \b to a backspace and teach this function to recognize the
DumpRenderTree EventSender-compatible modifier key names (e.g. "metaKey").
(-[HIDEventGenerator keyDown:]): Added.
(-[HIDEventGenerator keyUp:]): Added.
(-[HIDEventGenerator keyPress:completionBlock:]):
(-[HIDEventGenerator eventDispatchThreadEntry:]):
(-[HIDEventGenerator _sendMarkerHIDEventWithCompletionBlock:]): Deleted; renamed to sendMarkerHIDEventWithCompletionBlock.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::parseModifierArray): Modified to return a vector of strings that represent the modifier keys to press.
(WTR::UIScriptController::keyDown): Write in terms of HIDEventGenerator.
(WTR::parseModifier): Deleted.
2019-01-25 Keith Rollin <krollin@apple.com>
Complete the implementation of generate-xcfilelists
https://bugs.webkit.org/show_bug.cgi?id=193782
Reviewed by Alex Christensen.
A preliminary version of generate-xcfilelists was added in r238008.
This patch updates that script in order to:
- Support checking of .xcfilelists
- Perform better execution of `make DerivedSources.make` by
relaunching generate-xcfilelists under xcodebuild
- Support incremental generation and checking of .xcfilelists
- Support supplementary .xcfilelists files from WebKitAdditions
- Support being wrapped by parallel version of generate-xcfilelists in
Internal that adds support for (re)generating WebKit projects in
that repo.
- Support builds that have been performed in WebKitBuild as well as
~/Library/Developer/code/DerivedData
- Increase robustness and debugging facilities.
* Scripts/generate-xcfilelists:
2019-01-25 Brent Fulgham <bfulgham@apple.com>
Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
https://bugs.webkit.org/show_bug.cgi?id=193297
<rdar://problem/47158841>
Unreviewed test case fix.
These test cases require ResourceLoadStatistics to be active, so the feature must be turned on.
Previously, the default data store turned the feature on automatically, allowing these tests to pass.
* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):
2019-01-25 Keith Rollin <krollin@apple.com>
Update existing .xcfilelists
https://bugs.webkit.org/show_bug.cgi?id=193791
<rdar://problem/47201706>
Reviewed by Alex Christensen.
Many .xcfilelist files were added in r238824 in order to support
XCBuild. Update these with recent changes to the set of build files
and with the current generate-xcfilelist script.
* DumpRenderTree/DerivedSources-input.xcfilelist:
* DumpRenderTree/DerivedSources-output.xcfilelist:
* WebKitTestRunner/DerivedSources-input.xcfilelist:
* WebKitTestRunner/DerivedSources-output.xcfilelist:
2019-01-25 Keith Rollin <krollin@apple.com>
Fix missing dependencies in extract-dependencies-from-makefile
https://bugs.webkit.org/show_bug.cgi?id=193783
<rdar://problem/47201571>
Reviewed by Alex Christensen.
The extract-dependencies-from-makefile script generates .xcfilelists
for XCBuild by invoking a makefile in --debug mode, parsing the
dependency information in the output, and extracting information
regarding targets and dependents. However, the way `make` emits this
dependency information is not rigorous, and so we need to determine
what lines to look for and parse by trial and error. This approach
didn't coriginally atch all the information we needed to collect, so
update the script to look for the additional lines we now know to look
for.
* Scripts/extract-dependencies-from-makefile:
(Parser):
(Parser.addTarget):
(Parser.addPrereq):
(Parser.doParse):
2019-01-25 Brent Fulgham <bfulgham@apple.com>
Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
https://bugs.webkit.org/show_bug.cgi?id=193297
<rdar://problem/47158841>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKit Cocoa/ResourceLoadStatistics.mm:
Revise tests to ensure a running NetworkProcess before attempting ResourceLoadStatistics operations.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::installStatisticsDidScanDataRecordsCallback): Simplify test configuration by
activating the message used to trigger the callback when it is set.
2019-01-25 Alex Christensen <achristensen@webkit.org>
WKWebView.goBack should reload if there is a safe browsing warning
https://bugs.webkit.org/show_bug.cgi?id=193805
<rdar://problem/46908216>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(+[Simple3LookupContext sharedLookupContext]):
(-[Simple3LookupContext lookUpURL:completionHandler:]):
(-[WKWebViewGoBackNavigationDelegate webView:didFinishNavigation:]):
(TEST):
2019-01-25 Chris Dumez <cdumez@apple.com>
Regression(PSON) cross-site provisional page is not canceled if a new same-site one is started
https://bugs.webkit.org/show_bug.cgi?id=193788
<rdar://problem/47531231>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:didStartProvisionalNavigation:]):
2019-01-25 Jonathan Bedard <jbedard@apple.com>
webkitpy: Missing PID in crashlog name should not be fatal (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=193771
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._merge_crash_logs): Correct syntax for catching multiple exception types.
2019-01-25 Alexey Proskuryakov <ap@apple.com>
* Scripts/webkitpy/common/config/contributors.json: Removing a stray comma.
2019-01-25 Alexey Proskuryakov <ap@apple.com>
Add contributors.json entries for Ling Ho and for a new bot watchers group.
* Scripts/webkitpy/common/config/contributors.json:
2019-01-25 Chris Dumez <cdumez@apple.com>
Regression(PSON?) Crash under NavigationState::NavigationClient::decidePolicyForNavigationAction()
https://bugs.webkit.org/show_bug.cgi?id=193779
<rdar://problem/46170903>
Reviewed by Antti Koivisto.
Add API test that quickly navigates forward to a previous process without waiting for it to
suspend. I suspect the crash could have been happening due to receiving leftover IPC from
the process' previous page when reconnecting the it for the forward navigation.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-25 Wenson Hsieh <wenson_hsieh@apple.com>
Need a way for JavaScript (or bundle) code to participate in undo
https://bugs.webkit.org/show_bug.cgi?id=190009
<rdar://problem/44807048>
Reviewed by Ryosuke Niwa.
Add UIScriptController helpers to grab the platform undo and redo action labels. Currently only implemented for
Cocoa platforms in WebKit2. See other ChangeLogs for more detail.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::lastUndoLabel const):
(WTR::UIScriptController::firstRedoLabel const):
(WTR::UIScriptController::platformUndoManager const):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::lastUndoLabel const):
(WTR::UIScriptController::firstRedoLabel const):
(WTR::UIScriptController::platformUndoManager const):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::lastUndoLabel const):
(WTR::UIScriptController::firstRedoLabel const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::lastUndoLabel const):
(WTR::UIScriptController::firstRedoLabel const):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::platformUndoManager const):
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::platformUndoManager const):
2019-01-25 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Add "clear" to static position computation.
https://bugs.webkit.org/show_bug.cgi?id=193824
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-24 Ryan Haddad <ryanhaddad@apple.com>
Update macOS JSC bot configurations
https://bugs.webkit.org/show_bug.cgi?id=193739
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/config.json: Remove 32-bit BuildAndTest queue.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer): Move JSC EWS to Mojave section.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot): Remove 32-bit BuildAndTest queue from dashboard.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Update unit test.
2019-01-24 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][WebKitTestRunner] Implement EventSenderProxy
https://bugs.webkit.org/show_bug.cgi?id=193755
Reviewed by Don Olmstead.
* WebKitTestRunner/EventSenderProxy.h: Removed unused members m_buttonState and m_mouseButtonsCurrentlyDown.
* WebKitTestRunner/win/EventSenderProxyWin.cpp:
(WTR::EventSenderProxy::dispatchMessage):
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
2019-01-24 Ross Kirsling <ross.kirsling@sony.com>
Unreviewed fix for API test failure after r240437.
TestWTF.WTF.StringOperators apparently can't deal with another test using String::operator+. This is fine...
* TestWebKitAPI/Tests/WTF/FileSystem.cpp:
2019-01-24 Jonathan Bedard <jbedard@apple.com>
[webkitdirs] iosSimulatorApplicationsPath may not have iOS.simruntime in its path
https://bugs.webkit.org/show_bug.cgi?id=193787
<rdar://problem/47497634>
Reviewed by Alexey Proskuryakov.
* Scripts/webkitdirs.pm:
(iosSimulatorApplicationsPath): Pick from available runtime directories.
2019-01-24 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r240446.
Casued 5 API failures
Reverted changeset:
"Activate the WebResourceLoadStatisticsStore in the
NetworkProcess and deactivate it in the UIProcess."
https://bugs.webkit.org/show_bug.cgi?id=193297
https://trac.webkit.org/changeset/240446
2019-01-24 Zalan Bujtas <zalan@apple.com>
DidFirstVisuallyNonEmptyLayout milestone should always fire at some point.
https://bugs.webkit.org/show_bug.cgi?id=193741
<rdar://problem/47135030>
Reviewed by Antti Koivisto and Simon Fraser.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
(TestWebKitAPI::TEST):
2019-01-24 Brent Fulgham <bfulgham@apple.com>
Activate the WebResourceLoadStatisticsStore in the NetworkProcess and deactivate it in the UIProcess.
https://bugs.webkit.org/show_bug.cgi?id=193297
<rdar://problem/47158841>
Reviewed by Alex Christensen.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::installStatisticsDidScanDataRecordsCallback): Simplify test configuration by
activating the message used to trigger the callback when it is set.
2019-01-24 John Wilander <wilander@apple.com>
Add Ad Click Attribution as an internal/experimental feature
https://bugs.webkit.org/show_bug.cgi?id=193685
<rdar://problem/47450399>
Reviewed by Brent Fulgham.
Added test option adClickAttributionEnabled.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
2019-01-24 Antti Koivisto <antti@apple.com>
[PSON] Flash on back navigation on Mac
https://bugs.webkit.org/show_bug.cgi?id=193716
<rdar://problem/47148458>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
Closing of the previous page is delayed so waiting for didFinishNavigation is
not sufficient to guarantee we have received all the messages. Wait for them.
2019-01-24 Chris Dumez <cdumez@apple.com>
Regression(PSON) Back/Forward list items' URL sometimes gets replaced with the URL of a subframe
https://bugs.webkit.org/show_bug.cgi?id=193761
<rdar://problem/47456405>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-24 Jonathan Bedard <jbedard@apple.com>
webkitpy: Missing PID in crashlog name should not be fatal
https://bugs.webkit.org/show_bug.cgi?id=193771
If we can't determine the PID of a crashlog, just ignore the crashlog instead
of raising an exception.
Reviewed by Lucas Forschler.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._merge_crash_logs):
2019-01-24 Michael Catanzaro <mcatanzaro@igalia.com>
test_exporter.py: webkitpy.common.system.executive.ScriptError from create_branch_with_patch
https://bugs.webkit.org/show_bug.cgi?id=193746
Reviewed by Youenn Fablet.
It calls 'git apply --index --abort', but --abort is not a valid argument to 'git apply',
so we'd best just not call it.
* Scripts/webkitpy/w3c/test_exporter.py:
(WebPlatformTestExporter.create_branch_with_patch):
2019-01-24 Ross Kirsling <ross.kirsling@sony.com>
Move FileSystem to WTF
https://bugs.webkit.org/show_bug.cgi?id=193602
Reviewed by Yusuke Suzuki.
* DumpRenderTree/win/DumpRenderTree.cpp:
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformJSCOnly.cmake:
* TestWebKitAPI/PlatformPlayStation.cmake:
* TestWebKitAPI/PlatformWPE.cmake:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/FileSystem.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/FileSystem.cpp.
* TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
* TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
* TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
* TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
* TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
2019-01-24 Philippe Normand <pnormand@igalia.com>
[WPE] Remove hard dependency on subprocess32 for the API tests
Rubber-stamped by Carlos Garcia Campos.
* glib/api_test_runner.py:
(TestRunner._run_test_qt): Lazily import subprocess32 and check
its presence only when running WPEQt tests.
2019-01-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GLIB] Expose JavaScriptCore options in GLib public API
https://bugs.webkit.org/show_bug.cgi?id=188742
Reviewed by Michael Catanzaro.
Add a test for the new API.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(testsJSCOptions):
(main):
2019-01-24 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Support JPEG 2000 images
https://bugs.webkit.org/show_bug.cgi?id=186272
Reviewed by Žan Doberšek.
Add OpenJPEG to jhbuild since 2.2.0 version is required and it's not available in debian stable.
* gtk/jhbuild.modules:
* wpe/jhbuild.modules:
2019-01-23 David Kilzer <ddkilzer@apple.com>
check-webkit-style should warn when using soft-linking macros in a header
<https://webkit.org/b/193750>
Reviewed by Darin Adler.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Add softlink/header check by refactoring the
softlink/framework check.
(CppChecker): Enable softlink/header check by default.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest.test_softlink_framework): Rename from
CppStyleTest.test_softlink() and change test framework name in
case AVFoundation gets its own AVFoundationSoftLink.{h,mm}
files. Set file_name for macros that only appear in headers.
(CppStyleTest.test_softlink_header): Add tests for using
soft-link macros in headers.
2019-01-23 Chris Dumez <cdumez@apple.com>
Deprecate API to limit the maximum number of WebProcesses
https://bugs.webkit.org/show_bug.cgi?id=193725
<rdar://problem/47464879>
Reviewed by Geoff Garen.
Update existing API tests to stop using deprecated API.
* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ResponsivenessTimer.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
* TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
(TEST):
2019-01-23 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename ews model buildermappings to buildermapping
https://bugs.webkit.org/show_bug.cgi?id=193729
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/buildermapping.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/buildermappings.py.
(BuilderMapping): Renamed BuildMappings to BuilderMapping.
* BuildSlaveSupport/ews-app/ews/models/__init__.py: Ditto.
2019-01-23 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename ews model steps to step
https://bugs.webkit.org/show_bug.cgi?id=193697
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/step.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/steps.py.
(Step): Renamed Steps to Step.
2019-01-23 Sihui Liu <sihui_liu@apple.com>
Clean up IndexedDB files between tests
https://bugs.webkit.org/show_bug.cgi?id=192796
<rdar://problem/46824999>
Reviewed by Geoffrey Garen.
* DumpRenderTree/mac/DumpRenderTree.mm:
(runTest):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
(WTR::RemoveAllIndexedDatabasesCallback):
(WTR::TestController::ClearIndexedDatabases):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-01-23 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename ews model Builds to Build
https://bugs.webkit.org/show_bug.cgi?id=193695
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/build.py: Renamed from Tools/BuildSlaveSupport/ews-app/ews/models/builds.py.
(Build): Renamed Builds to Build.
2019-01-23 Jonathan Bedard <jbedard@apple.com>
webkitpy: Wait longer when launching WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=193734
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/simulator_process.py:
(SimulatorProcess._start): Increase timeout from 6 seconds to 15 seconds.
2019-01-23 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] fast/events/touch/ios/hover-when-style-change-is-async.html times out
https://bugs.webkit.org/show_bug.cgi?id=193182
<rdar://problem/47452154>
Reviewed by Tim Horton.
This test was timing out because one of its preceding tests (drag-to-autoscroll-in-single-line-editable.html)
long presses and drags to select text, but does not end the touch by lifting up; subsequently, the tap gesture
recognizer isn't fired when simulating a tap in hover-when-style-change-is-async.html.
To fix this, tweak the test runner to make it safe for tests to end while touching the web view without
preventing later tests from recognizing gestures.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
Cancel all touches in the UIApplication when resetting to a consistent state between tests.
2019-01-23 Jonathan Bedard <jbedard@apple.com>
webkitpy: Use correct config for --iphone-simulator and --ipad-simulator
https://bugs.webkit.org/show_bug.cgi?id=193722
<rdar://problem/47481475>
Reviewed by Lucas Forschler.
iPhone and iPad ports should both use the iOS config.
* Scripts/webkitpy/port/ios_simulator.py:
(IPhoneSimulatorPort.__init__):
(IPadSimulatorPort.__init__):
2019-01-23 Rob Buis <rbuis@igalia.com>
Update MIME type parser
https://bugs.webkit.org/show_bug.cgi?id=180526
Reviewed by Frédéric Wang.
Add unit tests for both parse modes of ParsedContentType.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ParsedContentType.cpp: Added.
(TestWebKitAPI::TEST):
2019-01-22 Aakash Jain <aakash_jain@apple.com>
[ews-app] fetch loop should not stop on network issues
https://bugs.webkit.org/show_bug.cgi?id=193666
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
(FetchLoop.run): Ensure that fetch loop doesn't exit on any exception.
2019-01-22 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Multiple WKWebViewAutofillTests are flaky failures
https://bugs.webkit.org/show_bug.cgi?id=189165
<rdar://problem/47433765>
Reviewed by Tim Horton.
These tests are currently flaky because they expect an invocation of "Element.blur()" in the web process to
immediately dispatch an IPC message to notify the UI process that the element has been blurred. In particular,
the -textInputHasAutofillContext helper assumes that waiting for the next remote layer tree commit in the UI
process in sufficient to ensure that any previous action that blurred the focused element in the web process
would make its way to the UI process by the time the layer tree commit is finished.
However, WebPage::elementDidBlur sends its IPC message to the UI process asynchronously, using callOnMainThread.
This means that if a layer tree flush was already scheduled in the web process before the element was blurred,
the element blur IPC message to the UI process will lose the race against the layer tree commit, and the test
will fail because it asks for -_autofillContext too early.
To fix this, we tweak these tests to actually wait until the intended input session change triggered by script
is handled in the UI process.
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
Tweak some of these tests to wait for input session changes before checking for the presence of an autofill
context. The only exception is an existing test that doesn't allow programmatic focus to begin input sessions
by default; to fix this test, we simply wait for _WKInputDelegate to be invoked, instead of waiting for a new
input session.
(-[AutofillTestView textInputHasAutofillContext]):
Remove the incorrect presentation update here. This helper now assumes that the UI process is up to date.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(nextInputSessionChangeCount):
Monotonically increasing identifier that's incremented whenever an input session is started in the UI process.
This includes changing the focused element from one to another.
(-[TestWKWebView initWithFrame:configuration:addToWindow:]):
(-[TestWKWebView didStartFormControlInteraction]):
(-[TestWKWebView didEndFormControlInteraction]):
(-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
Add a helper to evaluate JavaScript and wait for this script to cause some change in the input session. This
handles three cases: (1) changing focus from an element that doesn't require an input session to one that does,
(2) changing focus between elements that require input sessions, and (3) changing focus from an input session
that doesn't require an input session to one that doesn't.
2019-01-22 David Kilzer <ddkilzer@apple.com>
check-webkit-style reports false-positive whitespace/init warning in C++ initialization parameters
<https://webkit.org/b/193676>
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_member_initialization_list):
- Don't report missing whitespace around colon if the colon at
the start of the line is formatted correctly.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_member_initialization_list):
- Add a test for a missing permutation of existing tests.
- Add a test this false-positive.
- Add blank lines between subtests to make them easier to read.
2019-01-22 Aakash Jain <aakash_jain@apple.com>
[build.webkit.org] Unit-test failure after r237113
https://bugs.webkit.org/show_bug.cgi?id=193669
Reviewed by Michael Catanzaro.
* BuildSlaveSupport/build.webkit.org-config/factories.py:
(Factory.__init__): Properly check for --no-experimental-features flag when additionalArguments has
multiple or zero flags.
2019-01-22 Tadeu Zagallo <tzagallo@apple.com>
Cache bytecode to disk
https://bugs.webkit.org/show_bug.cgi?id=192782
<rdar://problem/46084932>
Reviewed by Keith Miller.
Add test helper to execute bytecode-cache tests: it executes each test
twice, the first with JSC_diskCachePath set to a temporary directory
and second with JSC_forceDiskCache=true (in addition to the cache path)
to guarantee that only the disk cache is being used and no new
UnlinkedCodeBlocks are being created.
* Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh: Added.
* Scripts/run-jsc-stress-tests:
2019-01-22 Oriol Brufau <obrufau@igalia.com>
[css-logical] Implement flow-relative margin, padding and border shorthands
https://bugs.webkit.org/show_bug.cgi?id=188697
Reviewed by Simon Fraser and Antti Koivisto.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
Allow tests to enable the CSSLogicalEnabled flag in WK1.
* Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONCSSPropertiesChecker.check_codegen_properties):
Allow CSS property definitions to have a 'runtime-flag' parameter which
disables the property when the specified runtime flag is disabled.
2019-01-21 Fujii Hironori <Hironori.Fujii@sony.com>
[GTK][WPE] libgcrypt-1.7.6 can't be compiled on Ubuntu 18.10
https://bugs.webkit.org/show_bug.cgi?id=193643
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules: Bumped to libgcrypt-1.8.4.
* wpe/jhbuild.modules: Ditto.
2019-01-21 Zalan Bujtas <zalan@apple.com>
[LFC][Floats] Take float top position into account when computing containing block height.
https://bugs.webkit.org/show_bug.cgi?id=193655
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-21 David Kilzer <ddkilzer@apple.com>
Switch remaining VideoToolbox soft-linking in WebCore over to VideoToolboxSoftLink.{cpp,h}
<https://webkit.org/b/193645>
<rdar://problem/47421574>
Reviewed by Alex Christensen.
- Now checks for local soft-linking of all frameworks that have
their own *SoftLinking.{cpp,h,mm} files.
- Changes softlink/uikit warning to softlink/framework.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language):
(CppChecker):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest):
2019-01-20 Saam Barati <sbarati@apple.com>
Rollout r240210: It broke tests on iOS
https://bugs.webkit.org/show_bug.cgi?id=193640
Unreviewed.
* Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper:
* Scripts/run-jsc-stress-tests:
2019-01-20 chris fleizach <cfleizach@apple.com>
AX: Support returning relative frames for accessibility
https://bugs.webkit.org/show_bug.cgi?id=193414
<rdar://problem/47268501>
Reviewed by Zalan Bujtas.
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::attributesOfElement):
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
2019-01-20 Yusuke Suzuki <ysuzuki@apple.com>
Unreviewed, add my new email address
* Scripts/webkitpy/common/config/contributors.json:
2019-01-19 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] <body>'s overflow property value is propagated to viewport
https://bugs.webkit.org/show_bug.cgi?id=193617
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-20 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, rolling out r240209.
Broke GTK/WPE injected bundle
Reverted changeset:
"AX: Support returning relative frames for accessibility"
https://bugs.webkit.org/show_bug.cgi?id=193414
https://trac.webkit.org/changeset/240209
2019-01-12 Dan Bernstein <mitz@apple.com>
[Cocoa] Avoid importing directly from subumbrella frameworks
https://bugs.webkit.org/show_bug.cgi?id=186016
<rdar://problem/40591038>
Reviewed by Sam Weinig.
* DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
LaunchServices header.
* DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
* DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
when using SDKs earlier than 10.13.
* TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
and OTHER_CPLUSPLUSFLAGS.
* WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
* WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
LaunchServices header.
2019-01-20 Tadeu Zagallo <tzagallo@apple.com>
Cache bytecode to disk
https://bugs.webkit.org/show_bug.cgi?id=192782
<rdar://problem/46084932>
Reviewed by Keith Miller.
Add test helper to execute bytecode-cache tests: it executes each test
twice, the first with JSC_diskCachePath set to a temporary directory
and second with JSC_forceDiskCache=true (in addition to the cache path)
to guarantee that only the disk cache is being used and no new
UnlinkedCodeBlocks are being created.
* Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper: Added.
* Scripts/run-jsc-stress-tests:
2019-01-20 chris fleizach <cfleizach@apple.com>
AX: Support returning relative frames for accessibility
https://bugs.webkit.org/show_bug.cgi?id=193414
<rdar://problem/47268501>
Reviewed by Zalan Bujtas.
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::attributesOfElement):
(WTR::AccessibilityUIElement::stringDescriptionOfAttributeValue):
2019-01-20 Antoine Quint <graouts@apple.com>
Add a POINTER_EVENTS feature flag
https://bugs.webkit.org/show_bug.cgi?id=193577
<rdar://problem/47408511>
Unreviewed. Also enable Pointer Events for iosmac.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-01-19 Zalan Bujtas <zalan@apple.com>
[LFC][Floats] Ensure that floats in FloatingContext::m_floats are always horizontally ordered.
https://bugs.webkit.org/show_bug.cgi?id=193613
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-19 Antoine Quint <graouts@apple.com>
Add a POINTER_EVENTS feature flag
https://bugs.webkit.org/show_bug.cgi?id=193577
Reviewed by Dean Jackson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-01-18 Zhifei FANG <zhifei_fang@apple.com>
Disable the run-jsc-stress-test remote host key check [second round].
https://bugs.webkit.org/show_bug.cgi?id=192988
Reviewed by Dewei Zhu.
* Scripts/run-jsc-stress-tests:
2019-01-18 Aakash Jain <aakash_jain@apple.com>
[build.webkit.org] unit-test failure Builder GTK Linux 32-bit Release doesn't exist
https://bugs.webkit.org/show_bug.cgi?id=193597
Reviewed by Lucas Forschler.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2019-01-18 Aakash Jain <aakash_jain@apple.com>
[build.webkit.org] api tests failures are incorrectly named as unit test failures
https://bugs.webkit.org/show_bug.cgi?id=193595
Reviewed by Lucas Forschler.
* BuildSlaveSupport/build.webkit.org-config/factories.py: Renamed RunUnitTests to RunAPITests.
* BuildSlaveSupport/build.webkit.org-config/steps.py: Ditto.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Ditto.
2019-01-18 Chris Dumez <cdumez@apple.com>
Regression(PSON) Content blockers are sometimes lost on back navigation cross-site
https://bugs.webkit.org/show_bug.cgi?id=193588
<rdar://problem/47131566>
Reviewed by Alex Christensen.
Add layout test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-18 Jer Noble <jer.noble@apple.com>
SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
https://bugs.webkit.org/show_bug.cgi?id=189553
Reviewed by Tim Horton.
Add a check-webkit-style check that ensures all SDKVariant.xcconfig files match.
* ContentExtensionTester/Configurations/Base.xcconfig:
* ContentExtensionTester/Configurations/SDKVariant.xcconfig: Added.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/SDKVariant.xcconfig: Added.
* ImageDiff/cg/Configurations/Base.xcconfig:
* ImageDiff/cg/Configurations/SDKVariant.xcconfig: Added.
* MiniBrowser/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/SDKVariant.xcconfig: Added.
* MobileMiniBrowser/Configurations/Base.xcconfig:
* MobileMiniBrowser/Configurations/SDKVariant.xcconfig: Added.
* Scripts/webkitpy/style/checker.py:
(_all_categories):
(FileType):
(CheckerDispatcher._file_type):
(CheckerDispatcher._create_checker):
* Scripts/webkitpy/style/checkers/sdkvariant.py: Added.
(SDKVariantChecker):
(SDKVariantChecker.__init__):
(SDKVariantChecker.check):
* TestWebKitAPI/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/SDKVariant.xcconfig: Added.
* WebEditingTester/Configurations/Base.xcconfig:
* WebEditingTester/Configurations/SDKVariant.xcconfig: Added.
* WebKitLauncher/Configurations/SDKVariant.xcconfig: Added.
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/SDKVariant.xcconfig: Added.
* lldb/lldbWebKitTester/Configurations/Base.xcconfig:
* lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig: Added.
2019-01-18 David Kilzer <ddkilzer@apple.com>
Switch remaining UIKit soft-linking in WebCore, WebKitLegacy over to UIKitSoftLink.{cpp,h}
<https://webkit.org/b/193568>
<rdar://problem/47381130>
Reviewed by Alex Christensen.
Make sure no one re-introduces UIKit soft-linking by adding a
style rule.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language): Add softlink/uikit check.
(CppChecker): Enable softlink/uikit check.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest): Add test for softlink/uikit.
2019-01-18 Joanmarie Diggs <jdiggs@igalia.com>
[GTK] install-dependencies tool looks for libunistring-dev for dnf
https://bugs.webkit.org/show_bug.cgi?id=193584
Change "-dev" to "-devel".
Reviewed by Michael Catanzaro.
* gtk/install-dependencies:
2019-01-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add iPhone and iPad ports
https://bugs.webkit.org/show_bug.cgi?id=193537
<rdar://problem/47353390>
Reviewed by Lucas Forschler.
Add --iphone-simulator and --ipad-simulator commands to run-webkit-tests which separate iPhone and iPad into separate
ports. Note that this separation is optional, the --ios-simulator command remains.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest.test_device_type_test_division): Drive-by fix.
(RunTest.test_device_type_specific_listing): Ditto.
(RunTest.test_ipad_test_division):
(RunTest):
(RunTest.test_ipad_listing):
* Scripts/webkitpy/port/factory.py:
(platform_options): Add --iphone-simulator and --ipad-simulator flags.
(PortFactory):
* Scripts/webkitpy/port/ios_simulator.py:
(IPhoneSimulatorPort):
(IPadSimulatorPort):
2019-01-18 Chris Dumez <cdumez@apple.com>
Regression(PSON) Scroll position is not always restored properly when navigating back
https://bugs.webkit.org/show_bug.cgi?id=193578
<rdar://problem/47386331>
Reviewed by Tim Horton.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-18 Youenn Fablet <youenn@apple.com>
Add a new SPI to request for cache storage quota increase
https://bugs.webkit.org/show_bug.cgi?id=193323
Reviewed by Alex Christensen.
Implement WebsiteDataStore quota delegate to handle quota requests.
By default, do not update quota.
Update quota if test calls the new testRunner.allowCacheStorageQuotaIncrease method.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::allowCacheStorageQuotaIncrease):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::allowCacheStorageQuotaIncrease):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(-[CacheStorageQuotaManager init]):
(-[CacheStorageQuotaManager _requestCacheStorageSpace:frameOrigin:quota:currentSize:spaceRequired:decisionHandler:]):
(WTR::initializeWebViewConfiguration):
(WTR::TestController::cocoaResetStateToConsistentValues):
(WTR::TestController::allowCacheStorageQuotaIncrease):
2019-01-18 Aakash Jain <aakash_jain@apple.com>
[ews-build] Pass owner to the triggered builds
https://bugs.webkit.org/show_bug.cgi?id=193574
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(BuildFactory.propertiesToPassToTriggers):
2019-01-18 Aakash Jain <aakash_jain@apple.com>
[ews-app] Send patch author as a build property
https://bugs.webkit.org/show_bug.cgi?id=193560
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
(BugzillaPatchFetcher.fetch):
2019-01-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Implement device type specific expected results (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=192162
<rdar://problem/46345449>
Unreviewed infrastructure fix.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Don't boot a device if no tests are available to run on it.
2019-01-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Implement device type specific expected results (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=192162
<rdar://problem/46345449>
Unreviewed infrastructure fix.
* Scripts/webkitpy/api_tests/manager.py:
(Manager._initialize_devices): Use DEVICE_TYPE when running API tests.
2019-01-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Implement device type specific expected results (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=192162
<rdar://problem/46345449>
Rubber-stamped by Aakash Jain.
This change uses device_type to select a different set of TestExpectation files based on the type of device running
tests. This requires multiple baseline search paths to be used in a single instantiation of run-webkit-tests. Note
that while multiple baseline search paths are used, any single test will only ever be run on a single device type.
* Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
(LayoutTestFinder.find_tests): Pass device_type through.
* Scripts/webkitpy/layout_tests/controllers/layout_test_finder_unittest.py:
(LayoutTestFinderTests.test_touched_but_skipped_test): Allow device_type to be passed in.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.__init__): Make _expectations an OrderedDict indexed by device_type, add current_device_type.
(Manager._collect_tests): Pass device type to test finder.
(Manager._needs_web_platform_test):
(Manager._prepare_lists): Index _expectations by device type.
(Manager._test_input_for_file):
(Manager._test_is_slow): Ditto.
(Manager._test_should_dump_jsconsolelog_in_stderr):
(Manager._test_should_dump_jsconsolelog_in_stderr): Ditto.
(Manager._get_test_inputs):
(Manager._update_worker_count):
(Manager._set_up_run): Use current_device_type instead of passing device_type in.
(Manager.run): Re-write function to gather and parse expectations from multiple baseline search paths. In the event
that a test can be run on multiple device types, the first device in the device type list which is eligible will be
the one which runs the test.
(Manager._run_test_subset):
(Manager._run_tests): Index _expectations by current_device_type.
(Manager._print_expectation_line_for_test): Ditto.
(Manager._print_expectations_for_subset): Ditto.
(Manager.print_expectations): Re-write function to gather and parse expectations from multiple baseline search paths.
Unlike run, this function will behave the same regardless of what devices are available.
(Manager._custom_device_for_test): Deleted.
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_uses_custom_device): Deleted.
(ManagerTest.test_uses_custom_device.get_manager): Deleted.
* Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
(JSONLayoutResultsGenerator.__init__): Pass expectations as a dictionary indexed by device type.
(JSONLayoutResultsGenerator._insert_failure_summaries): The number of fixable tests must take into consideration
all of the expectations.
* Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py:
(FakePort.skipped_layout_tests): Allow device_type to be passed in.
* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectations.__init__): Allow device_type to be passed through.
(TestExpectations.parse_all_expectations): Pick expectations_dict by device type.
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py: Allow device_type to be passed in.
* Scripts/webkitpy/layout_tests/models/test_run_results.py:
(summarize_results):
* Scripts/webkitpy/layout_tests/models/test_run_results_unittest.py:
(summarized_results): Expectations are stored in a dictionary indexed by device_type. When determining the expectation
a test ran with, one must check all expectations to find the first non-skip expectation.
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RunTest.test_device_type_test_division):
(RunTest):
(RunTest.test_device_type_specific_listing):
* Scripts/webkitpy/port/base.py:
(Port): Add default values for DEVICE_TYPE and DEFAULT_DEVICE_TYPES.
(Port.supported_device_types): The result of this function will change based on what devices are available.
* Scripts/webkitpy/port/device_port.py:
(DevicePort._device_type_with_version): Replace DEFAULT_DEVICE_TYPE with DEVICE_TYPE.
(DevicePort.default_child_processes): DEVICE_TYPE is a general type, so the built-in comparison of the DeviceType object
can be used.
(DevicePort.supported_device_types): Generates a list of device types determined by the available devices, if there are
any, or the DEFAULT_DEVICE_TYPES of the port.
* Scripts/webkitpy/port/ios.py:
(IOSPort): Change DEFAULT_DEVICE_TYPE to DEVICE_TYPE.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Set the DEFAULT_DEVICE_TYPES to the devices currently used to run layout tests.
* Scripts/webkitpy/port/watch.py:
(WatchPort): Change DEFAULT_DEVICE_TYPE to DEVICE_TYPE.
* Scripts/webkitpy/port/watch_simulator.py:
(WatchSimulatorPort): Set the DEFAULT_DEVICE_TYPES to the device currently used to run layout tests.
* Scripts/webkitpy/xcode/device_type.py:
(DeviceType):
(DeviceType.__hash__): Allow DeviceType to be used as a dictionary index.
2019-01-18 Philippe Normand <pnormand@igalia.com>
[WPE] run-qt-wpe-minibrowser needlessly expects a --wpe argument
https://bugs.webkit.org/show_bug.cgi?id=193575
Reviewed by Michael Catanzaro.
Allow the script to run without explicit port argument because
it's specific to the WPE port anyway.
* Scripts/run-qt-wpe-minibrowser: Manually insert --wpe in argv
and simplify the rest of the code accordingly.
2019-01-18 Charlie Turner <cturner@igalia.com>
[GStreamer][EME][ClearKey] Request keys from CDMInstance rather than passing via bus messages
https://bugs.webkit.org/show_bug.cgi?id=192229
Reviewed by Xabier Rodriguez-Calvar.
* MiniBrowser/wpe/main.cpp:
(main): Enable encrypted-media by default.
2019-01-18 Philippe Normand <pnormand@igalia.com>
[Flatpak] Missing KeyboardInterrupt exception handler
https://bugs.webkit.org/show_bug.cgi?id=193570
Reviewed by Michael Catanzaro.
* flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox): Basic KeyboardInterrupt handling.
2019-01-18 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Collapsing through should not ignore floats.
https://bugs.webkit.org/show_bug.cgi?id=193564
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-18 Zalan Bujtas <zalan@apple.com>
[LFC] Do not skip float boxes that are not part of the current formatting context when computing bottom.
https://bugs.webkit.org/show_bug.cgi?id=193562
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-18 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Check for inflow children while computing height for block formatting context roots.
https://bugs.webkit.org/show_bug.cgi?id=193555
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-18 Philippe Normand <pnormand@igalia.com>
[WPE] Add Qt extension
https://bugs.webkit.org/show_bug.cgi?id=191464
Reviewed by Carlos Garcia Campos.
MiniBrowser and API tests for the WPE Qt API. To run the
MiniBrowser a new script is introduced. Example invocation:
$ run-qt-wpe-minibrowser -platform wayland https://webkit.org
Also note-worthy is the introduction of the python2-subprocess32
dependency to run the GLib API tests.
* MiniBrowser/wpe/CMakeLists.txt:
* MiniBrowser/wpe/qt/CMakeLists.txt: Added.
* MiniBrowser/wpe/qt/main.cpp: Added.
(main):
* MiniBrowser/wpe/qt/main.qml: Added.
* MiniBrowser/wpe/qt/qml.qrc: Added.
* Scripts/run-gtk-tests:
(GtkTestRunner.is_google_test):
(GtkTestRunner):
(GtkTestRunner.is_qt_test):
* Scripts/run-qt-wpe-minibrowser: Added.
* Scripts/run-wpe-tests:
(WPETestRunner):
(WPETestRunner.is_google_test):
(WPETestRunner.is_qt_test):
* TestWebKitAPI/Tests/WPEQt/TestLoad.cpp: Added.
(TestLoad::main):
* TestWebKitAPI/Tests/WPEQt/TestLoadHtml.cpp: Added.
(TestLoadHtml::main):
* TestWebKitAPI/Tests/WPEQt/TestLoadRequest.cpp: Added.
(TestLoadRequest::main):
* TestWebKitAPI/Tests/WPEQt/TestRunJavaScript.cpp: Added.
(TestRunJavaScript::main):
* TestWebKitAPI/Tests/WPEQt/WPEQtTest.cpp: Added.
(waitForSignal):
* TestWebKitAPI/Tests/WPEQt/WPEQtTest.h: Added.
(LoadSpy::LoadSpy):
(LoadSpy::~LoadSpy):
(LoadSpy::onLoadingChanged):
(LoadStartedCatcher::LoadStartedCatcher):
(LoadStartedCatcher::~LoadStartedCatcher):
(LoadStartedCatcher::onLoadingChanged):
(waitForLoadSucceeded):
(waitForLoadFailed):
* TestWebKitAPI/glib/CMakeLists.txt:
* flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.__init__):
(WebkitFlatpak.clean_args):
(WebkitFlatpak.run_in_sandbox):
* flatpak/org.webkit.CommonModules.yaml:
* flatpak/org.webkit.WPE.yaml:
* flatpak/org.webkit.WPEModules.yaml:
* flatpak/org.webkit.WPEQT.yaml: Copied from Tools/flatpak/org.webkit.WebKit.yaml.
* flatpak/org.webkit.WebKit.yaml:
* glib/api_test_runner.py:
(TestRunner._run_test_qt):
(TestRunner.is_qt_test):
(TestRunner._run_test):
2019-01-17 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Content offset jumps erratically when autoscrolling near scroll view content inset areas
https://bugs.webkit.org/show_bug.cgi?id=193494
<rdar://problem/46859627>
Reviewed by Simon Fraser and Tim Horton.
Add a new test option to add a top content inset to the test runner's WKWebView's scroll view, and automatically
scroll to reveal this top content inset area when beginning the test (i.e., scroll to (0, -topContentInset)).
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::contentOffsetX const):
(WTR::UIScriptController::contentOffsetY const):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::contentOffsetX const):
(WTR::UIScriptController::contentOffsetY const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
Also add new UIScriptController methods to ask for the content offset of the platform scroll view.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::contentOffsetX const):
(WTR::UIScriptController::contentOffsetY const):
2019-01-17 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r240124.
This commit broke an internal build.
Reverted changeset:
"SDK_VARIANT build destinations should be separate from non-
SDK_VARIANT builds"
https://bugs.webkit.org/show_bug.cgi?id=189553
https://trac.webkit.org/changeset/240124
2019-01-17 Alex Christensen <achristensen@webkit.org>
Fix string concatenation API test after r239920
https://bugs.webkit.org/show_bug.cgi?id=193551
<rdar://problem/47359304>
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WTF/StringConcatenate.cpp:
(TestWebKitAPI::TEST):
Cocoa platforms' interpretation of UChar/unsigned short equality is not affected by ICU's recent change of UChar's type
in WebKit's build configuration like it apparently is on Linux.
2019-01-17 Aakash Jain <aakash_jain@apple.com>
[ews-build] validate-patch should handle the case when bug_id is None
https://bugs.webkit.org/show_bug.cgi?id=193547
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch._is_bug_closed): Gracefully handle the case when bug_id is None.
(ValidatePatch.start): If bug_id is set as None in build properties, fetch it from the patch.
2019-01-17 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add patch author information in build
https://bugs.webkit.org/show_bug.cgi?id=193465
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch._is_patch_obsolete):
2019-01-17 Aakash Jain <aakash_jain@apple.com>
[ews-build] Pass bug_id to the triggered builds
https://bugs.webkit.org/show_bug.cgi?id=193548
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(BuildFactory.propertiesToPassToTriggers):
2019-01-17 Jer Noble <jer.noble@apple.com>
SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
https://bugs.webkit.org/show_bug.cgi?id=189553
Reviewed by Tim Horton.
Add a check-webkit-style check that ensures all SDKVariant.xcconfig files match.
* ContentExtensionTester/Configurations/Base.xcconfig:
* ContentExtensionTester/Configurations/SDKVariant.xcconfig: Added.
* DumpRenderTree/mac/Configurations/Base.xcconfig:
* DumpRenderTree/mac/Configurations/SDKVariant.xcconfig: Added.
* ImageDiff/cg/Configurations/Base.xcconfig:
* ImageDiff/cg/Configurations/SDKVariant.xcconfig: Added.
* MiniBrowser/Configurations/Base.xcconfig:
* MiniBrowser/Configurations/SDKVariant.xcconfig: Added.
* MobileMiniBrowser/Configurations/Base.xcconfig:
* MobileMiniBrowser/Configurations/SDKVariant.xcconfig: Added.
* Scripts/webkitpy/style/checker.py:
(_all_categories):
(FileType):
(CheckerDispatcher._file_type):
(CheckerDispatcher._create_checker):
* Scripts/webkitpy/style/checkers/sdkvariant.py: Added.
(SDKVariantChecker):
(SDKVariantChecker.__init__):
(SDKVariantChecker.check):
* TestWebKitAPI/Configurations/Base.xcconfig:
* TestWebKitAPI/Configurations/SDKVariant.xcconfig: Added.
* WebEditingTester/Configurations/Base.xcconfig:
* WebEditingTester/Configurations/SDKVariant.xcconfig: Added.
* WebKitLauncher/Configurations/SDKVariant.xcconfig: Added.
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/Configurations/SDKVariant.xcconfig: Added.
* lldb/lldbWebKitTester/Configurations/Base.xcconfig:
* lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig: Added.
2019-01-17 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] An element with transform is a containing block for positioned descendants.
https://bugs.webkit.org/show_bug.cgi?id=193534
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-17 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][Quirk] Take body padding and border into account when stretching height.
https://bugs.webkit.org/show_bug.cgi?id=193528
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-17 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] For height computation, the bottom edge of the last line box value should include top border/padding
https://bugs.webkit.org/show_bug.cgi?id=193520
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-17 Aakash Jain <aakash_jain@apple.com>
[ews-build] unapply-patch step should not update source
https://bugs.webkit.org/show_bug.cgi?id=193234
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CleanWorkingDirectory): Use clean-webkit script to clean the working directory.
(UnApplyPatchIfRequired): Use CleanWorkingDirectory as base class.
2019-01-16 Youenn Fablet <youenn@apple.com>
Add a new SPI for controlling getUserMedia
https://bugs.webkit.org/show_bug.cgi?id=192793
Reviewed by Eric Carlson.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForFrame:devices:decisionHandler:]):
(-[WK2BrowserWindowController _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
* TestWebKitAPI/Tests/WebKit/GetUserMediaNavigation.mm:
(-[NavigationWhileGetUserMediaPromptDisplayedUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
* TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
(-[GetUserMediaRepromptUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
* TestWebKitAPI/Tests/WebKit/MediaStreamTrackDetached.mm:
(-[MediaStreamTrackDetachedUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
* TestWebKitAPI/Tests/WebKitCocoa/UserMediaDisabled.mm:
(-[UserMediaUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
(-[UserMediaUIDelegate _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
* TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
(-[SimulateFailedSandboxUIDelegate _webView:requestMediaCaptureAuthorizationForFrame:devices:decisionHandler:]):
(-[SimulateFailedSandboxUIDelegate _webView:isMediaCaptureAuthorizedForFrame:decisionHandler:]):
2019-01-16 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Inflow non-replaced used width should not be negative.
https://bugs.webkit.org/show_bug.cgi?id=193495
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-16 Chris Dumez <cdumez@apple.com>
Regression(PSON) View becomes blank after click a cross-site download link
https://bugs.webkit.org/show_bug.cgi?id=193361
<rdar://problem/47099573>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2019-01-16 Zalan Bujtas <zalan@apple.com>
[LFC][Out-of-flow] Set used vertical margin values when top/height/bottom are non-auto.
https://bugs.webkit.org/show_bug.cgi?id=193470
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-16 Zalan Bujtas <zalan@apple.com>
[LFC] Adjust margin box verification.
https://bugs.webkit.org/show_bug.cgi?id=193482
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-15 Sihui Liu <sihui_liu@apple.com>
Fix API test WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming after 193354
https://bugs.webkit.org/show_bug.cgi?id=193451
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/DuplicateCompletionHandlerCalls.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(runWebsiteDataStoreCustomPaths):
2019-01-15 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support boolean simctl isAvailable
https://bugs.webkit.org/show_bug.cgi?id=193472
<rdar://problem/47296150>
Reviewed by Ryosuke Niwa.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._create_runtimes):
(SimulatedDeviceManager._create_device_with_runtime):
2019-01-15 Chris Dumez <cdumez@apple.com>
Unreviewed, rolling out r239993, r239995, r239997, and
r239999.
Caused assertions under
ViewGestureController::disconnectFromProcess()
Reverted changesets:
"Regression(PSON) View becomes blank after click a cross-site
download link"
https://bugs.webkit.org/show_bug.cgi?id=193361
https://trac.webkit.org/changeset/239993
"Unreviewed iOS build fix after r239993."
https://trac.webkit.org/changeset/239995
"Fix iOS build after r239993"
https://bugs.webkit.org/show_bug.cgi?id=193361
https://trac.webkit.org/changeset/239997
"Unreviewed, revert part of r239997 as it is not needed to fix
the build."
https://trac.webkit.org/changeset/239999
2019-01-15 Tim Horton <timothy_horton@apple.com>
Cannot tab out of WKWebView on macOS
https://bugs.webkit.org/show_bug.cgi?id=161448
<rdar://problem/28100085>
Reviewed by Dean Jackson.
Add a test that tabbing into and out of WKWebView works correctly.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
(WebKit2_CommandBackForwardTest::SetUp):
(-[CommandBackForwardOffscreenWindow isKeyWindow]): Deleted.
(-[CommandBackForwardOffscreenWindow isVisible]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/TabOutOfWebView.mm: Added.
(-[FocusableView canBecomeKeyView]):
(TEST):
* TestWebKitAPI/mac/OffscreenWindow.h: Added.
* TestWebKitAPI/mac/OffscreenWindow.mm: Added.
(-[OffscreenWindow initWithSize:]):
(-[OffscreenWindow isKeyWindow]):
(-[OffscreenWindow isVisible]):
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
(TestWebKitAPI::PlatformWebView::initialize):
(-[ActiveOffscreenWindow isKeyWindow]): Deleted.
(-[ActiveOffscreenWindow isVisible]): Deleted.
Factor ActiveOffscreenWindow out into OffscreenWindow and share it.
2019-01-15 Ryan Haddad <ryanhaddad@apple.com>
Adjust the arguments passed to run-javascriptcore-tests for the 32-bit JSC bot
https://bugs.webkit.org/show_bug.cgi?id=193459
Reviewed by Mark Lam.
* BuildSlaveSupport/build.webkit.org-config/steps.py:
(Run32bitJSCTests): This queue should not run JIT, testair, testb3, or testmasm.
2019-01-15 Chris Dumez <cdumez@apple.com>
Regression(PSON) View becomes blank after click a cross-site download link
https://bugs.webkit.org/show_bug.cgi?id=193361
<rdar://problem/47099573>
Reviewed by Geoff Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2019-01-15 Zalan Bujtas <zalan@apple.com>
[LFC][Out-of-flow] Ignore bottom when the vertical values are over-constrained
https://bugs.webkit.org/show_bug.cgi?id=193448
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-15 Jonathan Bedard <jbedard@apple.com>
webkitpy: Implement device type specific expected results (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=192162
Reviewed by Lucas Forschler.
Device type specific expected results covers two related ideas. The first (covered by this change)
is where to search for -expected.* files. The second is which tests to run based on the
TestExpectations.txt file.
After this change, the baseline search path will be determined by the type of device running a
test. Device type will be passed into any function which picks a file based on the baseline search
path.
* Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
(Worker._update_test_input): Pass device_type to self._port.reference_files(...).
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Print baseline search path for each round of devices.
* Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
(SingleTestRunner.__init__): Pass device_type into expected_*(...).
(SingleTestRunner._expected_driver_output): Ditto.
(SingleTestRunner._driver_input): Ditto.
* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer.print_config): Move printing of baseline search path to a separate function.
(Printer.print_baseline_search_path): Moved from Printer.print_config.
* Scripts/webkitpy/layout_tests/views/printing_unittest.py:
(Testprinter.test_print_config):
(Testprinter.test_print_baseline_search_path):
* Scripts/webkitpy/port/base.py:
(Port.baseline_search_path): Pass device_type through.
(Port._expected_baselines_for_suffixes): Ditto.
(Port.expected_baselines): Ditto.
(Port.expected_filename): Ditto.
(Port.expected_checksum): Ditto.
(Port.expected_image): Ditto.
(Port.expected_audio): Ditto.
(Port.expected_text): Ditto.
(Port.reference_files): Ditto.
(Port.tests): Ditto.
(Port._expanded_paths): Ditto.
(Port.skipped_layout_tests): Ditto.
(Port.expectations_dict): Ditto.
(Port._port_specific_expectations_files): Ditto.
(Port.expectations_files): Ditto.
(Port.test_search_path): Ditto.
(Port._tests_for_other_platforms): Ditto.
* Scripts/webkitpy/port/base_unittest.py:
(PortTest.test_additional_platform_directory): Accept, but do not use, device_type.
(PortTest.test_nonexistant_expectations): Ditto.
(test_ref_tests_platform_directory): Ditto.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort._port_specific_expectations_files): Accept device_type.
* Scripts/webkitpy/port/driver.py:
(DriverProxy):
(DriverProxy.host): Expose _target_host for device_type information.
* Scripts/webkitpy/port/gtk.py:
(GtkPort._port_specific_expectations_files): Accept, but do not use, device_type.
* Scripts/webkitpy/port/ios.py:
(IOSPort. default_baseline_search_path): Remove memoized, since it does not accept **kwargs.
* Scripts/webkitpy/port/mac.py:
(MacPort. default_baseline_search_path): Ditto.
* Scripts/webkitpy/port/port_testcase.py:
(TestWebKitPort._tests_for_other_platforms): Accept, but do not use, device_type.
* Scripts/webkitpy/port/test.py:
* Scripts/webkitpy/port/watch.py:
(WatchPort. default_baseline_search_path): Remove memoized, since it does not accept **kwargs.
* Scripts/webkitpy/port/win.py:
(WinPort.test_search_path): Accept, but do not use, device_type.
* Scripts/webkitpy/port/wpe.py:
(WPEPort._port_specific_expectations_files): Ditto.
* Scripts/webkitpy/tool/servers/rebaselineserver.py:
(get_test_baselines.AllPlatformsPort.baseline_search_path): Ditto.
2019-01-15 Zalan Bujtas <zalan@apple.com>
[LFC] Use the containing block's padding box to position out-of-flow elements.
https://bugs.webkit.org/show_bug.cgi?id=193431
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-14 Tim Horton <timothy_horton@apple.com>
Move a test implementation file that got misplaced in the Xcode project
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2019-01-14 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r239901, r239909, r239910, r239912,
r239913, and r239914.
https://bugs.webkit.org/show_bug.cgi?id=193407
These revisions caused an internal failure (Requested by
Truitt on #webkit).
Reverted changesets:
"[Cocoa] Avoid importing directly from subumbrella frameworks"
https://bugs.webkit.org/show_bug.cgi?id=186016
https://trac.webkit.org/changeset/239901
"Tried to fix USE(APPLE_INTERNAL_SDK) builds after r239901."
https://trac.webkit.org/changeset/239909
"Tried to fix the build."
https://trac.webkit.org/changeset/239910
"Fixed iOS builds after r239910."
https://trac.webkit.org/changeset/239912
"More build fixing."
https://trac.webkit.org/changeset/239913
"Tried to fix USE(APPLE_INTERNAL_SDK) 32-bit builds."
https://trac.webkit.org/changeset/239914
2019-01-14 Mark Lam <mark.lam@apple.com>
Re-enable ability to build --cloop builds.
https://bugs.webkit.org/show_bug.cgi?id=192955
<rdar://problem/46882363>
Reviewed by Saam barati and Keith Miller.
The --cloop build option was being ignored this whole time since r236381.
This patch makes it possible to build CLoop builds again.
* Scripts/build-jsc:
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2019-01-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Expose device_type from host-like objects
https://bugs.webkit.org/show_bug.cgi?id=193406
<rdar://problem/47262305>
Reviewed by Lucas Forschler.
Devices should expose device_type. As a result, all host objects should
provide a device_type property, even if they do not yet define a device_type.
* Scripts/webkitpy/common/system/systemhost.py:
(SystemHost):
(SystemHost.device_type):
* Scripts/webkitpy/common/system/systemhost_mock.py:
(MockSystemHost):
(MockSystemHost.device_type):
* Scripts/webkitpy/port/device.py:
(Device):
(Device.device_type):
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._find_exisiting_device_for_request):
(SimulatedDeviceManager._disambiguate_device_type):
(SimulatedDeviceManager._does_fulfill_request):
(SimulatedDeviceManager.device_count_for_type):
(SimulatedDeviceManager.initialize_devices):
* Scripts/webkitpy/xcode/simulated_device_unittest.py:
(test_available_devices):
(test_swapping_devices):
2019-01-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support alternate simctl device list output (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=193362
<rdar://problem/47122965>
Rubber-stamped by Lucas Forschler.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager.populate_available_devices):
2019-01-14 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Expose SPI to access the current sentence boundary and selection state
https://bugs.webkit.org/show_bug.cgi?id=193398
<rdar://problem/45893108>
Reviewed by Dean Jackson.
Add an API test to verify that an SPI client can observe changes in the `@"_selectionAttributes"` key path on
WKWebView, and that inserting text, deleting, and changing the selection cause selection attributes to change as
expected.
* TestWebKitAPI/EditingTestHarness.h:
* TestWebKitAPI/EditingTestHarness.mm:
(-[EditingTestHarness moveBackward]):
(-[EditingTestHarness moveForward]):
(-[EditingTestHarness moveForwardAndExpectEditorStateWith:]):
Add a couple of new helper methods on EditingTestHarness.
* TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
(-[SelectionChangeObserver initWithWebView:]):
(-[SelectionChangeObserver webView]):
(-[SelectionChangeObserver observeValueForKeyPath:ofObject:change:context:]):
(-[SelectionChangeObserver currentSelectionAttributes]):
2019-01-14 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Add basic box-sizing support.
https://bugs.webkit.org/show_bug.cgi?id=193392
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-14 Charlie Turner <cturner@igalia.com>
[WPE] API test gardening
https://bugs.webkit.org/show_bug.cgi?id=193319
Reviewed by Michael Catanzaro.
* TestWebKitAPI/glib/TestExpectations.json: Remove some now
passing tests.
2019-01-14 Charlie Turner <cturner@igalia.com>
[GStreamer] Add sharedBuffer utility to GstMappedBuffer, and a testsuite
https://bugs.webkit.org/show_bug.cgi?id=192977
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/PlatformGTK.cmake: Build the new GStreamer test harness
* TestWebKitAPI/PlatformWPE.cmake: Ditto.
* TestWebKitAPI/Tests/WebCore/gstreamer/GStreamerTest.cpp: Added.
(TestWebKitAPI::GStreamerTest::SetUp):
(TestWebKitAPI::GStreamerTest::TearDown):
* TestWebKitAPI/Tests/WebCore/gstreamer/GStreamerTest.h: Added.
* TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp: Added.
(TestWebKitAPI::TEST_F):
2019-01-14 Charlie Turner <cturner@igalia.com>
[WPE] Workaround for incorrect template specialization being selected when UChar=char16_t
https://bugs.webkit.org/show_bug.cgi?id=193332
Reviewed by Michael Catanzaro.
* TestWebKitAPI/Tests/WTF/StringConcatenate.cpp: When UChar is
defined as a char16_t, which changed in ICU 59, the
StringTypeAdapter<UnsignedInt, ...> overload catches casts to
unsigned short. This test is relying on the behaviour that
UChar=unsigned short, which doesn't hold across platforms and ICU
library versions. The full fix would be a special syntax for
literal characters so that these ambiguities do not arise. That
work is proposed in https://bugs.webkit.org/show_bug.cgi?id=193101.
(TestWebKitAPI::TEST):
2019-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. [GTK][WPE] Run distcheck with gtkdoc and MiniBrowser enabled
* Scripts/make-dist:
(Distcheck.configure):
2019-01-13 Aakash Jain <aakash_jain@apple.com>
[ews-build] Update macOS queue configurations
https://bugs.webkit.org/show_bug.cgi?id=193365
<rdar://problem/47221073>
Unreviewed, renamed mac-high-sierra to mac-highsierra to match with build.webkit.org configuration.
* BuildSlaveSupport/ews-build/config.json:
2019-01-13 Zalan Bujtas <zalan@apple.com>
[LFC] Adjust assert for statically positioned fixed elements
https://bugs.webkit.org/show_bug.cgi?id=193385
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-13 Philippe Normand <pnormand@igalia.com>
[WPE][MiniBrowser] Ephemeral WebContext leaks in automation mode
https://bugs.webkit.org/show_bug.cgi?id=193387
Reviewed by Carlos Garcia Campos.
* MiniBrowser/wpe/main.cpp:
(main):
2019-01-12 Timothy Hatcher <timothy@apple.com>
Have prefers-color-scheme: light always match on macOS versions before Mojave.
https://bugs.webkit.org/show_bug.cgi?id=191655
rdar://problem/46074680
Reviewed by Megan Gardner.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig: ENABLE_DARK_MODE_CSS_macosx for all OS versions.
* TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
2019-01-12 Dan Bernstein <mitz@apple.com>
[Cocoa] Avoid importing directly from subumbrella frameworks
https://bugs.webkit.org/show_bug.cgi?id=186016
<rdar://problem/40591038>
Reviewed by Sam Weinig.
* DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
LaunchServices header.
* DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
* DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
when using SDKs earlier than 10.13.
* TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
and OTHER_CPLUSPLUSFLAGS.
* WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
* WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
LaunchServices header.
2019-01-11 John Wilander <wilander@apple.com>
Compile out Web API Statistics Collection
https://bugs.webkit.org/show_bug.cgi?id=193370
<rdar://problem/45388584>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
Defined ENABLE_WEB_API_STATISTICS, off by default.
2019-01-11 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
[WPE] Add gtk-doc
https://bugs.webkit.org/show_bug.cgi?id=178900
Reviewed by Michael Catanzaro.
Add Tools/gtkdoc to manifest.txt.in files.
This should have been done in r238853 and caused failure in building WebKitGTK+ unstable release 2.23.2.
* gtk/manifest.txt.in: Add Tools/gtkdoc directory.
* wpe/manifest.txt.in: Add Tools/gtkdoc directory and uncomment lines to move documentation artifacts.
2019-01-11 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Precision drop state thrashes when dragging near the top edge of an editable element
https://bugs.webkit.org/show_bug.cgi?id=193364
<rdar://problem/47214117>
Reviewed by Tim Horton.
Add a test to verify that dragging near the top of a textarea element does not flag the drop proposal as
precise, whereas dragging near the middle of the textarea does.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
2019-01-11 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support alternate simctl device list output
https://bugs.webkit.org/show_bug.cgi?id=193362
<rdar://problem/47122965>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager.populate_available_devices):
2019-01-11 Aakash Jain <aakash_jain@apple.com>
[ews-build] Update macOS queue configurations
https://bugs.webkit.org/show_bug.cgi?id=193365
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/config.json:
2019-01-11 Jonathan Bedard <jbedard@apple.com>
webkitpy: Incorporate device type into baseline search path
https://bugs.webkit.org/show_bug.cgi?id=193356
<rdar://problem/47215515>
Reviewed by Lucas Forschler.
We need a way to include device type in the baseline search path for iOS to support device specific test expectations.
* Scripts/webkitpy/port/base.py:
(Port.default_baseline_search_path): Allow device type to be passed in.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.default_baseline_search_path): Ignore device type.
* Scripts/webkitpy/port/ios.py:
(IOSPort.default_baseline_search_path): Optionally allow device type to be incorporated into the baseline search path.
(IOSPort.test_expectations_file_position): Update index for the additional device-type specific baseline search path.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest):
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest):
* Scripts/webkitpy/port/mac.py:
(MacPort.default_baseline_search_path): Ignore device type.
* Scripts/webkitpy/port/watch.py:
(WatchPort.default_baseline_search_path): Ditto.
* Scripts/webkitpy/port/win.py:
(WinPort.default_baseline_search_path): Ditto.
(WinCairoPort.default_baseline_search_path): Ditto.
* Scripts/webkitpy/port/wpe.py:
(WPEPort.default_baseline_search_path): Ditto.
2019-01-11 Jonathan Bedard <jbedard@apple.com>
webkitpy: Print abbreviated baseline search path that includes only folders that exist
https://bugs.webkit.org/show_bug.cgi?id=193352
<rdar://problem/47210736>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer.print_config): Print list on only baseline search paths which exist.
* Scripts/webkitpy/layout_tests/views/printing_unittest.py:
(Testprinter.test_print_config):
2019-01-11 Joseph Pecoraro <pecoraro@apple.com>
Cleanup possible WK*Copy/Create leaks in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=193340
Reviewed by David Kilzer.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didReceiveMessageToPage):
Pull the strings out into a WKRetainPtr.
* WebKitTestRunner/WebNotificationProvider.cpp:
(WTR::WebNotificationProvider::closeWebNotification):
Adopt the created value into the WKRetainPtr.
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::generateWhitelist):
Immediately adopt a created value to avoid potential mistakes.
2019-01-11 Dominik Infuehr <dinfuehr@igalia.com>
Enable DFG on ARM/Linux again
https://bugs.webkit.org/show_bug.cgi?id=192496
Reviewed by Yusuke Suzuki.
After changing the bytecode format DFG was disabled on all 32-bit
architectures. Enable DFG now again on ARM/Linux. Run again JIT-tests
on ARM by default.
* Scripts/run-jsc-stress-tests:
2019-01-11 Timothy Hatcher <timothy@apple.com>
Unreviewed, fix #ifdef in API test added in r239851.
https://bugs.webkit.org/show_bug.cgi?id=193327
rdar://problem/47093222
* TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle_Bundle.mm:
2019-01-11 Wenson Hsieh <wenson_hsieh@apple.com>
Introduce IDL files for runtime-enabled UndoManager and UndoItem JavaScript API
https://bugs.webkit.org/show_bug.cgi?id=193109
<rdar://problem/44807048>
Reviewed by Ryosuke Niwa.
Introduce and respect a test option to enable the UndoManager API.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
2019-01-11 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Adjust vertical position when box margin collapses through.
https://bugs.webkit.org/show_bug.cgi?id=193346
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-10 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, fix typo that breaks dashboard link.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
2019-01-10 Ryan Haddad <ryanhaddad@apple.com>
Update macOS queue configurations
https://bugs.webkit.org/show_bug.cgi?id=193329
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.macos-sierra img.logo): Deleted.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2019-01-10 Joseph Pecoraro <pecoraro@apple.com>
MiniBrowser should be able to navigate to about:blank
https://bugs.webkit.org/show_bug.cgi?id=193345
Reviewed by Simon Fraser.
* MiniBrowser/mac/BrowserWindowController.m:
(-[BrowserWindowController addProtocolIfNecessary:]):
Don't prepend "http://" to "about:" prefixed URLs like "about:blank".
* MiniBrowser/mac/WK1BrowserWindowController.m:
(-[WK1BrowserWindowController fetch:]):
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController fetch:]):
Clean up the code that uses this to match style.
2019-01-10 Joseph Pecoraro <pecoraro@apple.com>
Remove MiniBrowser custom "Process Swap" menu item which does not work
https://bugs.webkit.org/show_bug.cgi?id=193344
Reviewed by Simon Fraser.
There is a menu item under the Experimental menu that does work.
* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
* MiniBrowser/mac/SettingsController.h:
* MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController processSwapOnNavigationEnabled]): Deleted.
(-[SettingsController toggleProcessSwapOnNavigation:]): Deleted.
2019-01-10 Timothy Hatcher <timothy@apple.com>
Add WKBundlePage SPI to temporarily force light or dark appearance on a page.
https://bugs.webkit.org/show_bug.cgi?id=193327
rdar://problem/47093222
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm: Added.
(TestWebKitAPI::didFinishNavigation):
(TestWebKitAPI::didReceiveMessageFromInjectedBundle):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle_Bundle.mm: Added.
(TestWebKitAPI::ForceLightAppearanceInBundleTest::ForceLightAppearanceInBundleTest):
(TestWebKitAPI::ForceLightAppearanceInBundleTest::didCreatePage):
(TestWebKitAPI::ForceLightAppearanceInBundleTest::didReceiveMessage):
* TestWebKitAPI/Tests/WebKit/mac/dark-mode.html: Added.
2019-01-10 Joseph Pecoraro <pecoraro@apple.com>
Leak of WKWebProcessPlugInHitTestResult (160 bytes) in com.apple.WebKit.WebContent running layout tests
https://bugs.webkit.org/show_bug.cgi?id=193338
<rdar://problem/46664774>
Reviewed by David Kilzer.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::decidePolicyForNavigationAction):
2019-01-10 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r239825.
https://bugs.webkit.org/show_bug.cgi?id=193330
Broke tests on armv7/linux bots (Requested by guijemont on
#webkit).
Reverted changeset:
"Enable DFG on ARM/Linux again"
https://bugs.webkit.org/show_bug.cgi?id=192496
https://trac.webkit.org/changeset/239825
2019-01-10 Zhifei Fang <zhifei_fang@apple.com>
Disable the run-jsc-stress-test remote host key check.
https://bugs.webkit.org/show_bug.cgi?id=192988
Reviewed by Alexey Proskuryakov.
* Scripts/run-jsc-stress-tests:
2019-01-10 John Wilander <wilander@apple.com>
Override the session configuration for cookieAcceptPolicy
https://bugs.webkit.org/show_bug.cgi?id=190925
<rdar://problem/45497382>
Reviewed by Alexey Proskuryakov and Alex Christensen.
Test infrastructure for setting a first-party-only cookie policy.
* DumpRenderTree/TestRunner.cpp:
(setOnlyAcceptFirstPartyCookiesCallback):
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setOnlyAcceptFirstPartyCookies):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setOnlyAcceptFirstPartyCookies):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2019-01-09 Matt Rajca <mrajca@apple.com>
Put per-document autoplay behavior behind runtime website policies quirk instead of a compile time flag
https://bugs.webkit.org/show_bug.cgi?id=193301
Reviewed by Jer Noble.
Added API tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/autoplaying-multiple-media-elements.html: Added.
2019-01-10 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Take collapsed through siblings into account when computing vertical position
https://bugs.webkit.org/show_bug.cgi?id=193310
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-10 Dominik Infuehr <dinfuehr@igalia.com>
Enable DFG on ARM/Linux again
https://bugs.webkit.org/show_bug.cgi?id=192496
Reviewed by Yusuke Suzuki.
After changing the bytecode format DFG was disabled on all 32-bit
architectures. Enable DFG now again on ARM/Linux. Run again JIT-tests
on ARM by default.
* Scripts/run-jsc-stress-tests:
2019-01-09 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][MiniBrowser] wchar_t strings shouldn't be treated as BSTR
https://bugs.webkit.org/show_bug.cgi?id=193271
Reviewed by Brent Fulgham.
BSTR is a special data structure created by SysAllocString, not a
wchar_t null-terminated string.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setDatabaseQuota): Use L"" instead of "" for _bstr_t.
* MiniBrowser/win/MiniBrowserWebHost.cpp:
(MiniBrowserWebHost::didFinishLoadForFrame): Use _bstr_t to create
BSTR from wide string literals.
2019-01-09 Alexey Proskuryakov <ap@apple.com>
Tweak wording for build/version_check style checker error
https://bugs.webkit.org/show_bug.cgi?id=193256
Reviewed by Tim Horton.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_os_version_checks):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_os_version_checks):
2019-01-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add link to bug along with bug title
https://bugs.webkit.org/show_bug.cgi?id=193293
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch._is_bug_closed): Fetch bug title from Bugzilla and add it to the build.
(ConfigureBuild.add_bug_id_url): Deleted.
(ConfigureBuild.getBugURL): Deleted.
2019-01-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use https for ews-build server
https://bugs.webkit.org/show_bug.cgi?id=193193
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
2019-01-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] Parse and display number of style failures
https://bugs.webkit.org/show_bug.cgi?id=193280
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CheckStyle): Use TestWithFailureCount as base class.
(CheckStyle.countFailures): Count the number of style failures.
2019-01-09 Aakash Jain <aakash_jain@apple.com>
[ews-build] use patch_id instead of ewspatchid
https://bugs.webkit.org/show_bug.cgi?id=193235
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py: Replaced ewspatchid with patch_id.
* BuildSlaveSupport/ews-build/steps.py: Ditto.
* BuildSlaveSupport/ews-build/steps_unittest.py: Ditto.
2019-01-09 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Add support for peculiar cases.
https://bugs.webkit.org/show_bug.cgi?id=192625
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2019-01-09 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Purge use of g_assert() under TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=192841
Reviewed by Carlos Garcia Campos.
There are separate g_assert_*() macros for use in tests, which we use inconsistently
currently. Use them always. We'll get nicer error messages now when tests fail, and the
assertions will now run during tests even if G_DISABLE_ASSERT is used when building.
Note that the documentation of g_assert() says that it is not to be used when writing tests.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
* TestWebKitAPI/Tests/WebKitGLib/EditorTest.cpp:
(WebKitWebEditorTest::testSelectionChanged):
* TestWebKitAPI/Tests/WebKitGLib/FrameTest.cpp:
(WebKitFrameTest::testMainFrame):
(WebKitFrameTest::testURI):
(WebKitFrameTest::testJavaScriptContext):
(WebKitFrameTest::testJavaScriptValues):
* TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
(testWebViewAuthenticationRequest):
(testWebViewAuthenticationLoadCancelled):
(testWebViewAuthenticationFailure):
(testWebViewAuthenticationStorage):
(ProxyAuthenticationTest::ProxyAuthenticationTest):
(testWebViewAuthenticationProxy):
(testWebViewAuthenticationProxyHTTPS):
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
(testAutomationSessionRequestSession):
* TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
(testBackForwardListNavigation):
(testWebKitWebViewSessionState):
(testWebKitWebViewSessionStateWithFormData):
* TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
(ConsoleMessageTest::consoleMessageReceivedCallback):
(testWebKitConsoleMessageConsoleAPI):
(testWebKitConsoleMessageJavaScriptException):
(testWebKitConsoleMessageNetworkError):
(testWebKitConsoleMessageSecurityError):
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
(testCookieManagerAcceptPolicy):
(testCookieManagerCookiesChanged):
(testCookieManagerPersistentStorage):
(testCookieManagerPersistentStorageDeleteAll):
(testCookieManagerEphemeral):
* TestWebKitAPI/Tests/WebKitGLib/TestDOMElement.cpp:
(testWebKitDOMElementAutoFill):
* TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
(downloadLocalFileSuccessfully):
(createFileAtDestination):
(testDownloadOverwriteDestinationDisallowed):
(testDownloadLocalFileError):
(testDownloadRemoteFile):
(testDownloadRemoteFileError):
(testWebViewDownloadURI):
(testPolicyResponseDownload):
(testPolicyResponseDownloadCancel):
(testDownloadMIMEType):
(contextMenuCallback):
(testContextMenuDownloadActions):
(testBlobDownload):
* TestWebKitAPI/Tests/WebKitGLib/TestEditor.cpp:
(testWebKitWebEditorSelectionChanged):
* TestWebKitAPI/Tests/WebKitGLib/TestFrame.cpp:
(testWebKitFrameMainFrame):
(testWebKitFrameURI):
(testWebKitFrameJavaScriptContext):
(testWebKitFrameJavaScriptValues):
* TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
(LoadStopTrackingTest::loadFailed):
(testWebViewTitle):
(testURIRequestHTTPHeaders):
(testURIRequestHTTPMethod):
(testURIResponseHTTPHeaders):
(testRedirectToDataURI):
* TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
(testProcessPerWebView):
(testWebProcessLimit):
* TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
(testWebViewResources):
(testWebResourceLoading):
(testWebResourceSuggestedFilename):
(testWebResourceGetData):
(testWebResourceGetDataError):
(testWebViewResourcesHistoryCache):
(testWebResourceSendRequest):
* TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
(testSSL):
(testInsecureContent):
(testTLSErrorsPolicy):
(testTLSErrorsRedirect):
(testTLSErrorsHTTPAuth):
(testLoadFailedWithTLSErrors):
(testSubresourceLoadFailedWithTLSErrors):
(httpsServerCallback):
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewCreateNavigationData):
(testWebViewJavaScriptDialogs):
(testWebViewWindowProperties):
(testWebViewMouseTarget):
(testWebViewFileChooserRequest):
(testWebViewColorChooserRequest):
* TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
(testWebExtensionGetTitle):
(testDocumentLoadedSignal):
(testWebKitWebViewProcessCrashed):
(testWebExtensionWindowObjectCleared):
(testWebExtensionIsolatedWorld):
(permissionRequestCallback):
(didAssociateFormControlsCallback):
(testWebExtensionFormControlsAssociated):
(FormSubmissionTest::FormSubmissionTest):
(FormSubmissionTest::testFormSubmissionResult):
(testWebExtensionFormSubmissionSteps):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
(testNotInitialized):
(testClearDatabase):
(testPrivateBrowsing):
(testGetFavicon):
(testWebViewFavicon):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
(testFindControllerTextFound):
(testFindControllerTextNotFound):
(testFindControllerMatchCount):
(testFindControllerMaxMatchCount):
(testFindControllerNext):
(testFindControllerPrevious):
(testFindControllerCountedMatches):
(testFindControllerOptions):
(testFindControllerHide):
(testFindControllerInstance):
(testFindControllerGetters):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
(testNavigationPolicy):
(testResponsePolicy):
(testNewWindowPolicy):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
(testSecurityOriginBasicConstructor):
(testSecurityOriginURIConstructor):
(testSecurityOriginDefaultPort):
(testSecurityOriginFileURI):
(testOpaqueSecurityOrigin):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
(testWebKitSettingsNewWithSettings):
(testWebKitSettingsUserAgent):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
(testWebViewNewWithUserContentManager):
(isStyleSheetInjectedForURLAtPath):
(isScriptInjectedForURLAtPath):
(testUserContentManagerInjectedStyleSheet):
(testUserContentManagerInjectedScript):
(UserScriptMessageTest::scriptMessageReceived):
(UserScriptMessageTest::waitUntilMessageReceived):
(UserScriptMessageTest::runJavaScriptFinished):
(testUserContentManagerScriptMessageReceived):
(testUserContentManagerScriptMessageInWorldReceived):
(testUserContentManagerScriptMessageFromDOMBindings):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
(testWebContextDefault):
(testWebContextEphemeral):
(testWebContextGetPlugins):
(testWebContextURIScheme):
(testWebContextSpellChecker):
(testWebContextLanguages):
(consoleMessageReceivedCallback):
(testWebContextSecurityFileXHR):
(ProxyTest::ProxyTest):
(testWebContextProxySettings):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewWebContext):
(testWebViewWebBackend):
(testWebViewEphemeral):
(testWebViewCustomCharset):
(testWebViewSettings):
(testWebViewRunJavaScript):
(testWebViewCanShowMIMEType):
(testWebViewSubmitForm):
(testWebViewSave):
(testWebViewPageVisibility):
(testWebViewSnapshot):
(testWebViewNotification):
(testWebViewNotificationInitialPermissionAllowed):
(testWebViewNotificationInitialPermissionDisallowed):
(testWebViewIsPlayingAudio):
* TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
(WebsiteDataTest::WebsiteDataTest):
(WebsiteDataTest::remove):
(WebsiteDataTest::clear):
(testWebsiteDataConfiguration):
(testWebsiteDataEphemeral):
(testWebsiteDataCache):
(testWebsiteDataStorage):
(testWebsiteDataDatabases):
(testWebsiteDataAppcache):
(testWebsiteDataCookies):
(testWebsiteDataDeviceIdHashSalt):
* TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
(emitDocumentLoaded):
(emitURIChanged):
(sendRequestCallback):
(contextMenuCallback):
(consoleMessageSentCallback):
(emitFormControlsAssociated):
(formControlsAssociatedCallback):
(emitFormSubmissionEvent):
(willSubmitFormCallback):
(windowObjectCleared):
(methodCallCallback):
(registerGResource):
(webkit_web_extension_initialize_with_user_data):
* TestWebKitAPI/Tests/WebKitGLib/WebProcessTest.cpp:
(checkLeaks):
(WebProcessTest::create):
(runTest):
* TestWebKitAPI/Tests/WebKitGtk/AutocleanupsTest.cpp:
(AutocleanupsTest::testWebProcessAutocleanups):
* TestWebKitAPI/Tests/WebKitGtk/DOMClientRectTest.cpp:
(WebKitDOMClientRectTest::testDivBoundingClientRectPosition):
(WebKitDOMClientRectTest::testDivClientRectsPositionAndLength):
* TestWebKitAPI/Tests/WebKitGtk/DOMDOMWindowTest.cpp:
(WebKitDOMDOMWindowTest::testSignals):
(WebKitDOMDOMWindowTest::testDispatchEvent):
(WebKitDOMDOMWindowTest::testGetComputedStyle):
* TestWebKitAPI/Tests/WebKitGtk/DOMNodeFilterTest.cpp:
(WebKitDOMNodeFilterTest::testTreeWalker):
(WebKitDOMNodeFilterTest::testNodeIterator):
* TestWebKitAPI/Tests/WebKitGtk/DOMNodeTest.cpp:
(WebKitDOMNodeTest::testHierarchyNavigation):
(WebKitDOMNodeTest::testInsertion):
(WebKitDOMNodeTest::testTagNamesNodeList):
(WebKitDOMNodeTest::testTagNamesHTMLCollection):
(WebKitDOMNodeTest::testDOMCache):
* TestWebKitAPI/Tests/WebKitGtk/DOMXPathNSResolverTest.cpp:
(WebKitDOMXPathNSResolverTest::evaluateFooChildTextAndCheckResult):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverNative):
(WebKitDOMXPathNSResolverTest::testXPathNSResolverCustom):
* TestWebKitAPI/Tests/WebKitGtk/TestAutocleanups.cpp:
(testUIProcessAutocleanups):
(testWebProcessAutocleanups):
* TestWebKitAPI/Tests/WebKitGtk/TestContextMenu.cpp:
(testContextMenuPopulateMenu):
(testContextMenuDismissed):
* TestWebKitAPI/Tests/WebKitGtk/TestDOMClientRect.cpp:
(testWebKitDOMClientRectDivBoundingClientRectPosition):
(testWebKitDOMClientRectDivClientRectsPositionAndLength):
* TestWebKitAPI/Tests/WebKitGtk/TestDOMDOMWindow.cpp:
(testWebKitDOMDOMWindowSignals):
(testWebKitDOMDOMWindowDispatchEvent):
(testWebKitDOMDOMWindowGetComputedStyle):
* TestWebKitAPI/Tests/WebKitGtk/TestDOMNode.cpp:
(testWebKitDOMNodeHierarchyNavigation):
(testWebKitDOMNodeInsertion):
(testWebKitDOMNodeTagNamesNodeList):
(testWebKitDOMNodeTagNamesHTMLCollection):
(testWebKitDOMObjectCache):
* TestWebKitAPI/Tests/WebKitGtk/TestDOMNodeFilter.cpp:
(testWebKitDOMNodeFilterTreeWalker):
(testWebKitDOMNodeFilterNodeIterator):
* TestWebKitAPI/Tests/WebKitGtk/TestDOMXPathNSResolver.cpp:
(testWebKitDOMXPathNSResolverNative):
(testWebKitDOMXPathNSResolverCustom):
* TestWebKitAPI/Tests/WebKitGtk/TestInspector.cpp:
(testInspectorDefault):
(testInspectorManualAttachDetach):
(testInspectorCustomContainerDestroyed):
* TestWebKitAPI/Tests/WebKitGtk/TestInspectorServer.cpp:
(startTestServer):
(testInspectorServerPageList):
* TestWebKitAPI/Tests/WebKitGtk/TestOptionMenu.cpp:
(OptionMenuTest::showOptionMenuCallback):
(OptionMenuTest::menuCloseCallback):
(OptionMenuTest::close):
(OptionMenuTest::activateItem):
(OptionMenuTest::selectItem):
(testOptionMenuSimple):
(testOptionMenuGroups):
(testOptionMenuActivate):
(testOptionMenuSelect):
* TestWebKitAPI/Tests/WebKitGtk/TestPrinting.cpp:
(testPrintOperationPrintSettings):
(webViewPrintCallback):
(testPrintOperationPrint):
(testPrintCustomWidget):
* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(checkAtspiAccessible):
(testAtspiBasicHierarchy):
* TestWebKitAPI/Tests/WebKitGtk/TestWebKitVersion.cpp:
(testWebKitCheckVersion):
* TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
(testWebViewEditorCutCopyPasteNonEditable):
(testWebViewEditorCutCopyPasteEditable):
(testWebViewEditorSelectAllNonEditable):
(testWebViewEditorSelectAllEditable):
(loadContentsAndTryToCutSelection):
(testWebViewEditorNonEditable):
(testWebViewEditorEditable):
(testWebViewEditorEditorStateTypingAttributes):
(testWebViewEditorInsertImage):
(testWebViewEditorCreateLink):
* TestWebKitAPI/glib/WebKitGLib/LoadTrackingTest.cpp:
(loadChangedCallback):
(loadFailedCallback):
(loadFailedWithTLSErrorsCallback):
(LoadTrackingTest::LoadTrackingTest):
* TestWebKitAPI/glib/WebKitGLib/TestMain.cpp:
(registerGResource):
(removeNonEmptyDirectory):
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::adoptView):
(Test::~Test):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestBus.cpp:
(WebKitTestBus::getOrCreateConnection):
(WebKitTestBus::createProxy):
* TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
(WebKitTestServer::getWebSocketURIForPath const):
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(WebViewTest::initializeWebView):
(WebViewTest::loadURI):
(WebViewTest::loadHtml):
(WebViewTest::loadPlainText):
(WebViewTest::loadBytes):
(WebViewTest::loadRequest):
(WebViewTest::loadAlternateHTML):
(WebViewTest::goBack):
(WebViewTest::goForward):
(WebViewTest::goToBackForwardListItem):
(resourceGetDataCallback):
(WebViewTest::mainResourceData):
(WebViewTest::javascriptResultToCString):
(WebViewTest::javascriptResultToNumber):
(WebViewTest::javascriptResultToBoolean):
(WebViewTest::javascriptResultIsNull):
(WebViewTest::javascriptResultIsUndefined):
(onSnapshotReady):
(WebViewTest::runWebProcessTest):
* TestWebKitAPI/glib/WebKitGLib/gtk/WebViewTestGtk.cpp:
(WebViewTest::platformInitializeWebView):
(WebViewTest::showInWindow):
(WebViewTest::showInWindowAndWaitUntilMapped):
(WebViewTest::mouseMoveTo):
(WebViewTest::emitPopupMenuSignal):
(WebViewTest::keyStroke):
(WebViewTest::doMouseButtonEvent):
2019-01-09 Philippe Normand <pnormand@igalia.com>
[WPE] API tests can't run in flatpak environment
https://bugs.webkit.org/show_bug.cgi?id=193242
Reviewed by Michael Catanzaro.
* Scripts/run-wpe-tests: Add --wpe to arguments passed to
flatpakutils so that it knows which port it's dealing with.
* glib/common.py: Remove build_dir globals so that subsequent
calls actually take args into account.
(library_build_path):
(binary_build_path):
2019-01-08 Dean Jackson <dino@apple.com>
Blob references for System Previews don't get a correct file extension
https://bugs.webkit.org/show_bug.cgi?id=193268
<rdar://problem/47133037>
Reviewed by Tim Horton.
New test that a Blob download of a USDZ file gets named correctly.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[BlobWithUSDZExtensionDownloadDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(-[BlobWithUSDZExtensionDownloadDelegate _downloadDidFinish:]):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/SystemPreviewBlobNaming.html: Added.
2019-01-08 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Support U2F HID Authenticators on macOS
https://bugs.webkit.org/show_bug.cgi?id=191535
<rdar://problem/47102027>
Reviewed by Brent Fulgham.
This patch:
1) adds support for U2F mocking mechanism;
2) updates tests to reflect U2fCommandConstructor changes.
* TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/FidoTestData.h:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
2019-01-08 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Dispatch a synthetic mousedown event prior to starting drags
https://bugs.webkit.org/show_bug.cgi?id=193229
<rdar://problem/46717097>
Reviewed by Tim Horton.
Add a cross-platform drag and drop test to verify that calling `preventDefault()` on the mousedown event
prevents a drag from starting.
* TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
* TestWebKitAPI/Tests/WebKitCocoa/link-and-target-div.html:
Tweak this test to make it robust when dragging the link to the target element multiple times in a single test.
2019-01-08 Zhifei Fang <zhifei_fang@apple.com>
Layout test will generate a perf metric file to results dir.
https://bugs.webkit.org/show_bug.cgi?id=192030
<rdar://problem/32779516>
Reviewed by Aakash Jain.
Layout test running time will be collected to a perf metric file.
For now, instead of outputing running time of all tests (which is huge),
we aggregate them by test directories which are at most two level deep.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._end_test_run):
(Manager._output_perf_metrics):
(Manager._print_expectation_line_for_test):
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
(add_test_perf_metric):
(test_perf_metrics):
* Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
(JSONGeneratorTest.test_test_timings_trie):
(JSONGeneratorTest):
(JSONGeneratorTest.test_test_perf_metrics):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(RebaselineTest.test_reset_results):
(RebaselineTest.test_missing_results):
(RebaselineTest.test_new_baseline):
2019-01-08 Patrick Griffis <pgriffis@igalia.com>
[WPE][GTK] Add php-json to install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=193233
Reviewed by Michael Catanzaro.
* gtk/install-dependencies:
* wpe/install-dependencies:
2019-01-08 Chris Dumez <cdumez@apple.com>
Regression(PSON-r239182): Blank view when navigating back and forth between google.com and stack overflow
https://bugs.webkit.org/show_bug.cgi?id=193224
<rdar://problem/47097726>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-07 David Kilzer <ddkilzer@apple.com>
Leak of ScrollCompletionCallbackData (16 bytes) in com.apple.WebKit.WebContent running WebKit layout tests
<https://webkit.org/b/193222>
<rdar://problem/46862309>
Reviewed by Joseph Pecoraro.
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::executeCallback): Fix camel case of variable name.
(WTR::EventSendingController::callAfterScrollingCompletes): If
WKBundlePageRegisterScrollOperationCompletionCallback() returns
false, make sure to release the ScrollCompletionCallbackData
object. This fixes the leak.
2019-01-07 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] EWS: wincairo-ews cannot apply a patch with *.png
https://bugs.webkit.org/show_bug.cgi?id=193044
Reviewed by Daniel Bates.
WinCairo EWS bots are using Windows Perl. Binary files should be
opened as binary mode.
* Scripts/svn-apply:
(handleGitBinaryChange): Use 'binmode' for binary file handles.
2019-01-07 Don Olmstead <don.olmstead@sony.com>
[CMake] Add ENABLE_CSS_TYPED_OM option
https://bugs.webkit.org/show_bug.cgi?id=193216
Reviewed by Michael Catanzaro.
* Scripts/webkitperl/FeatureList.pm:
2019-01-07 David Kilzer <ddkilzer@apple.com>
Prefer RetainPtr<NSObject> to RetainPtr<NSObject *>
<https://webkit.org/b/193056>
Reviewed by Alex Christensen.
* Scripts/webkitpy/style/checker.py:
- Ignore use of new runtime/retainptr check in
Tools/TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm since it
contains tests to ensure RetainPtr<NSObject *> is compatible
with RetainPtr<NSObject>.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_language):
(CppChecker):
- Add checker for use of '*' in RetainPtr<> type. A for loop
was used instead of a single regex so that angle brackets
could be matched up when checking the type contained within
the RetainPtr<> type.
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(CppStyleTest):
- Add unit test for new runtime/retainptr check.
* TestRunnerShared/EventSerialization/mac/EventSerializerMac.h:
* TestWebKitAPI/EditingTestHarness.h:
- Remove '*' from RetainPtr<> type.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- Add cf/RetainPtr.cpp back to TestWTFLibrary target! This
regressed in r201938.
* TestWebKitAPI/Tests/WTF/cf/RetainPtr.cpp:
(TestWebKitAPI::TEST):
- Update tests to match RetainPtr.mm tests (except for the
`*SimilarNSType` tests since there is no CF equivalent of
RetainPtr<NSString> and RetainPtr<NSString *>).
* TestWebKitAPI/Tests/WTF/ns/RetainPtr.mm:
(TestWebKitAPI::TEST):
- Update tests to:
- Not conflict by name with equivalent CF tests in
RetainPtr.cpp.
- Add test cases for RetainPtr<NSObject>,
RetainPtr<NSObject *> and RetainPtr<id> were appropriate.
- Add `*SimilarNSType` tests for converting between
RetainPtr<NSObject> and RetainPtr<NSObject *>.
- Change `0` to `nil` as appropriate.
- Re-alphabetize the tests by name.
- Add Optional<RetainPtr<>> tests.
- Add retainPtr() tests.
* TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
(-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
* TestWebKitAPI/Tests/WebKitCocoa/IconLoadingDelegate.mm:
(TEST):
- Remove '*' from RetainPtr<> type.
* TestWebKitAPI/Tests/WebKitCocoa/JITEnabled.mm:
(TEST(WebKit, JITEnabled)):
- Add missing WTFMove(). Apparently a temporary was being
created before in the argument list due to mismatched
RetainPtr<> types.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
(TestWebKitAPI::setUpWebViewForTestingVideoControlsManager):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
* WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
(WTR::resourcesDirectoryURL):
* WebKitTestRunner/InjectedBundle/ios/InjectedBundleIOS.mm:
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
- Remove '*' from RetainPtr<> type.
2019-01-07 Eric Carlson <eric.carlson@apple.com>
A MediaTime timescale must never be zero
https://bugs.webkit.org/show_bug.cgi?id=193156
<rdar://problem/32504501>
Reviewed by Jer Noble.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp:
(TestWebKitAPI::TEST): Add tests for zero timescale.
2019-01-07 Youenn Fablet <youenn@apple.com>
API test broken: TestWebKitAPI.WebKit.CustomDataStorePathsVersusCompletionHandlers
https://bugs.webkit.org/show_bug.cgi?id=193175
Reviewed by Chris Dumez.
Updated API test as we bumped the SW schema to version 4.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-4.sqlite3: Renamed from Tools/TestWebKitAPI/Tests/WebKitCocoa/SimpleServiceWorkerRegistrations-3.sqlite3.
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2019-01-06 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang] Fix compilation warnings of MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=193029
Reviewed by Ross Kirsling.
* MiniBrowser/win/MiniBrowserWebHost.h: Removed unused m_oldFont
and m_URLBarFont. Reorder member variables to fix -Wreorder
warning.
* MiniBrowser/win/PageLoadTestClient.cpp:
(PageLoadTestClient::PageLoadTestClient): Reorder the member initializer list.
* MiniBrowser/win/PageLoadTestClient.h: Removed 'virtual' of
pageLoadStartedAtTime and pageLoadEndedAtTime. Removed unused
m_currentURLIndex.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::WebKitBrowserWindow): Initialize
navigationClient with '{ }' to fix the missing field warning.
* MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
(initDocStruct): Changed the argument type docname to const.
2019-01-06 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Import U2F command/response converters from Chromium
https://bugs.webkit.org/show_bug.cgi?id=193150
<rdar://problem/47054028>
Reviewed by Brent Fulgham.
Adds API tests.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
(TestWebKitAPI::getTestAttestedCredentialDataBytes):
(TestWebKitAPI::getTestAuthenticatorDataBytes):
(TestWebKitAPI::getTestAttestationObjectBytes):
(TestWebKitAPI::getTestSignResponse):
(TestWebKitAPI::getTestU2fRegisterResponse):
(TestWebKitAPI::TEST):
(TestWebKitAPI::convertToVector): Deleted.
* TestWebKitAPI/Tests/WebCore/FidoTestData.h:
* TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp: Added.
(TestWebKitAPI::constructMakeCredentialRequest):
(TestWebKitAPI::constructGetAssertionRequest):
(TestWebKitAPI::TEST):
2019-01-05 Oriol Brufau <obrufau@igalia.com>
[GTK] Add python3-setuptools, libunistring-dev, bison and flex dependencies
https://bugs.webkit.org/show_bug.cgi?id=193136
Reviewed by Michael Catanzaro.
* gtk/install-dependencies:
Add python3-setuptools, libunistring-dev, bison and flex to install-dependencies,
they are needed by update-webkitgtk-libs.
2019-01-05 Aakash Jain <aakash_jain@apple.com>
Unreviewed follow-up fix to r239650
https://bugs.webkit.org/show_bug.cgi?id=193140
<rdar://problem/47063037>
Typecast patch_id to string.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch._is_patch_obsolete):
2019-01-04 Daniel Bates <dabates@apple.com>
[lldb-webkit]: Add support for pretty-printing raw bitmask types
https://bugs.webkit.org/show_bug.cgi?id=193024
Reviewed by Jer Noble.
Add support infrastructure to pretty-print a raw bitmask type. Included is a pretty-printer
for the bitmask type WebEventFlags as an example.
Exposed a new function lldb_webkit.addSummaryAndSyntheticFormattersForRawBitmaskType()
that can be used to register summary and synthetic child formatters for a bitmask type.
For example, consider the following enum and bitmask typedefs:
typedef enum {
A = 1 << 0,
B = 1 << 1,
C = 1 << 2,
} SpecialFlagValues;
typedef unsigned SpecialFlags;
To teach lldb-webkit how to pretty print SpecialFlags types, add the following code inside
__lldb_init_module():
addSummaryAndSyntheticFormattersForRawBitmaskType(debugger, "SpecialFlags", {
1 << 0: "A",
1 << 1: "B",
1 << 2: "C",
})
* lldb/lldb_webkit.py:
(addSummaryAndSyntheticFormattersForRawBitmaskType):
(addSummaryAndSyntheticFormattersForRawBitmaskType.GeneratedRawBitmaskProvider):
(addSummaryAndSyntheticFormattersForRawBitmaskType.raw_bitmask_summary_provider):
(addSummaryAndSyntheticFormattersForRawBitmaskType.lldb_webkit):
A convenience function to dynamically creaste a synthetic formatter class and summary
string function for the specified bitmask type and enumerator value to name map. This
function register the dynamically created class and function with LLDB.
(__lldb_init_module):
(FlagEnumerationProvider):
(FlagEnumerationProvider._enumerator_value_to_name_map):
(FlagEnumerationProvider._bitmask):
(FlagEnumerationProvider._update):
(FlagEnumerationProvider.has_children):
(FlagEnumerationProvider.num_children):
(FlagEnumerationProvider.get_child_index):
(FlagEnumerationProvider.get_child_at_index):
(FlagEnumerationProvider.update):
Extract out provider logic from WTFOptionSetProvider into a base class that can be shared.
(WTFOptionSetProvider):
(WTFOptionSetProvider._enumerator_value_to_name_map):
(WTFOptionSetProvider._bitmask):
(WTFOptionSetProvider._update):
Write in terms of the base class.
(RawBitmaskProviderBase):
(RawBitmaskProviderBase._enumerator_value_to_name_map):
(RawBitmaskProviderBase._bitmask):
Added. Base synthetic formatter class for a raw bitmask type. Derived classes are expected to
override the class variable ENUMERATOR_VALUE_TO_NAME_MAP with a dictionary of the form:
{
1 << 0: "A",
1 << 1: "B",
1 << 2: "C",
}
It is not necessary to instantiate such a derived class directory. Instead use the convenience
function addSummaryAndSyntheticFormattersForRawBitmaskType.
(WTFOptionSetProvider.has_children): Deleted.
(WTFOptionSetProvider.num_children): Deleted.
(WTFOptionSetProvider.get_child_index): Deleted.
(WTFOptionSetProvider.get_child_at_index): Deleted.
(WTFOptionSetProvider.update): Deleted.
2019-01-04 Aakash Jain <aakash_jain@apple.com>
[ews-build] Add build step to validate the patch before processing it
https://bugs.webkit.org/show_bug.cgi?id=193140
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(Factory.__init__): Added ValidatePatch step.
* BuildSlaveSupport/ews-build/steps.py:
(ValidatePatch):
(ValidatePatch.fetch_data_from_url): Fetch data from a url.
(ValidatePatch.get_patch_json): Get patch json data.
(ValidatePatch.get_bug_json): Get bug json data.
(ValidatePatch.get_bug_id_from_patch): Get bug id from a patch id.
(ValidatePatch._is_patch_obsolete): Check if the patch is obsolete.
(ValidatePatch._is_patch_review_denied): Check if the patch is marked r-.
(ValidatePatch._is_bug_closed): Check if the bug is already closed.
(ValidatePatch.skip_build): Skip the build.
(ValidatePatch.start):
2019-01-04 Alex Christensen <achristensen@webkit.org>
Progress towards fixing Mac CMake build
https://bugs.webkit.org/show_bug.cgi?id=193105
Reviewed by Don Olmstead.
* TestWebKitAPI/PlatformMac.cmake:
2019-01-04 Alex Christensen <achristensen@webkit.org>
Fix API test after r239631
https://bugs.webkit.org/show_bug.cgi?id=193118
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
This test relied on m_maximumProcessCount being set to 1 in ProcessPoolConfiguration::createWithLegacyOptions.
Do the same thing via the API to fix the test.
2019-01-04 Jer Noble <jer.noble@apple.com>
[WebKitLegacy] Media playback pauses on scroll
https://bugs.webkit.org/show_bug.cgi?id=192829
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/StopSuspendResumeAllMedia.mm: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm: Added.
(-[ScrollingDoesNotPauseMediaDelegate webViewDidFinishLoad:]):
(-[ScrollingDoesNotPauseMediaDelegate uiWebView:didCommitLoadForFrame:]):
(-[ScrollingDoesNotPauseMediaDelegate handleEvent:]):
(TestWebKitAPI::TEST):
2019-01-04 Chris Dumez <cdumez@apple.com>
Add support for toggling device orientation API support per site
https://bugs.webkit.org/show_bug.cgi?id=193143
<rdar://problem/46605724>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[DataMappingSchemeHandler setTaskHandler:]):
(-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
(-[WebsitePoliciesDeviceOrientationDelegate initWithDeviceOrientationEventEnabled:]):
(-[WebsitePoliciesDeviceOrientationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[WebsitePoliciesDeviceOrientationDelegate webView:didFinishNavigation:]):
2019-01-04 Aakash Jain <aakash_jain@apple.com>
[ews-build] use svn-apply script to apply the patches
https://bugs.webkit.org/show_bug.cgi?id=193138
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(Factory.__init__): Add the ApplyPatch step.
* BuildSlaveSupport/ews-build/steps.py:
(CheckOutSource): Added step name.
(CheckOutSource.__init__): Used alwaysUseLatest so that it doesn't apply patch.
(ApplyPatch): Build step to apply patch using svn-apply script.
(UnApplyPatchIfRequired):
(UnApplyPatchIfRequired.__init__): Deleted, since the alwaysUseLatest parameter is now in base class.
2019-01-04 Alex Christensen <achristensen@webkit.org>
Deprecate WKContextCreate
https://bugs.webkit.org/show_bug.cgi?id=193118
Reviewed by Brady Eidson.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(WebKitBrowserWindow::WebKitBrowserWindow):
* TestWebKitAPI/Tests/WebKit/AboutBlankLoad.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/CookieManager.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/Find.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FindMatches.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
(TestWebKitAPI::loadAlternateHTMLString):
* TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
(TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
* TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
(TestWebKitAPI::buildAndPerformTest):
* TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/NavigationClientDefaultCrypto.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PageGroup.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageConfiguration.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WebCoreStatisticsWithNoWebProcess.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/CommandBackForward.mm:
(WebKit2_CommandBackForwardTestWKView::SetUp):
* TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/SchemeRegistry.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/mac/WebKitAgnosticTest.mm:
(TestWebKitAPI::WebKitAgnosticTest::runWebKit2Test):
2019-01-03 Matt Rajca <mrajca@apple.com>
Make DidPlayMediaPreventedFromPlaying autoplay event more generic.
https://bugs.webkit.org/show_bug.cgi?id=193128
rdar://34554231
Reviewed by Jer Noble.
Today, the "DidPlayMediaPreventedFromPlaying" autoplay event is only sent for
media prevented from autoplaying. It could be generalized to a "DidPlayMediaWithUserGesture"
event along with a flag that indicates whether or not autoplay was actually prevented.
Tests: existing API tests were updated to reflect the new names. New API tests
were added for the new case in which the "DidPlayMediaWithUserGesture" event is sent.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/long-test.mp4: Added.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/audio-with-play-button.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/video-with-play-button.html: Added.
2019-01-04 Chris Dumez <cdumez@apple.com>
[PSON] Calling history.back() from inside the load event handler prevents process-swapping
https://bugs.webkit.org/show_bug.cgi?id=193120
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-04 Chris Dumez <cdumez@apple.com>
Crash under WebProcessPool::addSuspendedPage()
https://bugs.webkit.org/show_bug.cgi?id=193110
Reviewed by Youenn Fablet.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2019-01-04 Aakash Jain <aakash_jain@apple.com>
[ews-build] Check patch relevance before applying the patch
https://bugs.webkit.org/show_bug.cgi?id=193102
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/factories.py:
(Factory.__init__): Moved CheckPatchRelevance step to base class.
2019-01-04 Aakash Jain <aakash_jain@apple.com>
[ews-build] Check patch relevance step should print patch id
https://bugs.webkit.org/show_bug.cgi?id=193137
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance.start): Update the status to include patch id.
2019-01-04 Jonathan Bedard <jbedard@apple.com>
webkitpy: Increase simulator teardown timeout
https://bugs.webkit.org/show_bug.cgi?id=193141
<rdar://problem/46174217>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager.tear_down): Use SIMULATOR_BOOT_TIMEOUT.
2019-01-03 Ross Kirsling <ross.kirsling@sony.com>
test262-runner misbehaves when test file YAML has a trailing space
https://bugs.webkit.org/show_bug.cgi?id=193053
Reviewed by Yusuke Suzuki.
* Scripts/test262/Runner.pm:
(parseData):
Accept trailing space when parsing a test file's YAML block.
2019-01-03 Michael Catanzaro <mcatanzaro@igalia.com>
UserMedia test should use WKPageNavigationClient
https://bugs.webkit.org/show_bug.cgi?id=192913
Reviewed by Youenn Fablet.
The test currently uses the deprecated WKPageLoaderClient. It should use
WKPageNavigationClient instead, which provides the same callback under a similar name.
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
2019-01-02 Alex Christensen <achristensen@webkit.org>
Homograph with LATIN SMALL LETTER R WITH FISHHOOK
https://bugs.webkit.org/show_bug.cgi?id=192944
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
2019-01-02 Wenson Hsieh <wenson_hsieh@apple.com>
Add support for using the current text selection as the find string on iOS
https://bugs.webkit.org/show_bug.cgi?id=193034
<rdar://problem/45138739>
Reviewed by Tim Horton.
Add a new API test to verify that the new WebKit SPI (_stringForFind, _takeFindStringFromSelection:, and
_setStringForFind) works as expected.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/UseSelectionAsFindString.mm: Added.
2019-01-02 Aakash Jain <aakash_jain@apple.com>
[ews-build] Use git on OpenSource EWS bots
https://bugs.webkit.org/show_bug.cgi?id=193092
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CheckOutSource): Use git instead of svn.
(CheckOutSource.__init__): Use timeout of 2 hours since the initial checkout might take a long time.
2019-01-02 Daniel Bates <dabates@apple.com>
[lldb-webkit] Remove broken code to print WTF::OptionSet::m_storage
https://bugs.webkit.org/show_bug.cgi?id=193023
Reviewed by Simon Fraser.
The code to print WTF::OptionSet::m_storage as an item in the set never worked and does
not seem meaningful to fix because WTF::OptionSet::m_storage is just the sum of the printed
enumerator values. We should just remove this code.
* lldb/lldb_webkit.py:
(WTFOptionSetProvider.has_children):
(WTFOptionSetProvider.num_children):
(WTFOptionSetProvider.get_child_index):
(WTFOptionSetProvider.get_child_at_index):
2018-12-29 Yusuke Suzuki <yusukesuzuki@slowstart.org>
.ycm_extra_conf.py should handle XXXInlines.h
https://bugs.webkit.org/show_bug.cgi?id=193055
Reviewed by Carlos Garcia Campos.
compile_commands.json database only records flags and options for cpp source files.
So, when we open headers, this database does not have any information for that.
Our .ycm_extra_conf.py alleviates this by using XXX.cpp's configuration for XXX.h.
But this mitigation does not handle XXXInlines.h well since we do not have XXXInlines.cpp.
This patch adds support for XXXInlines.h in .ycm_extra_conf.py. When XXXInlines.h is queried,
we attempt to find XXX.cpp and use the configuration if it exists.
* gtk/ycm_extra_conf.py:
(getImplementationFilename):
(FlagsForFile):
2018-12-31 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Support PHP 7.3 in Debian.
Add 7.3 to the list of php versions supported in Debian.
* Scripts/webkitpy/port/base.py:
(Port._debian_php_version):
2018-12-27 Alex Christensen <achristensen@webkit.org>
Resurrect Mac CMake build
https://bugs.webkit.org/show_bug.cgi?id=192658
Reviewed by Yusuke Suzuki.
* DumpRenderTree/PlatformMac.cmake:
* MiniBrowser/mac/CMakeLists.txt:
* TestWebKitAPI/PlatformMac.cmake:
2018-12-26 Adrian Perez de Castro <aperez@igalia.com>
[Tools] Remove references to Bison and Flex
https://bugs.webkit.org/show_bug.cgi?id=193033
Reviewed by Michael Catanzaro.
The Bison and Flex tools are not needed anymore since r209883.
* CygwinDownloader/cygwin-downloader.py:
* EWSTools/ubuntu-ews-packages:
* Scripts/filter-build-webkit:
(shouldIgnoreLine):
* gtk/install-dependencies:
* wpe/install-dependencies:
2018-12-22 Carlos Garcia Campos <cgarcia@igalia.com>
WebDriver: warn about non existing tests when parsing expectations
https://bugs.webkit.org/show_bug.cgi?id=192979
Reviewed by Michael Catanzaro.
It's common to update web driver tests and forget updating the test expectations in case of tests removed or
renamed.
* Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
(WebDriverTestRunner.__init__):
2018-12-21 Chris Dumez <cdumez@apple.com>
navigator.userAgent in service workers does not reflect customUserAgent set by client
https://bugs.webkit.org/show_bug.cgi?id=192951
Reviewed by Youenn Fablet.
Extend API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(-[SWCustomUserAgentDelegate initWithUserAgent:]):
(-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[SWUserAgentMessageHandler initWithExpectedMessage:]):
(-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
2018-12-21 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] userPresence should always be true
https://bugs.webkit.org/show_bug.cgi?id=192835
<rdar://problem/46538788>
Reviewed by Brent Fulgham.
* TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
(TestWebKitAPI::TEST):
2018-12-19 Simon Fraser <simon.fraser@apple.com>
Add support to run-benchmark to use non-default copies of the browser apps
https://bugs.webkit.org/show_bug.cgi?id=192905
rdar://problem/46845840
Reviewed by Dewei Zhu.
Add support for a --browser-path argument to run-benchmark, which allows you to use
a custom app bundle for a given browser (only implemented for Safari at present).
* Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
(BenchmarkRunner.__init__):
* Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver.py:
(BrowserDriver.__init__):
* Scripts/webkitpy/benchmark_runner/browser_driver/browser_driver_factory.py:
(BrowserDriverFactory.create):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver._launch_process):
(OSXBrowserDriver._launch_process_with_caffeinate): Fix spelling.
(OSXBrowserDriver._launch_process_with_caffinate): Deleted.
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
(OSXChromeCanaryDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
(OSXFirefoxNightlyDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.__init__):
(OSXSafariDriver.launch_url):
* Scripts/webkitpy/benchmark_runner/run_benchmark.py:
(parse_args):
(run_benchmark_plan):
* Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
(WebServerBenchmarkRunner.__init__):
* Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py:
(FakeBenchmarkRunner.__init__):
2018-12-21 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Import an APDU coder from Chromium
https://bugs.webkit.org/show_bug.cgi?id=192949
<rdar://problem/46879933>
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ApduTest.cpp: Added.
(TestWebKitAPI::TEST):
2018-12-21 Wenson Hsieh <wenson_hsieh@apple.com>
Setting the file wrapper and content type of an attachment to a PDF should update its image
https://bugs.webkit.org/show_bug.cgi?id=192984
<rdar://problem/46798028>
Reviewed by Tim Horton.
Add an API test to verify that setting the file wrapper for a _WKAttachment with an enclosing image element with
PDF data correctly updates the image element.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2018-12-21 Michael Catanzaro <mcatanzaro@igalia.com>
Add JSCOnly to bot dashboard
https://bugs.webkit.org/show_bug.cgi?id=192964
Reviewed by Alexey Proskuryakov.
Apparently we have five JSCOnly test bots and multiple developers working on keeping them in
good shape. Sadly, they are hidden bots not exposed in the dashboard. They would be more
useful if they were not so secret, so add them.
There appear to be no build-only bots, so the first column is blank. And of course there are
no WebKit1 or WebKit2 bots, because this is JSCOnly, so the second and third columns are
blank too. That's OK. This will be the last bot on the dashboard, so it won't look too bad,
and there's plenty of room in the final column for all the bots.
I had a hard time picking a logo to use, because the JavaScript language does not have an
official logo. But I believe I've found one that will be satisfactory.
I will sneak in one bonus change: WPE's EWS queue was missing, and has been added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/SquirrelFish@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.linux-jsconly img.logo):
2018-12-21 Benjamin Poulain <benjamin@webkit.org>
<rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
https://bugs.webkit.org/show_bug.cgi?id=192821
Reviewed by Chris Dumez.
* DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
* TestWebKitAPI/mac/WebKitAgnosticTest.mm:
2018-12-20 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang] Fix compilation warnings of DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=192924
Reviewed by Alex Christensen.
* DumpRenderTree/AccessibilityController.h: Added member variable initializations in the class definition.
* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::AccessibilityController): Moved member variable initializations to the class definition.
* DumpRenderTree/win/DumpRenderTree.cpp:
(dumpHistoryItem): String literals can't be converted non-const type. Use auto for them.
(resetWebPreferencesToConsistentValues): Pass a temporal _bstr_t
object to the argument of setDefaultTextEncodingName instead of a
const string literal.
(createWebViewAndOffscreenWindow): Use %lx for HRESULT (aka 'long').
(main): Exit if _dup2 fails. Use %lu for'DWORD'(aka 'unsigned long').
(setCacheFolder): Deleted.
* DumpRenderTree/win/DumpRenderTreeWin.h: Fix class/struct mismatch of FrameLoadDelegate and PolicyDelegate declarations.
* DumpRenderTree/win/EditingDelegate.cpp:
(dump): Use %d for int.
* DumpRenderTree/win/FrameLoadDelegate.cpp: Removed unused variable g_delegateWaitingOnTimer.
* DumpRenderTree/win/ResourceLoadDelegate.cpp:
(BSTRFromString): Deleted unused function.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setDatabaseQuota): Pass a temporal _bstr_t object to
the arguemnt of setQuota instead of const string literal.
* DumpRenderTree/win/WorkQueueItemWin.cpp:
(jsStringRefToWString): Deleted unused function.
2018-12-20 Chris Dumez <cdumez@apple.com>
Add API test coverage for customUserAgent client setting and service workers
https://bugs.webkit.org/show_bug.cgi?id=192952
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
(-[SWMessageHandler userContentController:didReceiveScriptMessage:]):
(-[SWSchemes webView:startURLSchemeTask:]):
(-[SWCustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[SWUserAgentMessageHandler userContentController:didReceiveScriptMessage:]):
2018-12-20 Chris Dumez <cdumez@apple.com>
Use Optional::hasValue() instead of Optional::has_value()
https://bugs.webkit.org/show_bug.cgi?id=192948
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
2018-12-20 Chris Dumez <cdumez@apple.com>
Add style script rule to check for uses of std::optional<>
https://bugs.webkit.org/show_bug.cgi?id=192931
Reviewed by Tim Horton.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_wtf_optional):
(check_style):
2018-12-20 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Add a runtime flag for local authenticator
https://bugs.webkit.org/show_bug.cgi?id=192792
<rdar://problem/46798738>
Reviewed by Brent Fulgham.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(setWebPreferencesForTestOptions):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2018-12-20 Jonathan Bedard <jbedard@apple.com>
webkitpy: Autoinstall package URLs have changed
https://bugs.webkit.org/show_bug.cgi?id=192909
<rdar://problem/46860359>
Rubber-stamped by Alexey Proskuryakov.
PyPi urls have been moved around, we need to update our auto-installed packages.
We should check for Selenium before asking PyPi for the latest version.
* Scripts/webkitpy/thirdparty/__init__.py:
(AutoinstallImportHook._install_mechanize): Update with new pypi url.
(AutoinstallImportHook._install_keyring): Ditto.
(AutoinstallImportHook._install_pep8): Ditto.
(AutoinstallImportHook._install_mozlog): Ditto.
(AutoinstallImportHook._install_mozprocess): Ditto.
(AutoinstallImportHook._install_pytest_timeout): Ditto.
(AutoinstallImportHook._install_pytest): Ditto.
(AutoinstallImportHook._install_pylint): Ditto.
(AutoinstallImportHook._install_buildbot): Ditto.
(AutoinstallImportHook._install_coverage): Ditto.
(AutoinstallImportHook._install_twisted_15_5_0): Ditto.
(AutoinstallImportHook._install_selenium): Update with new pypi url, only check
for new Selenium if the installed version isn't sufficient.
(AutoinstallImportHook.get_latest_pypi_url): Update with new pypi url.
2018-12-20 Chris Dumez <cdumez@apple.com>
Use Optional::valueOr() instead of Optional::value_or()
https://bugs.webkit.org/show_bug.cgi?id=192933
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WTF/URLParser.cpp:
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkRelativeURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::checkRelativeURLDifferences):
* TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
(TestWebKitAPI::checkURL):
2018-12-20 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r239417.
Introduced two API test failures on macOS.
Reverted changeset:
"<rdar://problem/46194315> macOS: WebKit1 does not handle
occlusion changes"
https://bugs.webkit.org/show_bug.cgi?id=192821
https://trac.webkit.org/changeset/239417
2018-12-20 Devin Rousso <drousso@apple.com>
Web Inspector: UIString should take an optional key and description to aid localization
https://bugs.webkit.org/show_bug.cgi?id=153962
<rdar://problem/24542505>
Reviewed by Brian Burg.
* Scripts/extract-localizable-js-strings:
2018-12-20 Tim Horton <timothy_horton@apple.com>
Unparented WKWebView can't retrieve main resource data for a main frame plugin
https://bugs.webkit.org/show_bug.cgi?id=192923
<rdar://problem/46859068>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/WebKitCocoa/GetResourceData.mm:
Add a test ensuring that both parented and unparented WKWebViews can
retrieve main resource data when loading a PDF.
2018-12-20 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Bump webkitgtk-test-fonts to 0.0.8
https://bugs.webkit.org/show_bug.cgi?id=192852
Reviewed by Michael Catanzaro.
EmojiOne font was replaced by Noto Color Emoji.
* WebKitTestRunner/gtk/fonts/fonts.conf: Use Noto Color Emoji when Apple Color Emoji font family is used in tests.
* gtk/jhbuild.modules:
* wpe/jhbuild.modules:
2018-12-19 Chris Dumez <cdumez@apple.com>
wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
https://bugs.webkit.org/show_bug.cgi?id=192728
<rdar://problem/46746779>
Reviewed by Geoff Garen.
* DumpRenderTree/*:
* MiniBrowser/*:
* TestRunnerShared/*:
* TestWebKitAPI/*:
* WebGPUAPIStructure/*:
* WebKitTestRunner/*:
2018-12-19 Benjamin Poulain <benjamin@webkit.org>
<rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
https://bugs.webkit.org/show_bug.cgi?id=192821
Reviewed by Chris Dumez.
* DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
2018-12-19 Alex Christensen <achristensen@webkit.org>
Navigations away from the SafeBrowsing interstitial show a flash of old content
https://bugs.webkit.org/show_bug.cgi?id=192676
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(safeBrowsingView):
(TEST):
(-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
2018-12-19 Adrian Perez de Castro <aperez@igalia.com>
[GTK][WPE] Unify TestController::platformRunUntil() and honor condition flag
https://bugs.webkit.org/show_bug.cgi?id=192855
Reviewed by Michael Catanzaro.
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
(WTR::TestController::notifyDone): Use the WPE implementation.
(WTR::TestController::platformRunUntil): Use the WPE implementation.
* WebKitTestRunner/wpe/TestControllerWPE.cpp:
(WTR::TestController::platformRunUntil): Honor the condition flag.
2018-12-19 Megan Gardner <megan_gardner@apple.com>
Allow clients to set the navigator platform
https://bugs.webkit.org/show_bug.cgi?id=192735
Reviewed by Tim Horton.
Add a test for setting a custom navigator platform.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[CustomNavigatorPlatformDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[CustomNavigatorPlatformDelegate webView:didFinishNavigation:]):
2018-12-19 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r239358.
Revision caused imported/w3c/web-platform-tests/IndexedDB/ to
crash on Debug bots
Reverted changeset:
"Clean up IndexedDB files between tests"
https://bugs.webkit.org/show_bug.cgi?id=192796
https://trac.webkit.org/changeset/239358
2018-12-18 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] A copied text selection is pasted as a web archive attachment in the entry view in Messages
https://bugs.webkit.org/show_bug.cgi?id=192842
<rdar://problem/46823586>
Reviewed by Tim Horton.
Adjusts an existing API test to verify that "com.apple.webarchive" is not one of the types registered to the
item provider when dragging a rich text selection.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2018-12-18 David Quesada <david_quesada@apple.com>
REGRESSION: [iOS] API test TestWebKitAPI._WKDownload.OriginatingWebView is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=192810
<rdar://problem/46812536>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[OriginatingWebViewDownloadDelegate _downloadDidStart:]):
After releasing our reference to the web view, wait until the next turn of the runloop
before checking that the originatingWebView has been zeroed, since the web view might
still be referenced in the autorelease pool. This _WKDownload unit test isn't about
testing general memory management of WKWebViews, only that _WKDownload does not retain
its web view via the 'originatingWebView' property.
2018-12-18 Sihui Liu <sihui_liu@apple.com>
Clean up IndexedDB files between tests
https://bugs.webkit.org/show_bug.cgi?id=192796
Reviewed by Geoffrey Garen.
* DumpRenderTree/mac/DumpRenderTree.mm:
(runTest):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::RemoveAllIndexedDatabasesCallbackContext::RemoveAllIndexedDatabasesCallbackContext):
(WTR::RemoveAllIndexedDatabasesCallback):
(WTR::TestController::ClearIndexedDatabases):
* WebKitTestRunner/TestController.h:
2018-12-18 Alex Christensen <achristensen@webkit.org>
Fix API test introduced in r239339 on iOS.
https://bugs.webkit.org/show_bug.cgi?id=192675
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
The iOS implementation of the safe browsing warning is a little different.
It does some element creation when it is added to the window so it knows how big it is.
To test these elements, we need to simulate adding it to the window.
A similar technique is done in other iOS API tests, such as SafeBrowsing.ShowWarningSPI.
2018-12-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore device type for test when using --force
https://bugs.webkit.org/show_bug.cgi?id=192786
<rdar://problem/46794894>
Reviewed by Daniel Bates.
It is sometimes the case that a contributor will wish to run a test on a specific device,
despite expectations which indicate a test should not be run on that device.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(parse_args):
* Scripts/webkitpy/port/device_port.py:
(DevicePort.default_child_processes): Strip device type information when using --force.
(DevicePort.setup_test_run): Only allow incomplete match when using --force.
2018-12-18 Alex Christensen <achristensen@webkit.org>
WKWebView has old URL while displaying SafeBrowsing interstitial, for link-click navigations
https://bugs.webkit.org/show_bug.cgi?id=192675
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(goBack):
(TEST):
(visitUnsafeSite):
(-[SafeBrowsingHelper observeValueForKeyPath:ofObject:change:context:]):
(-[SafeBrowsingHelper webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2018-12-18 Chris Dumez <cdumez@apple.com>
Regression(r239182) SuspendedPage's process reuse for link navigation optimization sometimes broken
https://bugs.webkit.org/show_bug.cgi?id=192772
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-18 Philippe Normand <pnormand@igalia.com>
Unreviewed, JHBuild GTK build fix attempt
* gtk/jhbuild.modules: There's no libffi in this moduleset anymore.
There's no ninja module either, it should be provided by the
host system.
2018-12-17 Chris Dumez <cdumez@apple.com>
Allow passing nil as session state to [WKWebView _restoreSessionState:]
https://bugs.webkit.org/show_bug.cgi?id=192789
<rdar://problem/46755277>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
(TEST):
2018-12-17 Simon Fraser <simon.fraser@apple.com>
Don't use more expensive layer backing store formats when subpixel text antialiasing is not enabled
https://bugs.webkit.org/show_bug.cgi?id=192780
rdar://problem/43394387
Reviewed by Tim Horton.
No need to set "AppleFontSmoothing" defaults for WK2.
* WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
(WTR::InjectedBundle::platformInitialize):
2018-12-17 Jonathan Bedard <jbedard@apple.com>
webkitpy: Handle case where stdout and stderr don't accept unicode
https://bugs.webkit.org/show_bug.cgi?id=192775
<rdar://problem/46497303>
Reviewed by Stephanie Lewis.
* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(MeteredStream.write): If unicode cannot be written to the stream, replace unicode
characters with '?'.
* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
(RegularTest.test_stream_with_encoding):
2018-12-17 Daniel Bates <dabates@apple.com>
Support concatenating StringView with other string types
https://bugs.webkit.org/show_bug.cgi?id=177566
Reviewed by Darin Adler.
Add some tests to ensure we do not regress the number of allocations needed when performing
string concatenation with string views.
* TestWebKitAPI/Tests/WTF/StringOperators.cpp:
(TestWebKitAPI::TEST):
2018-12-17 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r239265 and r239274.
https://bugs.webkit.org/show_bug.cgi?id=192765
unorm_normalize is deprecated, and broke an internal build
(Requested by Truitt on #webkit).
Reverted changesets:
"[GTK][WPE] Need a function to convert internal URI to display
("pretty") URI"
https://bugs.webkit.org/show_bug.cgi?id=174816
https://trac.webkit.org/changeset/239265
"Fix the Apple Internal Mac build with a newer SDK"
https://trac.webkit.org/changeset/239274
2018-12-17 Daniel Bates <dabates@apple.com>
Implement UIScriptController::toggleCapsLock() for iOS
https://bugs.webkit.org/show_bug.cgi?id=191815
Reviewed by Andy Estes.
Add support for toggling the caps lock state in WebKitTestRunner on iOS.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues): Clear the current modifier state
before running a test. This ensures that the caps lock state does not persist between
tests should a test enable caps lock and not disable it.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(hidUsageCodeForCharacter): Map "capsLock" to the Caps Lock key usage code.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::createUIPhysicalKeyboardEvent): Modified to take the keyboard input flags to use to
create the event. Also substituted NSString* for const String& as the data type for the first
two parameters to avoid conversions in the implementation of UIScriptController::toggleCapsLock()
below.
(WTR::UIScriptController::keyDown): Update as needed due to changes to prototype of createUIPhysicalKeyboardEvent().
(WTR::UIScriptController::toggleCapsLock): Dispatch a UIEvent to toggle caps lock.
2018-12-17 Daniel Bates <dabates@apple.com>
[iOS] Remove -[WebEvent initWithKeyEventType:...:characterSet:]
https://bugs.webkit.org/show_bug.cgi?id=192633
Reviewed by Wenson Hsieh.
Update code to use the modern initializer.
* DumpRenderTree/mac/EventSendingController.mm:
(-[EventSendingController keyDown:withModifiers:withLocation:]):
2018-12-17 Matt Lewis <jlewis3@apple.com>
Unreviewed, rolling out r239254.
This broke the Windows 10 Debug build
Reverted changeset:
"Replace many uses of String::format with more type-safe
alternatives"
https://bugs.webkit.org/show_bug.cgi?id=192742
https://trac.webkit.org/changeset/239254
2018-12-17 David Kilzer <ddkilzer@apple.com>
clang-tidy: loop variable is copied but only used as const reference in WebCore, WebKit, Tools
<https://webkit.org/b/192751>
<rdar://problem/46771623>
Reviewed by Daniel Bates.
Change loop variables to const references to avoid unnecessary
copies.
* DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
(-[LocalPasteboard pasteboardItems]):
2018-12-17 Ms2ger <Ms2ger@igalia.com>
[GTK][WPE] Need a function to convert internal URI to display ("pretty") URI
https://bugs.webkit.org/show_bug.cgi?id=174816
Reviewed by Michael Catanzaro.
Add tests for userVisibleString() and (for GTK and WPE) webkit_uri_for_display().
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/URLHelpers.cpp: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitURIUtilities.cpp: Added.
(testURIForDisplayUnaffected):
(testURIForDisplayAffected):
(beforeAll):
(afterAll):
* TestWebKitAPI/glib/CMakeLists.txt:
2018-12-17 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Add API to notify about frame displayed view backend callback
https://bugs.webkit.org/show_bug.cgi?id=192224
Reviewed by Michael Catanzaro.
Add a test case to check the new API.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewFrameDisplayed):
(beforeAll):
* wpe/jhbuild.modules: Bump WPEBackend-fdo to 1.1.0.
2018-12-16 Adrian Perez de Castro <aperez@igalia.com>
Unreviewed build fix after r239253
* gtk/jhbuild.modules: Fix typo in libpsl dependency name.
2018-12-15 Darin Adler <darin@apple.com>
Use warning-ignoring macros more consistently and simply
https://bugs.webkit.org/show_bug.cgi?id=192743
Reviewed by Mark Lam.
* DumpRenderTree/TestNetscapePlugIn/main.cpp:
(handleEventCarbon): Use ALLOW_DEPRECATED_DECLARATIONS_BEGIN/END.
* DumpRenderTree/mac/TextInputControllerMac.m:
(-[TextInputController interpretKeyEvents:withSender:]): Use
IGNORE_WARNINGS_BEGIN/END.
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseForceClick): Use
IGNORE_NULL_CHECK_WARNINGS_BEGIN/END.
(WTR::EventSenderProxy::startAndCancelMouseForceClick): Ditto.
(WTR::EventSenderProxy::mouseForceDown): Ditto.
(WTR::EventSenderProxy::mouseForceUp): Ditto.
(WTR::EventSenderProxy::mouseForceChanged): Ditto.
2018-12-15 Darin Adler <darin@apple.com>
Replace many uses of String::format with more type-safe alternatives
https://bugs.webkit.org/show_bug.cgi?id=192742
Reviewed by Mark Lam.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::cacheTestRunnerCallback): Use makeString.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::didReceiveAuthenticationChallenge): Use makeString.
(WTR::TestController::downloadDidFail): Use an ASCIILiteral via the _s syntax.
2018-12-15 Adrian Perez de Castro <aperez@igalia.com>
[WPE][GTK] Add libpsl to JHBuild module sets
https://bugs.webkit.org/show_bug.cgi?id=192740
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules: Add libpsl module.
* wpe/jhbuild.modules: Ditto.
2018-12-14 Alexey Proskuryakov <ap@apple.com>
Add a style checker rule for Xcode version macros use
https://bugs.webkit.org/show_bug.cgi?id=192703
Reviewed by Alex Christensen.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_os_version_checks):
(process_line):
(CppChecker):
* Scripts/webkitpy/style/checkers/cpp_unittest.py:
(WebKitStyleTest.test_os_version_checks):
2018-12-14 Chris Dumez <cdumez@apple.com>
[PSON] Process-swapping on a loadHTMLString causes duplicate decidePolicyForNavigationAction delegate calls
https://bugs.webkit.org/show_bug.cgi?id=192704
Reviewed by Geoffrey Garen.
Extend existing API test to reproduce the problem.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-14 Chris Dumez <cdumez@apple.com>
[PSON] WebsitePolicies are lost on process-swap
https://bugs.webkit.org/show_bug.cgi?id=192694
<rdar://problem/46715748>
Reviewed by Brady Eidson.
Extend existing API test to reproduce the issue.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2018-12-14 Michael Catanzaro <mcatanzaro@igalia.com>
[GTK] Error writing data to TLS socket in some sites when using the jhbuild
https://bugs.webkit.org/show_bug.cgi?id=192678
Reviewed by Carlos Garcia Campos.
Update our ancient versions of libsoup and glib-networking.
* gtk/install-dependencies:
* gtk/jhbuild.modules:
* gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Removed.
* gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Removed.
* gtk/patches/libsoup-soup-message-io-Do-not-fail-when-there-s-no-empty-li.patch: Removed.
* gtk/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
* wpe/install-dependencies:
* wpe/jhbuild.modules:
* wpe/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Removed.
2018-12-14 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Use new view state API from libwpe
https://bugs.webkit.org/show_bug.cgi?id=191906
Reviewed by Žan Doberšek.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(beforeAll): Enable /webkit/WebKitWebView/page-visibility in WPE.
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::createWebViewBackend): Make the view initially hidden for consistency with GTK+ tests.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
* TestWebKitAPI/glib/WebKitGLib/wpe/WebViewTestWPE.cpp:
(WebViewTest::showInWindow): Add wpe_view_activity_state_visible, wpe_view_activity_state_in_window and
wpe_view_activity_state_focused state flags.
(WebViewTest::hideView): Remove wpe_view_activity_state_visible and wpe_view_activity_state_focused state flags.
* wpe/backends/HeadlessViewBackend.cpp:
(WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend): Assume view is always visible, focused and in window.
* wpe/backends/WindowViewBackend.cpp:
(WPEToolingBackends::WindowViewBackend::WindowViewBackend): Update the view state flags depending on state
received in configure callback.
* wpe/jhbuild.modules: Bump libwpe to 1.1.0
2018-12-13 Fujii Hironori <Hironori.Fujii@sony.com>
[WinCairo][Clang] DLLLauncherMain.cpp: warning: unused function 'prependPath' and 'appleApplicationSupportDirectory'
https://bugs.webkit.org/show_bug.cgi?id=192688
Reviewed by Ross Kirsling.
* win/DLLLauncher/DLLLauncherMain.cpp:
(copyEnvironmentVariable): Moved.
(getStringValue): Enclosed with #if !defined(WIN_CAIRO).
(applePathFromRegistry): Ditto.
(appleApplicationSupportDirectory): Ditto.
(prependPath): Ditto.
2018-12-13 Don Olmstead <don.olmstead@sony.com>
Unreviewed. Changed my status to a reviewer.
* Scripts/webkitpy/common/config/contributors.json:
2018-12-13 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Support dropping contact card data (public.vcard) in editable content
https://bugs.webkit.org/show_bug.cgi?id=192570
<rdar://problem/35626913>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
Add API tests to verify that registering `MKMapItem`s and `CNContact`s to item providers and dropping them in
attachment-enabled rich text editable areas inserts attachment elements (and in the case of `MKMapItem`,
additionally inserts a link).
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::createMapItemForTesting):
(TestWebKitAPI::createContactItemForTesting):
Add API tests to verify that dropping map items and contact items into rich and plain editable areas behaves as
expected (in the case where a URL is present, e.g. dropping a map item, we insert the URL as an anchor, and when
there is no other suitable representation in the item provider, we do nothing at all, which is the case for the
dropped `CNContact`). Also, add a test to verify that drag and drop can be used to upload these items as .vcf
files.
2018-12-13 Ross Kirsling <ross.kirsling@sony.com>
Unreviewed -- update my status to "reviewer".
* Scripts/webkitpy/common/config/contributors.json:
2018-12-13 Youenn Fablet <youenn@apple.com>
On page close, WebPage::m_userMediaPermissionRequestManager is nullified too early
https://bugs.webkit.org/show_bug.cgi?id=192657
Reviewed by Eric Carlson.
Add a test that loads a page registering ondevicechange,
load another page in the same process, closes the first page.
Ensure that the process does not crash in that case.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
(TestWebKitAPI::TEST):
(TestWebKitAPI::didCrashCallback):
* TestWebKitAPI/Tests/WebKit/ondevicechange.html: Added.
2018-12-13 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
[GStreamer][JHBuild] update-webkit{gtk,wpe}-libs fails with libfdk-2.0.0
https://bugs.webkit.org/show_bug.cgi?id=192643
Reviewed by Philippe Normand.
This problem happens with Arch Linux users which have libfdk-2.0.0
installed (which is anybody with gst-plugins-bad 1.14.4 installed).
The problem has already been solved upstream at
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/77.
Adding patches while this problem is not in a release yet.
* gstreamer/jhbuild.modules: Add patches to fix build of gst-plugins-bad with libfdk-2.0.0.
* gstreamer/patches/gst-plugins-bad-0003-fdkaacenc-Remove-MODE_2_1.patch: Added.
* gstreamer/patches/gst-plugins-bad-0004-fdkaacdec-Use-WAV-channel-mapping-instead-of-interleave-setting.patch: Added.
2018-12-12 Carlos Garcia Campos <cgarcia@igalia.com>
[FreeType] Add initial implementation of variation fonts
https://bugs.webkit.org/show_bug.cgi?id=192151
Reviewed by Michael Catanzaro.
Add cairo patch to avoid crashes.
* gtk/jhbuild.modules:
* gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
2018-12-12 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang][WebKitLegacy] WebFrame.cpp: warning: delete called on non-final 'WebFrame' that has virtual functions but non-virtual destructor [-Wdelete-non-virtual-dtor]
https://bugs.webkit.org/show_bug.cgi?id=192618
Reviewed by Alex Christensen.
* DumpRenderTree/win/DRTDataObject.cpp:
* DumpRenderTree/win/DRTDataObject.h:
* DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
* DumpRenderTree/win/DRTDropSource.h:
* DumpRenderTree/win/EditingDelegate.h:
* DumpRenderTree/win/PolicyDelegate.h:
* DumpRenderTree/win/UIDelegate.h:
2018-12-12 Ryosuke Niwa <rniwa@webkit.org>
Make TextInputController.legacyAttributedString take DOM nodes and offsets
https://bugs.webkit.org/show_bug.cgi?id=192653
Reviewed by Wenson Hsieh.
Updated TextInputController.legacyAttributedString to take DOM nodes and offsets instead of
a DOM Range object in preparation to add layout tests for HTMLConverter which crosses
shadow boundaries.
* DumpRenderTree/mac/TextInputControllerMac.m:
(+[TextInputController isSelectorExcludedFromWebScript:]): Updated the selector signature.
(+[TextInputController webScriptNameForSelector:]): Ditto.
(-[TextInputController legacyAttributedString:offset:to:offset:]): Made this function take
start node and offset then end node and offset pairs.
2018-12-12 Alex Christensen <achristensen@webkit.org>
Implement safe browsing in WebKit on WatchOS
https://bugs.webkit.org/show_bug.cgi?id=192641
<rdar://problem/46376188>
Reviewed by Geoff Garen.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(-[SafeBrowsingNavigationDelegate _webViewDidShowSafeBrowsingWarning:]):
(safeBrowsingView):
Add a test that the new delegate callback is called.
2018-12-12 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed manual rollout of r239100-r239102 and r239116
https://bugs.webkit.org/show_bug.cgi?id=192151
<rdar://problem/46655586>
* gtk/jhbuild.modules:
* gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Removed.
2018-12-12 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r239103.
https://bugs.webkit.org/show_bug.cgi?id=192627
It broke the built because it depends on another patch that
didn't land yet (Requested by KaL on #webkit).
Reverted changeset:
"[WPE] Add API to notify about frame displayed view backend
callback"
https://bugs.webkit.org/show_bug.cgi?id=192224
https://trac.webkit.org/changeset/239103
2018-11-30 Carlos Garcia Campos <cgarcia@igalia.com>
[WPE] Add API to notify about frame displayed view backend callback
https://bugs.webkit.org/show_bug.cgi?id=192224
Reviewed by Michael Catanzaro.
Add a test case to check the new API.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
(testWebViewFrameDisplayed):
(beforeAll):
2018-12-12 Carlos Garcia Campos <cgarcia@igalia.com>
[FreeType] Add initial implementation of variation fonts
https://bugs.webkit.org/show_bug.cgi?id=192151
Reviewed by Michael Catanzaro.
Add cairo patch to avoid crashes.
* gtk/jhbuild.modules:
* gtk/patches/cairo-ft-Use-FT_Done_MM_Var-instead-of-free-when-available.patch: Added.
2018-12-11 Justin Michaud <justin_michaud@apple.com>
Implement feature flag for CSS Typed OM
https://bugs.webkit.org/show_bug.cgi?id=192610
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-12-11 Chris Dumez <cdumez@apple.com>
Unreviewed, fix bad check in API test added in r239080.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-11 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang] Fix warning -Wmissing-field-initializers
https://bugs.webkit.org/show_bug.cgi?id=192584
Reviewed by Yusuke Suzuki.
Initialize a struct with '{ }' instead of '= {0}'.
* DumpRenderTree/win/DumpRenderTree.cpp:
(runTest):
* DumpRenderTree/win/EventSender.cpp:
(makeMsg):
(replaySavedEvents):
(beginDragWithFilesCallback):
* DumpRenderTree/win/PixelDumpSupportWin.cpp:
(createBitmapContextFromWebView):
* MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
(updateMenuItemForHistoryItem):
* MiniBrowser/win/WinMain.cpp:
(wWinMain):
* TestWebKitAPI/win/HostWindow.cpp:
(TestWebKitAPI::HostWindow::clientRect const):
(TestWebKitAPI::HostWindow::registerWindowClass):
* TestWebKitAPI/win/PlatformWebViewWin.cpp:
(TestWebKitAPI::PlatformWebView::registerWindowClass):
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
(WTR::registerWindowClass):
(WTR::PlatformWebView::windowFrame):
(WTR::PlatformWebView::windowSnapshotImage):
2018-12-11 Chris Dumez <cdumez@apple.com>
PSON logic gets confused by concurrent decidePolicyForNavigationAction requests
https://bugs.webkit.org/show_bug.cgi?id=192482
<rdar://problem/46470145>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-11 Andy Estes <aestes@apple.com>
Introduce makeBlockPtr for lambdas
https://bugs.webkit.org/show_bug.cgi?id=192594
Reviewed by Alex Christensen.
Adopted makeBlockPtr and added API tests.
* DumpRenderTree/TestRunner.cpp:
(TestRunner::callUIScriptCallback):
* TestWebKitAPI/Tests/WTF/BlockPtr.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
(-[DownloadProgressTestRunner init]):
(-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
2018-12-11 Chris Dumez <cdumez@apple.com>
REGRESSION (r238764-238783): TestWTF.WTF.StringOperators is failing
https://bugs.webkit.org/show_bug.cgi?id=192361
<rdar://problem/46524903>
Reviewed by Alex Christensen.
Compile StringOperators.cpp with -O1 optimization level instead of -Os. This
fixes the failures for me locally.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2018-12-11 Philippe Normand <pnormand@igalia.com>
Unreviewed, WPE build fix after r239028
The FLATPAK_USER_DIR env var is not set early enough, leading to:
Traceback (most recent call last):
File "/home/phil/WebKit/Tools/Scripts/webkit-flatpak", line 28, in <module>
sys.exit(WebkitFlatpak.load_from_args().run())
File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 761, in run
if not self.clean_args():
File "/home/phil/WebKit/Tools/flatpak/flatpakutils.py", line 574, in clean_args
_log.debug("Using flatpak user dir: %s" % os.environ["FLATPAK_USER_DIR"])
File "/usr/lib/python2.7/UserDict.py", line 40, in __getitem__
raise KeyError(key)
KeyError: 'FLATPAK_USER_DIR'
* flatpak/flatpakutils.py:
(WebkitFlatpak.clean_args):
2018-12-10 Don Olmstead <don.olmstead@sony.com>
Move ENABLE_RESOURCE_LOAD_STATISTICS to FeatureDefines.xcconfig
https://bugs.webkit.org/show_bug.cgi?id=192573
Reviewed by Simon Fraser.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-12-10 Don Olmstead <don.olmstead@sony.com>
[CMake] Add ENABLE_RESOURCE_LOAD_STATISTICS to WebKitFeatures.cmake
https://bugs.webkit.org/show_bug.cgi?id=192574
Reviewed by Michael Catanzaro.
* Scripts/webkitperl/FeatureList.pm:
2018-12-10 Don Olmstead <don.olmstead@sony.com>
Sync FeatureList.pm
https://bugs.webkit.org/show_bug.cgi?id=192565
Reviewed by Michael Catanzaro.
* Scripts/webkitperl/FeatureList.pm:
2018-12-10 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Unable to upload data that conforms to "public.item" but not "public.content"
https://bugs.webkit.org/show_bug.cgi?id=192555
<rdar://problem/35204990>
Reviewed by Tim Horton.
Add a test to verify that `.p12` files may be uploaded as files via drag and drop. "com.rsa.pkcs-12" is an
example of a data type that conforms to "public.item", but not "public.content"; before this patch, we would
only support uploading "public.content", so files such as these would not be accepted when dropping into file
inputs, or be exposed as files on DataTransfer.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
2018-12-10 David Kilzer <ddkilzer@apple.com>
Injected bundle for WebKitTestRunner leaks WKTypeRef objects
<https://webkit.org/b/192481>
<rdar://problem/46539059>
Follow-up to address Darin's feedback.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::shouldDumpPixels const):
(WTR::TestRunner::whatToDump const):
(WTR::TestRunner::shouldWaitUntilDone const):
(WTR::TestRunner::shouldDumpFrameLoadCallbacks):
(WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
(WTR::TestRunner::secureEventInputIsEnabled const):
(WTR::TestRunner::isStatisticsPrevalentResource):
(WTR::TestRunner::isStatisticsVeryPrevalentResource):
(WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
(WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
(WTR::TestRunner::isStatisticsHasHadUserInteraction):
(WTR::TestRunner::isStatisticsGrandfathered):
(WTR::TestRunner::hasDOMCache):
(WTR::TestRunner::keyExistsInKeychain):
2018-12-10 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ref tests don't respect platform specific expectations
https://bugs.webkit.org/show_bug.cgi?id=192515
<rdar://problem/46564839>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/port/base.py:
(Port._expected_baselines_for_suffixes): Accept multiple suffixes so ref tests can use this function.
(Port.expected_baselines): Move implementation to _expected_baselines_for_suffixes.
(Port.expected_filename): Remove irrelevant FIXME, code clean-up.
(Port.reference_files): Instead of just searching a single directory, use _expected_baselines_for_suffixes to
search all platform expectations as well.
* Scripts/webkitpy/port/base_unittest.py:
(test_ref_tests_platform_directory):
2018-12-10 Chris Dumez <cdumez@apple.com>
Add SPI to allow the client to set the user-agent at main frame level, from the UIProcess
https://bugs.webkit.org/show_bug.cgi?id=192509
<rdar://problem/46500832>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[DataMappingSchemeHandler addMappingFromURLString:toData:]):
(-[DataMappingSchemeHandler webView:startURLSchemeTask:]):
(-[DataMappingSchemeHandler webView:stopURLSchemeTask:]):
(-[CustomUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
(-[CustomUserAgentDelegate webView:didFinishNavigation:]):
2018-12-10 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Caret is obscured by finger when dragging over an editable element
https://bugs.webkit.org/show_bug.cgi?id=192499
<rdar://problem/46570101>
Reviewed by Tim Horton.
Augment some existing API tests to check that the `precise` flag is either on or off on `UIDropProposal`.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _resetSimulatedState]):
(-[DragAndDropSimulator lastKnownDropProposal]):
Rename `currentDropProposal` to `lastKnownDropProposal`, and expose it as a readonly property.
(-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
(-[DragAndDropSimulator _advanceProgress]):
(-[DragAndDropSimulator setShowCustomActionSheetBlock:]):
(-[DragAndDropSimulator showCustomActionSheetBlock]):
(-[DragAndDropSimulator setConvertItemProvidersBlock:]):
(-[DragAndDropSimulator convertItemProvidersBlock]):
(-[DragAndDropSimulator setOverridePerformDropBlock:]):
(-[DragAndDropSimulator overridePerformDropBlock]):
(-[DragAndDropSimulator setOverrideDragUpdateBlock:]):
(-[DragAndDropSimulator overrideDragUpdateBlock]):
(-[DragAndDropSimulator setDropCompletionBlock:]):
(-[DragAndDropSimulator dropCompletionBlock]):
Refactor these properties to return and take normal Objective-C blocks, rather than `BlockPtr`s. However, use
`BlockPtr` instance variables to manage the lifetimes of these blocks.
(-[DragAndDropSimulator _webView:willUpdateDropProposalToProposal:forSession:]):
(-[DragAndDropSimulator _webView:willUpdateDataInteractionOperationToOperation:forSession:]): Deleted.
Update this to use the new WebKit delegate hook for overriding the drop proposal.
2018-12-10 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] run-minibrowser improperly creates webkit-flatpak environment
https://bugs.webkit.org/show_bug.cgi?id=190241
Reviewed by Carlos Garcia Campos.
run-minibrowser calls into webkit-flatpak to check if a flatpak environment is available.
Currently this actually creates the directories needed for the flatpak environment. Fix it.
* flatpak/flatpakutils.py:
(WebkitFlatpak.clean_args):
(WebkitFlatpak.run):
2018-12-10 Michael Catanzaro <mcatanzaro@igalia.com>
[GTK] Don't use the slice allocator
https://bugs.webkit.org/show_bug.cgi?id=192360
Reviewed by Carlos Garcia Campos.
* MiniBrowser/gtk/main.c:
(aboutDataRequestFree):
(aboutDataRequestNew):
2018-12-10 Tim Horton <timothy_horton@apple.com>
WKWebView should support custom tintColor
https://bugs.webkit.org/show_bug.cgi?id=192518
<rdar://problem/37243261>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/SystemColors.mm:
(TestWebKitAPI::TEST):
Add a test that tintColor affects UITextInputTraits' interaction colors.
2018-12-09 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] DragAndDropTests.RespectsExternalSourceFidelityRankings is flaky
https://bugs.webkit.org/show_bug.cgi?id=192524
Reviewed by Ryosuke Niwa.
This test started failing on certain builds of iOS where UIKit now attempts to reveal the selection by scrolling
(see <rdar://problem/28300343>). This API test simulates two drops from external sources, both from the point
(300, 400) to (100, 300) in window coordinates. On these aforementioned builds of iOS, what happens is that the
first drop inserts text that overflows the editable region by an enormous amount, which creates an extremely
wide selection rect and increases the width of the document; revealing this selection causes the web view to
scroll horizontally, such that the second attempt to simulate a drag from (300, 400) to (100, 300) fails, since
these window coordinates no longer correspond to the drop destination element in the document.
To fix this test, we simply mark the drop destination as `overflow: hidden` to ensure that we don't try and
scroll horizontally after the first drop.
* TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
2018-12-08 Daniel Bates <dabates@apple.com>
Fix lldb_webkit.py following r238771
(https://bugs.webkit.org/show_bug.cgi?id=190234)
Substitute WTFURLProvider for WebCoreURLProvider in one call site that was inadvertently
missed in r238771.
* lldb/lldb_webkit.py:
(WebCoreDocumentProvider.url):
2018-12-07 Aakash Jain <aakash_jain@apple.com>
[ews-build] check-patch-relevance failure should not mark the overall build as failure
https://bugs.webkit.org/show_bug.cgi?id=192510
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(CheckPatchRelevance.start):
2018-12-07 Chris Dumez <cdumez@apple.com>
ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
https://bugs.webkit.org/show_bug.cgi?id=192362
<rdar://problem/46460360>
Reviewed by Ryosuke Niwa.
Move the call to _setCookieAcceptPolicy *after* we've constructed a WKWebView and thus
*after* we know for sure we have a network process to communicate the policy to.
This should address the failures on iOS.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-07 Jiewen Tan <jiewen_tan@apple.com>
Add keychain access entitlement to WebKitTestRunnerApp
https://bugs.webkit.org/show_bug.cgi?id=192489
<rdar://problem/45057952>
Reviewed by Alexey Proskuryakov.
* WebKitTestRunner/Configurations/WebKitTestRunnerApp-iOS.entitlements:
2018-12-07 Saam Barati <sbarati@apple.com>
WKWebProcessPlugInLoadDelegate should have API for saying which rendering events it wants to listen for
https://bugs.webkit.org/show_bug.cgi?id=192473
Reviewed by Andy Estes.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/RenderingProgress.mm: Added.
(-[DidFirstMeaningfulPaintRemoteObject didFirstMeaningfulPaint]):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressPlugIn.mm: Added.
(-[RenderingProgressPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
(-[RenderingProgressPlugIn webProcessPlugInBrowserContextControllerRenderingProgressEvents:]):
(-[RenderingProgressPlugIn webProcessPlugInBrowserContextController:renderingProgressDidChange:]):
* TestWebKitAPI/Tests/WebKitCocoa/RenderingProgressProtocol.h: Added.
2018-12-07 Jonathan Bedard <jbedard@apple.com>
REGRESSION: run-webkit-tests may fail when using booted simulators (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=192470
<rdar://problem/46532001>
Unreviewed infrastructure fix.
* Scripts/webkitpy/port/device_port.py:
(DevicePort.setup_test_run): Check that the number of initialized devices matches the
number of child processes.
2018-12-07 Aakash Jain <aakash_jain@apple.com>
[ews-app] Send bug id as a build property
https://bugs.webkit.org/show_bug.cgi?id=192494
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
(BugzillaPatchFetcher.fetch):
2018-12-07 Aakash Jain <aakash_jain@apple.com>
[ews-build] Builds should have a link to patch and bug
https://bugs.webkit.org/show_bug.cgi?id=192492
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-build/steps.py:
(ConfigureBuild.add_patch_id_url): Method to add Patch URL.
(ConfigureBuild.add_bug_id_url): Method to add Bug URL.
(ConfigureBuild.getPatchURL): Method to get Patch URL.
(ConfigureBuild.getBugURL): Method to get Bug URL.
2018-12-07 Aakash Jain <aakash_jain@apple.com>
[ews-app] Configure logfile for ews-app logs
https://bugs.webkit.org/show_bug.cgi?id=192493
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/__init__.py:
2018-12-07 Aakash Jain <aakash_jain@apple.com>
Style queue exception on some security bugs
https://bugs.webkit.org/show_bug.cgi?id=190793
Reviewed by Lucas Forschler.
* Scripts/webkitpy/tool/steps/applywatchlist.py:
(ApplyWatchList.run):
2018-12-07 Wenson Hsieh <wenson_hsieh@apple.com>
[Attachment Support] Cloned attachment elements lose their unique identifiers
https://bugs.webkit.org/show_bug.cgi?id=192483
Reviewed by Tim Horton.
Introduce a new API test.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2018-12-06 Jonathan Bedard <jbedard@apple.com>
Consecutive DumpRenderTree crashes are happening again on WinCairo BuildBots since r238903
https://bugs.webkit.org/show_bug.cgi?id=192486
Unreviewed infrastructure fix.
WinCairo bots define WEBKIT_TEST_CHILD_PROCESSES to run less processes due to RAM restrictions.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options):
2018-12-06 David Kilzer <ddkilzer@apple.com>
Injected bundle for WebKitTestRunner leaks WKTypeRef objects
<https://webkit.org/b/192481>
<rdar://problem/46539059>
Reviewed by Simon Fraser.
This patch:
- Fixes leaks in various injected bundle methods that return +1
retained WKTypeRef objects via pointer.
- Asserts the returned object is the expected WKTypeRef.
- Replaces 0 with nullptr in many places.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::didCreatePage):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::shouldDumpPixels const):
(WTR::TestRunner::whatToDump const):
(WTR::TestRunner::shouldWaitUntilDone const):
(WTR::TestRunner::shouldDumpFrameLoadCallbacks):
(WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
(WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
(WTR::TestRunner::secureEventInputIsEnabled const):
(WTR::TestRunner::isStatisticsPrevalentResource):
(WTR::TestRunner::isStatisticsVeryPrevalentResource):
(WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
(WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
(WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
(WTR::TestRunner::isStatisticsHasHadUserInteraction):
(WTR::TestRunner::isStatisticsGrandfathered):
(WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
(WTR::TestRunner::statisticsUpdateCookieBlocking):
(WTR::TestRunner::statisticsSubmitTelemetry):
(WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
(WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
(WTR::TestRunner::statisticsResetToConsistentState):
(WTR::TestRunner::getAllStorageAccessEntries):
(WTR::TestRunner::hasDOMCache):
(WTR::TestRunner::domCacheSize):
(WTR::TestRunner::injectUserScript):
(WTR::TestRunner::keyExistsInKeychain):
2018-12-06 Jonathan Bedard <jbedard@apple.com>
REGRESSION: run-webkit-tests may fail when using booted simulators
https://bugs.webkit.org/show_bug.cgi?id=192470
<rdar://problem/46532001>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Logging uses the number of child processes to print out information about how efficiently tests
were sharded after the fact. This number is the most meaningful if it is the maximum number of child processes used.
* Scripts/webkitpy/port/base.py:
(Port.max_child_processes): By default, Ports do not support running on any specific kind of device.
* Scripts/webkitpy/port/device_port.py:
(DevicePort.default_child_processes): Rather than using the currently initialized devices as a proxy for how many
child processes are being used, check the device manager every time. Regardless of which devices are attached or
available, iOS cannot boot watchOS devices and vice-versa. dedicated_simulators is not a known argument to
device_count_for_type, use use_booted_simulator instead.
(DevicePort.max_child_processes): Simulators can boot more devices than what is specified by device_count_for_type,
but, if no devices are available, then max_child_processes should return 0 even for simulators.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest):
(IOSDeviceTest.test_max_child_processes):
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest):
(IOSSimulatorTest.test_max_child_processes):
* Scripts/webkitpy/port/port_testcase.py:
(PortTestCase):
(PortTestCase.test_max_child_processes):
* Scripts/webkitpy/port/watch_simulator_unittest.py:
(WatchSimulatorTest):
(WatchSimulatorTest.test_max_child_processes):
2018-12-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore case when comparing device types (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=192409
<rdar://problem/46491558>
Unreviewed typo fix.
* Scripts/webkitpy/xcode/device_type_unittest.py:
(DeviceTypeTest.test_comparison_lower_case):
(DeviceTypeTest.test_comparsion_lower_case): Deleted.
2018-12-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Create device given lower-case DeviceType
<https://bugs.webkit.org/show_bug.cgi?id=192472>
<rdar://problem/46532650>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._get_device_identifier_for_type): Comparing simctl device identifiers with DeviceTypes
should be letter-case agnostic.
* Scripts/webkitpy/xcode/simulated_device_unittest.py:
(test_lower_case_device_type):
2018-12-06 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] WKWebView should match UITextView behavior when editing text with an RTL keyboard
https://bugs.webkit.org/show_bug.cgi?id=187554
<rdar://problem/42075638>
Reviewed by Tim Horton.
Add support for simulating the keyboard input mode in layout tests using UIScriptController, as well as a new
`TestOption` to make the web view editable.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setKeyboardInputModeIdentifier):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setKeyboardInputModeIdentifier):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestController.h:
(WTR::TestController::overriddenKeyboardInputMode const):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
* WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
(WTR::PlatformWebView::setEditable):
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::setEditable):
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
(WTR::swizzleCurrentInputMode):
(WTR::TestController::setKeyboardInputModeIdentifier):
Swizzle out several `UIKeyboardInputModeController` methods in order to convince UIKit that the user has
selected a `UIKeyboardInputMode` corresponding to the given identifier. The call to
`-prepareKeyboardInputModeFromPreferences:` is also necessary on iOS 12 in order to update cached writing
direction state in UIKit.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setKeyboardInputModeIdentifier):
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::setEditable):
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
(WTR::PlatformWebView::setEditable):
* WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
(WTR::PlatformWebView::setEditable):
2018-12-05 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Share ClassMethodSwizzler and InstanceMethodSwizzler between TestWebKitAPI and WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=192437
Reviewed by Tim Horton.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* TestRunnerShared/cocoa/ClassMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.h.
* TestRunnerShared/cocoa/ClassMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/ClassMethodSwizzler.mm.
(ClassMethodSwizzler::ClassMethodSwizzler):
(ClassMethodSwizzler::~ClassMethodSwizzler):
* TestRunnerShared/cocoa/InstanceMethodSwizzler.h: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.h.
* TestRunnerShared/cocoa/InstanceMethodSwizzler.mm: Renamed from Tools/TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm.
(InstanceMethodSwizzler::InstanceMethodSwizzler):
(InstanceMethodSwizzler::~InstanceMethodSwizzler):
Move these swizzling helper classes into TestRunnerShared.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(safeBrowsingView):
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDefaultNavigationDelegate.mm:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView initWithFrame:configuration:addToWindow:]):
Remove namespacing around ClassMethodSwizzler and InstanceMethodSwizzler in a few API tests.
* TestWebKitAPI/mac/TestFontOptions.mm:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::ClassMethodSwizzler::ClassMethodSwizzler): Deleted.
(WTR::ClassMethodSwizzler::~ClassMethodSwizzler): Deleted.
Remove this duplicate implementation of ClassMethodSwizzler in WebKitTestRunner.
2018-12-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Clean-up apple_additions
https://bugs.webkit.org/show_bug.cgi?id=192413
<rdar://problem/46493491>
Reviewed by Lucas Forschler.
After the addition of watchOS, some functions which were originally iOS specific were
generalized to include all devices.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort._driver_class): Replace iOS specific call with generalized device call.
(IOSDevicePort.path_to_crash_logs): Ditto.
(IOSDevicePort.clean_up_test_run): Ditto.
2018-12-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Ignore case when comparing device types
https://bugs.webkit.org/show_bug.cgi?id=192409
<rdar://problem/46491558>
Reviewed by Lucas Forschler.
This allows DeviceTypes constructed with lowercase strings to correctly compare
against DeviceTypes coming from the simulator runtime.
* Scripts/webkitpy/xcode/device_type.py:
(DeviceType.__eq__):
(DeviceType.__contains__):
* Scripts/webkitpy/xcode/device_type_unittest.py:
(DeviceTypeTest):
(DeviceTypeTest.test_comparsion_lower_case):
2018-12-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Sort tests by associated device type
https://bugs.webkit.org/show_bug.cgi?id=192161
<rdar://problem/46345392>
Reviewed by Lucas Forschler.
Sort tests by device type and make an effort to run each specified device type.
Do not run tests if their specified device is not available.
* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo.is_watchos): Add watchos bits to platform info.
(PlatformInfo._determine_os_name): Ditto.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Assign each test a device type. Then, generate a list of
device types to sequentially iterate through. Note that a test will run
on the first device which matches.
(Manager._end_test_run): Handle the case where no devices are available and no
tests are run.
* Scripts/webkitpy/layout_tests/run_webkit_tests.py:
(_set_up_derived_options): Manage child processes in manager.
* Scripts/webkitpy/port/base.py:
(Port):
(Port.default_child_processes): Accept additional arguments.
(Port.max_child_processes): Add upper limit for number of child processes.
* Scripts/webkitpy/port/device_port.py:
(DevicePort):
(DevicePort._device_type_with_version): Adds version to the DeviceType.
(DevicePort.default_child_processes): Allows default_child_processes to be
attached to a device type.
(DevicePort.max_child_processes): Add upper limit to the maximum number of child processes.
(DevicePort.setup_test_run): Use _device_type_with_version.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort):
(IOSDevicePort.default_child_processes): Deleted.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.default_child_processes): Deleted.
(IOSSimulatorPort.check_sys_deps): Deleted.
* Scripts/webkitpy/port/mac.py:
(MacPort.default_child_processes): Accept additional arguments.
* Scripts/webkitpy/port/test.py:
* Scripts/webkitpy/port/watch_device.py:
(WatchDevicePort):
(WatchDevicePort.default_child_processes): Deleted.
* Scripts/webkitpy/port/watch_simulator.py:
(WatchSimulatorPort.default_child_processes): Deleted.
(WatchSimulatorPort.check_sys_deps): Deleted.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager):
(SimulatedDeviceManager.device_count_for_type): Count the number of devices
available for a specific device type.
2018-12-05 Devin Rousso <drousso@apple.com>
Unreviewed, add myself to some watch lists.
* Scripts/webkitpy/common/config/watchlist:
2018-12-05 Alicia Boya García <aboya@igalia.com>
[MSE][GStreamer] Remove the AppendPipeline state machine
https://bugs.webkit.org/show_bug.cgi?id=192204
Reviewed by Xabier Rodriguez-Calvar.
Updated AbortableTaskQueue tests:
Added test: AbortedBySyncTaskHandler.
Renamed test: AbortDuringSyncTask -> AbortBeforeSyncTaskRun (in
order to avoid confusion with the new test).
Added checks for the correct destruction of response objects.
* TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
(TestWebKitAPI::FancyResponse::FancyResponse):
(TestWebKitAPI::FancyResponse::~FancyResponse):
(TestWebKitAPI::TEST):
2018-12-04 Chris Dumez <cdumez@apple.com>
ProcessSwap.UseSessionCookiesAfterProcessSwapInPrivateBrowsing API test is failing
https://bugs.webkit.org/show_bug.cgi?id=192362
Reviewed by Alex Christensen.
Set the cookie policy to Accept to make sure the cookies are saved.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-04 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Update GLib
https://bugs.webkit.org/show_bug.cgi?id=191222
Reviewed by Žan Doberšek.
When I try running API tests locally, they crash with:
GLib-GIO-WARNING **: unknown schema extension 'd'
We need to update our old glib to support the 'd' value type, otherwise schemas that may
exist on the host using this type will cause instant crashes.
Also, switch the GLib build to use meson. This requires updating meson as well.
* gtk/jhbuild.modules:
* gtk/patches/glib-cast-function-type.patch: Removed.
* gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Removed.
* wpe/jhbuild.modules:
* wpe/patches/glib-cast-function-type.patch: Removed.
* wpe/patches/glib-revert-wakeup-changes.patch: Removed.
2018-12-04 Aakash Jain <aakash_jain@apple.com>
[ews-app] Run BugzillaPatchFetcher periodically
https://bugs.webkit.org/show_bug.cgi?id=192241
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/__init__.py:
* BuildSlaveSupport/ews-app/ews/apps.py:
(EwsConfig.ready): This method is called by Django on startup.
* BuildSlaveSupport/ews-app/ews/fetcher.py:
(FetchLoop): Class which invokes BugzillaPatchFetcher every 60s.
2018-12-04 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support unicode in MeteredStream
https://bugs.webkit.org/show_bug.cgi?id=192260
Reviewed by Aakash Jain.
It's possible that the test runner returns unicode characters to be logged when
running layout tests.
* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(MeteredStream.write): Print message without attempting to encode/decode it.
* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
(RegularTest.test_unicode):
2018-12-04 Keith Rollin <krollin@apple.com>
Update scripts for generating .xcfilelist files
https://bugs.webkit.org/show_bug.cgi?id=192081
<rdar://problem/46312290>
Reviewed by Brent Fulgham.
The initial pass at generate-xcfilelists (a script for
creating/updating the .xcfilelist files needed for various Generate
Foo Source build phases in Xcode) only generated the .xcfilelist files
that held the output files; it did not generate the list of input
files. As well, for the sources generated by DerivedSources.make
makefiles, the script accomplished this via the implementation of a
convention in the makefile that allowed the printing of these output
files when invoked with the 'print_all_generated_files' target. Use of
this convention is inconvenient and error-prone.
The script is now updated to address both of these issues. First, it
generates for the input and output sets of files. Second, it does away
with the convention in the DerivedSources.make makefiles and instead
works from the dependency output information printed when `make` is
invoked with --debug. This second part is implemented in the new
script extract-dependencies-from-makefile.
* Scripts/extract-dependencies-from-makefile: Added.
(Parser):
(Parser.__init__):
(Parser.nextLine):
(Parser.addTarget):
(Parser.addPrereq):
(Parser.doParse):
(Parser.printInputs):
(Parser.printOutputs):
(parseArgs):
(main):
* Scripts/generate-xcfilelists:
2018-12-04 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
[WPE] Add gtk-doc
https://bugs.webkit.org/show_bug.cgi?id=178900
Reviewed by Michael Catanzaro.
Add gtk-doc to WPE port. This patch tries to reuse as much code from
WebKitGTK+ as possible.
* gtkdoc/generate-gtkdoc: Renamed from Tools/gtk/generate-gtkdoc.
(get_gtkdoc_module_paths): Add GDK and GTK only if building for GTK.
(prepare_environment_for_gtkdoc_generation):
(build_gtkdoc_for_wpe): Code to generate doc for WPE.
(build_gtkdoc_for_wkgtk): Code to generate doc for WebKitGTK+. Moved from main.
* gtkdoc/gtkdoc.py: Renamed from Tools/gtk/gtkdoc.py.
(GTKDoc.__init__): Initialized required variables according to pylint.
(GTKDoc.api_missing_documentation):
* wpe/install-dependencies: Add gtkdoc dependency.
2018-12-04 Carlos Garcia Campos <cgarcia@igalia.com>
[SOUP] Move URLSoup back to WebCore after r238771
https://bugs.webkit.org/show_bug.cgi?id=192306
Reviewed by Michael Catanzaro.
Include GUniquePtrSoup from WebCore again.
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
2018-12-03 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Bump freetype, fontconfig, harfbuzz, cairo and icu in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=192310
Reviewed by Michael Catanzaro.
Update those dependencies to their latest stable versions.
* gtk/jhbuild.modules:
2018-12-03 Tomas Popela <tpopela@redhat.com>
[GTK] Can't run MiniBrowser due to missing python2-yaml
https://bugs.webkit.org/show_bug.cgi?id=192308
Reviewed by Michael Catanzaro.
* gtk/install-dependencies:
2018-12-03 Chris Dumez <cdumez@apple.com>
Regression(PSON) Google OAuth is broken in private sessions
https://bugs.webkit.org/show_bug.cgi?id=192337
<rdar://problem/46353558>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/GetSessionCookie.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/SetSessionCookie.html: Added.
2018-12-03 Chris Dumez <cdumez@apple.com>
[PSON] Request by the client to process-swap is ignored if the window has an opener
https://bugs.webkit.org/show_bug.cgi?id=192267
<rdar://problem/46386886>
Reviewed by Brady Eidson.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-03 Keith Rollin <krollin@apple.com>
Add .xcfilelist files
https://bugs.webkit.org/show_bug.cgi?id=192082
<rdar://problem/46312533>
Reviewed by Brent Fulgham.
Add .xcfilelist files for Generate Derived Sources and Generate
Unified Sources build phases in Xcode. These are just being staged for
now; they'll be added to the Xcode projects later.
* DumpRenderTree/DerivedSources-input.xcfilelist: Added.
* DumpRenderTree/DerivedSources-output.xcfilelist: Added.
* WebKitTestRunner/DerivedSources-input.xcfilelist: Added.
* WebKitTestRunner/DerivedSources-output.xcfilelist: Added.
2018-12-03 Alex Christensen <achristensen@webkit.org>
Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
https://bugs.webkit.org/show_bug.cgi?id=192272
Reviewed by Brady Eidson.
* TestWebKitAPI/Tests/WebKitCocoa/ParserYieldTokenPlugIn.mm:
(-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:willStartProvisionalLoadForFrame:completionHandler:]):
(-[ParserYieldTokenPlugIn webProcessPlugInBrowserContextController:didCommitLoadForFrame:]):
2018-12-03 Wenson Hsieh <wenson_hsieh@apple.com>
[iOSMac] Unable to upload non-image files using drag and drop in WKWebView
https://bugs.webkit.org/show_bug.cgi?id=192283
<rdar://problem/46399461>
Reviewed by Ryosuke Niwa.
Add a new API test to check that an item provider which contains plain text data and a file URL (but is not
marked as an attachment) is still treated as an attachment upon drop. Furthermore, verify that "text/uri-list"
does not expose the actual file URL written to the item provider.
Additionally, rebaseline an existing API test to remove an extraneous "text/uri-list" type that appears in
`DataTransfer.types`, but whose data is inaccessible via `getData` anyways.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2018-12-01 Don Olmstead <don.olmstead@sony.com>
Cleanup WebKit Features
https://bugs.webkit.org/show_bug.cgi?id=192262
Reviewed by Michael Catanzaro.
Removes obsolete ENABLE options and variable names. Syncs the option's
descriptions with what is present in WebKitFeatures.cmake. Sorts the
options based on the associated define.
* Scripts/webkitperl/FeatureList.pm:
2018-12-01 Chris Dumez <cdumez@apple.com>
[PSON] process-swapping may occur even though opener has handle to openee
https://bugs.webkit.org/show_bug.cgi?id=192277
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-12-01 Jonathan Bedard <jbedard@apple.com>
Unreviewed, rolling out r238764.
Breaks existing layout tests
Reverted changeset:
"webkitpy: Support unicode in MeteredStream"
https://bugs.webkit.org/show_bug.cgi?id=192260
https://trac.webkit.org/changeset/238764
2018-12-01 Yusuke Suzuki <yusukesuzuki@slowstart.org>
Move URL tests from TestWebKitAPI to TestWTF
https://bugs.webkit.org/show_bug.cgi?id=192275
Reviewed by Keith Miller.
Since URL is moved from WebCore to WTF, we also move tests for them from TestWebKitAPI (TestWebCore) to TestWTF.
But we still have some tests in TestWebCore since only WebCore implements TextEncoding. That part is now decoupled
from URLParser tests and new URLParserTextEncoding.cpp is created.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/PlatformWPE.cmake:
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WTF/URL.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URL.cpp.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WTF/URLParser.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/URLParser.cpp.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp: Added.
(TestWebKitAPI::ExpectedParts::isInvalid const):
(TestWebKitAPI::eq):
(TestWebKitAPI::insertTabAtLocation):
(TestWebKitAPI::invalidParts):
(TestWebKitAPI::checkURL):
(TestWebKitAPI::TEST_F):
2018-11-30 Zalan Bujtas <zalan@apple.com>
Unreviewed LFC passing test list update.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-30 Alex Christensen <achristensen@webkit.org>
Move URL from WebCore to WTF
https://bugs.webkit.org/show_bug.cgi?id=190234
Reviewed by Keith Miller.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
* TestWebKitAPI/Tests/WebCore/URL.cpp:
(TestWebKitAPI::createURL):
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkRelativeURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::checkRelativeURLDifferences):
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
* TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
(TestWebKitAPI::originalDataAsString):
(TestWebKitAPI::userVisibleString):
(TestWebKitAPI::literalURL):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/LoadAlternateHTMLString.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
(literalURL):
* TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
* TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
(-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
* TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
(TestWebKitAPI::Util::createURLForResource):
* lldb/lldb_webkit.py:
(__lldb_init_module):
(WTFURL_SummaryProvider):
(WTFURLProvider):
(WebCoreURL_SummaryProvider): Deleted.
(WebCoreURLProvider): Deleted.
(WebCoreURLProvider.__init__): Deleted.
(WebCoreURLProvider.to_string): Deleted.
2018-11-30 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support unicode in MeteredStream
https://bugs.webkit.org/show_bug.cgi?id=192260
Reviewed by Stephanie Lewis.
It's possible that the test runner returns unicode characters to be logged when
running layout tests.
* Scripts/webkitpy/layout_tests/views/metered_stream.py:
(MeteredStream.write): Message written to metered stream should be unicode.
* Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
(RegularTest.test_unicode):
2018-11-30 Jonathan Bedard <jbedard@apple.com>
REGRESSION (r238749): run-api-tests dies with AttributeError: 'IOSSimulatorPort' object has no attribute 'DEFAULT_DEVICE_CLASS'
https://bugs.webkit.org/show_bug.cgi?id=192257
<rdar://problem/46384671>
Reviewed by Stephanie Lewis.
Follow-up fix for r238749.
* Scripts/webkitpy/api_tests/manager.py:
(Manager._initialize_devices): Use DEFAULT_DEVICE_TYPE instead of DEFAULT_DEVICE_CLASS.
2018-11-30 Chris Dumez <cdumez@apple.com>
[PSON] We are sometimes swapping processes even though there is an opened window with an opener link to us
https://bugs.webkit.org/show_bug.cgi?id=192242
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-30 Don Olmstead <don.olmstead@sony.com>
Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
https://bugs.webkit.org/show_bug.cgi?id=192197
Reviewed by Jiewen Tan.
* Scripts/webkitperl/FeatureList.pm:
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-11-30 Dean Jackson <dino@apple.com>
Add first-class support for .mjs files in jsc binary
https://bugs.webkit.org/show_bug.cgi?id=192190
<rdar://problem/46375715>
Reviewed by Keith Miller.
Add .mjs files to the regexp looking for all JS files.
* Scripts/run-jsc-stress-tests:
2018-11-30 Jonathan Bedard <jbedard@apple.com>
webkitpy: Use DeviceType instead of str to represent device class
https://bugs.webkit.org/show_bug.cgi?id=192160
<rdar://problem/46344845>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._custom_device_for_test): Use DeviceTypes instead of strings to represent device type.
(Manager._set_up_run): Do not set _options.device_class, use device_type instead of device_class.
(Manager.run): Use device_type instead of device_class.
(Manager._print_expectations_for_subset): Ditto.
(Manager.print_expectations): Ditto.
* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_uses_custom_device): Use DeviceType and actual device definition.
* Scripts/webkitpy/layout_tests/views/printing.py:
(Printer.print_workers_and_shards): Outputting the device suffix doesn't really help, and means
device type needs to be passed around.
* Scripts/webkitpy/port/apple.py:
(ApplePort.setup_test_run): Use device_type instead of device_class.
* Scripts/webkitpy/port/base.py:
(Port):
(Port.setup_test_run): Use device_type instead of device_class.
* Scripts/webkitpy/port/device_port.py:
(DevicePort):
(DevicePort.setup_test_run): Receive device_type as DeviceType object.
(DevicePort._create_devices): Deleted.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_test_run): Use device_type instead of device_class.
* Scripts/webkitpy/port/ios.py:
(IOSPort):
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort):
(IOSSimulatorPort.__init__): Deleted.
(IOSSimulatorPort._set_device_class): Deleted.
* Scripts/webkitpy/port/test.py:
* Scripts/webkitpy/port/watch.py:
(WatchPort):
* Scripts/webkitpy/port/watch_simulator.py:
(WatchSimulatorPort):
(WatchSimulatorPort.__init__): Deleted.
(WatchSimulatorPort._set_device_class): Deleted.
* Scripts/webkitpy/port/win.py:
(WinPort.setup_test_run): Use device_type instead of device_class.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._disambiguate_device_type): Using the existing devices for this is
a problem if no such device exists yet. Use the _device_identifier_to_name dictionary instead
since this should have hardware types in the device names.
2018-11-30 David Quesada <david_quesada@apple.com>
-[WKProcessPool _downloadURLRequest:] should allow specifying the initiating web view
https://bugs.webkit.org/show_bug.cgi?id=192212
rdar://problem/46363706
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
(-[DownloadProgressTestRunner startDownload:expectedLength:]):
2018-11-30 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Compute min/maxHeight margins only when they are needed.
https://bugs.webkit.org/show_bug.cgi?id=192223
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-30 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][MarginCollapsing] Do not use computed display box values for border and padding
https://bugs.webkit.org/show_bug.cgi?id=192214
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-30 Thibault Saunier <tsaunier@igalia.com>
[GTK][MiniBrowser] Handle Device Info permission requests
https://bugs.webkit.org/show_bug.cgi?id=191585
Reviewed by Carlos Garcia Campos.
* MiniBrowser/gtk/BrowserTab.c:
(permissionRequestDataNew):
(permissionRequestDataFree):
(permissionRequestDialogResponse):
(decidePermissionRequest):
(browserTabConstructed):
2018-11-30 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed GTK+ gardening. Stop running tests without complex text enforced
We have enforced complex text in GTK+ for one release cycle without noticing any major issue nor performance
regression.
* WebKitTestRunner/gtk/main.cpp:
(main):
2018-11-29 Wenson Hsieh <wenson_hsieh@apple.com>
REGRESSION (r238635): Dragging a text selection within WKWebView causes the selection highlight to get into a bad state
https://bugs.webkit.org/show_bug.cgi?id=192165
<rdar://problem/46346682>
Reviewed by Daniel Bates.
Fixes 11 API tests that started failing or timing out after r238635. See below for more details.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
(TestWebKitAPI::webViewForEditActionTesting):
(TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
Ensure that the web view becomes first responder before executing edit actions.
* TestWebKitAPI/Tests/WebKitCocoa/autofocus-contenteditable.html:
* TestWebKitAPI/Tests/WebKitCocoa/contenteditable-and-textarea.html:
Tweak these tests to allow selected content to overflow the width of the web view. Without this change,
ContentEditableToContentEditable and ContentEditableToTextarea will sometimes fail because the content causes
the body to scroll horizontally, so we miss the drop destination.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(loadTestPageAndEnsureInputSession):
Add a new helper to load a test page with a given name, become first responder, and wait until an input session
starts. Use this in various drag and drop tests to reduce code duplication.
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator initWithWebView:]):
(-[DragAndDropSimulator _resetSimulatedState]):
(-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
(-[DragAndDropSimulator _advanceProgress]):
To more accurately emulate UIKit behavior, begin focus preservation when starting a drag, and attempt to clear
the focus preservation token when the drag session ends. This allows us to simulate and test the scenario that
regressed with r238635.
(-[DragAndDropSimulator ensureInputSession]):
(-[DragAndDropSimulator _webView:didStartInputSession:]):
(-[DragAndDropSimulator waitForInputSession]): Deleted.
Refactored into -ensureInputSession. Instead of assuming that an input session has not yet been started, simply
wait for an input session to start if needed.
* TestWebKitAPI/ios/UIKitSPI.h:
Add a new SPI declaration.
2018-11-29 Tim Horton <timothy_horton@apple.com>
Inform clients when editable image attachment backing data changes
https://bugs.webkit.org/show_bug.cgi?id=192206
<rdar://problem/46350277>
Reviewed by Wenson Hsieh.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(-[AttachmentUpdateObserver init]):
(-[AttachmentUpdateObserver dataInvalidated]):
(-[AttachmentUpdateObserver _webView:didInvalidateDataForAttachment:]):
(TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentInvalidation):
(webViewForTestingAttachments):
(TestWebKitAPI::forEachViewInHierarchy):
(TestWebKitAPI::findEditableImageCanvas):
(TestWebKitAPI::drawSquareInEditableImage):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/PencilKitTestSPI.h: Added.
Add a test ensuring that we get an invalidation callback when an editable image is changed.
2018-11-29 Fujii Hironori <Hironori.Fujii@sony.com>
REGRESSION(r238445)[Buildbot] Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
https://bugs.webkit.org/show_bug.cgi?id=192143
Reviewed by Philippe Normand.
Buildbot can't start since r238445.
> Configuration Errors:
> Unknown builder 'GTK Linux 32-bit Release' in scheduler 'trunk'
> Unknown builder 'GTK Linux ARM Release' in scheduler 'trunk'
* BuildSlaveSupport/build.webkit.org-config/config.json: Removed deprecated builders.
2018-11-29 David Quesada <david_quesada@apple.com>
Add SPI to publish NSProgress on active downloads
https://bugs.webkit.org/show_bug.cgi?id=192021
rdar://problem/44405661
Reviewed by Alex Christensen.
Add API tests to exercise the progress-publishing functionality in a variety of scenarios.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm: Added.
(+[DownloadProgressTestProtocol registerProtocolForTestRunner:]):
(+[DownloadProgressTestProtocol unregisterProtocol]):
(+[DownloadProgressTestProtocol canInitWithRequest:]):
(+[DownloadProgressTestProtocol canonicalRequestForRequest:]):
(+[DownloadProgressTestProtocol requestIsCacheEquivalent:toRequest:]):
(-[DownloadProgressTestProtocol startLoading]):
(-[DownloadProgressTestProtocol stopLoading]):
(-[DownloadProgressTestRunner init]):
(-[DownloadProgressTestRunner startLoadingWithProtocol:]):
(-[DownloadProgressTestRunner tearDown]):
(-[DownloadProgressTestRunner _didGetProgress:]):
(-[DownloadProgressTestRunner _didLoseProgress]):
(-[DownloadProgressTestRunner subscribeAndWaitForProgress]):
(-[DownloadProgressTestRunner waitToLoseProgress]):
(-[DownloadProgressTestRunner startDownload:expectedLength:]):
(-[DownloadProgressTestRunner publishProgress]):
(-[DownloadProgressTestRunner receiveData:]):
(-[DownloadProgressTestRunner finishDownloadTask]):
(-[DownloadProgressTestRunner failDownloadTask]):
(-[DownloadProgressTestRunner waitForDownloadDidCreateDestination]):
(-[DownloadProgressTestRunner waitForDownloadFinished]):
(-[DownloadProgressTestRunner waitForDownloadCanceled]):
(-[DownloadProgressTestRunner waitForDownloadFailed]):
(-[DownloadProgressTestRunner waitForUpdatedCompletedUnitCount]):
(-[DownloadProgressTestRunner observeValueForKeyPath:ofObject:change:context:]):
(-[DownloadProgressTestRunner webView:decidePolicyForNavigationResponse:decisionHandler:]):
(-[DownloadProgressTestRunner webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[DownloadProgressTestRunner _downloadDidStart:]):
(-[DownloadProgressTestRunner _download:didCreateDestination:]):
(-[DownloadProgressTestRunner _downloadDidFinish:]):
(-[DownloadProgressTestRunner _downloadDidCancel:]):
(-[DownloadProgressTestRunner _download:didFailWithError:]):
(-[DownloadProgressTestRunner _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(TEST):
2018-11-29 Alexey Proskuryakov <ap@apple.com>
Exception in bot watcher's dashboard if a hidden platform in no longer configured for display
https://bugs.webkit.org/show_bug.cgi?id=185527
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Main.js:
(updateHiddenPlatforms):
2018-11-29 Zalan Bujtas <zalan@apple.com>
[LFC][BFC][Quirk] Body and html height stretching.
https://bugs.webkit.org/show_bug.cgi?id=192154
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-29 Jonathan Bedard <jbedard@apple.com>
webkitpy: Unify device creation
https://bugs.webkit.org/show_bug.cgi?id=192158
<rdar://problem/46344757>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/port/device_port.py:
(DevicePort):
(DevicePort.setup_test_run): Use DEVICE_MANAGER to create devices based on the specified device class.
* Scripts/webkitpy/port/ios.py:
(IOSPort): Add DEFAULT_DEVICE_CLASS.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort):
(IOSDevicePort._create_devices): Deleted.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort._create_devices): Deleted.
* Scripts/webkitpy/port/watch.py:
(WatchPort): Add DEFAULT_DEVICE_CLASS.
* Scripts/webkitpy/port/watch_device.py:
(WatchDevicePort):
(WatchDevicePort._create_devices): Deleted.
* Scripts/webkitpy/port/watch_simulator.py:
(WatchSimulatorPort._create_devices): Deleted.
* Scripts/webkitpy/xcode/device_type_unittest.py:
(DeviceTypeTest.test_from_string): Test that DeviceTypes without hardware types can be constructed
from strings.
2018-11-29 Jonathan Bedard <jbedard@apple.com>
EWS iOS-sim bots sometimes fails to shutdown simulator
https://bugs.webkit.org/show_bug.cgi?id=191864
Reviewed by Aakash Jain.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice._shut_down): Increase time to wait for simulated device to
shut down, ignore exit code indicating a device is already shut down.
2018-11-29 Jonathan Bedard <jbedard@apple.com>
webkitpy: Unify ios_version/watchos_version code
https://bugs.webkit.org/show_bug.cgi?id=192153
<rdar://problem/46343642>
Reviewed by Lucas Forschler.
Treating watchOS and iOS versions differently makes it harder to share code between the similar ports.
* Scripts/webkitpy/port/device_port.py:
(DevicePort):
(DevicePort.device_version): Added.
* Scripts/webkitpy/port/ios.py:
(IOSPort.default_baseline_search_path): Use device_version() instead of ios_version().
(IOSPort.ios_version): Deleted.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort.device_version): Renamed from ios_version().
(IOSDevicePort.ios_version): Deleted.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort.device_version): Renamed from ios_version().
(IOSSimulatorPort.default_child_processes.booted_ios_devices_filter): Use device_version() instead of ios_version().
(IOSSimulatorPort._create_devices): Ditto.
(IOSSimulatorPort.check_sys_deps): Ditto.
(IOSSimulatorPort.ios_version): Deleted.
* Scripts/webkitpy/port/watch.py:
(WatchPort.default_baseline_search_path): Use device_version() instead of watchos_version().
(WatchPort.watchos_version): Deleted.
* Scripts/webkitpy/port/watch_device.py:
(WatchDevicePort.device_version): Renamed from watchos_version().
(WatchDevicePort.watchos_version): Deleted.
* Scripts/webkitpy/port/watch_simulator.py:
(WatchSimulatorPort.device_version): Renamed from watchos_version().
(WatchSimulatorPort.default_child_processes.filter_booted_watchos_devices): Use device_version() instead of watchos_version().
(WatchSimulatorPort._create_devices): Ditto.
(WatchSimulatorPort.check_sys_deps): Ditto.
(WatchSimulatorPort.watchos_version): Deleted.
2018-11-28 Wenson Hsieh <wenson_hsieh@apple.com>
[iOSMac] Dropping text selections from web content into editable elements crashes the web process
https://bugs.webkit.org/show_bug.cgi?id=192113
<rdar://problem/46323701>
Reviewed by Ryosuke Niwa.
Add a test to verify that, when dropping an item with both "com.apple.webarchive" and "public.utf8-plain-text"
representations, the higher fidelity web archive data is used when handling the drop.
* TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Fetch bugs from Bugzilla and submit to Buildbot
https://bugs.webkit.org/show_bug.cgi?id=191947
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/fetcher.py: Added.
2018-11-28 Alex Christensen <achristensen@webkit.org>
Fix iOS API test after r238585
https://bugs.webkit.org/show_bug.cgi?id=192022
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
On iOS, a safe browsing warning over a WKWebView with frame of {0, 0, 0, 0} has a size of {0, 0}, which is fine.
The test was added to catch a bug on Mac platforms, so testing it only on Mac will catch any regression.
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Configure python logging
https://bugs.webkit.org/show_bug.cgi?id=192005
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/__init__.py: Configured logging.
2018-11-28 Keith Rollin <krollin@apple.com>
Update generate-{derived,unified}-sources scripts to support generating .xcfilelist files
https://bugs.webkit.org/show_bug.cgi?id=192031
<rdar://problem/46286816>
Reviewed by Alex Christensen.
The Generate Derived Sources and Generate Unified Sources build phases
in Xcode need to have their inputs and outputs specified. This
specification will come in the form of .xcfilelist files that will be
attached to these build phases. There is one .xcfilelist file that
lists the input file and one that lists the output files. As part of
this work, the various generate-{derived,unified}-sources scripts that
are executed in these Generate build phases are modified to help in
the creation of these .xcfilelist files. In particular, they can now
be invoked with command-line parameters. These parameters are then
used to alter the normal execution of these scripts, causing them to
produce the .xcfilelist files as opposed to actually generating the
files that are listed in those files.
* DumpRenderTree/Scripts/generate-derived-sources.sh:
* WebKitTestRunner/Scripts/generate-derived-sources.sh:
2018-11-28 Keith Rollin <krollin@apple.com>
Revert print_all_generated_files work in r238008; tighten up target specifications
https://bugs.webkit.org/show_bug.cgi?id=192025
<rdar://problem/46284301>
Reviewed by Alex Christensen.
In r238008, I added a facility for DerivedSources.make makefiles to
print out the list of files that they generate. This output was used
in the generation of .xcfilelist files used to specify the output of
the associated Generate Derived Sources build phases in Xcode. This
approach worked, but it meant that people would need to follow a
specific convention to keep this mechanism working.
Instead of continuing this approach, I'm going to implement a new
facility based on the output of `make` when passed the -d flag (which
prints dependency information). This new mechanism is completely
automatic and doesn't need maintainers to follow a convention. To that
end, remove most of the work performed in r238008 that supports the
print_all_generated_files target.
At the same time, it's important for the sets of targets and their
dependencies to be complete and correct. Therefore, also include
changes to bring those up-to-date. As part of that, you'll see
prevalent use of a particular technique. Here's an example:
BYTECODE_FILES = \
Bytecodes.h \
BytecodeIndices.h \
BytecodeStructs.h \
InitBytecodes.asm \
#
BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
all : $(BYTECODE_FILES)
$(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb
...
These lines indicate a set of generated files (those specified in
BYTECODE_FILES). These files are generated by the BytecodeList.rb
tool. But, as opposed to the normal rule where a single foo.output is
generated by foo.input plus some additional dependencies, this rule
produces multiple output files from a tool whose connection to the
output files is not immediately clear. A special approach is needed
where a single rule produces multiple output files. The normal way to
implement this is to use an .INTERMEDIATE target. However, we used
this approach in the past and ran into a problem with it, addressing
it with an alternate approach in r210507. The above example shows this
approach. The .'s in the list of target files are replaced with %'s,
and the result is used as the left side of the dependency rule.
* DumpRenderTree/DerivedSources.make:
* WebKitTestRunner/DerivedSources.make:
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add support to get list of Bugzilla patches needing review
https://bugs.webkit.org/show_bug.cgi?id=191942
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/common/bugzilla.py:
(Bugzilla.get_list_of_patches_needing_reviews): Get list of patches needing review.
(BugzillaBeautifulSoup.fetch_attachment_ids_from_review_queue): Copied from Tools/Scripts/webkitpy/common/net/bugzilla/bugzilla.py
(BugzillaBeautifulSoup._load_query): Ditto.
(BugzillaBeautifulSoup._parse_attachment_ids_request_query): Ditto.
2018-11-28 Daniel Bates <dabates@apple.com>
[iOS] Page not defocused when Find-in-page becomes first responder
https://bugs.webkit.org/show_bug.cgi?id=192084
<rdar://problem/46146777>
Reviewed by Tim Horton.
Add tests for both Mac and iOS to ensure that when finding a string on the page
that we do not start an input session if a match is found in an <input> and the
WKWebView is not the first responder.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm: Added.
(-[WKWebViewFindStringInputDelegate _webView:didStartInputSession:]):
(-[WKWebViewFindStringFindDelegate findString]):
(-[WKWebViewFindStringFindDelegate _webView:didCountMatches:forString:]):
(-[WKWebViewFindStringFindDelegate _webView:didFindMatches:forString:withMatchIndex:]):
(-[WKWebViewFindStringFindDelegate _webView:didFailToFindString:]):
(returnNo):
(returnYes):
(viewIsFirstResponder):
(TestWebKitAPI::TEST):
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::PlatformWebView): Make the view the first responder before the
window key. This matches the ordering used in PlatformWebView::focus(). No behavior change.
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add BeautifulSoup
https://bugs.webkit.org/show_bug.cgi?id=191994
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/thirdparty: Added.
* BuildSlaveSupport/ews-app/ews/thirdparty/BeautifulSoup.py: Added.
* BuildSlaveSupport/ews-app/ews/thirdparty/__init__.py: Added.
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add support to download Patch from Bugzilla
https://bugs.webkit.org/show_bug.cgi?id=191943
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/common/bugzilla.py: Added.
(Bugzilla.retrieve_attachment): Retreives the attachment from Bugzilla and saves to disk.
(Bugzilla._fetch_attachment_json):
(Bugzilla.file_path_for_patch):
* BuildSlaveSupport/ews-app/ews/common/util.py: Added.
(fetch_data_from_url): Method to fetch data from given url.
* BuildSlaveSupport/ews-app/ews/config.py:
2018-11-28 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add methods to update Patch fields
https://bugs.webkit.org/show_bug.cgi?id=191931
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
(Patch.set_sent_to_buildbot):
(Patch.set_bug_id):
(Patch.set_obsolete):
2018-11-28 Yongjun Zhang <yongjun_zhang@apple.com>
Allow WebKit clients to specify a minimum effective width for layout.
https://bugs.webkit.org/show_bug.cgi?id=191499
<rdar://problem/45362678>
Reviewed by Wenson Hsieh.
Allow UIScriptController to set WKWebView's minimum effective width with a new `setMinimumEffectiveWidth` method.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setMinimumEffectiveWidth):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::setViewScale):
(WTR::UIScriptController::setMinimumEffectiveWidth):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setMinimumEffectiveWidth):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::setMinimumEffectiveWidth):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
2018-11-28 Lucas Forschler <lforschler@apple.com>
Fix webkitbot hi command.
https://bugs.webkit.org/show_bug.cgi?id=192080
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/tool/bot/irc_command.py:
(Hi.execute):
2018-11-28 Zalan Bujtas <zalan@apple.com>
[LFC][Quirk] Use non-collapsed vertical margin values when the container is stretched to the size of the ICB.
https://bugs.webkit.org/show_bug.cgi?id=192078
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-28 Zalan Bujtas <zalan@apple.com>
[LFC] Add support for quirk container's collapsing top margin in quirks mode.
https://bugs.webkit.org/show_bug.cgi?id=192070
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-28 Thibault Saunier <tsaunier@igalia.com>
[WebRTC][GStreamer] Make sure to have the default microphone on the top of the list
https://bugs.webkit.org/show_bug.cgi?id=192026
Reviewed by Philippe Normand.
Otherwise we might end up picking a useless one in some applications
(not sure what those application do though).
GStreamer patch proposed as https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/merge_requests/34/diffs
* flatpak/org.webkit.CommonModules.yaml:
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-good-0014-pulse-Mark-default-devices-as-default.patch: Added.
2018-11-28 Tomas Popela <tpopela@redhat.com>
[GTK] Silence compilation warnings in glib unittests
https://bugs.webkit.org/show_bug.cgi?id=192009
Reviewed by Michael Catanzaro.
Mark the destructor as virtual.
* TestWebKitAPI/glib/WebKitGLib/TestMain.h:
(Test::~Test):
2018-11-27 Mark Lam <mark.lam@apple.com>
ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
https://bugs.webkit.org/show_bug.cgi?id=192055
<rdar://problem/46288783>
Reviewed by Saam Barati.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-11-27 Alex Christensen <achristensen@webkit.org>
Make synchronous IPC introduced in r237267 asynchronous
https://bugs.webkit.org/show_bug.cgi?id=190757
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-27 Jonathan Bedard <jbedard@apple.com>
webkitpy: Add watchOS ports
https://bugs.webkit.org/show_bug.cgi?id=191974
<rdar://problem/46251051>
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/factory.py:
(PortFactory): Add WatchDevice and WatchSimulator ports.
* Scripts/webkitpy/port/watch.py: Added.
(WatchPort): Base class for watchOS ports.
* Scripts/webkitpy/port/watch_device.py: Added.
(WatchDevicePort): Class for running layout tests on a watchOS device.
* Scripts/webkitpy/port/watch_simulator.py: Added.
(WatchSimulatorPort): Class for running layout tests on a watchOS simulator.
* Scripts/webkitpy/port/watch_simulator_unittest.py: Added.
(WatchSimulatorTest):
* Scripts/webkitpy/port/watch_testcase.py: Added.
(WatchTest):
2018-11-27 Alex Christensen <achristensen@webkit.org>
Safe browsing warning text needs to be visible on High Sierra
https://bugs.webkit.org/show_bug.cgi?id=192022
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
2018-11-27 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, fix the watchOS engineering build
Disable a newly added API test, since DDScannerResult is unavailable on watchOS.
* TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
2018-11-27 Chris Dumez <cdumez@apple.com>
Regression(PSON) crash under WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame()
https://bugs.webkit.org/show_bug.cgi?id=191983
<rdar://problem/46246863>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-27 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add support to communicate with Buildbot (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=191935
<rdar://problem/46262314>
Unreviewed infrastructure fix.
* BuildSlaveSupport/ews-app/ews/common/buildbot.py:
(Buildbot.send_patch_to_buildbot):
2018-11-26 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] No way for clients to tell whether the content view is in the responder chain when the web view is
https://bugs.webkit.org/show_bug.cgi?id=169212
<rdar://problem/30899656>
Reviewed by Tim Horton.
Add an API test to exercise the behavior of `-_contentViewIsFirstResponder` when an embedded text input becomes
and resigns first responder.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm: Added.
(-[FirstResponderTestingView initWithFrame:]):
(-[FirstResponderTestingView inputField]):
(TestWebKitAPI::TEST):
2018-11-26 Fujii Hironori <Hironori.Fujii@sony.com>
[CMake] Remove ENABLE_ACCESSIBILITY CMake variable
https://bugs.webkit.org/show_bug.cgi?id=191831
Reviewed by Michael Catanzaro.
* WebKitTestRunner/CMakeLists.txt:
2018-11-26 Tim Horton <timothy_horton@apple.com>
Insert <attachment> elements under editable images to make their backing data accessible
https://bugs.webkit.org/show_bug.cgi?id=191844
<rdar://problem/30900149>
Reviewed by Simon Fraser.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::attachmentInfo):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::attachmentInfo):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::attachmentInfo):
Add a UIScriptController mechanism to retrieve information about
a given attachment.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add support to communicate with Buildbot
https://bugs.webkit.org/show_bug.cgi?id=191935
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/common/__init__.py: Added.
* BuildSlaveSupport/ews-app/ews/common/buildbot.py: Added.
2018-11-26 Jonathan Bedard <jbedard@apple.com>
webkitpy: Race condition in ServerProcess tests
https://bugs.webkit.org/show_bug.cgi?id=191989
<rdar://problem/45536844>
Reviewed by Lucas Forschler.
Serializing these tests to prevent the race conditions.
* Scripts/webkitpy/port/server_process_unittest.py:
(TestServerProcess.serial_test_basic):
(TestServerProcess.serial_test_read_after_process_exits):
(TestServerProcess.serial_test_process_crashing):
(TestServerProcess.serial_test_process_crashing_no_data):
(TestServerProcess.test_basic): Deleted.
(TestServerProcess.test_read_after_process_exits): Deleted.
(TestServerProcess.test_process_crashing): Deleted.
(TestServerProcess.test_process_crashing_no_data): Deleted.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add field in Patch object to indicate if it has been sent to Buildbot
https://bugs.webkit.org/show_bug.cgi?id=191929
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
(Patch): Added sent_to_buildbot field.
(Patch.is_patch_sent_to_buildbot): Checks if the patch has been sent to Buildbot.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add a config file
https://bugs.webkit.org/show_bug.cgi?id=191933
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/config.py: Added.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add methods to save patch to database
https://bugs.webkit.org/show_bug.cgi?id=191928
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
(Patch.save_patch): Method to save the patch to database.
(Patch.save_patches): Method to save multiple patches to database.
(Patch.is_valid_patch_id): Checks if the patch id is valid.
(Patch.is_existing_patch_id): Checks if the patch id already exists in database.
2018-11-26 Alex Christensen <achristensen@webkit.org>
Rename WKWebView._safeBrowsingWarningForTesting to _safeBrowsingWarning to use it for more than testing
https://bugs.webkit.org/show_bug.cgi?id=191981
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
(safeBrowsingView):
2018-11-26 Daniel Bates <dabates@apple.com>
REGRESSION (r237738): Command Down Arrow doesn't scroll to the end of a page anymore
https://bugs.webkit.org/show_bug.cgi?id=191967
<rdar://problem/45976390>
Reviewed by Tim Horton.
Add more test infrastructure to dispatch key up events.
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(createHIDKeyEvent): Renamed from createHIDKeyDownEvent() and modified to take a boolean as
to whether to create an event for a key down or key up.
(createHIDKeyDownEvent): Deleted; renamed to createHIDKeyEvent().
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::createUIPhysicalKeyboardEvent): Added. Convenience function to create a UIPhysicalKeyboardEvent.
(WTR::UIScriptController::keyDown): Modified to dispatch a key up event in addition to dispatching
a key down event.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Set Foreign Keys in EWS Django app models
https://bugs.webkit.org/show_bug.cgi?id=191790
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/builds.py: Set Foreign Key.
* BuildSlaveSupport/ews-app/ews/models/steps.py: Ditto.
2018-11-26 Aakash Jain <aakash_jain@apple.com>
[ews-app] Do not store patch content in database
https://bugs.webkit.org/show_bug.cgi?id=191788
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/patch.py: Removed content field.
2018-11-26 Jonathan Bedard <jbedard@apple.com>
webkitpy: Retry app installation on watchOS simulators (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=191769
<rdar://problem/46139850>
Unreviewed infrastructure fix.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice): Increase retry attempts.
2018-11-26 Daniel Bates <dabates@apple.com>
Move testRunner.toggleCapsLock() to uiController
https://bugs.webkit.org/show_bug.cgi?id=191972
Reviewed by Tim Horton.
Move testRunner.toggleCapsLock() to uiController as uiController is the preferred JavaScript
object for UI test functions. Having this functionality be on uiController makes it an
asynchronous function naturally and complements use of onkeydown, onkeyup listeners to know
when the Caps Lock key event is dispatched. It also facilitates its use directly as part of
scripts with other uiController functions invocations that are passed in a single invocation
of testRunner.runUIScript().
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::toggleCapsLock):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::toggleCapsLock):
Added stub functions that invoke the callback. We do not support toggling caps lock in Legacy
WebKit at the moment. Legacy WebKit reads the caps lock key state directly from the OS. Modern
WebKit caches the caps lock state in the WebProcess as a natural side effect of the fact that
the UIProcess is the only process capable of querying the caps lock key state from the OS and
hence the UIProcess must send over this state to the WebProcess.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Add IDL for new function.
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::toggleCapsLock): Added empty implementation for ports non-Cocoa ports.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::toggleCapsLock): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::toggleCapsLock): Deleted; moved to UIScriptController::toggleCapsLock().
Removed logic to handle testRunner.toggleCapsLock().
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::toggleCapsLock): Add stub function that invokes the callback
and a FIXME comment that explains that we will implement this function in <https://bugs.webkit.org/show_bug.cgi?id=191815>.
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::toggleCapsLock): Moved the implementation from TestController::toggleCapsLock().
2018-11-26 Brent Fulgham <bfulgham@apple.com>
[Win] Reduce the use of WKSI library calls: CoreAnimation
https://bugs.webkit.org/show_bug.cgi?id=191777
<rdar://problem/46140542>
Reviewed by Zalan Bujtas.
Update the Windows build of WebKit to refer to the SPI headers, rather than WebKitSystemInterface.
Move a small amount of glue code from WKSI to WebCore, and remove any includes or link
directives for WebKitSystemInterface.lib.
* TestWebKitAPI/PlatformWin.cmake:
2018-11-25 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Use float box's margin box to adjust the line constraints.
https://bugs.webkit.org/show_bug.cgi?id=191961
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-25 Zalan Bujtas <zalan@apple.com>
Unreviewed test fix after r238467.
* TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
(TestWebKitAPI::TEST):
2018-11-25 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, fix the internal iOS 12 build after r238471
* TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
(TEST):
2018-11-25 Tim Horton <timothy_horton@apple.com>
Make it possible to insert editable images with a gesture
https://bugs.webkit.org/show_bug.cgi?id=191937
Reviewed by Wenson Hsieh.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::drawSquareInEditableImage):
If the canvas already has a drawing, draw a new stroke on top of it
instead of removing the existing stroke.
2018-11-24 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Add WKWebView SPI to trigger and remove data detection
https://bugs.webkit.org/show_bug.cgi?id=191918
<rdar://problem/36185051>
Reviewed by Tim Horton.
Add an API test to exercise the new WebKit SPI.
* TestWebKitAPI/DataDetectorsCoreSPI.h: Added.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
(-[WKWebView synchronouslyDetectDataWithTypes:]):
(-[WKWebView synchronouslyRemoveDataDetectedLinks]):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
(-[TestWKWebView tagsInBody]): Deleted.
(-[TestWKWebView expectElementTagsInOrder:]): Deleted.
(-[TestWKWebView expectElementCount:tagName:]): Deleted.
(-[TestWKWebView expectElementTag:toComeBefore:]): Deleted.
Rename this from `-expectElementCount:tagName:` to `-expectElementCount:querySelector:`.
* TestWebKitAPI/Tests/WebKitCocoa/data-detectors.html: Added.
Add a new test page containing some content that can be data detected.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[WKWebView tagsInBody]):
(-[WKWebView expectElementTagsInOrder:]):
(-[WKWebView expectElementCount:querySelector:]):
(-[WKWebView expectElementTag:toComeBefore:]):
Move some testing helper functions from WKAttachmentTests to a testing category on WKWebView. This allows us to
use `-expectElementCount:querySelector:` in tests outside of WKAttachmentTests.
(-[WKWebView objectByEvaluatingJavaScript:]):
(-[WKWebView objectByEvaluatingJavaScriptWithUserGesture:]):
(-[WKWebView stringByEvaluatingJavaScript:]):
Move some common helper functions from TestWKWebView to a testing category on WKWebView.
(-[TestWKWebView objectByEvaluatingJavaScript:]): Deleted.
(-[TestWKWebView objectByEvaluatingJavaScriptWithUserGesture:]): Deleted.
(-[TestWKWebView stringByEvaluatingJavaScript:]): Deleted.
2018-11-23 Sam Weinig <sam@webkit.org>
Add raw pointer overloads to ListHashSet via SmartPtr specialized functions
https://bugs.webkit.org/show_bug.cgi?id=191936
Reviewed by Zalan Bujtas.
Adds tests for raw pointer overloads in ListHashSet.
* TestWebKitAPI/Tests/WTF/HashSet.cpp:
* TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
2018-11-23 Wenson Hsieh <wenson_hsieh@apple.com>
Enable drag and drop support for iOSMac
https://bugs.webkit.org/show_bug.cgi?id=191818
<rdar://problem/43907454>
Reviewed by Dean Jackson.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-11-23 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add support for variable height runs.
https://bugs.webkit.org/show_bug.cgi?id=191925
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-23 Alberto Garcia <berto@igalia.com>
[GTK] [WPE] Tools/Platform{GTK,WPE}.cmake files missing from the tarballs
https://bugs.webkit.org/show_bug.cgi?id=191923
Add Tools/PlatformGTK.cmake and Tools/PlatformWPE.cmake to their
respective tarballs.
Reviewed by Carlos Garcia Campos.
* gtk/manifest.txt.in:
* wpe/manifest.txt.in:
2018-11-22 Chris Dumez <cdumez@apple.com>
Regression(r238353) Load sometimes hangs when navigating back after a cross-site navigation
https://bugs.webkit.org/show_bug.cgi?id=191914
Reviewed by Ryosuke Niwa.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-22 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Offset formatting context root runs with horizontal margins.
https://bugs.webkit.org/show_bug.cgi?id=191900
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-22 Philippe Normand <pnormand@igalia.com>
[GTK] Remove unmaintained bots
https://bugs.webkit.org/show_bug.cgi?id=191467
Reviewed by Alex Christensen.
The Linux 32-bits and ARM build-slaves are no longer maintained
and have been failing for months, so get rid of them.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2018-11-22 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Do not disable signals when running "usual" commands
https://bugs.webkit.org/show_bug.cgi?id=190679
Reviewed by Philippe Normand.
Otherwise <ctr>c doesn't work while compiling. It is not the best fix
as there are cases we want to let only children receive signals, but
it is not clear how to determine when (when running gdb, we still
disable those).
* flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
2018-11-21 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] [WebKit2] Add support for replacing find-in-page text matches
https://bugs.webkit.org/show_bug.cgi?id=191786
<rdar://problem/45813871>
Reviewed by Ryosuke Niwa.
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController setFindBarView:]):
Fix a bug in MiniBrowser that prevents AppKit from displaying the "All" button in the find bar after checking
the "Replace" option.
* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
Add an API test to exercise find-and-replace API using WKWebView.
(replaceMatches):
(TEST):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::findOptionsFromArray):
(WTR::TestRunner::findString):
(WTR::TestRunner::findStringMatchesInPage):
(WTR::TestRunner::replaceFindMatchesAtIndices):
Add TestRunner hooks to simulate find-in-page and replace.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2018-11-21 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Horizontal margins should be considered as non-breakable space
https://bugs.webkit.org/show_bug.cgi?id=191894
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-21 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Border should be considered as non-breakable space
https://bugs.webkit.org/show_bug.cgi?id=191891
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-21 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Take nonBreakableStart/End into use.
https://bugs.webkit.org/show_bug.cgi?id=191873
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-20 Jeff Miller <jeffm@apple.com>
Return nullptr immediately if the key doesn't exist in the HashMap.
https://bugs.webkit.org/show_bug.cgi?id=191841
Reviewed by Chris Dumez.
Add a test that would crash prior to the fix for this bug.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKNSDictionaryEmptyDictionaryCrash.mm: Added.
(TestWebKitAPI::TEST):
2018-11-19 Alex Christensen <achristensen@webkit.org>
Add SPI to disable JIT in a WKWebView
https://bugs.webkit.org/show_bug.cgi?id=191822
<rdar://problem/28119360>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/DisableJIT.mm: Added.
(TEST):
2018-11-19 Basuke Suzuki <basuke.suzuki@sony.com>
[Curl] Add API for CertificateInfo.
https://bugs.webkit.org/show_bug.cgi?id=191647
Reviewed by Alex Christensen.
Added test for new WKCertificateInfo API.
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp: Added.
(TestWebKitAPI::Curl::makeCertificateInfo):
(TestWebKitAPI::Curl::isSamePEM):
(TestWebKitAPI::Curl::TEST):
2018-11-19 Wenson Hsieh <wenson_hsieh@apple.com>
Unreviewed, fix the internal iOS debug build after r238380
UICalloutBar should only be declared when the public (non-internal) SDK is used to build WebKit; otherwise, we
end up with duplicate declarations of UICalloutBar.
* TestWebKitAPI/ios/UIKitSPI.h:
2018-11-19 David Quesada <david_quesada@apple.com>
EXC_BAD_ACCESS when invoking a DownloadProxy's destination decision handler after the download has been canceled
https://bugs.webkit.org/show_bug.cgi?id=191762
rdar://problem/46151509
Reviewed by Dean Jackson.
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
Enable the Download API test on iOS, since the platform supports downloads. All the
tests pass already, except for one which was written using AppKit-specific code:
TEST(_WKDownload, RedirectedDownload):
Use a more platform-agnostic approach to starting the download in this API test.
Instead of manually triggering an NSMenu item to download a file from a link, the
test will simulate a user-initiated click on the link, and the navigation delegate
will direct the web view to start a download based on the link's navigation action.
Additionally, remove the manual creation of a new NSWindow. TestWKWebView makes its
own UI/NSWindow.
TEST(_WKDownload, DownloadCanceledWhileDecidingDestination):
Add an API test _WKDownload.DownloadCanceledWhileDecidingDestination to simulate the
conditions that would trigger this crash - handling a download's -decideDestination…
delegate call by canceling the download, waiting for the UI process to be notified
that the download has been canceled, and calling the decision handler. This should
not crash.
(-[CancelDownloadWhileDecidingDestinationDelegate _downloadDidFinish:]):
(-[CancelDownloadWhileDecidingDestinationDelegate _download:didFailWithError:]):
(-[CancelDownloadWhileDecidingDestinationDelegate _downloadDidCancel:]):
(-[CancelDownloadWhileDecidingDestinationDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
(-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]): Deleted.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView objectByEvaluatingJavaScriptWithUserGesture:]):
Add a user-initated version of -objectByEvaluatingJavaScript:. This is needed in
order to maintain the behavior of the RedirectedDownload test, which verifies the
state of the _WKDownload.wasUserInitiated property.
2018-11-19 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS Debug] Assertion failure in NSComparisonResult UIContentSizeCategoryCompareToCategory()
https://bugs.webkit.org/show_bug.cgi?id=190401
<rdar://problem/45195285>
Reviewed by Dean Jackson.
Work around sporadic UIKit assertions when running API tests that may present a UICalloutBar. Currently, UIKit
asks for the `UIApp`’s `-preferredContentSizeCategory` when showing or laying out the callout bar. However,
TestWebKitAPI lacks a UIApp altogether, and forcing one to be initialized via `UIApplicationInstantiateSingleton`
causes numerous other UIKit and WebKit assertions to be hit.
In lieu of TestWebKitAPI becoming a real UI application (see https://webkit.org/b/175204), simply don't allow
the callout bar to be initialized in TestWKWebView-based API tests. This encompasses all API tests which
have some chance of causing the callout bar to be shown by making a ranged text selections during the test.
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(suppressUICalloutBar):
(-[TestWKWebView initWithFrame:configuration:addToWindow:]):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-11-19 Fujii Hironori <Hironori.Fujii@sony.com>
REGRESSION(r238016)[GTK][TestWebKitAPI][Ninja] TestJSC can't compile "Bytecodes.h: No such file or directory"
https://bugs.webkit.org/show_bug.cgi?id=191692
Reviewed by Michael Catanzaro.
r238016 added a new #include, and requires JSC's derived headers
to be copied into the forwarding header directory.
WEBKIT_MAKE_FORWARDING_HEADERS is using POST_BUILD event to copy
derived headers to the forwarding header directory. This is done
after linking JSC library.
GTK port has TestJSC which has a dependency to JSC static library.
And, this dependency is a link time dependency which means
compiling source files of TestJSC starts before the POST_BUILD
event of JSC. Thus, required header can't be found.
Add an intermediate target between TestJSC and JavaScriptCore to
ensure derived headers are copied into the forwarding header
directory.
* TestWebKitAPI/PlatformGTK.cmake: Added a new custom target pre-TestJSC.
* TestWebKitAPI/PlatformWPE.cmake: Ditto.
2018-11-19 Alejandro G. Castro <alex@igalia.com>
[GTK][WPE] Solve some issues in the enumerateDevices code
https://bugs.webkit.org/show_bug.cgi?id=191832
Reviewed by Carlos Garcia Campos.
* TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
(serverCallback): Make all the Strings with HTML code static.
(testWebsiteDataDeviceIdHashSalt): Change the webView settings in
the test.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(WebViewTest::initializeWebView): Remove the initialization of the
webView settings, we now do it in the specific test.
2018-11-18 Chris Dumez <cdumez@apple.com>
[PSON] Received an invalid message "WebPageProxy.DidPerformClientRedirect" from the web process
https://bugs.webkit.org/show_bug.cgi?id=191828
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/client-side-redirect.html: Added.
2018-11-17 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Remove all usages of UIItemProvider, UIItemProviderReading, and related classes
https://bugs.webkit.org/show_bug.cgi?id=191819
Reviewed by Dan Bernstein.
Replace UIItemProvider (and related classes) with NSItemProvider.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(platformCopyPNG):
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(-[NSItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
Replace usages of this deprecated method with `-registerDataRepresentationForTypeIdentifier:visibility:loadHandler:`.
(checkEstimatedSize):
(checkSuggestedNameAndEstimatedSize):
(TestWebKitAPI::TEST):
(-[UIItemProvider registerDataRepresentationForTypeIdentifier:withData:]): Deleted.
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[MockDragDropSession canLoadObjectsOfClass:]):
(-[MockDragDropSession canLoadObjectsOfClasses:]):
(-[MockDropSession initWithProviders:location:window:allowMove:]):
(-[MockDropSession canCreateItemsOfClass:]):
(-[DragAndDropSimulator _advanceProgress]):
(-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
(-[DragAndDropSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-11-17 Chris Dumez <cdumez@apple.com>
ASSERTION FAILED: m_messageReceivers.contains(...) under ViewGestureController removeMessageReceiver
https://bugs.webkit.org/show_bug.cgi?id=191734
<rdar://problem/46151497>
Reviewed by Ryosuke Niwa.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-17 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] InlineFormattingState::addDetachingRule should accumulate rules.
https://bugs.webkit.org/show_bug.cgi?id=191801
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-17 Jer Noble <jer.noble@apple.com>
Regression(r233865): Causes synchronous IPC in the middle of layout
https://bugs.webkit.org/show_bug.cgi?id=188307
<rdar://problem/42807306>
Reviewed by Eric Carlson.
Follow-up test fix for r238322:
In ExitFullscreenOnEnterPiP.ElementFullScreen, explicitly make the video
element in element fullscreen the "main content" by playing the video during
a user gesture; only "main content" videos will cause fullscreen mode to exit
when that element is taken into PiP.
In FullscreenZoomInitialFrame.WebKit, the WebView is not visible, so the Page
is considered hidden, and fullscreen is not allowed when the WebView is hidden.
Make the WebView visible by ordering the test window on-screen.
* TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.html:
* TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
(TestWebKitAPI::FullscreenZoomInitialFrame::runTest):
2018-11-16 Alex Christensen <achristensen@webkit.org>
Tweak _showSafeBrowsingWarningWithTitle SPI
https://bugs.webkit.org/show_bug.cgi?id=191799
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
2018-11-16 Ryosuke Niwa <rniwa@webkit.org>
REGRESSION (r238294): TestWebKitAPI.WKNavigation.ProcessCrashDuringCallback failing on iOS
https://bugs.webkit.org/show_bug.cgi?id=191783
Reviewed by Chris Dumez.
Allow either WKErrorWebContentProcessTerminated or WKErrorWebViewInvalidated since the test
is closing WebView, thereby invalidating the view, which is racing with the process termination.
* TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
(TEST):
2018-11-16 Chris Dumez <cdumez@apple.com>
ProcessSwap.DisableForInspector API test is failing
https://bugs.webkit.org/show_bug.cgi?id=191798
Reviewed by Joseph Pecoraro.
We support process swapping when Web Inspector is shown now so update the
API test accordingly.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-16 Ryan Haddad <ryanhaddad@apple.com>
Update buildbot dashboard after Windows 7/10 updates
https://bugs.webkit.org/show_bug.cgi?id=191219
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform td.logo::before):
(table.queue-grid tr.platform.windows-10 td.logo::before):
(table.queue-grid tr.platform.wincairo-windows-10 td.logo::before):
(table.queue-grid tr.platform.windows-7 td.logo::before):
(table.queue-grid tr.platform.wincairo-windows-10 img.logo):
2018-11-16 Chris Dumez <cdumez@apple.com>
Regression(PSON) WebKit.GeolocationTransitionToHighAccuracy API test is timing out
https://bugs.webkit.org/show_bug.cgi?id=191789
Reviewed by Alex Christensen.
Relate the 2 test pages so they use the same process since WKContextSetMaximumNumberOfProcesses()
SPI no longer works with PSON / Process prewarming.
* TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
(TestWebKitAPI::TEST):
2018-11-16 Jonathan Bedard <jbedard@apple.com>
webkitpy: Retry app installation on watchOS simulators
https://bugs.webkit.org/show_bug.cgi?id=191769
<rdar://problem/46139850>
Reviewed by Aakash Jain.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.install_app): Retry app installations.
2018-11-16 Zalan Bujtas <zalan@apple.com>
Add DidFirstMeaningfulPaint milestone.
https://bugs.webkit.org/show_bug.cgi?id=191754
Reviewed by Simon Fraser.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp: Added.
(TestWebKitAPI::didReachMilestone):
(TestWebKitAPI::setPageLoaderClient):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone_Bundle.cpp: Copied from Source/WebKit/UIProcess/API/C/WKPageRenderingProgressEvents.h.
(TestWebKitAPI::FirstMeaningfulPaintMilestoneTest::FirstMeaningfulPaintMilestoneTest):
(TestWebKitAPI::FirstMeaningfulPaintMilestoneTest::didCreatePage):
2018-11-16 Takashi Komori <Takashi.Komori@sony.com>
[WinCairo][WebKitTestRunner] Test contents window is displayed while testing.
https://bugs.webkit.org/show_bug.cgi?id=191593
Reviewed by Alex Christensen.
Hide TestRunner window and taskbar button.
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::windowSnapshotImage):
2018-11-16 Alex Christensen <achristensen@webkit.org>
Add API to disable safe browsing checks
https://bugs.webkit.org/show_bug.cgi?id=191610
Reviewed by Dean Jackson.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(resourceURL):
(TEST):
(safeBrowsingView):
(simpleURL): Deleted.
2018-11-16 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add support for out-of-flow positioned boxes
https://bugs.webkit.org/show_bug.cgi?id=191726
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-15 Myles C. Maxfield <mmaxfield@apple.com>
WKPreferencesSetFontSmoothingLevel doesn't actually do anything
https://bugs.webkit.org/show_bug.cgi?id=191708
Reviewed by Simon Fraser.
Delete the symbol because no one calls it and it doesn't do anything
* TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
(TestWebKitAPI::TEST):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2018-11-15 Truitt Savell <tsavell@apple.com>
Unreviewed, rolling out r238244.
Caused High Sierra test runs to fail early with 50 crashes and
casued 25 API failures.
Reverted changeset:
"[css-logical] Implement flow-relative margin, padding and
border shorthands"
https://bugs.webkit.org/show_bug.cgi?id=188697
https://trac.webkit.org/changeset/238244
2018-11-15 Aakash Jain <aakash_jain@apple.com>
Increase EWS lock timeout to 3 hours
https://bugs.webkit.org/show_bug.cgi?id=191705
Reviewed by Alexey Proskuryakov.
* QueueStatusServer/config/queues.py: Increased EWS lock timeout to 3 hours.
2018-11-15 Chris Dumez <cdumez@apple.com>
IndexedDB.IndexedDBTempFileSize API test times out with process prewarming enabled
https://bugs.webkit.org/show_bug.cgi?id=191671
<rdar://problem/46086062>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2018-11-15 Oriol Brufau <obrufau@igalia.com>
[css-logical] Implement flow-relative margin, padding and border shorthands
https://bugs.webkit.org/show_bug.cgi?id=188697
Reviewed by Simon Fraser and Antti Koivisto.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
Allow tests to enable the CSSLogicalEnabled flag in WK1.
* Scripts/webkitpy/style/checkers/jsonchecker.py:
(JSONCSSPropertiesChecker.check_codegen_properties):
Allow CSS property definitions to have a 'runtime-flag' parameter which
disables the property when the specified runtime flag is disabled.
2018-11-15 Timothy Hatcher <timothy@apple.com>
REGRESSION (r238212): WebKit.BackgroundColor* API test failures.
https://bugs.webkit.org/show_bug.cgi?id=191697
rdar://problem/46098570
Reviewed by Dean Jackson.
* TestWebKitAPI/Tests/mac/BackgroundColor.mm:
(TestWebKitAPI::TEST): Updated for new default background color.
2018-11-15 Jonathan Bedard <jbedard@apple.com>
webkitpy: Check for specific process instead of using data migrator (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=191551
<rdar://problem/45993156>
Reviewed by Aakash Jain.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDevice.is_usable): Use software_variant instead of software_version for watchOS.
2018-11-15 Daniel Bates <dabates@apple.com>
[iOS] Shift + Tab does not focus previous field
https://bugs.webkit.org/show_bug.cgi?id=191596
<rdar://problem/45892053>
Reviewed by Wenson Hsieh.
Add infrastructure to support testing a key down event with modifiers by creating
and dispatching a UIEvent. This infrastructure replaces the previous mechanism in
Tools/WebKitTestRunner/ios/HIDEventGenerator.mm to generate a IOHIDEvent for a
keydown as it did not support creating an event with modifier key state that would
be recognized by UIKit.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::keyDown):
(WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
(WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
Add function uiController.keyDown() that takes a character that represents a keyboard key
and an array of modifier keys. The behavior of this function is analogous to eventSender.keyDown().
Remove functions uiController.keyDownUsingHardwareKeyboard() and uiController.keyUpUsingHardwareKeyboard()
as the former is replaced by uiController.keyDown() and the latter was never used.
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::keyDown): Added.
(WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
(WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(createHIDKeyDownEvent): Added.
(-[HIDEventGenerator keyDown:completionBlock:]): Deleted.
(-[HIDEventGenerator keyUp:completionBlock:]): Deleted.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::arrayLength): Added.
(WTR::parseModifier): Added.
(WTR::parseModifierArray): Added.
(WTR::UIScriptController::keyDown):
(WTR::UIScriptController::keyDownUsingHardwareKeyboard): Deleted.
(WTR::UIScriptController::keyUpUsingHardwareKeyboard): Deleted.
2018-11-15 Keith Rollin <krollin@apple.com>
Delete old .xcfilelist files
https://bugs.webkit.org/show_bug.cgi?id=191669
<rdar://problem/46081994>
Reviewed by Chris Dumez.
.xcfilelist files were created and added to the Xcode project files in
https://trac.webkit.org/changeset/238008/webkit. However, they caused
build issues and they were removed from the Xcode projects in
https://trac.webkit.org/changeset/238055/webkit. This check-in removes
the files from the repository altogether. They'll ultimately be
replaced with new files with names that indicate whether the
associated files are inputs to the Run Script phase or are files
created by the Run Script phase.
* DumpRenderTree/DerivedSources.xcfilelist: Removed.
* WebKitTestRunner/DerivedSources.xcfilelist: Removed.
2018-11-14 Zalan Butjas <zalan@apple.com>
[LFC][IFC] Add support for in-flow positioned inline boxes.
https://bugs.webkit.org/show_bug.cgi?id=191672
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-14 Keith Rollin <krollin@apple.com>
Move scripts for Derived and Unified Sources to external files
https://bugs.webkit.org/show_bug.cgi?id=191670
<rdar://problem/46082278>
Reviewed by Keith Miller.
Move the scripts in the Generate Derived Sources and Generate Unified
Sources Run Script phases from the Xcode projects to external shell
script files. Then invoke those scripts from the Run Script phases.
This refactoring is being performed to support later work that will
invoke these scripts in other contexts.
The scripts were maintained as-is when making the move. I did a little
reformatting and added 'set -e' to the top of each file, but that's
it.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/Scripts/generate-derived-sources.sh: Added.
* WebKitTestRunner/Scripts/generate-derived-sources.sh: Added.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2018-11-14 Chris Dumez <cdumez@apple.com>
WebKit.DecidePolicyForNavigationActionForHyperlinkThatRedirects API fails when PSON is enabled
https://bugs.webkit.org/show_bug.cgi?id=191640
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/DecidePolicyForNavigationAction.mm:
(runDecidePolicyForNavigationActionForHyperlinkThatRedirects):
(TEST):
2018-11-14 Chris Dumez <cdumez@apple.com>
REGRESSION (r238115): [iOS] TestWebKitAPI.ProcessSwap.NavigateToInvalidURL is failing
https://bugs.webkit.org/show_bug.cgi?id=191660
Reviewed by Ryosuke Niwa.
The test tries to navigate to an invalid URL and makes sure that we do not process swap
for such load. The test was inherently racing because it was doing:
<body onload="setTimeout(() => alert('DONE'), 0); location.href = 'http://A=a%B=b'">
Its load event handler tries to navigate to 'http://A=a%B=b' and sets a 0 timer to
log an alert, which causes the API test to keep going and check that we did not swap
process. The issue is that a 0 timer may not be sufficient to trigger the load, as
the policy decision is asynchronous and relies on the UIProcess responding to it.
To address the issue, the test now waits for the next policy decision, spins the
run loop and then makes sure we did not swap process. It no longer relies on a message
from the page.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2018-11-14 Chris Dumez <cdumez@apple.com>
WebKit.WebsiteDataStoreCustomPaths API test is failing when enabling process prewarming
https://bugs.webkit.org/show_bug.cgi?id=191638
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(runWebsiteDataStoreCustomPaths):
(TEST):
2018-11-14 Alex Christensen <achristensen@webkit.org>
Add SPI to show a safe browsing warning
https://bugs.webkit.org/show_bug.cgi?id=191604
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(TEST):
2018-11-14 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] A few drag and drop tests are crashing after r238146
https://bugs.webkit.org/show_bug.cgi?id=191617
Reviewed by Dean Jackson.
Augment these crashing tests to verify that selection commands are suppressed during drop over editable elements
via more robust means. These tests currently hit an assertion when revealing the callout bar too early, because
TestWebKitAPI is not a UI application (see <https://webkit.org/b/190401>).
Instead of relying on this other bug, directly ask the text input whether it is suppressing selection commands
during a drop, and remember the answer via DragAndDropSimulator.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::TEST):
Add to the existing tests that started failing after r238146.
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView textInputContentView]):
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
(-[DragAndDropSimulator _resetSimulatedState]):
(-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-11-14 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] [WebKit2] Hook up some more editing actions (-pasteAndMatchStyle:, -makeTextWritingDirectionNatural:)
https://bugs.webkit.org/show_bug.cgi?id=191605
<rdar://problem/45813991>
Reviewed by Dean Jackson.
Adds two new API tests to exercise -_pasteAndMatchStyle: and -makeTextWritingDirectionNatural:.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
Pull `-_synchronouslyExecuteEditCommand:argument:` out of WKAttachmentTests and into shared code, in a new
category on WKWebView declared in TestWKWebView. Also, fix an unrelated typo in a nearby category.
(-[WKWebView _synchronouslyExecuteEditCommand:argument:]):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-11-14 Chris Dumez <cdumez@apple.com>
WebKit.ApplicationManifestBasic API test is failing when enabling PSON
https://bugs.webkit.org/show_bug.cgi?id=191602
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-14 Jonathan Bedard <jbedard@apple.com>
webkitpy: Refactor port code for devices
https://bugs.webkit.org/show_bug.cgi?id=191568
<rdar://problem/46005821>
Reviewed by Alex Christensen.
watchOS and iOS device ports share many characteristics in testing, mostly due
to the fact that both are devices.
* Scripts/webkitpy/port/device_port.py: Added.
(DevicePort): Add base class that all simulated/physical device ports share.
(DevicePort.__init__):
(DevicePort.driver_cmd_line_for_logging): Moved from iOS port.
(DevicePort._generate_all_test_configurations): Ditto.
(DevicePort.child_processes): Ditto.
(DevicePort.driver_name): Ditto.
(DevicePort.target_host): Generalize worker access to attached devices and
simulated devices based on the device manager.
(DevicePort.devices): Return a list of all devices associated with this port.
(DevicePort._create_devices):
(DevicePort._build_driver_flags): Moved from iOSSimulatorPort/iOSDevicePort.
(DevicePort._install): Moved from iOS port.
(DevicePort.setup_test_run): Ditto.
(DevicePort.clean_up_test_run): Ditto.
(DevicePort.did_spawn_worker): Ditto.
(DevicePort.setup_environ_for_server): Ditto.
* Scripts/webkitpy/port/ios.py:
(IOSPort):
(IOSPort._device_for_worker_number_map): Replaced by DevicePort.devices().
(IOSPort.driver_cmd_line_for_logging): Moved to DevicePort.
(IOSPort.driver_name): Ditto.
(IOSPort._generate_all_test_configurations): Ditto.
(IOSPort.child_processes): Ditto.
(IOSPort._testing_device): Ditto.
(IOSPort.target_host): Ditto.
(IOSPort._create_devices): Ditto.
(IOSPort.setup_test_run): Ditto.
(IOSPort.clean_up_test_run): Ditto.
(IOSPort.did_spawn_worker): Ditto.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort): IOSDevicePort uses a device manager from apple_additions.
(IOSDevicePort._look_for_all_crash_logs_in_log_dir): Use DevicePort.devices().
(IOSDevicePort._get_crash_log): Ditto.
(IOSDevicePort.ios_version): Ditto.
(IOSDevicePort._create_devices): Ditto.
(IOSDevicePort._device_for_worker_number_map): Replaced by DevicePort.devices().
(IOSSimulatorPort._build_driver_flags): Moved to DevicePort.
* Scripts/webkitpy/port/ios_device_unittest.py:
(IOSDeviceTest.test_get_crash_log):
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): IOSSimulatorPort uses the SimulatedDeviceManager.
(IOSSimulatorPort._create_devices): Clean up logging statement.
(IOSSimulatorPort.setup_environ_for_server): Some of environment set-up is shared
across all devices.
(IOSSimulatorPort._device_for_worker_number_map): Replaced by DevicePort.devices().
(IOSSimulatorPort._build_driver_flags): Moved to DevicePort.
* Scripts/webkitpy/port/ios_simulator_unittest.py:
(IOSSimulatorTest.test_32bit):
(IOSSimulatorTest.test_64bit):
2018-11-14 Chris Dumez <cdumez@apple.com>
WebKit.WKHTTPCookieStoreWithoutProcessPool API test is failing with process prewarming is enabled
https://bugs.webkit.org/show_bug.cgi?id=191624
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
(runWKHTTPCookieStoreWithoutProcessPool):
(TEST):
2018-11-13 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Support CTAP HID authenticators on macOS
https://bugs.webkit.org/show_bug.cgi?id=188623
<rdar://problem/43353777>
Reviewed by Brent Fulgham and Chris Dumez.
This patch adds support for the mock testing and entitlements to allow minibrowser to talk
to hid devices.
* MiniBrowser/MiniBrowser.entitlements:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
2018-11-13 Ryosuke Niwa <rniwa@webkit.org>
WebKit.GeolocationTransitionToLowAccuracy API crashes when enabling PSON
https://bugs.webkit.org/show_bug.cgi?id=191616
Reviewed by Chris Dumez.
The crash was caused by WKView in autorelease pool invoking stopUpdatingCallback after
GeolocationTransitionToLowAccuracyStateTracker in the stack had been destroyed,
resulting in the use-after-free.
Made the tests more robust by clearing geolocation provider before exiting each test
since we can't really prevent WKView from entering an autorelease pool.
Also made WebKit.GeolocationTransitionToLowAccuracy wait for the success callback
instead of simply the end of the navigation so that the test would continue to work
even if a web content process was created for the second web view (lowAccuracyWebView)
* TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
(TestWebKitAPI::setupGeolocationProvider): Moved "*" to match the WebKit coding style guideline.
(TestWebKitAPI::clearGeolocationProvider): Added.
(TestWebKitAPI::runJavaScriptAlert): Added.
(TestWebKitAPI::didFinishNavigation): Deleted.
* TestWebKitAPI/Tests/WebKit/geolocationWatchPosition.html:
2018-11-13 Chris Dumez <cdumez@apple.com>
WKProcessPool.InitialWarmedProcessUsed API is failing with PSON enabled
https://bugs.webkit.org/show_bug.cgi?id=191618
Reviewed by Ryosuke Niwa.
Update API test to explicitly disable automatic process prewarning since it is testing
manual prewarming.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
(TEST):
2018-11-13 Chris Dumez <cdumez@apple.com>
Several Service Worker API tests are failing when enabling PSON
https://bugs.webkit.org/show_bug.cgi?id=191619
Reviewed by Youenn Fablet.
Update tests to use _webProcessCountIgnoringPrewarmed instead of _webProcessCount so that they are
not impacted by process prewarming.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2018-11-13 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Do not show selection UI for editable elements with opacity near zero
https://bugs.webkit.org/show_bug.cgi?id=191442
<rdar://problem/45958625>
Reviewed by Simon Fraser.
Add a couple of new testing helpers to UIScriptController.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::textSelectionRangeRects const):
(WTR::UIScriptController::selectionCaretViewRect const):
(WTR::UIScriptController::selectionRangeViewRects const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::textSelectionRangeRects const):
Rename `selectionRangeViewRects` to `textSelectionRangeRects`. This allows us to draw a distinction between
`textSelectionRangeRects`/`textSelectionCaretRect`, which retrieve information about selection rects known
to the text interaction assistant, and `selectionCaretViewRect`/`selectionRangeViewRects`, which retrieve the
actual frames of the selection views used to draw overlaid selection UI. This difference is important in the
new layout tests added in this patch, which only suppress caret rendering (i.e. selection views remain hidden).
Also, drive-by fix a leaked `NSMutableArray`.
(WTR::UIScriptController::selectionStartGrabberViewRect const):
(WTR::UIScriptController::selectionEndGrabberViewRect const):
(WTR::UIScriptController::selectionCaretViewRect const):
(WTR::UIScriptController::selectionRangeViewRects const):
Testing helpers to grab the frames of caret and selection views, in WKContentView's coordinate space. These
rects are also clamped to WKContentView bounds.
2018-11-13 Daniel Bates <dabates@apple.com>
Consolidate WebKit UIKitSPI.h and UIKitTestSPI.h
https://bugs.webkit.org/show_bug.cgi?id=173341
<rdar://problem/32752890>
Reviewed by Simon Fraser.
There is little value to making a distinction between forward declarations
of UIKit SPI needed in the WebKit layer and just for testing. Moreover,
the contents of these two headers can conflict with each other following
r218275 as DumpRenderTree includes both headers. Instead we should remove
UIKitTestSPI.h and have WebKitTestRunner include the WebKit variant, UIKitSPI.h.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/mac/DumpRenderTree.mm:
* TestRunnerShared/spi/UIKitTestSPI.h: Removed.
* WebKitTestRunner/Configurations/Base.xcconfig:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
* WebKitTestRunner/ios/GeneratedTouchesDebugWindow.mm:
* WebKitTestRunner/ios/HIDEventGenerator.h:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
* WebKitTestRunner/ios/TestControllerIOS.mm:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
* WebKitTestRunner/ios/mainIOS.mm:
2018-11-13 Takashi Komori <Takashi.Komori@sony.com>
Remove WebKitTestRunnerLib's build warnings.
https://bugs.webkit.org/show_bug.cgi?id=191580
Reviewed by Fujii Hironori.
Include cmakeconfig.h in precompiled header.
* WebKitTestRunner/WebKitTestRunnerPrefix.h:
2018-11-12 Darshan Kadu <darsh7807@gmail.com>
Implement Cache API support for WPE/GTK
https://bugs.webkit.org/show_bug.cgi?id=178316
Reviewed by Michael Catanzaro.
Called WKWebsiteDataStoreSetCacheStoragePerOriginQuota function to set the cache limit to 400 * 1200
on all the platforms in TestController.cpp. Also, removed the setCacheStoragePerOriginQuota call from TestControllerCocoa.mm
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generatePageConfiguration):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration):
2018-11-12 Christopher Reid <chris.reid@sony.com>
[Curl] Reject entire cookie if the domain fails a tailmatch.
https://bugs.webkit.org/show_bug.cgi?id=191406
Reviewed by Youenn Fablet.
Added unittests for Curl cookie implementation.
* TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
(TestWebKitAPI::Curl::CurlCookies::RejectTailmatchFailureDomain):
2018-11-12 Alex Christensen <achristensen@webkit.org>
[iOS] Implement safe browsing in WebKit
https://bugs.webkit.org/show_bug.cgi?id=191441
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(checkTitleAndClick):
(TEST):
2018-11-12 Basuke Suzuki <basuke.suzuki@sony.com>
[Curl] Add API Test for Curl cookie backend.
https://bugs.webkit.org/show_bug.cgi?id=191493
Reviewed by Youenn Fablet.
Add unit test to TestWebCore.
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp: Added.
2018-11-12 Tim Horton <timothy_horton@apple.com>
Make it possible to edit images inline
https://bugs.webkit.org/show_bug.cgi?id=191352
<rdar://problem/30107985>
Reviewed by Dean Jackson.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
Add a test option to enable editable images.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* TestRunnerShared/spi/PencilKitTestSPI.h: Added.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::findEditableImageCanvas):
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
Add the ability to draw on a PKCanvasView that is a subview of the WKWebView,
and also to retrieve the number of strokes currently on the PKCanvasView.
Currently this just takes the first canvas; we might need to make it
take an identifier or something in the future if we need tests with multiple
canvases. The indirect testing mechanism is required because PKCanvasView
can currently not actually paint its strokes in the Simulator.
2018-11-12 Ryan Haddad <ryanhaddad@apple.com>
[MediaStream] Screen capture should be an experimental feature on OSX only
https://bugs.webkit.org/show_bug.cgi?id=191552
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm: Only run these tests on macOS.
2018-11-12 Don Olmstead <don.olmstead@sony.com>
Shipped PNGs include bad profiles: iCCP: known incorrect sRGB profile
https://bugs.webkit.org/show_bug.cgi?id=189230
<rdar://problem/44050379>
Reviewed by Joseph Pecoraro.
Runs all png images through zopflipng. This results in a smaller file
size and takes care of this issue as a byproduct.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/images/favicon-green.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/images/favicon-red.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/ElCapitan.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/ElCapitan@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/GTK@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10Simulator.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS10Simulator@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS9Simulator@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSDevice@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSSimulator.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOSSimulator@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mavericks.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mavericks@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/MountainLion@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/PlatformRing.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/PlatformRing@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Sierra@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WPE@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows10@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows7.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows7@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows8.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Windows8@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WindowsXP.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/WindowsXP@2x.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite.png:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Yosemite@2x.png:
2018-11-12 Tim Horton <timothy_horton@apple.com>
Modernize WebKit Tools Xcode projects for localization's sake
https://bugs.webkit.org/show_bug.cgi?id=191495
Reviewed by Alexey Proskuryakov.
* ContentExtensionTester/ContentExtensionTester.xcodeproj/project.pbxproj:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* EditingHistory/EditingHistory.xcodeproj/project.pbxproj:
* FontWithFeatures/FontWithFeatures.xcodeproj/project.pbxproj:
* ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
* MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* WebEditingTester/WebEditingTester.xcodeproj/project.pbxproj:
* WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj:
These are less important because they're not localized, but since
I made the style checker complain, it now complains any time anyone
touches any of these projects... so upgrade them.
2018-11-12 Jonathan Bedard <jbedard@apple.com>
webkitpy: Check for specific process instead of using data migrator
https://bugs.webkit.org/show_bug.cgi?id=191551
<rdar://problem/45993156>
Rubber-stamped by Aakash Jain.
It's possible for the data migrator process to be stuck, but for a simulator to be
usable. Use device-specific processes to detect when a device is usable.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._wait_until_device_is_usable):
(SimulatedDeviceManager):
(SimulatedDeviceManager.initialize_devices): Explicitly wait until a device is usable
since this implies that a device is booted.
(SimulatedDeviceManager.swap): Ditto.
(SimulatedDevice.is_usable): Check that a device is booted and that a device-specific
process indicating the device is usable can be found.
(SimulatedDeviceManager.wait_until_data_migration_is_done): Deleted.
* Scripts/webkitpy/xcode/simulated_device_unittest.py: Update simctl_json so that
it triggers the logic in is_usable()
2018-11-12 Takashi Komori <Takashi.Komori@sony.com>
Resurrect WebKitTestRunner for Windows port
https://bugs.webkit.org/show_bug.cgi?id=189257
Reviewed by Fujii Hironori.
Implement WebKitTestRunner for WinCairo.
* PlatformWin.cmake:
* Scripts/build-webkittestrunner:
* WebKitTestRunner/CMakeLists.txt:
* WebKitTestRunner/EventSenderProxy.h:
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp:
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::rangeToStr):
(WTR::InjectedBundlePage::dumpDOMAsWebArchive):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::TestRunner):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/win/AccessibilityControllerWin.cpp: Added.
(WTR::AccessibilityController::resetToConsistentState):
(WTR::AccessibilityController::accessibleElementById):
(WTR::AccessibilityController::platformName):
(WTR::AccessibilityController::rootElement):
(WTR::AccessibilityController::focusedElement):
(WTR::AccessibilityController::addNotificationListener):
(WTR::AccessibilityController::removeNotificationListener):
* WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp: Added.
(WTR::AccessibilityUIElement::AccessibilityUIElement):
(WTR::AccessibilityUIElement::~AccessibilityUIElement):
(WTR::AccessibilityUIElement::isEqual):
(WTR::AccessibilityUIElement::getChildren):
(WTR::AccessibilityUIElement::getChildrenWithRange):
(WTR::AccessibilityUIElement::childrenCount):
(WTR::AccessibilityUIElement::elementAtPoint):
(WTR::AccessibilityUIElement::indexOfChild):
(WTR::AccessibilityUIElement::childAtIndex):
(WTR::AccessibilityUIElement::linkedUIElementAtIndex):
(WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
(WTR::AccessibilityUIElement::ariaFlowToElementAtIndex):
(WTR::AccessibilityUIElement::ariaControlsElementAtIndex):
(WTR::AccessibilityUIElement::disclosedRowAtIndex):
(WTR::AccessibilityUIElement::rowAtIndex):
(WTR::AccessibilityUIElement::selectedChildAtIndex const):
(WTR::AccessibilityUIElement::selectedChildrenCount const):
(WTR::AccessibilityUIElement::selectedRowAtIndex):
(WTR::AccessibilityUIElement::titleUIElement):
(WTR::AccessibilityUIElement::parentElement):
(WTR::AccessibilityUIElement::disclosedByRow):
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
(WTR::AccessibilityUIElement::attributesOfDocumentLinks):
(WTR::AccessibilityUIElement::attributesOfChildren):
(WTR::AccessibilityUIElement::allAttributes):
(WTR::AccessibilityUIElement::stringAttributeValue):
(WTR::AccessibilityUIElement::numberAttributeValue):
(WTR::AccessibilityUIElement::uiElementArrayAttributeValue const):
(WTR::AccessibilityUIElement::rowHeaders const):
(WTR::AccessibilityUIElement::columnHeaders const):
(WTR::AccessibilityUIElement::uiElementAttributeValue const):
(WTR::AccessibilityUIElement::boolAttributeValue):
(WTR::AccessibilityUIElement::isAttributeSettable):
(WTR::AccessibilityUIElement::isAttributeSupported):
(WTR::AccessibilityUIElement::parameterizedAttributeNames):
(WTR::AccessibilityUIElement::role):
(WTR::AccessibilityUIElement::subrole):
(WTR::AccessibilityUIElement::roleDescription):
(WTR::AccessibilityUIElement::computedRoleString):
(WTR::AccessibilityUIElement::title):
(WTR::AccessibilityUIElement::description):
(WTR::AccessibilityUIElement::orientation const):
(WTR::AccessibilityUIElement::stringValue):
(WTR::AccessibilityUIElement::language):
(WTR::AccessibilityUIElement::helpText const):
(WTR::AccessibilityUIElement::x):
(WTR::AccessibilityUIElement::y):
(WTR::AccessibilityUIElement::width):
(WTR::AccessibilityUIElement::height):
(WTR::AccessibilityUIElement::clickPointX):
(WTR::AccessibilityUIElement::clickPointY):
(WTR::AccessibilityUIElement::intValue const):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):
(WTR::AccessibilityUIElement::valueDescription):
(WTR::AccessibilityUIElement::insertionPointLineNumber):
(WTR::AccessibilityUIElement::isPressActionSupported):
(WTR::AccessibilityUIElement::isIncrementActionSupported):
(WTR::AccessibilityUIElement::isDecrementActionSupported):
(WTR::AccessibilityUIElement::isEnabled):
(WTR::AccessibilityUIElement::isRequired const):
(WTR::AccessibilityUIElement::isFocused const):
(WTR::AccessibilityUIElement::isSelected const):
(WTR::AccessibilityUIElement::isSelectedOptionActive const):
(WTR::AccessibilityUIElement::isExpanded const):
(WTR::AccessibilityUIElement::isChecked const):
(WTR::AccessibilityUIElement::isIndeterminate const):
(WTR::AccessibilityUIElement::hierarchicalLevel const):
(WTR::AccessibilityUIElement::speakAs):
(WTR::AccessibilityUIElement::ariaIsGrabbed const):
(WTR::AccessibilityUIElement::ariaDropEffects const):
(WTR::AccessibilityUIElement::lineForIndex):
(WTR::AccessibilityUIElement::rangeForLine):
(WTR::AccessibilityUIElement::rangeForPosition):
(WTR::AccessibilityUIElement::boundsForRange):
(WTR::AccessibilityUIElement::stringForRange):
(WTR::AccessibilityUIElement::attributedStringForRange):
(WTR::AccessibilityUIElement::attributedStringRangeIsMisspelled):
(WTR::AccessibilityUIElement::uiElementCountForSearchPredicate):
(WTR::AccessibilityUIElement::uiElementForSearchPredicate):
(WTR::AccessibilityUIElement::selectTextWithCriteria):
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
(WTR::AccessibilityUIElement::attributesOfRowHeaders):
(WTR::AccessibilityUIElement::attributesOfColumns):
(WTR::AccessibilityUIElement::attributesOfRows):
(WTR::AccessibilityUIElement::attributesOfVisibleCells):
(WTR::AccessibilityUIElement::attributesOfHeader):
(WTR::AccessibilityUIElement::rowCount):
(WTR::AccessibilityUIElement::columnCount):
(WTR::AccessibilityUIElement::indexInTable):
(WTR::AccessibilityUIElement::rowIndexRange):
(WTR::AccessibilityUIElement::columnIndexRange):
(WTR::AccessibilityUIElement::cellForColumnAndRow):
(WTR::AccessibilityUIElement::horizontalScrollbar const):
(WTR::AccessibilityUIElement::verticalScrollbar const):
(WTR::AccessibilityUIElement::selectedTextRange):
(WTR::AccessibilityUIElement::setSelectedTextRange):
(WTR::AccessibilityUIElement::increment):
(WTR::AccessibilityUIElement::decrement):
(WTR::AccessibilityUIElement::showMenu):
(WTR::AccessibilityUIElement::press):
(WTR::AccessibilityUIElement::setSelectedChild const):
(WTR::AccessibilityUIElement::setSelectedChildAtIndex const):
(WTR::AccessibilityUIElement::removeSelectionAtIndex const):
(WTR::AccessibilityUIElement::clearSelectedChildren const):
(WTR::AccessibilityUIElement::accessibilityValue const):
(WTR::AccessibilityUIElement::documentEncoding):
(WTR::AccessibilityUIElement::documentURI):
(WTR::AccessibilityUIElement::url):
(WTR::AccessibilityUIElement::addNotificationListener):
(WTR::AccessibilityUIElement::removeNotificationListener):
(WTR::AccessibilityUIElement::isFocusable const):
(WTR::AccessibilityUIElement::isSelectable const):
(WTR::AccessibilityUIElement::isMultiSelectable const):
(WTR::AccessibilityUIElement::isVisible const):
(WTR::AccessibilityUIElement::isOffScreen const):
(WTR::AccessibilityUIElement::isCollapsed const):
(WTR::AccessibilityUIElement::isIgnored const):
(WTR::AccessibilityUIElement::isSingleLine const):
(WTR::AccessibilityUIElement::isMultiLine const):
(WTR::AccessibilityUIElement::hasPopup const):
(WTR::AccessibilityUIElement::takeFocus):
(WTR::AccessibilityUIElement::takeSelection):
(WTR::AccessibilityUIElement::addSelection):
(WTR::AccessibilityUIElement::removeSelection):
(WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker):
(WTR::AccessibilityUIElement::textMarkerRangeForElement):
(WTR::AccessibilityUIElement::textMarkerRangeLength):
(WTR::AccessibilityUIElement::previousTextMarker):
(WTR::AccessibilityUIElement::nextTextMarker):
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
(WTR::AccessibilityUIElement::textMarkerRangeForMarkers):
(WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange):
(WTR::AccessibilityUIElement::endTextMarkerForBounds):
(WTR::AccessibilityUIElement::startTextMarkerForBounds):
(WTR::AccessibilityUIElement::textMarkerForPoint):
(WTR::AccessibilityUIElement::accessibilityElementForTextMarker):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRange):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions):
(WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute):
(WTR::AccessibilityUIElement::indexForTextMarker):
(WTR::AccessibilityUIElement::isTextMarkerValid):
(WTR::AccessibilityUIElement::textMarkerForIndex):
(WTR::AccessibilityUIElement::startTextMarker):
(WTR::AccessibilityUIElement::endTextMarker):
(WTR::AccessibilityUIElement::setSelectedVisibleTextRange):
(WTR::AccessibilityUIElement::scrollToMakeVisible):
(WTR::AccessibilityUIElement::scrollToGlobalPoint):
(WTR::AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(WTR::AccessibilityUIElement::supportedActions const):
(WTR::AccessibilityUIElement::pathDescription const):
(WTR::AccessibilityUIElement::mathPostscriptsDescription const):
(WTR::AccessibilityUIElement::mathPrescriptsDescription const):
(WTR::AccessibilityUIElement::classList const):
(WTR::AccessibilityUIElement::characterAtOffset):
(WTR::AccessibilityUIElement::wordAtOffset):
(WTR::AccessibilityUIElement::lineAtOffset):
(WTR::AccessibilityUIElement::sentenceAtOffset):
* WebKitTestRunner/InjectedBundle/win/ActivateFontsWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
(WTR::activateFonts):
(WTR::installFakeHelvetica):
(WTR::uninstallFakeHelvetica):
* WebKitTestRunner/InjectedBundle/win/InjectedBundleWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.cpp: Added.
* WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.h: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
* WebKitTestRunner/InjectedBundle/win/TestRunnerWin.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
(WTR::TestRunner::pathToLocalResource):
(WTR::TestRunner::inspectorTestStubURL):
(WTR::TestRunner::invalidateWaitToDumpWatchdogTimer):
(WTR::TestRunner::platformInitialize):
(WTR::TestRunner::initializeWaitToDumpWatchdogTimerIfNeeded):
(WTR::TestRunner::installFakeHelvetica):
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/PlatformWin.cmake: Added.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::createTestURL):
* WebKitTestRunner/TestInvocation.cpp:
* WebKitTestRunner/WebKitTestRunnerPrefix.h:
* WebKitTestRunner/win/EventSenderProxyWin.cpp: Added.
(WTR::EventSenderProxy::EventSenderProxy):
(WTR::EventSenderProxy::~EventSenderProxy):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
(WTR::EventSenderProxy::mouseMoveTo):
(WTR::EventSenderProxy::mouseScrollBy):
(WTR::EventSenderProxy::mouseScrollByWithWheelAndMomentumPhases):
(WTR::EventSenderProxy::continuousMouseScrollBy):
(WTR::EventSenderProxy::leapForward):
(WTR::EventSenderProxy::keyDown):
* WebKitTestRunner/win/PlatformWebViewWin.cpp: Added.
(WTR::registerWindowClass):
(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::~PlatformWebView):
(WTR::PlatformWebView::resizeTo):
(WTR::PlatformWebView::page):
(WTR::PlatformWebView::focus):
(WTR::PlatformWebView::windowFrame):
(WTR::PlatformWebView::setWindowFrame):
(WTR::PlatformWebView::didInitializeClients):
(WTR::PlatformWebView::addChromeInputField):
(WTR::PlatformWebView::removeChromeInputField):
(WTR::PlatformWebView::addToWindow):
(WTR::PlatformWebView::removeFromWindow):
(WTR::PlatformWebView::setWindowIsKey):
(WTR::PlatformWebView::makeWebViewFirstResponder):
(WTR::generateCairoSurfaceFromBitmap):
(WTR::PlatformWebView::windowSnapshotImage):
(WTR::PlatformWebView::changeWindowScaleIfNeeded):
(WTR::PlatformWebView::setNavigationGesturesEnabled):
(WTR::PlatformWebView::forceWindowFramesChanged):
(WTR::PlatformWebView::drawsBackground const):
(WTR::PlatformWebView::setDrawsBackground):
* WebKitTestRunner/win/TestControllerWin.cpp: Added.
(WTR::exceptionFilter):
(WTR::runRunLoopUntil):
(WTR::TestController::notifyDone):
(WTR::TestController::setHidden):
(WTR::TestController::platformInitialize):
(WTR::TestController::platformPreferences):
(WTR::TestController::platformDestroy):
(WTR::toWK):
(WTR::TestController::platformInitializeContext):
(WTR::TestController::platformRunUntil):
(WTR::TestController::platformDidCommitLoadForFrame):
(WTR::TestController::initializeInjectedBundlePath):
(WTR::TestController::initializeTestPluginDirectory):
(WTR::TestController::runModal):
(WTR::TestController::platformContext):
(WTR::TestController::platformLibraryPathForTesting):
(WTR::TestController::platformConfigureViewForTest):
(WTR::TestController::platformResetPreferencesToConsistentValues):
(WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
* WebKitTestRunner/win/WebKitTestRunnerPrefix.cpp: Added.
* WebKitTestRunner/win/main.cpp: Copied from Tools/WebKitTestRunner/InjectedBundle/InjectedBundleMain.cpp.
(dllLauncherEntryPoint):
2018-11-12 Alicia Boya García <aboya@igalia.com>
[MSE][GStreamer] Introduce AbortableTaskQueue
https://bugs.webkit.org/show_bug.cgi?id=190902
Reviewed by Xabier Rodriguez-Calvar.
Tests for AbortableTaskQueue are included.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp: Added.
(TestWebKitAPI::TEST):
(TestWebKitAPI::FancyResponse::FancyResponse):
(TestWebKitAPI::FancyResponse::operator=):
(TestWebKitAPI::DeterministicScheduler::DeterministicScheduler):
(TestWebKitAPI::DeterministicScheduler::ThreadContext::ThreadContext):
(TestWebKitAPI::DeterministicScheduler::ThreadContext::waitMyTurn):
(TestWebKitAPI::DeterministicScheduler::ThreadContext::yieldToThread):
2018-11-11 Fujii Hironori <Hironori.Fujii@sony.com>
run-bindings-tests is timing out in some WinCairo bots
https://bugs.webkit.org/show_bug.cgi?id=191348
Reviewed by Alex Christensen.
BuildBot kills run-bindings-tests if it outputs nothing for 20
minutes. run-bindings-tests runs very slowly in WinCairo Docker,
and it takes more than 30 minutes to finish. And, Windows Python
buffers the progress output.
* Scripts/webkitpy/bindings/main.py:
(BindingsTests.detect_changes): Call sys.stdout.flush() after the
test case result is output.
2018-11-11 Wenson Hsieh <wenson_hsieh@apple.com>
Implement a new edit command to change the enclosing list type
https://bugs.webkit.org/show_bug.cgi?id=191487
<rdar://problem/45955922>
Reviewed by Ryosuke Niwa.
Add a new API test to verify that `-[WKWebView _changeListType:]` is hooked up to the corresponding editing
command in WebCore. See the new layout test for a test that exercises more nuanced corner cases.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
(-[TestWKWebView setPosition:offset:]):
(-[TestWKWebView setBase:baseOffset:extent:extentOffset:]):
(TestWebKitAPI::webViewForEditActionTestingWithPageNamed):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/editable-nested-lists.html: Added.
2018-11-11 Dan Bernstein <mitz@apple.com>
ProcessPoolConfiguration::copy() doesn’t copy m_customWebContentServiceBundleIdentifier
https://bugs.webkit.org/show_bug.cgi?id=191514
Reviewed by Geoffrey Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm: Added.
(TEST):
2018-11-11 Benjamin Poulain <benjamin@webkit.org>
Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
https://bugs.webkit.org/show_bug.cgi?id=191492
Reviewed by Alex Christensen.
Update file name.
* DumpRenderTree/mac/DumpRenderTree.mm:
* WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
* WebKitTestRunner/mac/TestControllerMac.mm:
2018-11-10 Benjamin Poulain <benjamin@webkit.org>
Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
https://bugs.webkit.org/show_bug.cgi?id=191492
Reviewed by Alex Christensen.
* DumpRenderTree/mac/DumpRenderTree.mm:
* WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
* WebKitTestRunner/mac/TestControllerMac.mm:
2018-11-10 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r238065.
Breaks internal builds.
Reverted changeset:
"Make it possible to edit images inline"
https://bugs.webkit.org/show_bug.cgi?id=191352
https://trac.webkit.org/changeset/238065
2018-11-10 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] API test /webkit/WebKitSettings/webkit-settings is failing
https://bugs.webkit.org/show_bug.cgi?id=191221
Unreviewed, fix a typo from the previous patch. After disabling the setting, we should test
that it is disabled, but we're testing that it is enabled, because I failed to update this
line.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
2018-11-10 Tim Horton <timothy_horton@apple.com>
Make it possible to edit images inline
https://bugs.webkit.org/show_bug.cgi?id=191352
<rdar://problem/30107985>
Reviewed by Dean Jackson.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::platformCreateWebView):
Add a test option to enable editable images.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* TestRunnerShared/spi/PencilKitTestSPI.h: Added.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::findEditableImageCanvas):
(WTR::UIScriptController::drawSquareInEditableImage):
(WTR::UIScriptController::numberOfStrokesInEditableImage):
Add the ability to draw on a PKCanvasView that is a subview of the WKWebView,
and also to retrieve the number of strokes currently on the PKCanvasView.
Currently this just takes the first canvas; we might need to make it
take an identifier or something in the future if we need tests with multiple
canvases. The indirect testing mechanism is required because PKCanvasView
can currently not actually paint its strokes in the Simulator.
2018-11-09 Chris Dumez <cdumez@apple.com>
Suspended page persists even after back/forward list item is gone
https://bugs.webkit.org/show_bug.cgi?id=191488
<rdar://problem/45953006>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-09 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Implement SPI on WKWebView to increase and decrease list levels
https://bugs.webkit.org/show_bug.cgi?id=191471
<rdar://problem/45952472>
Reviewed by Tim Horton.
Add an API test to ensure that list levels can be incremented and decremented via WKWebView SPI.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
(TestWebKitAPI::webViewForEditActionTesting):
(TestWebKitAPI::TEST):
2018-11-09 Basuke Suzuki <basuke.suzuki@sony.com>
[Curl][WebKit] Implement Proxy configuration API.
https://bugs.webkit.org/show_bug.cgi?id=189053
Reviewed by Youenn Fablet.
Added Proxy Settings dialog to call newly added API.
* MiniBrowser/win/BrowserWindow.h:
* MiniBrowser/win/Common.cpp:
(askProxySettings):
(askCredential):
(authDialogProc): Deleted.
* MiniBrowser/win/Common.h:
* MiniBrowser/win/DialogHelper.h: Added.
(Dialog::run):
(Dialog::doalogProc):
(Dialog::handle):
(Dialog::setup):
(Dialog::update):
(Dialog::validate):
(Dialog::updateOkButton):
(Dialog::command):
(Dialog::ok):
(Dialog::cancel):
(Dialog::close):
(Dialog::hDlg):
(Dialog::item):
(Dialog::setEnabled):
(Dialog::setText):
(Dialog::getText):
(Dialog::getTextLength):
(Dialog::RadioGroup::RadioGroup):
(Dialog::RadioGroup::set):
(Dialog::RadioGroup::get):
(Dialog::radioGroup):
* MiniBrowser/win/MainWindow.cpp:
(MainWindow::WndProc):
* MiniBrowser/win/MiniBrowserLib.rc:
* MiniBrowser/win/MiniBrowserLibResource.h:
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(createWKURL):
(WebKitBrowserWindow::WebKitBrowserWindow):
(WebKitBrowserWindow::updateProxySettings):
(WebKitBrowserWindow::loadURL):
(WebKitBrowserWindow::loadHTMLString):
(WebKitBrowserWindow::openProxySettings):
* MiniBrowser/win/WebKitBrowserWindow.h:
* MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
(WebKitLegacyBrowserWindow::openProxySettings):
* MiniBrowser/win/WebKitLegacyBrowserWindow.h:
2018-11-09 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Introduce WKWebView SPI to insert nested ordered and unordered lists
https://bugs.webkit.org/show_bug.cgi?id=191410
<rdar://problem/45898610>
Reviewed by Dean Jackson.
Move WKWebViewEditActions from iOS to WebKitCocoa, and enable the relevant WKWebViewEditActions tests on macOS.
Additionally, add new API tests to verify that `-_pasteAsQuotation:` and `-_insertNested(Un)OrderedList:` are
hooked up to their respective editing commands.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm: Renamed from Tools/TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm.
(-[TestWKWebView querySelectorExists:]):
(-[TestWKWebView insertString:]):
Add a helper method to insert a piece of text. This abstracts platform differences between iOS and macOS, by
invoking the WKWebView directly on macOS and calling on the content view on iOS.
(TestWebKitAPI::webViewForEditActionTesting):
(TestWebKitAPI::TEST):
2018-11-09 Philippe Normand <pnormand@igalia.com>
[Flatpak] Refactoring and drive-by fixes
https://bugs.webkit.org/show_bug.cgi?id=191421
Reviewed by Michael Catanzaro.
* Scripts/webkitdirs.pm:
(inFlatpakSandbox): Flatpak now has a /.flatpak-info file when in
the sandbox, so rely on this.
* flatpak/flatpakutils.py:
(expand_manifest): Pass explicit keywords to load_manifest() and
remove unused local variable.
(WebkitFlatpak.clean_args): Move hard-coded sdk/runtime infos to the manifest file.
(WebkitFlatpak.run_in_sandbox): Add support for extra environment variables.
(WebkitFlatpak.setup_dev_env): Stop build at final app. Refactor
build_type handling a bit.
* flatpak/org.webkit.CommonModules.yaml: Added.
* flatpak/org.webkit.WPE.yaml: wpebackend upstream was renamed to libwpe.
* flatpak/org.webkit.WebKit.yaml: Move common dependencies
declaration to CommonModules, so it can be reused later when we
add support for building extra libraries depending on WPE.
2018-11-08 Said Abou-Hallawa <sabouhallawa@apple.com>
onal supported image formats
https://bugs.webkit.org/show_bug.cgi?id=190454
Reviewed by Simon Fraser.
Test opening a TGA image in WebView which is not allowed by default. The
TGA format will be allowed through WKWebViewConfiguration.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/100x100-red.tga: Added.
* TestWebKitAPI/Tests/WebKitCocoa/400x400-green.png: Added.
* TestWebKitAPI/Tests/WebKitCocoa/AdditionalSupportedImageTypes.mm: Added.
(runTest):
(TEST):
2018-11-08 Jiewen Tan <jiewen_tan@apple.com>
Unreviewed, a proper build fix for r237983
Don't include header PublicKeyCredential.h in CtapResponseTest.cpp.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/CtapRequestTest.cpp.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/CtapResponseTest.cpp.
(TestWebKitAPI::getTestCorruptedSignResponse):
(TestWebKitAPI::getTestCredentialRawIdBytes):
(TestWebKitAPI::convertToVector):
(TestWebKitAPI::TEST):
2018-11-08 Keith Rollin <krollin@apple.com>
Create .xcfilelist files
https://bugs.webkit.org/show_bug.cgi?id=191324
<rdar://problem/45852819>
Reviewed by Alex Christensen.
As part of preparing for enabling XCBuild, create and use .xcfilelist
files. These files are using during Run Script build phases in an
Xcode project. If a Run Script build phase produces new files that are
used later as inputs to subsequent build phases, XCBuild needs to know
about these files. These files can be either specified in an "output
files" section of the Run Script phase editor, or in .xcfilelist files
that are associated with the Run Script build phase.
This patch takes the second approach. It consists of three sets of changes:
- Modify the DerivedSources.make files to have a
'print_all_generated_files" target that produces a list of the files
they create.
- Create a shell script that produces .xcfilelist files from the
output of the previous step, as well as for the files created in the
Generate Unified Sources build steps.
- Add the new .xcfilelist files to the associated projects.
Note that, with these changes, the Xcode workspace and projects can no
longer be fully loaded into Xcode 9. Xcode will attempt to load the
projects that have .xcfilelist files associated with them, but will
fail and display a placeholder for those projects instead. It's
expected that all developers are using Xcode 10 by now and that not
being able to load into Xcode 9 is not a practical issue. Keep in mind
that this is strictly an IDE issue, and that the projects can still be
built with `xcodebuild`.
Also note that the shell script that creates the .xcfilelist files can
also be used to verify that the set of files that's currently checked
in is up-to-date. This checking can be used as part of a check-in hook
or part of check-webkit-style to sooner catch cases where the
.xcfilelist files need to be regenerated.
* DumpRenderTree/DerivedSources.make:
* DumpRenderTree/DerivedSources.xcfilelist: Added.
* Scripts/generate-xcfilelists: Added.
* WebKitTestRunner/DerivedSources.make:
* WebKitTestRunner/DerivedSources.xcfilelist: Added.
2018-11-08 Jiewen Tan <jiewen_tan@apple.com>
Unreviewed, a quick build fix for r237983
Temporarily make CtapRequestTest.cpp/CtapResponseTest.cpp to mac only to avoid iOS build failures.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
* TestWebKitAPI/Tests/WebCore/mac/CtapRequestTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/mac/CtapResponseTest.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp.
(TestWebKitAPI::getTestCorruptedSignResponse):
(TestWebKitAPI::getTestCredentialRawIdBytes):
(TestWebKitAPI::convertToVector):
(TestWebKitAPI::TEST):
2018-11-05 Ryan Haddad <ryanhaddad@apple.com>
Fix steps_unittest.py failures related to recent Win10/Win7 changes
https://bugs.webkit.org/show_bug.cgi?id=191290
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Update expected results.
2018-11-08 Dean Jackson <dino@apple.com>
Add a String literal that returns a String
https://bugs.webkit.org/show_bug.cgi?id=191425
<rdar://problem/45914556>
Reviewed by Sam Weinig.
Test _str.
* TestWebKitAPI/Tests/WTF/WTFString.cpp:
(TestWebKitAPI::TEST):
2018-11-08 Jonathan Bedard <jbedard@apple.com>
webkitpy: Generalize trailing SDK specifier (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=191275
<rdar://problem/45703660>
Rubber-stamped by Aakash Jain.
Re-landing this change, configuration issues have been resolved.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort): Use normalized SDK.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Use normalized SDK.
(IOSSimulatorPort._build_driver_flags): Use platform SDK in build driver flags.
2018-11-08 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Import CTAP device request/response converters from Chromium
https://bugs.webkit.org/show_bug.cgi?id=190784
<rdar://problem/45460333>
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp: Added.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp: Added.
(TestWebKitAPI::getTestCorruptedSignResponse):
(TestWebKitAPI::getTestCredentialRawIdBytes):
(TestWebKitAPI::convertToVector):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/FidoTestData.h: Added.
2018-11-07 Caio Lima <ticaiolima@gmail.com>
[BigInt] Add support to BigInt into ValueAdd
https://bugs.webkit.org/show_bug.cgi?id=186177
Reviewed by Keith Miller.
* Scripts/run-jsc-benchmarks:
2018-11-07 Sihui Liu <sihui_liu@apple.com>
RELEASE_ASSERT(!m_hardClosedForUserDelete) fails in WebCore::IDBServer::UniqueIDBDatabase::invokeOperationAndTransactionTimer
https://bugs.webkit.org/show_bug.cgi?id=191326
<rdar://problem/45769269>
Reviewed by Geoffrey Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBUserDelete.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBUserDelete.mm: Added.
(-[IndexedDBUserDeleteMessageHandler userContentController:didReceiveScriptMessage:]):
(TEST):
2018-11-07 Daniel Bates <dabates@apple.com>
Override +[UIKeyboard isInHardwareKeyboardMode] in WebKitTestRunner and DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=190141
Reviewed by Darin Adler.
Override +[UIKeyboard isInHardwareKeyboardMode] to always return NO so as to make test
runs deterministic regardless of whether a hardware keyboard is attached.
* DumpRenderTree/mac/DumpRenderTree.mm:
(overrideIsInHardwareKeyboardMode): Added.
(prepareConsistentTestingEnvironment):
* TestRunnerShared/spi/UIKitTestSPI.h: Forward declare SPI.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(overrideIsInHardwareKeyboardMode): Added.
(WTR::TestController::platformInitialize):
2018-11-07 Jonathan Bedard <jbedard@apple.com>
Unreviewed, rolling out r237913.
Breaks running tests on Mac without iOS SDK installed
Reverted changeset:
"webkitpy: Generalize trailing SDK specifier (Part 2)"
https://bugs.webkit.org/show_bug.cgi?id=191275
https://trac.webkit.org/changeset/237913
2018-11-07 Zamiul Haque <zhaque@apple.com>
Force a gregorian calendar to show for credit card expiration date inputs
(autocomplete='cc-exp'*) regardless of default system settings.
https://bugs.webkit.org/show_bug.cgi?id=191096
rdar://problem/42640256
Reviewed by Tim Horton.
Implemented simulateForeignDefaultCalendar and calendarType to be used
for changing the default calendar returned by the system (ie. [NSCalendar
currentCalendar]) and getting the calendar type identifier of a presented date
picker.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingDataListSuggestions const):
(WTR::UIScriptController::calendarType const):
(WTR::UIScriptController::setDefaultCalendarType):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::calendarType const):
(WTR::UIScriptController::setDefaultCalendarType):
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::selectionEndGrabberViewRect const):
(WTR::UIScriptController::calendarType const): Deleted.
* WebKitTestRunner/TestController.cpp:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::calendarType const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::swizzledCalendar):
(WTR::TestController::getOverriddenCalendarIdentifier const):
(WTR::TestController::setDefaultCalendarType):
(WTR::TestController::cocoaResetStateToConsistentValues):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::selectionEndGrabberViewRect const):
(WTR::UIScriptController::calendarType const): Deleted.
2018-11-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Boot a single worker for custom devices
https://bugs.webkit.org/show_bug.cgi?id=191312
<rdar://problem/45848717>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager.run): Custom devices only run a hand-full of tests. Booting multiple
simulators is expensive and unneeded for these tests.
* Scripts/webkitpy/port/ios.py:
(IOSPort. child_processes): No reason to memoize this call, and it prevents
overriding the number of child processes when booting custom devices.
2018-11-06 Jonathan Bedard <jbedard@apple.com>
webkitpy: Generalize trailing SDK specifier (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=191275
<rdar://problem/45703660>
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/ios_device.py:
(IOSDevicePort): Use normalized SDK.
* Scripts/webkitpy/port/ios_simulator.py:
(IOSSimulatorPort): Use normalized SDK.
(IOSSimulatorPort._build_driver_flags): Use platform SDK in build driver flags.
2018-11-06 Justin Fan <justin_fan@apple.com>
[WebGPU] Experimental prototype for WebGPURenderPipeline and WebGPUSwapChain
https://bugs.webkit.org/show_bug.cgi?id=191291
Reviewed by Myles Maxfield.
Properly disable WEBGPU on all non-Metal platforms for now.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add URL configuration for OpenSource EWS Django app
https://bugs.webkit.org/show_bug.cgi?id=191132
Rubber-stamped by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews-app/urls.py: Added entry for ews.urls.
* BuildSlaveSupport/ews-app/ews/urls.py: Added.
2018-11-06 Youenn Fablet <youenn@apple.com>
Make mDNS ICE Candidate an experimental flag again
https://bugs.webkit.org/show_bug.cgi?id=191262
Reviewed by Dean Jackson.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
(WTR::TestRunner::setMDNSICECandidatesEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add views for OpenSource EWS Django app
https://bugs.webkit.org/show_bug.cgi?id=191131
Rubber-stamped by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/views/index.py: Added.
* BuildSlaveSupport/ews-app/ews/views/patch.py:
* BuildSlaveSupport/ews-app/ews/views/results.py: Added.
* BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Added.
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Add models for OpenSource EWS Django app
https://bugs.webkit.org/show_bug.cgi?id=191123
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/ews/models/__init__.py:
* BuildSlaveSupport/ews-app/ews/models/buildermappings.py: Added.
* BuildSlaveSupport/ews-app/ews/models/builds.py: Added.
* BuildSlaveSupport/ews-app/ews/models/patch.py:
* BuildSlaveSupport/ews-app/ews/models/steps.py: Added.
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Fix Invalid HTTP_HOST header
https://bugs.webkit.org/show_bug.cgi?id=191325
Reviewed by Lucas Forschler.
Changing ALLOWED_HOSTS to * as the landing page should be publicly accessible.
* BuildSlaveSupport/ews-app/ews-app/settings.py:
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename EWS_app to ews-app - part 2
https://bugs.webkit.org/show_bug.cgi?id=191317
Reviewed by Lucas Forschler.
* BuildSlaveSupport/ews-app/EWS_app: Removed.
* BuildSlaveSupport/ews-app/ews-app: Moved from BuildSlaveSupport/ews-app/EWS_app.
* BuildSlaveSupport/ews-app/ews-app/settings.py:
* BuildSlaveSupport/ews-app/ews-app/urls.py:
* BuildSlaveSupport/ews-app/ews-app/wsgi.py:
* BuildSlaveSupport/ews-app/manage.py:
2018-11-06 Aakash Jain <aakash_jain@apple.com>
[ews-app] Rename EWS_app to ews-app - part 1
https://bugs.webkit.org/show_bug.cgi?id=191317
Reviewed by Lucas Forschler.
* BuildSlaveSupport/EWS_app: Removed.
* BuildSlaveSupport/ews-app: Moved from BuildSlaveSupport/EWS_app.
2018-11-06 Myles C. Maxfield <mmaxfield@apple.com>
Spelling dots are drawn in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=190764
Reviewed by Dean Jackson.
Previously, it was impossible for WebKitTestRunner to draw spelling dots. This patch adds support for a header
at the top of test files, of the form <!-- webkit-test-runner [ spellCheckingDots=true ] --> which will cause
dots to be drawn.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::platformResetStateToConsistentValues):
2018-11-06 Don Olmstead <don.olmstead@sony.com>
Feature flags not present for Visual Studio when using build-webkit
https://bugs.webkit.org/show_bug.cgi?id=191288
Reviewed by Fujii Hironori.
Passes feature flags to Visual studio builds within build-webkit.
Removes cmakeBasedPortArguments as it is no longer in use.
* Scripts/build-jsc:
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
(cmakeBasedPortArguments): Deleted.
2018-11-06 Per Arne Vollan <pvollan@apple.com>
REGRESSION (r230523): Caps lock indicator not shown in password field
https://bugs.webkit.org/show_bug.cgi?id=190056
Reviewed by Ryosuke Niwa.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::toggleCapsLock):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::toggleCapsLock):
2018-11-06 Sihui Liu <sihui_liu@apple.com>
IndexedDB: WAL file keeps growing
https://bugs.webkit.org/show_bug.cgi?id=191294
<rdar://problem/41333493>
Reviewed by Chris Dumez.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize-1.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize-2.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize.mm: Added.
(-[IndexedDBFileSizeMessageHandler userContentController:didReceiveScriptMessage:]):
(TEST):
2018-11-06 Alex Christensen <achristensen@webkit.org>
Fix tests after r237863
https://bugs.webkit.org/show_bug.cgi?id=191315
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
With the timing change of r237863, the WKWebView progressed further than before when loading main.html so it completed before main2.html.
This test was meant to test that main2.html does eventually load, and it doesn't matter if main.html loads before it. I updated the test
to verify that main2.html eventually loads, making this test less timing dependent.
2018-11-06 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r237834.
Tests for this change crash on iOS Simulator
Reverted changeset:
"Spelling dots are drawn in the wrong place"
https://bugs.webkit.org/show_bug.cgi?id=190764
https://trac.webkit.org/changeset/237834
2018-11-05 Alex Christensen <achristensen@webkit.org>
[Mac] Implement safe browsing in WebKit
https://bugs.webkit.org/show_bug.cgi?id=188871
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
(-[SafeBrowsingNavigationDelegate webView:didCommitNavigation:]):
(+[TestServiceLookupResult resultWithProvider:phishing:malware:unwantedSoftware:]):
(-[TestLookupContext lookUpURL:completionHandler:]):
(simpleURL):
(safeBrowsingView):
(TEST):
(-[SafeBrowsingNavigationDelegate webView:didFinishNavigation:]): Deleted.
(+[TestServiceLookupResult resultWithProvider:phishing:malware:unwantedSoftware:knownToBeUnsafe:]): Deleted.
(-[TestServiceLookupResult isKnownToBeUnsafe]): Deleted.
* TestWebKitAPI/Utilities.h:
2018-11-05 Jonathan Bedard <jbedard@apple.com>
webkitpy: Generalize trailing SDK specifier (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=191275
<rdar://problem/45703660>
Reviewed by Lucas Forschler.
* Scripts/webkitpy/common/system/platforminfo.py:
(PlatformInfo.available_sdks): List all installed SDKs with version numbers stripped out.
* Scripts/webkitpy/common/system/platforminfo_unittest.py:
(TestPlatformInfo):
(TestPlatformInfo.test_available_sdks):
2018-11-05 Myles C. Maxfield <mmaxfield@apple.com>
Spelling dots are drawn in the wrong place
https://bugs.webkit.org/show_bug.cgi?id=190764
Reviewed by Dean Jackson.
Previously, it was impossible for WebKitTestRunner to draw spelling dots. This patch adds support for a header
at the top of test files, of the form <!-- webkit-test-runner [ spellCheckingDots=true ] --> which will cause
dots to be drawn.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::TestController::platformResetStateToConsistentValues):
2018-11-05 Chris Dumez <cdumez@apple.com>
Use same limit for page cache and suspended pages
https://bugs.webkit.org/show_bug.cgi?id=191266
Reviewed by Geoffrey Garen.
Update API tests accordingly.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-05 Basuke Suzuki <Basuke.Suzuki@sony.com>
[style] Exclude style check for auto generated files.
https://bugs.webkit.org/show_bug.cgi?id=191118
Reviewed by Eric Carlson.
Some files checked in to the repository are generated by other tools. In this patch,
"MiniBrowserLibResource.h" is the file generated and managed by resource editor of
VisualStudio.
There's no need to check these files because it's not practical to fix the style errors
or it's hard to maintain those fixes.
* Scripts/webkitpy/style/checkers/cpp.py:
(is_generated_file):
(CppChecker.check):
2018-11-05 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Build libx264 as it is the h264 encoder we support in WebRTC
https://bugs.webkit.org/show_bug.cgi?id=190680
Reviewed by Philippe Normand.
* flatpak/org.webkit.WebKit.yaml:
2018-11-05 Daniel Bates <dabates@apple.com>
[lldb-webkit] Fix formatting nits in Document and Frame summary strings
https://bugs.webkit.org/show_bug.cgi?id=191094
Reviewed by Andy Estes.
Format boolean as 1/0 when printing Frame summary to be consistent with the formatting of
booleans in other summary strings, substitute "inMainFrame" for "isMainFrame" in the printed
Document summary and add closing brace '}' to both Frame and Document summary strings to make
them look pretty.
* lldb/lldb_webkit.py:
(WebCoreFrame_SummaryProvider):
(WebCoreDocument_SummaryProvider):
2018-11-05 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Allow WKWebView clients to customize bar button item groups in the accessory view when editing
https://bugs.webkit.org/show_bug.cgi?id=191240
<rdar://problem/44872806>
Reviewed by Tim Horton.
Add new API tests to verify that setting leading and trailing bar button groups on WKWebView sets the first
responder's (i.e. WKContentView's) leading and trailing bar button groups, and that this can also be achieved by
overriding `-[WKWebView inputAssistantItem]`.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(-[InputAssistantItemTestingWebView fakeLeadingBarButtonItemAction]):
(-[InputAssistantItemTestingWebView fakeTrailingBarButtonItemAction]):
(+[InputAssistantItemTestingWebView barButtonIcon]):
(+[InputAssistantItemTestingWebView leadingItemsForWebView:]):
(+[InputAssistantItemTestingWebView trailingItemsForWebView:]):
(-[InputAssistantItemTestingWebView inputAssistantItem]):
(TestWebKitAPI::TEST):
2018-11-05 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Changing view scale sometimes does not zoom the page to the new initial scale when the page is zoomed in when ignoring meta viewport
https://bugs.webkit.org/show_bug.cgi?id=191226
<rdar://problem/45781765>
Reviewed by Tim Horton.
Add a missing check for `shouldIgnoreMetaViewport` when comparing TestOptions, to ensure that "ignore meta
viewport" state doesn't unexpectedly persist after running a layout test that ignores meta viewport.
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2018-11-05 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r237784 and r237788.
https://bugs.webkit.org/show_bug.cgi?id=191270
Caused mediastream layout test failures (Requested by
ryanhaddad on #webkit).
Reverted changesets:
"[MediaStream] User should not be prompted again after denying
getDisplayMedia request"
https://bugs.webkit.org/show_bug.cgi?id=191227
https://trac.webkit.org/changeset/237784
"[MediaStream] User should not be prompted again after denying
getDisplayMedia request"
https://bugs.webkit.org/show_bug.cgi?id=191227
https://trac.webkit.org/changeset/237788
2018-11-05 Lucas Forschler <lforschler@apple.com>
https://bugs.webkit.org/show_bug.cgi?id=191268
Remove unused bots.
rubber-stamped by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
2018-11-05 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] API test runner fails to respect default build type
https://bugs.webkit.org/show_bug.cgi?id=190247
Reviewed by Carlos Garcia Campos.
Problem is it's looking for a release build, even though I've run set-webkit-configuration
--debug. It should look for a debug build unless I explicitly pass --release.
* glib/api_test_runner.py:
(TestRunner.__init__):
2018-11-05 Thibault Saunier <tsaunier@igalia.com>
[GStreamer][WebRTC] Add webrtcencoder bin to cleanup and refactor the way we set encoders
https://bugs.webkit.org/show_bug.cgi?id=190674
Reviewed by Philippe Normand.
webrtcencoder is a simple GstBin with a set of well known GStreamer encoders which
it can use to implement encoding for different formats exposing a trimmed down unified API.
It also adds proper handling of H264 profiles.
The added files follow GStreamer coding style as we aim at upstreaming the element
in the future.
Reviewed by Philippe Normand.
* Scripts/webkitpy/style/checker.py:
2018-11-05 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] API test /webkit/WebKitSettings/webkit-settings is failing
https://bugs.webkit.org/show_bug.cgi?id=191221
Reviewed by Carlos Garcia Campos.
This test ensures that MSE is disabled by default, but we now enable it by default, so
reverse the semantics of the test.
* TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
(testWebKitSettings):
2018-11-05 Michael Catanzaro <mcatanzaro@igalia.com>
REGRESSION(r237031): [GTK] Test /webkit/WebKitWebView/settings is failing
https://bugs.webkit.org/show_bug.cgi?id=191225
Reviewed by Alejandro G. Castro.
Fix a memory leak causing this test to fail.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(WebViewTest::initializeWebView):
2018-11-04 Zan Dobersek <zdobersek@igalia.com>
[webkitpy] Support WPE in the run-web-platform-tests script
https://bugs.webkit.org/show_bug.cgi?id=191183
Reviewed by Alex Christensen.
* Scripts/webkitpy/w3c/wpt_runner.py:
(parse_args): Support `--wpe` as an argument that specifies WPE as the
target port. Additionally, the `--display-server` flag now accepts
`headless` as a valid value, enabling the WPE WebDriver to run in
headless mode.
2018-11-04 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] Use C++14, not C++17
https://bugs.webkit.org/show_bug.cgi?id=191101
Reviewed by Alex Christensen.
std::basic_string::data() returns a read-only const buffer in
C++14.
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(createString): Use std::vector instead of std::wstring.
(createUTF8String): Use std::vector instead of std::string.
2018-11-04 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Fold common UIScriptController functionality on macOS and iOS into UIScriptControllerCocoa.mm
https://bugs.webkit.org/show_bug.cgi?id=191231
Reviewed by Simon Fraser.
Moves some UIScriptController method implementations specific to iOS and macOS into UIScriptControllerCocoa, so
it can be shared between iOS-family and macOS platforms. See below for more details.
No change in behavior.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::overridePreference):
Add a method stub for DumpRenderTree.
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::doAsyncTask):
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
Unify these method implementations.
(WTR::UIScriptController::removeViewFromWindow):
(WTR::UIScriptController::addViewToWindow):
Move the macOS implementation to UIScriptControllerCocoa. On iOS, this method currently only adds the web view
to the window, and does not attempt to invoke the given completion block; additionally, invoking the completion
block after a presentation update (as done on macOS) causes pageoverlay/overlay-remove-reinsert-view.html to
begin failing consistently. This patch does not attempt to change behavior, but adds a FIXME describing this.
(WTR::UIScriptController::overridePreference):
(WTR::UIScriptController::findString):
(WTR::UIScriptController::contentsOfUserInterfaceItem const):
Move these from UIScriptControllerMac to UIScriptControllerCocoa, so that it is now implemented on iOS as well.
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::doAsyncTask): Deleted.
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution): Deleted.
(WTR::UIScriptController::contentsOfUserInterfaceItem const): Deleted.
(WTR::UIScriptController::findString): Deleted.
(WTR::UIScriptController::removeViewFromWindow): Deleted.
(WTR::UIScriptController::addViewToWindow): Deleted.
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::doAsyncTask): Deleted.
(WTR::UIScriptController::contentsOfUserInterfaceItem const): Deleted.
(WTR::UIScriptController::overridePreference): Deleted.
(WTR::UIScriptController::findString): Deleted.
(WTR::UIScriptController::removeViewFromWindow): Deleted.
(WTR::UIScriptController::addViewToWindow): Deleted.
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution): Deleted.
2018-11-04 Eric Carlson <eric.carlson@apple.com>
[MediaStream] User should not be prompted again after denying getDisplayMedia request
https://bugs.webkit.org/show_bug.cgi?id=191227
<rdar://problem/45784512>
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
(-[GetDisplayMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(TestWebKitAPI::GetDisplayMediaTest::promptForCapture):
(TestWebKitAPI::TEST_F):
2018-11-04 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Add support for percentage height in quirks mode.
https://bugs.webkit.org/show_bug.cgi?id=191232
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-04 Zalan Bujtas <zalan@apple.com>
[LFC][BCF] Add support for block level non-replaced inflow height percentage
https://bugs.webkit.org/show_bug.cgi?id=191229
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-02 Zalan Bujtas <zalan@apple.com>
[LFC][BFC] Resolve percentage height values.
https://bugs.webkit.org/show_bug.cgi?id=191224
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-03 Alex Christensen <achristensen@webkit.org>
Mac production builds should sign the network process xpc service with entitlements
https://bugs.webkit.org/show_bug.cgi?id=191209
<rdar://problem/45377609>
Reviewed by Geoff Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm: Added.
(TEST):
2018-11-02 Alex Christensen <achristensen@webkit.org>
Unreviewed, rolling out r237761.
Makes most API tests timeout and WK2 tests crash
Reverted changeset:
"Mac production builds should sign the network process xpc
service with entitlements"
https://bugs.webkit.org/show_bug.cgi?id=191209
https://trac.webkit.org/changeset/237761
2018-11-02 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed API test gardening
* TestWebKitAPI/glib/TestExpectations.json:
2018-11-02 Justin Michaud <justin_michaud@apple.com>
Add new global object and preliminary Worklets support for CSS painting api
https://bugs.webkit.org/show_bug.cgi?id=190979
Reviewed by Chris Dumez.
* Scripts/webkitpy/bindings/main.py:
(BindingsTests.generate_supplemental_dependency):
(BindingsTests.main):
2018-11-02 Alex Christensen <achristensen@webkit.org>
Mac production builds should sign the network process xpc service with entitlements
https://bugs.webkit.org/show_bug.cgi?id=191209
<rdar://problem/45377609>
Reviewed by Geoff Garen.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm: Added.
(TEST):
2018-11-02 Lucas Forschler <lforschler@apple.com>
Add Windows 10 archive bots
https://bugs.webkit.org/show_bug.cgi?id=190964
This Change updates the Apple Windows Buildbot configuration.
- Add Windows 10 specific builders and testers for release and debug.
- Refactor Windows -> Windows 7.
- Remove Windows 7 Debug.
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/config.json:
2018-11-02 Philippe Normand <pnormand@igalia.com>
[GTK][WPE] Enable GST_DEBUG_NO_COLOR environment variable pass-through
Rubber-stamped by Michael Catanzaro.
This variable is useful to get rid of shell color escapes in tests stderr files.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_environ_for_server):
* Scripts/webkitpy/port/wpe.py:
(WPEPort.setup_environ_for_server):
2018-11-02 Aakash Jain <aakash_jain@apple.com>
Add Basic Django web app for OpenSource EWS
https://bugs.webkit.org/show_bug.cgi?id=191091
Reviewed by Lucas Forschler.
* BuildSlaveSupport/EWS_app/manage.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/EWS_app/__init__.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/EWS_app/settings.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/EWS_app/urls.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/EWS_app/wsgi.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/ews/__init__.py: Added.
* BuildSlaveSupport/EWS_app/ews/admin.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/ews/apps.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/ews/migrations/__init__.py: Added.
* BuildSlaveSupport/EWS_app/ews/tests.py: Added, auto-generated by Django.
* BuildSlaveSupport/EWS_app/ews/models/__init__.py: Added.
* BuildSlaveSupport/EWS_app/ews/models/patch.py: Added.
* BuildSlaveSupport/EWS_app/ews/views/__init__.py: Added.
* BuildSlaveSupport/EWS_app/ews/views/patch.py: Added.
2018-11-02 Daniel Bates <dabates@apple.com>
[iOS] WebKit should dispatch DOM events when a modifier key is pressed
https://bugs.webkit.org/show_bug.cgi?id=190487
Reviewed by Tim Horton.
Update the code for renamed enumerations. For WebKitTestRunner, removed comment that does not
match my observations when using the simulator to simulate iOS 12 and add support for testing
right-hand side modifiers.
* DumpRenderTree/mac/EventSendingController.mm:
(modifierFlags):
(-[EventSendingController keyDown:withModifiers:withLocation:]):
(-[EventSendingController setTouchModifier:value:]):
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(hidUsageCodeForCharacter):
2018-11-02 Chris Dumez <cdumez@apple.com>
[PSON] Reuse SuspendedPages' process when possible, for performance
https://bugs.webkit.org/show_bug.cgi?id=191166
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-11-02 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add support for intrinsic width calculation
https://bugs.webkit.org/show_bug.cgi?id=191144
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-01 Philippe Normand <pnormand@igalia.com>
[Apache] Self-signed SSL certificate RSA key is considered too weak
https://bugs.webkit.org/show_bug.cgi?id=191156
Reviewed by Michael Catanzaro.
* Scripts/webkitpy/common/system/pemfile.py:
2018-11-02 Zan Dobersek <zdobersek@igalia.com>
Unreviewed follow-up to r237678.
* wpe/jhbuild.modules: The patch element apparently has to be a child
of the branch in order for Jhbuild to properly detect and apply the
patch file.
2018-11-01 Ross Kirsling <ross.kirsling@sony.com>
build-jsc --wincairo should update WinCairo libraries
https://bugs.webkit.org/show_bug.cgi?id=191170
Reviewed by Fujii Hironori.
* Scripts/build-jsc:
2018-11-01 John Wilander <wilander@apple.com>
In WebCore::ResourceLoadObserver, use document.sessionID().isEphemeral() when possible and check for page existence when not
https://bugs.webkit.org/show_bug.cgi?id=191119
<rdar://problem/44176965>
Reviewed by Chris Dumez.
This is an API test for a WebKitLegacy WebView that is first closed and then
JavaScript is handed a keyboard event.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitLegacy/mac/ClosingWebView.mm: Added.
(-[ClosingWebViewThenSendingItAKeyDownEventLoadDelegate webView:didFinishLoadForFrame:]):
(-[KeyboardEventListener handleEvent:]):
(TestWebKitAPI::TEST):
2018-11-01 Sihui Liu <sihui_liu@apple.com>
Add a storage limit for IndexedDB
https://bugs.webkit.org/show_bug.cgi?id=190598
<rdar://problem/44654715>
Reviewed by Chris Dumez.
Add API for testing.
* DumpRenderTree/TestRunner.cpp:
(setIDBPerOriginQuotaCallback):
(TestRunner::staticFunctions):
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setIDBPerOriginQuota):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::setIDBPerOriginQuota):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setIDBPerOriginQuota):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setIDBPerOriginQuota):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2018-11-01 Chris Dumez <cdumez@apple.com>
[PSON] WebPageProxy::receivedNavigationPolicyDecision() should not schedule the new load asynchronously when process-swapping
https://bugs.webkit.org/show_bug.cgi?id=191076
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate init]):
(-[PSONNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2018-11-01 Adrian Perez de Castro <aperez@igalia.com>
Fix build with VIDEO and WEB_AUDIO disabled
https://bugs.webkit.org/show_bug.cgi?id=191147
<rdar://problem/45726710>
Unreviewed build fix.
This adds the missing compilation guards in the WPE MiniBrowser.
* MiniBrowser/wpe/main.cpp:
(main): Condition GST includes and calls.
2018-10-31 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add support for inline-block elements.
https://bugs.webkit.org/show_bug.cgi?id=191143
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-11-01 Claudio Saavedra <csaavedra@igalia.com>
[WPE] Add missing libsoup patch to jhbuild
https://bugs.webkit.org/show_bug.cgi?id=191149
Reviewed by Žan Doberšek.
* wpe/jhbuild.modules:
* wpe/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Added.
2018-11-01 Claudio Saavedra <csaavedra@igalia.com>
Fix build with VIDEO and WEB_AUDIO disabled
https://bugs.webkit.org/show_bug.cgi?id=191147
Reviewed by Philippe Normand.
* MiniBrowser/gtk/main.c:
(main): Condition GST includes and calls
2018-10-31 Justin Michaud <justin_michaud@apple.com>
Add Justin Michaud to the list of WebKit Committers
https://bugs.webkit.org/show_bug.cgi?id=191142
* Scripts/webkitpy/common/config/contributors.json:
2018-10-31 Guillaume Emont <guijemont@igalia.com>
Don't run JIT tests on 32-bit platforms
https://bugs.webkit.org/show_bug.cgi?id=191074
Reviewed by Michael Catanzaro.
* Scripts/run-jsc-stress-tests:
2018-10-30 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Attachment dropped from one web view to another is missing its file wrapper
https://bugs.webkit.org/show_bug.cgi?id=190530
<rdar://problem/45232149>
Reviewed by Tim Horton.
Add a test to verify that copying different types of attachments and pasting in a new web view inserts
attachments in the second web view that are backed by _WKAttachment objects, whose NSFileWrappers hold data that
is equivalent to the original file wrappers used to insert attachments in the first web view.
Existing API tests verify that when copying and pasting within a single web view, the pasted attachment element
is still backed by the same NSFileWrapper instance.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2018-10-30 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] Remove obsolete code for Visual Studio Express in webkitdirs.pm
https://bugs.webkit.org/show_bug.cgi?id=190949
Reviewed by Alex Christensen.
Visual Studio 2017 Community is the alternative.
* Scripts/webkitdirs.pm: Remove $willUseVCExpressWhenBuilding variable.
(setupCygwinEnv): Remove obsolete code for Visual Studio Express.
(buildVisualStudioProject): Ditto.
(dieIfWindowsPlatformSDKNotInstalled): Deleted.
(usingVisualStudioExpress): Deleted.
2018-10-30 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Direct2D] Support building DumpRenderTree for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=191093
<rdar://problem/45685706>
Unreviewed build fix.
error C2065: 'renderTarget': undeclared identifier
* DumpRenderTree/win/PixelDumpSupportWin.cpp:
(createBitmapContextFromWebView): Restored the previous implementation.
2018-10-30 Don Olmstead <don.olmstead@sony.com>
[PlayStation] Enable JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=191072
Reviewed by Brent Fulgham.
Add platform scripts for building the PlayStation port.
perl Tools/Scripts/build-webkit --playstation
* Scripts/build-webkit:
* Scripts/build-webkittestrunner:
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
(determineConfigurationProductDir):
(isPlayStation): Added.
(getMSBuildPlatformArgument): Added.
(buildVisualStudioProject):
(wrapperPrefixIfNeeded):
(generateBuildSystemFromCMakeProject):
* TestWebKitAPI/PlatformPlayStation.cmake: Added.
2018-10-30 Brent Fulgham <bfulgham@apple.com>
[Win][Direct2D] Support building DumpRenderTree for Direct2D
https://bugs.webkit.org/show_bug.cgi?id=191093
<rdar://problem/45685706>
Reviewed by Alex Christensen.
* DumpRenderTree/PixelDumpSupport.cpp: Update for Direct2D use.
* DumpRenderTree/PlatformWin.cmake: Add support for Direct2D build.
* DumpRenderTree/win/PixelDumpSupportDirect2D.cpp: Added.
(pixelDumpSystemFactory): Added.
(printPNG): Create stub.
(computeMD5HashStringForBitmapContext): Ditto.
(dumpBitmap): Ditto.
* DumpRenderTree/win/PixelDumpSupportDirect2D.h: Added.
(BitmapContext::createByAdoptingBitmapAndContext):
(BitmapContext::~BitmapContext):
(BitmapContext::platformContext const):
(BitmapContext::BitmapContext):
* DumpRenderTree/win/PixelDumpSupportWin.cpp:
(createBitmapContextFromWebView): Update to support Direct2D.
* MiniBrowser/win/MiniBrowserReplace.h: Drive-by fix: The old WebKit
logo is no longer available at this location. Switch to the new logo.
2018-10-30 Jonathan Bedard <jbedard@apple.com>
webkitpy: Support alternate simctl list outputs
https://bugs.webkit.org/show_bug.cgi?id=191090
<rdar://problem/45684255>
Rubber-stamped by Aakash Jain.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager._create_runtimes): Support alternative availability format.
(SimulatedDeviceManager._create_device_with_runtime): Ditto.
* Scripts/webkitpy/xcode/simulated_device_unittest.py:
(test_available_devices): Add iOS 12 with alternative availability format.
2018-10-30 Alexey Proskuryakov <ap@apple.com>
Clean up some obsolete MAX_ALLOWED macros
https://bugs.webkit.org/show_bug.cgi?id=190916
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp:
* TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
2018-10-30 Claudio Saavedra <csaavedra@igalia.com>
[GTK][WPE] Fixes to the PublicSuffix implementation
https://bugs.webkit.org/show_bug.cgi?id=191031
Reviewed by Michael Catanzaro.
* TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
(TestWebKitAPI::TEST_F): Remove a test for a domain
that is not registrable and shouldn't be tested there.
2018-10-29 Tim Horton <timothy_horton@apple.com>
Modernize WebKit nibs and lprojs for localization's sake
https://bugs.webkit.org/show_bug.cgi?id=190911
<rdar://problem/45349466>
Reviewed by Dan Bernstein.
* Scripts/check-inspector-strings:
* Scripts/update-webkit-localizable-strings:
* gtk/manifest.txt.in:
* wpe/manifest.txt.in:
English->en
2018-10-29 Daniel Bates <dabates@apple.com>
[lldb-webkit] Last aliased enumerator in OptionSet is printed; should print first enumerator
https://bugs.webkit.org/show_bug.cgi?id=191036
Reviewed by Andy Estes.
Prefer the first enumerator (in parse order) when pretty-printing an OptionSet that is parameterized
by an enum that contains two or more enumerators with the same value. For example, suppose
you have the following enum:
enum Flag {
A = 1 << 0,
AAlias = A,
};
Then pretty-printing OptionSet<Flag>(Flag::A) should print A instead of AAlias. A side effect of
this change is that OptionSet<Flag>(Flag::AAlias) will also print A as its only member as we cannot
differentiate between A and Alias. This should be acceptable in practice as aliased enumerators
tend to be used in bounds checks as opposed to code that adds to a set.
* lldb/lldbWebKitTester/main.cpp:
(testSummaryProviders):
* lldb/lldb_webkit.py:
(WTFOptionSetProvider.update):
* lldb/lldb_webkit_unittest.py:
(TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
(TestSummaryProviders):
(TestSummaryProviders.serial_test_WTFOptionSetProvider_aliased_flag):
2018-10-29 Daniel Bates <dabates@apple.com>
[llbd-webkit] Add summaries for Document, Frame, and SecurityOrigin
https://bugs.webkit.org/show_bug.cgi?id=191033
Reviewed by Andy Estes.
For Documents we display its origin, URL, whether it's in the main frame, and its page cache state.
We display the same details in the summary for a Frame because its Document tends to be the most
interesting aspect of it. For SecurityOrigin we display its origin, domain (affects cookie access),
and whether the origin has universal access.
* lldb/lldb_webkit.py:
(__lldb_init_module):
Register new summary providers.
(WebCoreSecurityOrigin_SummaryProvider):
(WebCoreFrame_SummaryProvider):
(WebCoreDocument_SummaryProvider):
Add new summary providers.
(StdOptionalWrapper):
(StdOptionalWrapper.__init__):
(StdOptionalWrapper.has_value):
(StdOptionalWrapper.value):
Convenience data type that provides access to the fields of a std::optional<>.
(WebCoreSecurityOriginProvider):
(WebCoreSecurityOriginProvider.__init__):
(WebCoreSecurityOriginProvider.is_unique):
(WebCoreSecurityOriginProvider.scheme):
(WebCoreSecurityOriginProvider.host):
(WebCoreSecurityOriginProvider.port):
(WebCoreSecurityOriginProvider.domain):
(WebCoreSecurityOriginProvider.has_universal_access):
(WebCoreSecurityOriginProvider.to_string):
(WebCoreFrameProvider):
(WebCoreFrameProvider.__init__):
(WebCoreFrameProvider.is_main_frame):
(WebCoreFrameProvider.document):
(WebCoreDocumentProvider):
(WebCoreDocumentProvider.__init__):
(WebCoreDocumentProvider.url):
(WebCoreDocumentProvider.origin):
(WebCoreDocumentProvider.page_cache_state):
(WebCoreDocumentProvider.frame):
2018-10-29 Chris Dumez <cdumez@apple.com>
[PSON] When Safari restores session state after launching, going back and forward does not swap processes
https://bugs.webkit.org/show_bug.cgi?id=190975
<rdar://problem/45059256>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-29 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Compute estimated margin top for inline formatting root's ancestors
https://bugs.webkit.org/show_bug.cgi?id=191018
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-29 Zalan Bujtas <zalan@apple.com>
[LFC] Add support for inflow non replaced content height when the box is an inline formatting root.
https://bugs.webkit.org/show_bug.cgi?id=191011
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-29 Zalan Bujtas <zalan@apple.com>
Missing from r237549
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-29 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Add support for simple intruding floats.
https://bugs.webkit.org/show_bug.cgi?id=190998
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-29 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Inline layout produces separate runs when float is present.
https://bugs.webkit.org/show_bug.cgi?id=190980
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-29 Tadeu Zagallo <tzagallo@apple.com>
New bytecode format for JSC
https://bugs.webkit.org/show_bug.cgi?id=187373
<rdar://problem/44186758>
Reviewed by Filip Pizlo.
Do not force ENABLE_JIT=true when $forceCLoop is false.
* Scripts/build-jsc:
2018-10-29 Claudio Saavedra <csaavedra@igalia.com>
[GTK] Try to fix the xserver-xorg build in the Ubuntu LTS bot
Unreviewed build fix
The build fails because of some array-bound check related
to strcmp() macro optimizations. Disabling selective Werrors
when building xserver-xorg might get past this.
* gtk/jhbuild.modules: Add --disable-selective-werror to xserver-xorg
configuration.
2018-10-29 Claudio Saavedra <csaavedra@igalia.com>
[GTK] Update API test expectations after r237383
https://bugs.webkit.org/show_bug.cgi?id=186913
Unreviewed gardening.
* TestWebKitAPI/glib/TestExpectations.json: Remove
passing TestSSL tests.
2018-10-28 Zan Dobersek <zdobersek@igalia.com>
[WPE] Add the WebKitVersion.h header
https://bugs.webkit.org/show_bug.cgi?id=191015
Reviewed by Michael Catanzaro.
* MiniBrowser/wpe/main.cpp:
(automationStartedCallback): Remove the FIXME and finally enable the
webkit_application_info_set_version() call.
* TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp: Remove
this FIXME as well and remove the custom WEBKIT_*_VERSION macros.
2018-10-28 Fujii Hironori <Hironori.Fujii@sony.com>
[Win] Remove obsolete code for vcxproj builds in build-api-tests and build-jsc
https://bugs.webkit.org/show_bug.cgi?id=190948
Reviewed by Brent Fulgham.
vcxproj files have been removed in Bug 154388.
* Scripts/build-api-tests: Removed obsolete code to build vcproj.
* Scripts/build-jsc:
(buildMyProject): Ditto. Removed a condition of buiding bmalloc
which is not used because Windows ports are using CMake.
2018-10-28 Geoffrey Garen <ggaren@apple.com>
HashMap should support selecting a random entry
https://bugs.webkit.org/show_bug.cgi?id=190814
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Tests/WTF/HashMap.cpp: Renamed IsRandom to
IsEvenlyDistributed to reflect the fact that we're only testing the
distribution. Added a test case that covers more table densities and
the remove() operation.
2018-10-27 Charlie Turner <cturner@igalia.com>
[GTK] Add bubblewrap feature option
https://bugs.webkit.org/show_bug.cgi?id=190981
Reviewed by Xabier Rodriguez-Calvar.
Without this, it was not possible to disable the bubblewrap sandbox
from the webkit build scripts.
* Scripts/webkitperl/FeatureList.pm:
2018-10-26 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r237479 and r237484.
https://bugs.webkit.org/show_bug.cgi?id=190978
broke JSC on iOS (Requested by tadeuzagallo on #webkit).
Reverted changesets:
"New bytecode format for JSC"
https://bugs.webkit.org/show_bug.cgi?id=187373
https://trac.webkit.org/changeset/237479
"Gardening: Build fix after r237479."
https://bugs.webkit.org/show_bug.cgi?id=187373
https://trac.webkit.org/changeset/237484
2018-10-26 Tadeu Zagallo <tzagallo@apple.com>
New bytecode format for JSC
https://bugs.webkit.org/show_bug.cgi?id=187373
<rdar://problem/44186758>
Reviewed by Filip Pizlo.
Do not force ENABLE_JIT=true when $forceCLoop is false.
* Scripts/build-jsc:
2018-10-26 Geoffrey Garen <ggaren@apple.com>
HashMap should support selecting a random entry
https://bugs.webkit.org/show_bug.cgi?id=190814
Reviewed by Antti Koivisto.
* TestWebKitAPI/Tests/WTF/HashMap.cpp: Updated the Random_IsRandom to
more thoroughly test for randomness.
2018-10-26 Antti Koivisto <antti@apple.com>
hashSet.remove(hashSet.random()) doesn't build
https://bugs.webkit.org/show_bug.cgi?id=190953
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WTF/HashSet.cpp:
(TestWebKitAPI::TEST):
2018-10-26 Zalan Bujtas <zalan@apple.com>
[LFC][IFC] Layout floats as part of the inline content
https://bugs.webkit.org/show_bug.cgi?id=190942
Reviewed by Antti Koivisto.
* LayoutReloaded/misc/LFC-passing-tests.txt:
2018-10-26 Alicia Boya García <aboya@igalia.com>
[MSE][WTF][Media] Invalid MediaTime should be falsy
https://bugs.webkit.org/show_bug.cgi?id=190893
Reviewed by Jer Noble.
This patch adds additional API tests for the conversions from
MediaTime to boolean.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp:
(TestWebKitAPI::TEST):
2018-10-25 Chris Dumez <cdumez@apple.com>
[PSON] Navigating cross-site with locked history but unlocked back/forward list fails to create a new BackForwardListItem
https://bugs.webkit.org/show_bug.cgi?id=190915
<rdar://problem/45059069>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-25 Joseph Pecoraro <pecoraro@apple.com>
Web Inspector: Add a watchlist message rule to warn about feature checking new inspector protocol changes
https://bugs.webkit.org/show_bug.cgi?id=190896
Reviewed by Matt Baker.
* Scripts/webkitpy/common/config/watchlist:
2018-10-25 Geoffrey Garen <ggaren@apple.com>
HashMap should support selecting a random entry
https://bugs.webkit.org/show_bug.cgi?id=190814
Reviewed by Antti Koivisto.
Unit testing is fun and easy!
* TestWebKitAPI/Tests/WTF/HashMap.cpp:
(TestWebKitAPI::ZeroHash::hash):
(TestWebKitAPI::TEST):
2018-10-24 Tim Horton <timothy_horton@apple.com>
REGRESSION (r237331): DismissingActionSheetShouldNotDismissPresentingViewController times out
https://bugs.webkit.org/show_bug.cgi?id=190897
* TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
(TestWebKitAPI::TEST):
Disable the test for now.
2018-10-24 Alexey Proskuryakov <ap@apple.com>
Clean up some obsolete macOS version guards
https://bugs.webkit.org/show_bug.cgi?id=190887
Reviewed by Dan Bernstein.
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(__simulated_forceClickAssociatedEventsMask):
(-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:clickCount:]):
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration):
* WebKitTestRunner/mac/EventSenderProxy.mm:
(-[EventSenderSyntheticEvent initPressureEventAtLocation:globalLocation:stage:pressure:stageTransition:phase:time:eventNumber:window:]):
2018-10-24 Megan Gardner <megan_gardner@apple.com>
Turn on Conic Gradients
https://bugs.webkit.org/show_bug.cgi?id=190810
Reviewed by Tim Horton.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-24 Pablo Saavedra <psaavedra@igalia.com>
[WPE] Fix CMake rules in for TestWebKitAPIBase library building in developer mode
https://bugs.webkit.org/show_bug.cgi?id=190328
Reviewed by Michael Catanzaro.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/PlatformWPE.cmake:
2018-10-24 Chris Dumez <cdumez@apple.com>
[PSON] When navigating back and forth, 'about:blank' shows up in the back/forward list
https://bugs.webkit.org/show_bug.cgi?id=190846
<rdar://problem/45058938>
Reviewed by Antti Koivisto.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-24 Claudio Saavedra <csaavedra@igalia.com>
[GTK] TestSSL failing because of missing libsoup patch
https://bugs.webkit.org/show_bug.cgi?id=190869
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules: Add the patch below to fix the API test TestSSL
* gtk/patches/libsoup-soup-socket-fix-critical-warning-when-the-peer-certi.patch: Added.
2018-10-23 Justin Fan <justin_fan@apple.com>
[WebGPU] Rename old GPU* implementation files to GPULegacy* for WebMetal
https://bugs.webkit.org/show_bug.cgi?id=190817
Reviewed by Dean Jackson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Copied from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm.
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Renamed from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUTest.h.
2018-10-23 Chris Dumez <cdumez@apple.com>
[PSON] Add support for cross-site client-side redirects
https://bugs.webkit.org/show_bug.cgi?id=190806
<rdar://problem/45047344>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[PSONNavigationDelegate _webView:willPerformClientRedirectToURL:delay:]):
(-[PSONNavigationDelegate _webView:didPerformClientRedirectFromURL:toURL:]):
2018-10-23 Claudio Saavedra <csaavedra@igalia.com>
[WPE][GTK] Pass full certificate chain in CertificateInfo coder
https://bugs.webkit.org/show_bug.cgi?id=190789
Reviewed by Michael Catanzaro.
When the network process serializes certificate data to other
processes through the argument coders, the certificate chain, if
present, is lost. In practice this means that applications using
the public API to process certificate info have no details on the
certificate chain, other than the very basics included in the
certificate. Serialize the entire chain if available in the
certificate.
* TestWebKitAPI/Tests/WebKitGLib/TestSSL.cpp:
(testSSL): Test that the self-signed certificate has no bogus
issuer certificate.
2018-10-22 Tim Horton <timothy_horton@apple.com>
REGRESSION (r237331): InteractionDeadlockAfterCrash API test fails
https://bugs.webkit.org/show_bug.cgi?id=190801
<rdar://problem/43674361>
* TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
(TEST):
Use a parented WKWebView for this test, otherwise none of the assertions
about gesture recognizers work anymore.
2018-10-22 Ryan Haddad <ryanhaddad@apple.com>
REGRESSION (r234081): TestWebKitAPI.VideoControlsManager.VideoControlsManagerAudioElementFollowingUserInteraction is a flaky timeout
https://bugs.webkit.org/show_bug.cgi?id=187972
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
(TestWebKitAPI::TEST): Disable the flaky test.
2018-10-22 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] [Datalist] fast/forms/datalist/datalist-show-hide.html fails
https://bugs.webkit.org/show_bug.cgi?id=190777
Reviewed by Tim Horton.
Implement isShowingDataListSuggestions on iOS. See below for more details.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingDataListSuggestions const):
Add a stub implementation for DumpRenderTree.
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::isShowingDataListSuggestions const):
Move this stub implementation to !PLATFORM(COCOA).
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::forEachViewInHierarchy):
Add a helper function to apply a given function to a UIView and each of its subviews, recursively.
(WTR::UIScriptController::isShowingDataListSuggestions const):
For iOS, return whether the UIRemoteKeyboardWindow contains a subview of type WKDataListSuggestionsPickerView.
2018-10-19 Dan Bernstein <mitz@apple.com>
[macOS] MiniBrowser has an unused injected bundle
https://bugs.webkit.org/show_bug.cgi?id=190770
Reviewed by Tim Horton.
* MiniBrowser/Configurations/MiniBrowserBundle.xcconfig: Removed.
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Removed the MiniBrowserBundle target,
the Copy Bundle build phase in the MiniBrowser target, and references to removed files.
* MiniBrowser/MiniBrowserWebProcessPlugIn.h: Removed.
* MiniBrowser/MiniBrowserWebProcessPlugIn.m: Removed.
* MiniBrowser/mac/Bundle: Removed.
2018-10-19 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] [Datalist] Can't pick datalist suggestions in a stock WKWebView
https://bugs.webkit.org/show_bug.cgi?id=190621
<rdar://problem/45310649>
Reviewed by Tim Horton.
Add a UIScriptController hook to resign first responder on WKWebView. See LayoutTests/ChangeLog for more detail.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::resignFirstResponder):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::resignFirstResponder):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::resignFirstResponder):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm:
(WTR::UIScriptController::resignFirstResponder):
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::makeWebViewFirstResponder):
Implement this method stub on iOS, to ensure that TestController::resetStateToConsistentValues restores first
responder on the WKWebView when running iOS layout tests.
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformResetStateToConsistentValues):
After resigning first responder to dismiss any on-screen keyboard, ensure that we restore first responder.
2018-10-19 Dean Jackson <dino@apple.com>
ASSERTION FAILED: !frame().animation().hasAnimations() in WebCore::FrameView::didDestroyRenderTree()
https://bugs.webkit.org/show_bug.cgi?id=186946
<rdar://problem/41724248>
Reviewed by Antoine Quint.
If the incoming test has different enableWebAnimationsCSSIntegration options,
then we need to create a new WebView.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::webViewIsCompatibleWithOptions const):
2018-10-19 Charlie Turner <cturner@igalia.com>
[EME] Fix crash during tracing in gst_qtdemux_request_protection_context
https://bugs.webkit.org/show_bug.cgi?id=190738
Reviewed by Xabier Rodriguez-Calvar.
Add a GStreamer patch to avoid crashing when the run-time logging
level is TRACE. There was a missing null check which caused many
tests to crash.
* gstreamer/patches/gst-plugins-good-0013-Avoid-warning-when-reporting-about-decryptors.patch: Added.
2018-10-18 Alicia Boya García <aboya@igalia.com>
[Media] Use nanoseconds as MaximumTimeScale
https://bugs.webkit.org/show_bug.cgi?id=190631
Rebased MediaTime tests covering timescales over the maximum.
Reviewed by Jer Noble.
* TestWebKitAPI/Tests/WTF/MediaTime.cpp:
(TestWebKitAPI::TEST):
2018-10-18 Dean Johnson <dean_johnson@apple.com>
clean-webkit pulls in many unnecessary dependencies in webkitpy
https://bugs.webkit.org/show_bug.cgi?id=190732
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/host.py:
(Host.__init__): Split out 'bugs', 'bugzilla', and 'web' to only be created when used.
(Host):
(Host.bugs):
(Host.bugzilla):
(Host.web):
2018-10-18 Chris Dumez <cdumez@apple.com>
[PSON] SuspendedPages do not report meaningful domains in Activity Monitor
https://bugs.webkit.org/show_bug.cgi?id=190721
<rdar://problem/45059699>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-18 Alexey Proskuryakov <ap@apple.com>
Switch from PLATFORM(IOS) to PLATFORM(IOS_FAMILY)
https://bugs.webkit.org/show_bug.cgi?id=190729
Reviewed by Tim Horton.
* DumpRenderTree/AccessibilityController.h:
* DumpRenderTree/AccessibilityTextMarker.h:
* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::getJSClass):
* DumpRenderTree/AccessibilityUIElement.h:
* DumpRenderTree/DumpRenderTreeFileDraggingSource.h:
* DumpRenderTree/TestRunner.cpp:
(getSecureEventInputIsEnabledCallback):
(TestRunner::staticFunctions):
(TestRunner::callUIScriptCallback):
* DumpRenderTree/TestRunner.h:
* DumpRenderTree/cg/PixelDumpSupportCG.cpp:
* DumpRenderTree/ios/AccessibilityTextMarkerIOS.mm:
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
* DumpRenderTree/ios/DumpRenderTreeAppMain.mm:
* DumpRenderTree/ios/DumpRenderTreeBrowserView.mm:
* DumpRenderTree/ios/TextInputControllerIOS.m:
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
* DumpRenderTree/mac/AppleScriptController.m:
* DumpRenderTree/mac/DumpRenderTree.mm:
(createWebViewAndOffscreenWindow):
(destroyWebViewAndOffscreenWindow):
(resetWebPreferencesToConsistentValues):
(setDefaultsToConsistentValuesForTesting):
(allocateGlobalControllers):
(releaseGlobalControllers):
(addTestPluginsToPluginSearchPath):
(prepareConsistentTestingEnvironment):
(dumpRenderTree):
(DumpRenderTreeMain):
(dumpFrameAsPDF):
(dumpBackForwardListForAllWindows):
(updateDisplay):
(dump):
(resetWebViewToConsistentStateBeforeTesting):
(runTest):
(displayWebView):
(displayAndTrackRepaintsWebView):
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
* DumpRenderTree/mac/DumpRenderTreeMac.h:
* DumpRenderTree/mac/DumpRenderTreePasteboard.h:
* DumpRenderTree/mac/DumpRenderTreeWindow.h:
* DumpRenderTree/mac/DumpRenderTreeWindow.mm:
(-[DumpRenderTreeWindow close]):
(-[DumpRenderTreeWindow webView]):
(-[DumpRenderTreeWindow webViewStartedAcceleratedCompositing:]):
* DumpRenderTree/mac/EventSendingController.h:
* DumpRenderTree/mac/EventSendingController.mm:
(+[EventSendingController isSelectorExcludedFromWebScript:]):
(+[EventSendingController webScriptNameForSelector:]):
(-[EventSendingController dealloc]):
(-[EventSendingController currentEventTime]):
(-[EventSendingController clearKillRing]):
(modifierFlags):
(-[EventSendingController mouseDown:withModifiers:]):
(-[EventSendingController scalePageBy:atX:andY:]):
(-[EventSendingController mouseUp:withModifiers:]):
(-[EventSendingController mouseMoveToX:Y:]):
(-[EventSendingController mouseScrollByX:andY:continuously:]):
(-[EventSendingController keyDown:withModifiers:withLocation:]):
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(-[FrameLoadDelegate init]):
(-[FrameLoadDelegate dealloc]):
(-[FrameLoadDelegate processWork:]):
(-[FrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):
(-[FrameLoadDelegate webView:didCommitLoadForFrame:]):
(-[FrameLoadDelegate didClearWindowObjectInStandardWorldForFrame:]):
* DumpRenderTree/mac/LayoutTestHelper.m:
* DumpRenderTree/mac/MockGeolocationProvider.mm:
(-[MockGeolocationProvider timerFired]):
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::setMainFrameIsFirstResponder):
(TestRunner::setAutomaticLinkDetectionEnabled):
(TestRunner::setUseDashboardCompatibilityMode):
(TestRunner::isCommandEnabled):
(TestRunner::inspectorTestStubURL):
(TestRunner::apiTestNewWindowDataLoadBaseURL):
(TestRunner::abortModal):
(TestRunner::setTextDirection):
(TestRunner::addChromeInputField):
(TestRunner::removeChromeInputField):
(TestRunner::focusWebView):
(TestRunner::setBackingScaleFactor):
(TestRunner::imageCountInGeneralPasteboard const):
* DumpRenderTree/mac/UIDelegate.h:
* DumpRenderTree/mac/UIDelegate.mm:
(-[UIDelegate modalWindowWillClose:]):
(-[UIDelegate webViewRunModal:]):
(-[UIDelegate webView:supportsFullScreenForElement:withKeyboard:]):
(-[UIDelegate dealloc]):
* Scripts/check-for-inappropriate-objc-class-names:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
* TestRunnerShared/spi/UIKitTestSPI.h:
* TestWebKitAPI/Tests/WTF/darwin/WeakLinking.cpp:
* TestWebKitAPI/Tests/WebCore/MarkedText.cpp:
(WebCore::operator<<):
* TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
(TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
* TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
* TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/AdditionalReadAccessAllowedURLs.mm:
* TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
* TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegate.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/BundleRangeHandle.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/BundleRangeHandlePlugIn.mm:
(-[BundleRangeHandlePlugIn webProcessPlugInBrowserContextController:didFinishDocumentLoadForFrame:]):
* TestWebKitAPI/Tests/WebKitCocoa/Coding.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
* TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
(createWebViewWithCustomPasteboardDataEnabled):
* TestWebKitAPI/Tests/WebKitCocoa/Copying.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/DataDetection.mm:
* TestWebKitAPI/Tests/WebKitCocoa/DoAfterNextPresentationUpdateAfterCrash.mm:
* TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
* TestWebKitAPI/Tests/WebKitCocoa/ExitFullscreenOnEnterPiP.mm:
* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
* TestWebKitAPI/Tests/WebKitCocoa/FixedLayoutSize.mm:
* TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm:
* TestWebKitAPI/Tests/WebKitCocoa/Geolocation.mm:
* TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
* TestWebKitAPI/Tests/WebKitCocoa/LocalStorageClear.mm:
(defaultWebsiteCacheDirectory):
(defaultApplicationCacheDirectory):
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/NSFileManagerExtras.mm:
* TestWebKitAPI/Tests/WebKitCocoa/NowPlaying.mm:
* TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
* TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm:
* TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
* TestWebKitAPI/Tests/WebKitCocoa/PasteMixedContent.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
* TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
* TestWebKitAPI/Tests/WebKitCocoa/RenderedImageWithOptions.mm:
(runTestWithWidth):
* TestWebKitAPI/Tests/WebKitCocoa/RenderedImageWithOptionsPlugIn.mm:
(-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
* TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
* TestWebKitAPI/Tests/WebKitCocoa/ShrinkToFit.mm:
* TestWebKitAPI/Tests/WebKitCocoa/UserContentController.mm:
* TestWebKitAPI/Tests/WebKitCocoa/VisibleContentRect.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(platformCopyRichTextWithMultipleAttachments):
(platformCopyRichTextWithImage):
(platformCopyPNG):
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKPDFViewStablePresentationUpdateCallback.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-leaks.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewSnapshot.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
* TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
* TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
* TestWebKitAPI/Tests/WebKitLegacy/mac/AccessingPastedImage.mm:
* TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
* TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
* TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
* TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
* TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
* TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
* TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm:
* TestWebKitAPI/Tests/ios/TestInputDelegate.h:
* TestWebKitAPI/Tests/ios/TestInputDelegate.mm:
* TestWebKitAPI/Tests/ios/TextAutosizingBoost.mm:
* TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
* TestWebKitAPI/Tests/ios/WKScrollViewDelegate.mm:
* TestWebKitAPI/Tests/ios/WKScrollViewTests.mm:
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
* TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm:
* TestWebKitAPI/cocoa/DragAndDropSimulator.h:
* TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
(-[WKWebView _test_waitForDidFinishNavigation]):
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
* TestWebKitAPI/config.h:
* TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
* TestWebKitAPI/ios/TestWKWebViewController.h:
* TestWebKitAPI/ios/TestWKWebViewController.mm:
* TestWebKitAPI/ios/UIKitSPI.h:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/mac/TestRunnerMac.mm:
(WTR::TestRunner::inspectorTestStubURL):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::webProcessName):
(WTR::TestController::networkProcessName):
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::invoke):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/cg/TestInvocationCG.cpp:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::initializeWebViewConfiguration):
(WTR::TestController::platformCreateWebView):
(WTR::TestController::imageCountInGeneralPasteboard const):
(WTR::TestController::addTestKeyToKeychain):
(WTR::TestController::cleanUpKeychain):
(WTR::TestController::keyExistsInKeychain):
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2018-10-18 Chris Dumez <cdumez@apple.com>
[PSON] Cap number of SuspendedPageProxy objects and allow a WebPageProxy to have more than one
https://bugs.webkit.org/show_bug.cgi?id=190688
<rdar://problem/45354095>
Reviewed by Antti Koivisto.
Extended API test coverage to confirm that:
- We do not accumulate more than 3 suspended processes.
- We can navigate back 3 times and use the page cache for each of these loads.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-17 Wenson Hsieh <wenson_hsieh@apple.com>
Enable the datalist element by default on iOS and macOS
https://bugs.webkit.org/show_bug.cgi?id=190594
<rdar://problem/45281159>
Reviewed by Ryosuke Niwa and Tim Horton.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-17 Chris Fleizach <cfleizach@apple.com>
AX: Certain tags should identify their context to iOS API
https://bugs.webkit.org/show_bug.cgi?id=190622
<rdar://problem/45308194>
Reviewed by Zalan Bujtas.
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(AccessibilityUIElement::stringAttributeValue):
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(WTR::AccessibilityUIElement::stringAttributeValue):
2018-10-16 Sihui Liu <sihui_liu@apple.com>
Add a switch for Web SQL
https://bugs.webkit.org/show_bug.cgi?id=190271
Reviewed by Ryosuke Niwa.
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2018-10-16 Alex Christensen <achristensen@webkit.org>
Remove InjectedBundleBackForwardList
https://bugs.webkit.org/show_bug.cgi?id=190640
Reviewed by Chris Dumez.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::dumpBackForwardListsForAllPages):
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::InjectedBundlePage::prepare):
(WTR::InjectedBundlePage::dumpHistory):
(WTR::hasPrefix): Deleted.
(WTR::compareByTargetName): Deleted.
(WTR::dumpBackForwardListItem): Deleted.
(WTR::InjectedBundlePage::dumpBackForwardList): Deleted.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::clearBackForwardList):
2018-10-16 Dominik Infuehr <dinfuehr@igalia.com>
Unreviewed, added myself to contributors.json.
* Scripts/webkitpy/common/config/contributors.json:
2018-10-16 Justin Michaud <justin_michaud@apple.com>
Implement feature flag and bindings for CSS Painting API
https://bugs.webkit.org/show_bug.cgi?id=190237
Reviewed by Ryosuke Niwa.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-16 Philippe Normand <pnormand@igalia.com>
Unreviewed, GTK Ubuntu LTS Jhbuild prospective build fix
* gstreamer/jhbuild.modules:
2018-10-16 Philippe Normand <pnormand@igalia.com>
[GTK][JHBuild] Disable libmount support in glib
Rubber-stamped by Alejandro G. Castro.
This feature doesn't seem required for our setup.
* gtk/jhbuild.modules:
2018-10-15 Justin Fan <justin_fan@apple.com>
Add WebGPU 2018 feature flag and experimental feature flag
https://bugs.webkit.org/show_bug.cgi?id=190509
Reviewed by Dean Jackson.
Re-add ENABLE_WEBGPU, an experimental feature flag, and a RuntimeEnabledFeature
for the 2018 WebGPU prototype.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(setWebPreferencesForTestOptions):
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-15 Ryan Haddad <ryanhaddad@apple.com>
Update bot configuration for Sierra archive queues
https://bugs.webkit.org/show_bug.cgi?id=190605
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/config.json:
2018-10-15 Timothy Hatcher <timothy@apple.com>
Add support for prefers-color-scheme media query
https://bugs.webkit.org/show_bug.cgi?id=190499
rdar://problem/45212025
Reviewed by Dean Jackson.
* Scripts/webkitperl/FeatureList.pm: Added ENABLE_DARK_MODE_CSS as dark-mode-css.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Added ENABLE_DARK_MODE_CSS.
2018-10-15 Patrick Griffis <pgriffis@igalia.com>
[JHBuild] Add xdg-dbus-proxy module
https://bugs.webkit.org/show_bug.cgi?id=190589
Reviewed by Michael Catanzaro.
* gtk/jhbuild.modules:
2018-10-15 Patrick Griffis <pgriffis@igalia.com>
[GTK] Add new sandboxing dependencies to install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=190588
Reviewed by Michael Catanzaro.
* gtk/install-dependencies:
2018-10-15 Chris Dumez <cdumez@apple.com>
Experiment: target=_blank on anchors should imply rel=noopener
https://bugs.webkit.org/show_bug.cgi?id=190481
Reviewed by Alex Christensen.
Add API test coverage to make sure we can now swap process when target=_blank
is specified on an anchor but rel=noopener is not.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-15 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Can't select text after dismissing the keyboard when changing focus
https://bugs.webkit.org/show_bug.cgi?id=190563
<rdar://problem/44613559>
Reviewed by Tim Horton.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingKeyboard const):
Add a new UIScriptController method that returns whether the keyboard is shown. See `ui-helper.js` for more
details.
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::isShowingKeyboard const):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
Also rename the `isShowingKeyboard` Objective-C property to the more canonical `showingKeyboard`, with
`isShowingKeyboard` as the getter method.
(-[TestRunnerWKWebView _invokeShowKeyboardCallbackIfNecessary]):
(-[TestRunnerWKWebView _invokeHideKeyboardCallbackIfNecessary]):
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::isShowingKeyboard const):
2018-10-15 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, fix JSC tests after WebGPUShadingLanguageRI directory was removed in r237115.
* Scripts/run-javascriptcore-tests:
(runJSCStressTests): Remove wsl-tests.yaml.
2018-10-15 Christopher Reid <chris.reid@sony.com>
[Curl][WinCairo] Add Public Suffix support to WinCairo
https://bugs.webkit.org/show_bug.cgi?id=183060
Reviewed by Alex Christensen.
Share mac's PublicSuffix tests with all ports.
* TestWebKitAPI/PlatformWin.cmake:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
* TestWebKitAPI/Tests/mac/PublicSuffix.mm: Removed.
2018-10-15 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Migrated WebGPUShadingLanguageRI to the W3C
https://bugs.webkit.org/show_bug.cgi?id=190555
Unreviewed.
Migrated to https://github.com/gpuweb/WHLSL/tree/master/Source
* WebGPUShadingLanguageRI/AddressSpace.js: Removed.
* WebGPUShadingLanguageRI/All.js: Removed.
* WebGPUShadingLanguageRI/AllocateAtEntryPoints.js: Removed.
* WebGPUShadingLanguageRI/AnonymousVariable.js: Removed.
* WebGPUShadingLanguageRI/ArrayRefType.js: Removed.
* WebGPUShadingLanguageRI/ArrayType.js: Removed.
* WebGPUShadingLanguageRI/Assignment.js: Removed.
* WebGPUShadingLanguageRI/AutoWrapper.js: Removed.
* WebGPUShadingLanguageRI/Block.js: Removed.
* WebGPUShadingLanguageRI/BoolLiteral.js: Removed.
* WebGPUShadingLanguageRI/Break.js: Removed.
* WebGPUShadingLanguageRI/BuiltInSemantic.js: Removed.
* WebGPUShadingLanguageRI/BuiltinMatrixGetter.js: Removed.
* WebGPUShadingLanguageRI/BuiltinMatrixSetter.js: Removed.
* WebGPUShadingLanguageRI/BuiltinVectorGetter.js: Removed.
* WebGPUShadingLanguageRI/BuiltinVectorSetter.js: Removed.
* WebGPUShadingLanguageRI/CallExpression.js: Removed.
* WebGPUShadingLanguageRI/CallFunction.js: Removed.
* WebGPUShadingLanguageRI/Casts.js: Removed.
* WebGPUShadingLanguageRI/Check.js: Removed.
* WebGPUShadingLanguageRI/CheckLiteralTypes.js: Removed.
* WebGPUShadingLanguageRI/CheckLoops.js: Removed.
* WebGPUShadingLanguageRI/CheckNativeFuncStages.js: Removed.
* WebGPUShadingLanguageRI/CheckRecursion.js: Removed.
* WebGPUShadingLanguageRI/CheckRecursiveTypes.js: Removed.
* WebGPUShadingLanguageRI/CheckReturns.js: Removed.
* WebGPUShadingLanguageRI/CheckTypesWithArguments.js: Removed.
* WebGPUShadingLanguageRI/CheckUnreachableCode.js: Removed.
* WebGPUShadingLanguageRI/CheckWrapped.js: Removed.
* WebGPUShadingLanguageRI/Checker.js: Removed.
* WebGPUShadingLanguageRI/CloneProgram.js: Removed.
* WebGPUShadingLanguageRI/CommaExpression.js: Removed.
* WebGPUShadingLanguageRI/ConstexprFolder.js: Removed.
* WebGPUShadingLanguageRI/Continue.js: Removed.
* WebGPUShadingLanguageRI/ConvertPtrToArrayRefExpression.js: Removed.
* WebGPUShadingLanguageRI/CreateLiteral.js: Removed.
* WebGPUShadingLanguageRI/CreateLiteralType.js: Removed.
* WebGPUShadingLanguageRI/DereferenceExpression.js: Removed.
* WebGPUShadingLanguageRI/DoWhileLoop.js: Removed.
* WebGPUShadingLanguageRI/DotExpression.js: Removed.
* WebGPUShadingLanguageRI/EArrayRef.js: Removed.
* WebGPUShadingLanguageRI/EBuffer.js: Removed.
* WebGPUShadingLanguageRI/EBufferBuilder.js: Removed.
* WebGPUShadingLanguageRI/EPtr.js: Removed.
* WebGPUShadingLanguageRI/EnumLiteral.js: Removed.
* WebGPUShadingLanguageRI/EnumMember.js: Removed.
* WebGPUShadingLanguageRI/EnumType.js: Removed.
* WebGPUShadingLanguageRI/EvaluationCommon.js: Removed.
* WebGPUShadingLanguageRI/Evaluator.js: Removed.
* WebGPUShadingLanguageRI/Expression.js: Removed.
* WebGPUShadingLanguageRI/ExpressionFinder.js: Removed.
* WebGPUShadingLanguageRI/ExternalOrigin.js: Removed.
* WebGPUShadingLanguageRI/Field.js: Removed.
* WebGPUShadingLanguageRI/FindHighZombies.js: Removed.
* WebGPUShadingLanguageRI/FlattenedStructOffsetGatherer.js: Removed.
* WebGPUShadingLanguageRI/FloatLiteral.js: Removed.
* WebGPUShadingLanguageRI/FloatLiteralType.js: Removed.
* WebGPUShadingLanguageRI/FoldConstexprs.js: Removed.
* WebGPUShadingLanguageRI/ForLoop.js: Removed.
* WebGPUShadingLanguageRI/Func.js: Removed.
* WebGPUShadingLanguageRI/FuncAttribute.js: Removed.
* WebGPUShadingLanguageRI/FuncDef.js: Removed.
* WebGPUShadingLanguageRI/FuncNumThreadsAttribute.js: Removed.
* WebGPUShadingLanguageRI/FuncParameter.js: Removed.
* WebGPUShadingLanguageRI/FunctionLikeBlock.js: Removed.
* WebGPUShadingLanguageRI/HighZombieFinder.js: Removed.
* WebGPUShadingLanguageRI/IdentityExpression.js: Removed.
* WebGPUShadingLanguageRI/IfStatement.js: Removed.
* WebGPUShadingLanguageRI/IndexExpression.js: Removed.
* WebGPUShadingLanguageRI/InferTypesForCall.js: Removed.
* WebGPUShadingLanguageRI/Inline.js: Removed.
* WebGPUShadingLanguageRI/Inliner.js: Removed.
* WebGPUShadingLanguageRI/IntLiteral.js: Removed.
* WebGPUShadingLanguageRI/IntLiteralType.js: Removed.
* WebGPUShadingLanguageRI/Intrinsics.js: Removed.
* WebGPUShadingLanguageRI/LayoutBuffers.js: Removed.
* WebGPUShadingLanguageRI/Lexer.js: Removed.
* WebGPUShadingLanguageRI/LexerToken.js: Removed.
* WebGPUShadingLanguageRI/LiteralTypeChecker.js: Removed.
* WebGPUShadingLanguageRI/LogicalExpression.js: Removed.
* WebGPUShadingLanguageRI/LogicalNot.js: Removed.
* WebGPUShadingLanguageRI/LoopChecker.js: Removed.
* WebGPUShadingLanguageRI/MakeArrayRefExpression.js: Removed.
* WebGPUShadingLanguageRI/MakePtrExpression.js: Removed.
* WebGPUShadingLanguageRI/MatrixType.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLBackend.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLCompileResult.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLConstexprEmitter.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLFunctionForwardDeclaration.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLInsertTrapParameter.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLNameMangler.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLNativeFunctionCall.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLTypeAttributes.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLTypeAttributesMap.js: Removed.
* WebGPUShadingLanguageRI/Metal/MSLTypeUnifier.js: Removed.
* WebGPUShadingLanguageRI/Metal/TypeOf.js: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/.gitignore: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/AppIcon.appiconset/Contents.json: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/Contents.json: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Base.lproj/Main.storyboard: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Info.plist: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/WHLSL.entitlements: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/_SharedMetal.txt: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/main.m: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/Info.plist: Removed.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m: Removed.
* WebGPUShadingLanguageRI/Metal/WhlslToMsl.html: Removed.
* WebGPUShadingLanguageRI/Metal/WhlslToMsl.js: Removed.
* WebGPUShadingLanguageRI/NameContext.js: Removed.
* WebGPUShadingLanguageRI/NameFinder.js: Removed.
* WebGPUShadingLanguageRI/NameResolver.js: Removed.
* WebGPUShadingLanguageRI/NativeFunc.js: Removed.
* WebGPUShadingLanguageRI/NativeType.js: Removed.
* WebGPUShadingLanguageRI/Node.js: Removed.
* WebGPUShadingLanguageRI/NormalUsePropertyResolver.js: Removed.
* WebGPUShadingLanguageRI/NullLiteral.js: Removed.
* WebGPUShadingLanguageRI/NullType.js: Removed.
* WebGPUShadingLanguageRI/OperatorAnderIndexer.js: Removed.
* WebGPUShadingLanguageRI/OperatorArrayRefLength.js: Removed.
* WebGPUShadingLanguageRI/OriginKind.js: Removed.
* WebGPUShadingLanguageRI/OverloadResolutionFailure.js: Removed.
* WebGPUShadingLanguageRI/Parse.js: Removed.
* WebGPUShadingLanguageRI/Prepare.js: Removed.
* WebGPUShadingLanguageRI/Program.js: Removed.
* WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js: Removed.
* WebGPUShadingLanguageRI/PropertyAccessExpression.js: Removed.
* WebGPUShadingLanguageRI/PropertyResolver.js: Removed.
* WebGPUShadingLanguageRI/PtrType.js: Removed.
* WebGPUShadingLanguageRI/ReadModifyWriteExpression.js: Removed.
* WebGPUShadingLanguageRI/RecursionChecker.js: Removed.
* WebGPUShadingLanguageRI/RecursiveTypeChecker.js: Removed.
* WebGPUShadingLanguageRI/ReferenceType.js: Removed.
* WebGPUShadingLanguageRI/ResolveNames.js: Removed.
* WebGPUShadingLanguageRI/ResolveOverloadImpl.js: Removed.
* WebGPUShadingLanguageRI/ResolveProperties.js: Removed.
* WebGPUShadingLanguageRI/ResolveTypeDefs.js: Removed.
* WebGPUShadingLanguageRI/ResourceSemantic.js: Removed.
* WebGPUShadingLanguageRI/Return.js: Removed.
* WebGPUShadingLanguageRI/ReturnChecker.js: Removed.
* WebGPUShadingLanguageRI/ReturnException.js: Removed.
* WebGPUShadingLanguageRI/Rewriter.js: Removed.
* WebGPUShadingLanguageRI/SPIR-V.js: Removed.
* WebGPUShadingLanguageRI/SPIRV.html: Removed.
* WebGPUShadingLanguageRI/SPIRVCodegen.js: Removed.
* WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Removed.
* WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Removed.
* WebGPUShadingLanguageRI/Sampler.js: Removed.
* WebGPUShadingLanguageRI/Semantic.js: Removed.
* WebGPUShadingLanguageRI/SpecializationConstantSemantic.js: Removed.
* WebGPUShadingLanguageRI/StageInOutSemantic.js: Removed.
* WebGPUShadingLanguageRI/StandardLibrary.js: Removed.
* WebGPUShadingLanguageRI/StatementCloner.js: Removed.
* WebGPUShadingLanguageRI/StructLayoutBuilder.js: Removed.
* WebGPUShadingLanguageRI/StructType.js: Removed.
* WebGPUShadingLanguageRI/SwitchCase.js: Removed.
* WebGPUShadingLanguageRI/SwitchStatement.js: Removed.
* WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js: Removed.
* WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js: Removed.
* WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js: Removed.
* WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js: Removed.
* WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Removed.
* WebGPUShadingLanguageRI/TernaryExpression.js: Removed.
* WebGPUShadingLanguageRI/Test.html: Removed.
* WebGPUShadingLanguageRI/Test.js: Removed.
* WebGPUShadingLanguageRI/Texture.js: Removed.
* WebGPUShadingLanguageRI/TextureOperations.js: Removed.
* WebGPUShadingLanguageRI/TrapStatement.js: Removed.
* WebGPUShadingLanguageRI/Type.js: Removed.
* WebGPUShadingLanguageRI/TypeDef.js: Removed.
* WebGPUShadingLanguageRI/TypeDefResolver.js: Removed.
* WebGPUShadingLanguageRI/TypeOverloadResolutionFailure.js: Removed.
* WebGPUShadingLanguageRI/TypeRef.js: Removed.
* WebGPUShadingLanguageRI/TypedValue.js: Removed.
* WebGPUShadingLanguageRI/UintLiteral.js: Removed.
* WebGPUShadingLanguageRI/UintLiteralType.js: Removed.
* WebGPUShadingLanguageRI/UnificationContext.js: Removed.
* WebGPUShadingLanguageRI/UnreachableCodeChecker.js: Removed.
* WebGPUShadingLanguageRI/Value.js: Removed.
* WebGPUShadingLanguageRI/VariableDecl.js: Removed.
* WebGPUShadingLanguageRI/VariableRef.js: Removed.
* WebGPUShadingLanguageRI/VectorType.js: Removed.
* WebGPUShadingLanguageRI/VisitingSet.js: Removed.
* WebGPUShadingLanguageRI/Visitor.js: Removed.
* WebGPUShadingLanguageRI/WLexicalError.js: Removed.
* WebGPUShadingLanguageRI/WSyntaxError.js: Removed.
* WebGPUShadingLanguageRI/WTrapError.js: Removed.
* WebGPUShadingLanguageRI/WTypeError.js: Removed.
* WebGPUShadingLanguageRI/WhileLoop.js: Removed.
* WebGPUShadingLanguageRI/WrapChecker.js: Removed.
* WebGPUShadingLanguageRI/index.html: Removed.
* WebGPUShadingLanguageRI/spirv.core.grammar.json: Removed.
* WebGPUShadingLanguageRI/wsl-tests.yaml: Removed.
2018-10-15 Philippe Normand <pnormand@igalia.com>
[GTK] Disable MSE build support on Debian and Ubuntu LTS bots
https://bugs.webkit.org/show_bug.cgi?id=190581
Reviewed by Michael Catanzaro.
These bots don't use JHBuild and their host GStreamer version is
too old for the GStreamer MSE backend. Version 1.14 is needed at least.
* BuildSlaveSupport/build.webkit.org-config/config.json:
2018-10-15 Alex Christensen <achristensen@webkit.org>
Use pragma once in WTF
https://bugs.webkit.org/show_bug.cgi?id=190527
Reviewed by Chris Dumez.
Put WorkQueue in namespace DRT so it does not conflict with WTF::WorkQueue.
* DumpRenderTree/TestRunner.cpp:
(TestRunner::queueLoadHTMLString):
(TestRunner::queueLoadAlternateHTMLString):
(TestRunner::queueBackNavigation):
(TestRunner::queueForwardNavigation):
(TestRunner::queueLoadingScript):
(TestRunner::queueNonLoadingScript):
(TestRunner::queueReload):
* DumpRenderTree/WorkQueue.cpp:
(WorkQueue::singleton): Deleted.
(WorkQueue::WorkQueue): Deleted.
(WorkQueue::queue): Deleted.
(WorkQueue::dequeue): Deleted.
(WorkQueue::count): Deleted.
(WorkQueue::clear): Deleted.
(WorkQueue::processWork): Deleted.
* DumpRenderTree/WorkQueue.h:
(WorkQueue::setFrozen): Deleted.
* DumpRenderTree/WorkQueueItem.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(runTest):
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(-[FrameLoadDelegate processWork:]):
(-[FrameLoadDelegate webView:locationChangeDone:forDataSource:]):
* DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::notifyDone):
(TestRunner::forceImmediateCompletion):
(TestRunner::queueLoad):
* DumpRenderTree/win/DumpRenderTree.cpp:
(runTest):
* DumpRenderTree/win/FrameLoadDelegate.cpp:
(FrameLoadDelegate::processWork):
(FrameLoadDelegate::locationChangeDone):
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::notifyDone):
(TestRunner::forceImmediateCompletion):
(TestRunner::queueLoad):
2018-10-14 Yusuke Suzuki <yusukesuzuki@slowstart.org>
[JSC] Remove Option::useAsyncIterator
https://bugs.webkit.org/show_bug.cgi?id=190567
Reviewed by Saam Barati.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-15 Claudio Saavedra <csaavedra@igalia.com>
[WPE] Silence a unused-parameter warning
Unreviewed.
* MiniBrowser/wpe/main.cpp:
(decidePermissionRequest):
2018-10-12 Guillaume Emont <guijemont@igalia.com>
[Tools][webkitpy] fix handling of JSCTESTS_OPTIONS
https://bugs.webkit.org/show_bug.cgi?id=190537
Reviewed by Alexey Proskuryakov.
In DeprecatedPort.run_javascriptcore_tests_command() JSCTESTS_OPTIONS
needs to be split before adding it to the command since it is treated
as a list of args.
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.run_javascriptcore_tests_command):
2018-10-12 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Allow SPI clients to lay out at arbitrarily scaled sizes and scale to fit the view
https://bugs.webkit.org/show_bug.cgi?id=190504
<rdar://problem/45117760>
Reviewed by Tim Horton.
Teach UIScriptController to set WKWebView's view scale via a new `setViewScale` method, supported in WebKit2 on
macOS and iOS.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setViewScale):
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::setViewScale):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setViewScale):
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/UIScriptControllerCocoa.mm: Added.
Add a new file for UIScriptController methods on Cocoa platforms.
(WTR::UIScriptController::setViewScale):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::cocoaResetStateToConsistentValues):
Ensure that _viewScale is reset to 1 after running a layout test.
2018-10-12 Aakash Jain <aakash_jain@apple.com>
[ews-build] Rename iOS-11-Simulator-Tests-EWS to iOS-11-Simulator-WK2-Tests-EWS
https://bugs.webkit.org/show_bug.cgi?id=190536
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/ews-build/config.json: Renamed iOS-11-Simulator-Tests-EWS to iOS-11-Simulator-WK2-Tests-EWS.
2018-10-11 Youenn Fablet <youenn@apple.com>
IOS 12 - Service worker cache not shared when added to homescreen
https://bugs.webkit.org/show_bug.cgi?id=190269
<rdar://problem/45009961>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
Add test to ensure that CacheStorage use the default website data store parameters.
2018-10-11 Tim Horton <timothy_horton@apple.com>
Clicking on bookmarklet crashes at NavigationState::willRecordNavigationSnapshot
https://bugs.webkit.org/show_bug.cgi?id=190476
<rdar://problem/32757191>
Reviewed by Megan Gardner.
* TestWebKitAPI/Tests/WebKitCocoa/SnapshotStore.mm:
(TEST):
Add a test that we don't crash.
2018-10-11 Tim Horton <timothy_horton@apple.com>
REGRESSION (r237037): Cannot use webkit-patch upload, always fails with unknown 'cc_radar'
* Scripts/webkitpy/tool/steps/options.py:
(Options):
Fix the name of the variable that the --cc-radar option writes into.
2018-10-10 Dean Jackson <dino@apple.com>
Add --cc-radar option to webkit-patch bug creation
https://bugs.webkit.org/show_bug.cgi?id=190451
<rdar://problem/45176671>
Reviewed by Antoine Quint.
Add a new command line option to automatically
CC radar to new or updated bugs.
* Scripts/webkitpy/tool/commands/commandtest.py:
(CommandsTest.assert_execute_outputs):
* Scripts/webkitpy/tool/commands/upload.py:
(CreateBug.__init__):
(CreateBug.execute):
* Scripts/webkitpy/tool/commands/upload_unittest.py:
(test_prepare_with_cc):
(test_prepare_with_radar):
(test_prepare_with_cc_and_radar):
* Scripts/webkitpy/tool/steps/createbug.py:
(CreateBug.options):
(CreateBug.run):
* Scripts/webkitpy/tool/steps/options.py:
(Options):
2018-10-11 Claudio Saavedra <csaavedra@igalia.com>
[GStreamer] Do not build gstgtk plugins
https://bugs.webkit.org/show_bug.cgi?id=190463
Reviewed by Xabier Rodriguez-Calvar.
These plugins pull a GTK+ dependency that, at least in WPE,
is unnecessary. The GTK+ port doesn't need it either, as far
as I can tell.
* gstreamer/jhbuild.modules: Disable gstgtk plugins
2018-10-11 Alejandro G. Castro <alex@igalia.com>
[GTK][WPE] Add mediaDevices.enumerateDevices support
https://bugs.webkit.org/show_bug.cgi?id=185761
Reviewed by Youenn Fablet.
Added new API test for the mediaDevices.enumerateDevices:
usermedia-enumeratedevices-permission-check. And a new API test
for the WebsiteDataStore: testWebsiteDataDeviceIdHashSalt.
* MiniBrowser/gtk/main.c:
(gotWebsiteDataCallback): Added a new section to the about:data
webpage to include the information about the hash salt.
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewUserMediaEnumerateDevicesPermissionCheck): Added the
new test checking the enumerateDevices API when permission is
denied and when permission is allowed for the origin.
(beforeAll): Defined the new test.
* TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
(serverCallback): Register a new URI for the enumerateDevices.
(testWebsiteDataConfiguration): Remove the hash salts from the
directories.
(testWebsiteDataDeviceIdHashSalt): New test cheking the
enumerateDevices API.
(beforeAll): Added the new test testWebsiteDataDeviceIdHashSalt to
the init structure.
* TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
(WebViewTest::initializeWebView): Make sure the media-stream is
activated in the webView.
2018-10-10 Fujii Hironori <Hironori.Fujii@sony.com>
Add WinCairo to the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=188345
Reviewed by Lucas Forschler.
* TestResultServer/static-dashboards/builders.jsonp: Regenerated by generate_builders_json.py.
* TestResultServer/static-dashboards/flakiness_dashboard.js: Added a new platform 'WINCAIRO'.
2018-10-10 Dean Jackson <dino@apple.com>
[WHSL -> MSL] Annotate semantics correctly in generated MSL
https://bugs.webkit.org/show_bug.cgi?id=190452
<rdar://problem/45178272>
Reviewed by Myles Maxfield.
Correctly label the appropriate semantics as [[position]]
and [[color(N)]].
* WebGPUShadingLanguageRI/Metal/MSLBackend.js: Identify position
and color attributes. Also use the semantic's index rather than
a counter.
* WebGPUShadingLanguageRI/Metal/WhlslToMsl.html: Use a <pre> for
output, and only include the actual shader code.
2018-10-10 Ross Kirsling <ross.kirsling@sony.com>
build-webkit --inspector-frontend shouldn't have a nonzero exit code
https://bugs.webkit.org/show_bug.cgi?id=190430
Reviewed by Brian Burg.
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
--inspector-frontend should only be popped off of argv by determineIsInspectorFrontend;
it shouldn't be re-inserted as a CLI option by argumentsForConfiguration.
2018-10-10 Tim Horton <timothy_horton@apple.com>
Share more WKShareSheet code between macOS and iOS, and fix a few bugs
https://bugs.webkit.org/show_bug.cgi?id=190420
Reviewed by Simon Fraser.
* DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
(WTR::UIScriptController::invokeShareSheetWithResolution): Deleted.
* DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
* TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
(WTR::UIScriptController::invokeShareSheetWithResolution): Deleted.
* TestRunnerShared/UIScriptContext/UIScriptController.h:
* WebKitTestRunner/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
(WTR::UIScriptController::invokeShareSheetWithResolution): Deleted.
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::setShareSheetCompletesImmediatelyWithResolution):
Change the testing mechanism for the share sheet such that we up-front
set that it should immediately return with a particular state, instead
of programmatically dismissing the sheet.
Otherwise, running the tests on macOS doesn't work, because we pop
a context menu, which spins the runloop and prevents dismissal from
going through.
2018-10-10 Yusuke Suzuki <yusukesuzuki@slowstart.org>
[JSC] Rename createXXX to tryCreateXXX if it can return RefPtr
https://bugs.webkit.org/show_bug.cgi?id=190429
Reviewed by Saam Barati.
* TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm:
(TestWebKitAPI::TEST_F):
2018-10-10 Chris Dumez <cdumez@apple.com>
Regression(PSON): Assertion hit under WebPageProxy::didNavigateWithNavigationData()
https://bugs.webkit.org/show_bug.cgi?id=190418
<rdar://problem/45059769>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-10 Guillaume Emont <guijemont@igalia.com>
[JSCOnly Add an armv7 JSCOnly EWS that runs tests
https://bugs.webkit.org/show_bug.cgi?id=190191
Reviewed by Michael Catanzaro.
* QueueStatusServer/config/queues.py:
* Scripts/webkitpy/common/config/ews.json:
* Scripts/webkitpy/common/config/ports.py:
(DeprecatedPort.run_javascriptcore_tests_command):
Add the possibility to pass arguments to run-javascriptcore-tests with
the JSCTESTS_OPTIONS environment variable
* Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
(test_ews_name):
2018-10-09 Guillaume Emont <guijemont@igalia.com>
Allow run-javascriptcore-tests to distribute tests between devices
https://bugs.webkit.org/show_bug.cgi?id=190190
Reviewed by Michael Catanzaro.
* Scripts/run-jsc-stress-tests:
* Scripts/webkitruby/jsc-stress-test-writer-default.rb:
* Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
2018-10-09 Dean Jackson <dino@apple.com>
Update WHLSL to Metal tester with semantics
https://bugs.webkit.org/show_bug.cgi?id=190416
<rdar://problem/45145139>
Reviewed by Myles Maxfield.
A few small changes to the WHLSL to Metal tools:
- Make it compile by adding some missing JS files :)
- Add semantics to the default shader
- Add FIXMEs to the other shaders
- Create an in-browser test for the WHLSLToMetal codepath
- Fix typos in the semantics checker
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype._checkSemantics.checkSemanticTypes):
(Checker.prototype._checkSemantics.checkSemanticForShaderType):
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m:
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl:
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl:
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl:
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:
* WebGPUShadingLanguageRI/Metal/WhlslToMsl.html: Added.
2018-10-09 Jer Noble <jer.noble@apple.com>
Crash when closing WKWebView during enter fullscreen animation
https://bugs.webkit.org/show_bug.cgi?id=190412
Reviewed by Brian Burg.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CloseWebViewDuringEnterFullscreen.mm: Added.
(-[CloseWebViewDuringEnterFullscreenUIDelegate _webViewWillEnterFullscreen:]):
(-[CloseWebViewDuringEnterFullscreenUIDelegate _webViewWillExitFullscreen:]):
(TestWebKitAPI::TEST):
2018-10-09 Chris Dumez <cdumez@apple.com>
Anchor target should be ignored on activation when the download attribute is set
https://bugs.webkit.org/show_bug.cgi?id=190408
Reviewed by Geoffrey Garen.
Update WebKitTestRunner to block popups by default and add support for testRunner.setCanOpenWindows()
for tests that need popups. This aligns WebKitTestRunner with DumpRenderTree and allows testing
popup blocking.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setCanOpenWindows):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::createOtherPage):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/TestInvocation.h:
2018-10-09 Jer Noble <jer.noble@apple.com>
WebDriver: thrown ObjC exception under -[WKFullScreenWindowController windowDidFailToEnterFullScreen:] when session is terminated
https://bugs.webkit.org/show_bug.cgi?id=190098
<rdar://problem/42822671>
Reviewed by Brian Burg.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CloseWebViewAfterEnterFullscreen.mm: Added.
(-[CloseWebViewAfterEnterFullscreenUIDelegate _webViewDidEnterFullscreen:]):
(-[CloseWebViewAfterEnterFullscreenUIDelegate _webViewDidExitFullscreen:]):
(TestWebKitAPI::TEST):
2018-10-09 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Import CTAP HID message and packet structure from Chromium
https://bugs.webkit.org/show_bug.cgi?id=189289
<rdar://problem/44120310>
Reviewed by Brent Fulgham.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp: Added.
(TestWebKitAPI::TEST):
2018-10-09 Chris Dumez <cdumez@apple.com>
PSON: Doing a cross-site navigation via the URL bar does not swap process on iOS
https://bugs.webkit.org/show_bug.cgi?id=190378
<rdar://problem/45059466>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-10-09 Jer Noble <jer.noble@apple.com>
ISOTrackEncryptionBox returns incorrect defaultKeyID
https://bugs.webkit.org/show_bug.cgi?id=190368
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
(TestWebKitAPI::TEST):
2018-10-09 Philippe Normand <pnormand@igalia.com>
[JHBuild] Update to GStreamer 1.14.4
https://bugs.webkit.org/show_bug.cgi?id=190395
Reviewed by Xabier Rodriguez-Calvar.
* gstreamer/jhbuild.modules: Remove patches merged in 1.14.4 and bump version of GStreamer modules.
* gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Removed.
* gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Removed.
* gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Removed.
* gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Removed.
2018-10-08 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] API test DragAndDropTests.DropColor is failing on macOS 10.12
https://bugs.webkit.org/show_bug.cgi?id=190386
Reviewed by Ryosuke Niwa.
Unlike macOS 10.13 and 10.14, -[NSColor redColor] is not equivalent to a fully red color in sRGB on macOS 10.12.
Fix the test by dragging and dropping an NSColor that is equivalent to rgb(255, 0, 0) on all relevant versions
of macOS.
* TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
(TEST):
2018-10-08 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] [WK2] Add support for text alignment and text lists in font attributes
https://bugs.webkit.org/show_bug.cgi?id=190342
<rdar://problem/44767118>
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm:
Add a new API test to check that the font attributes dictionary contains the correct NSParagraphStyles when
moving the selection around text inside nested list elements.
(TestWebKitAPI::checkParagraphStyles):
Add a new helper to check an NSParagraphStyle against expected results.
(TestWebKitAPI::webViewForTestingFontAttributes):
Allow each test to pass in the name of the test page to load.
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/nested-lists.html: Added.
Add a new test page that contains text enclosed in multiple levels of unordered and ordered lists.
* TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html:
Remove `text-align: left` from one of these elements, to test for NSTextAlignmentNatural.
2018-10-08 Justin Fan <justin_fan@apple.com>
WebGPU: Rename old WebGPU prototype to WebMetal
https://bugs.webkit.org/show_bug.cgi?id=190325
<rdar://problem/44990443>
Reviewed by Dean Jackson.
Rename WebGPU prototype files to WebMetal in preparation for implementing the new (Oct 2018) WebGPU interface.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
(resetWebPreferencesToConsistentValues):
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
* TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm:
* TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm:
* TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm:
* TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
* TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebMetalEnabled):
(WTR::TestRunner::setWebGPUEnabled): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
2018-10-08 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r236941.
https://bugs.webkit.org/show_bug.cgi?id=190374
Causing API test failures in new test (Requested by jernoble
on #webkit).
Reverted changeset:
"ISOTrackEncryptionBox returns incorrect defaultKeyID"
https://bugs.webkit.org/show_bug.cgi?id=190368
https://trac.webkit.org/changeset/236941
2018-10-08 Aditya Keerthi <akeerthi@apple.com>
Make <input type=color> a runtime enabled (on-by-default) feature
https://bugs.webkit.org/show_bug.cgi?id=189162
Reviewed by Wenson Hsieh and Tim Horton.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-08 Jer Noble <jer.noble@apple.com>
ISOTrackEncryptionBox returns incorrect defaultKeyID
https://bugs.webkit.org/show_bug.cgi?id=190368
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
(TestWebKitAPI::TEST):
2018-10-08 Alex Christensen <achristensen@webkit.org>
Remove WKBundleFileHandleRef
https://bugs.webkit.org/show_bug.cgi?id=190360
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp: Removed.
* TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp: Removed.
2018-10-08 Dan Bernstein <mitz@apple.com>
Tools part of [Xcode] Update some build settings as recommended by Xcode 10
https://bugs.webkit.org/show_bug.cgi?id=190250
Reviewed by Anders Carlsson.
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
* DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
* DumpRenderTree/mac/DumpRenderTreeMac.h: Addressed the strict prototype warning.
* DumpRenderTree/mac/EditingDelegate.mm: Suppressed the deprecated implementations warning
around deprecated methods or categories on deprecated classes.
* DumpRenderTree/mac/FrameLoadDelegate.mm: Ditto.
(-[FrameLoadDelegate webView:windowScriptObjectAvailable:]):
* DumpRenderTree/mac/TestRunnerMac.mm: Ditto.
(-[SynchronousLoader connection:didReceiveAuthenticationChallenge:]):
* MiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
* MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
* MiniBrowser/mac/AppDelegate.h: Addressed the strict prototypes warning.
* MiniBrowser/mac/WK2BrowserWindowController.m: Removed an unused #import to avoid having to
address the fact that many of the WebKit C SPI headers trigger the strict prototypes warning.
* MobileMiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_SUSPICIOUS_MOVE (by fixing a typo),
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF.
* MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj: Let Xcode update
LastUpgradeCheck and remove the .xcconfig files from the Copy Bundle Resources build phase.
* TestWebKitAPI/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
Made the WebKit headers be treated as system headers to avoid dealing with the fact that
many C SPI headers trigger the strict prototypes warning.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
* TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
(-[DownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
(-[BlobDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
(-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]):
(-[RedirectedDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
* TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
(-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
* TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
(-[AudioSessionCategoryUIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
* TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
(-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
(-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
* TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
(-[SetTimeoutFunctionWebViewDelegate webViewDidFinishLoad:]):
(-[SetTimeoutFunctionWebViewDelegate webView:didFailLoadWithError:]):
(-[SetTimeoutFunctionWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
* TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm:
(-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
* TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
(-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
* TestWebKitAPI/mac/SyntheticBackingScaleFactorWindow.m:
(-[SyntheticBackingScaleFactorWindow IGNORE_WARNINGS_END]):
(-[SyntheticBackingScaleFactorWindow userSpaceScaleFactor]): Deleted.
* TestWebKitAPI/mac/TestDraggingInfo.mm:
(-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
In all of the above, suppressed the deprecated implementations warning where needed.
* WebKitTestRunner/Configurations/Base.xcconfig: Enabled ENABLE_STRICT_OBJC_MSGSEND,
CLANG_WARN_BOOL_CONVERSION, CLANG_WARN_COMMA, CLANG_WARN_CONSTANT_CONVERSION,
CLANG_WARN_EMPTY_BODY, CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION,
CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_UNREACHABLE_CODE, CLANG_WARN__DUPLICATE_METHOD_MATCH,
GCC_WARN_UNDECLARED_SELECTOR, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF,
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
and GCC_NO_COMMON_BLOCKS.
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
* WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
(-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed
the deprecated implementations warning.
* WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptController::replaceTextAtRange): Addressed an int-conversion warning.
2018-10-07 Yacine Bandou <yacine.bandou@softathome.com>
[GStreamer][EME][webm] Add the WebM encrypted content support in matroskademux
https://bugs.webkit.org/show_bug.cgi?id=189238
Reviewed by Xabier Rodriguez-Calvar.
Modifications on GStreamer, tracked in GStreamer bugzilla:
https://bugzilla.gnome.org/show_bug.cgi?id=797231
https://bugzilla.gnome.org/show_bug.cgi?id=765275
* gstreamer/jhbuild.modules: Add new patches.
* gstreamer/patches/gstreamer-0001-protection-Add-a-new-definition-for-unspecified-syst.patch: Added.
* gstreamer/patches/gstreamer-0002-protection-Fix-the-string-to-define-unspecified-syst.patch: Added.
* gstreamer/patches/gst-plugins-good-0011-matroska-Add-the-WebM-encrypted-content-support-in-m.patch: Added.
* gstreamer/patches/gst-plugins-good-0012-matroskdemux-do-not-use-MapInfo.data-after-unmapping.patch: Added.
2018-10-06 Dan Bernstein <mitz@apple.com>
[Xcode] Never build yasm with ASAN
https://bugs.webkit.org/show_bug.cgi?id=190327
Reviewed by Youenn Fablet.
* asan/asan.xcconfig: Allow targets to opt out of building with ASAN by setting
the WK_ASAN_DISALLOWED build setting to YES (or, actually, anything other than NO or unset).
2018-10-05 Chris Dumez <cdumez@apple.com>
Regression(r236862): Crash under DOMWindowExtension::willDetachGlobalObjectFromFrame()
https://bugs.webkit.org/show_bug.cgi?id=190320
<rdar://problem/45044814>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
(TestWebKitAPI::DOMWindowExtensionBasic::willDestroyGlobalObjectForDOMWindowExtension):
2018-10-03 Jer Noble <jer.noble@apple.com>
Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
https://bugs.webkit.org/show_bug.cgi?id=190266
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
(TestWebKitAPI::TEST):
2018-10-05 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r236866.
Breaks internal builds.
Reverted changeset:
"Add support for reporting "display composited video frames"
through the VideoPlaybackQuality object."
https://bugs.webkit.org/show_bug.cgi?id=190266
https://trac.webkit.org/changeset/236866
2018-10-05 Carlos Eduardo Ramalho <cadubentzen@gmail.com>
[WPE][JSC] Use Unified Sources for Platform-specific sources
https://bugs.webkit.org/show_bug.cgi?id=190300
Reviewed by Yusuke Suzuki.
Currently the GTK port already used Unified Sources with the same source files.
As WPE has conditional code using gmodule, we need to add GLIB_GMODULE_LIBRARIES
to the list of libraries to link with.
* TestWebKitAPI/PlatformWPE.cmake:
2018-10-05 Zach Li <zachli@apple.com>
Expose whether WKWebProcessPlugInNodeHandle is a select element to clients
https://bugs.webkit.org/show_bug.cgi?id=190302
<rdar://problem/45031469>
Reviewed by Tim Horton.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsSelectElement.mm: Added.
(-[InjectedBundleNodeHandleIsSelectElement verifySelectElementForHTMLElementTag:document:jsContext:expectedResult:failedElementTags:]):
(-[InjectedBundleNodeHandleIsSelectElement webProcessPlugIn:didCreateBrowserContextController:]):
* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
(-[InjectedBundleNodeHandleIsSelectElementDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
(TEST):
2018-10-04 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] [WK2] Expose some more editing SPI on WKWebView
https://bugs.webkit.org/show_bug.cgi?id=190232
<rdar://problem/44963368>
Reviewed by Tim Horton.
Adds new API tests to exercise the new SPIs.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm: Added.
(-[TestWKWebView querySelectorExists:]):
(TestWebKitAPI::webViewForEditActionTesting):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(-[TestWKWebView collapseToStart]): Deleted.
(-[TestWKWebView collapseToEnd]): Deleted.
(-[TestWKWebView stylePropertyAtSelectionStart:]): Deleted.
(-[TestWKWebView stylePropertyAtSelectionEnd:]): Deleted.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView stylePropertyAtSelectionStart:]):
(-[TestWKWebView stylePropertyAtSelectionEnd:]):
(-[TestWKWebView collapseToStart]):
(-[TestWKWebView collapseToEnd]):
Pull some common testing helpers out of NSFontManager and into TestWKWebView.
2018-10-04 Jer Noble <jer.noble@apple.com>
Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
https://bugs.webkit.org/show_bug.cgi?id=190266
Reviewed by Eric Carlson.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
(TestWebKitAPI::TEST):
2018-10-04 Wenson Hsieh <wenson_hsieh@apple.com>
[Cocoa] Add SPI to expose typing attributes at the current selection on WKWebView
https://bugs.webkit.org/show_bug.cgi?id=190119
<rdar://problem/44767062>
Reviewed by Tim Horton.
Add a new API test that loads a document containing various rich text styles. This test moves the selection
around the document and checks the last set of font attributes received via the new UI delegate hook.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm: Added.
(-[FontAttributesListener _webView:didChangeFontAttributes:]):
(-[FontAttributesListener lastFontAttributes]):
(-[TestWKWebView selectElementWithIdentifier:]):
(-[TestWKWebView fontAttributesAfterNextPresentationUpdate]):
(ColorExpectation::ColorExpectation):
(ShadowExpectation::ShadowExpectation):
(checkColor):
(checkShadow):
(checkFont):
(webViewForTestingFontAttributes):
* TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html: Added.
2018-10-04 Alan Coon <alancoon@apple.com>
Unreviewed, add self as contributor.
* Scripts/webkitpy/common/config/contributors.json:
2018-10-04 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=190289
<rdar://problem/45020806>
Reviewed by Ryosuke Niwa.
Add new API tests to exercise two corner cases when using NSFontOptions ("Font > Styles…") to change font
attributes at the current selection.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(webViewForFontManagerTesting):
(TestWebKitAPI::TEST):
* TestWebKitAPI/mac/TestFontOptions.h: Copied from Source/WebCore/editing/cocoa/FontAttributesCocoa.mm.
* TestWebKitAPI/mac/TestFontOptions.mm: Added.
Introduce TestFontOptions, which wraps the shared NSFontOptions and swizzles `-sharedFontOptions` to return a
global instance of itself. TestFontOptions supports several testing helpers to add or remove font shadows,
foreground colors, and background colors.
(sharedFontOptionsForTesting):
(+[TestFontOptions sharedInstance]):
(-[TestFontOptions initWithFontOptions:]):
(-[TestFontOptions selectedAttributes]):
(-[TestFontOptions fontOptions]):
(-[TestFontOptions shadowWidth]):
(-[TestFontOptions setShadowWidth:]):
(-[TestFontOptions shadowHeight]):
(-[TestFontOptions setShadowHeight:]):
(-[TestFontOptions setShadowBlurRadius:]):
(-[TestFontOptions setHasShadow:]):
(-[TestFontOptions foregroundColor]):
(-[TestFontOptions setForegroundColor:]):
(-[TestFontOptions backgroundColor]):
(-[TestFontOptions setBackgroundColor:]):
(-[TestFontOptions _dispatchFontAttributeChanges]):
(-[TestFontOptions convertAttributes:]):
(-[TestFontOptions setSelectedAttributes:isMultiple:]):
(-[TestFontOptions forwardInvocation:]):
2018-10-04 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Move time out control from WebProcess to UIProcess
https://bugs.webkit.org/show_bug.cgi?id=189642
<rdar://problem/44476765>
Reviewed by Chris Dumez.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
2018-10-04 YUHAN WU <yuhan_wu@apple.com>
Runtime flag and IDL for MediaRecorder
https://bugs.webkit.org/show_bug.cgi?id=190018
Reviewed by Youenn Fablet and Chris Dumez.
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
2018-10-04 Basuke Suzuki <Basuke.Suzuki@sony.com>
[LayoutTests][Win] Stop wpt server correctly.
https://bugs.webkit.org/show_bug.cgi?id=190248
Reviewed by Fujii Hironori.
Use signal.CTRL_C_EVENT instead of signal.SIGINT for Windows.
Also refactoring the detection of Windows and cygwin environment check.
* Scripts/webkitpy/common/system/executive.py:
(Executive.__init__): Check environment once.
(Executive._should_close_fds):
(Executive.kill_process):
(Executive.check_running_pid):
(Executive.running_pids):
(Executive.interrupt): Use signal.CTRL_C_EVENT for Windows.
(Executive.kill_all):
(Executive._child_process_encoding):
(Executive._should_encode_child_process_arguments):
(Executive.popen):
(Executive.run_in_parallel):
2018-10-04 Michael Catanzaro <mcatanzaro@igalia.com>
Convert tests to use navigation client
https://bugs.webkit.org/show_bug.cgi?id=190153
Reviewed by Alex Christensen.
Convert these tests from PagePolicyClient and PageLoaderClient to PageNavigationClient.
* TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
(TestWebKitAPI::decidePolicyForNavigationAction):
(TestWebKitAPI::setPagePolicyClient):
* TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback.cpp:
(TestWebKitAPI::didCommitNavigationCallback):
(TestWebKitAPI::TEST):
(TestWebKitAPI::didCommitLoadForFrame): Deleted.
2018-10-03 Dan Bernstein <mitz@apple.com>
[Cocoa] Let clients specify an NSFileWrapper subclassed to be used for _WKAttachment
https://bugs.webkit.org/show_bug.cgi?id=190270
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2018-10-03 Ryosuke Niwa <rniwa@webkit.org>
Enable selectionAcrossShadowBoundariesEnabled by default in WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=190238
Reviewed by Antti Koivisto.
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
2018-10-02 Wenson Hsieh <wenson_hsieh@apple.com>
[WebKit2] Format > Bold and Format > Italic don't toggle between bold and italic style
https://bugs.webkit.org/show_bug.cgi?id=179787
<rdar://problem/35593389>
Reviewed by Tim Horton.
Add a test to verify that NSFontManager's selected font is updated when applying italic and bold styles using
menu items.
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(webViewForFontManagerTesting):
(menuItemCellForFontAction):
(TestWebKitAPI::TEST):
2018-10-02 Chris Dumez <cdumez@apple.com>
REGRESSION: TestWebKitAPI.WKWebView.ProvisionalURLNotChange API test is failing
https://bugs.webkit.org/show_bug.cgi?id=190176
<rdar://problem/44925871>
Reviewed by Alex Christensen.
Use a URL that is truly recognized as invalid by WebCore's URL parser.
* TestWebKitAPI/Tests/WebKitCocoa/ProvisionalURLNotChange.mm:
(TEST):
2018-10-02 Alex Christensen <achristensen@webkit.org>
Remove ParsedURLString
https://bugs.webkit.org/show_bug.cgi?id=190154
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebCore/URL.cpp:
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
(TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
(TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
(TestWebKitAPI::TEST):
2018-10-02 Daniel Bates <dabates@apple.com>
Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
(https://bugs.webkit.org/show_bug.cgi?id=190017)
For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
WKWebViewAutofillTests.AutofillRequiresInputSession
DragAndDropTests.ExternalSourceJPEGOnly
DragAndDropTests.ExternalSourceUTF8PlainTextOnly
so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
we will look to swizzle this method for all test by default.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::overrideIsInHardwareKeyboardMode):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
(TestWebKitAPI::overrideIsInHardwareKeyboardMode):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-10-02 Dawei Fenton <realdawei@apple.com>
Unreviewed, rolling out r236751.
broke the iOS Build
Reverted changeset:
"Fix iOS TestWebKitAPI failures following
<https://trac.webkit.org/changeset/236619>"
https://bugs.webkit.org/show_bug.cgi?id=190017
https://trac.webkit.org/changeset/236751
2018-10-02 Daniel Bates <dabates@apple.com>
Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
(https://bugs.webkit.org/show_bug.cgi?id=190017)
For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
WKWebViewAutofillTests.AutofillRequiresInputSession
DragAndDropTests.ExternalSourceJPEGOnly
DragAndDropTests.ExternalSourceUTF8PlainTextOnly
so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
we will look to swizzle this method for all test by default.
* TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
(TestWebKitAPI::overrideIsInHardwareKeyboardMode):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
(TestWebKitAPI::overrideIsInHardwareKeyboardMode):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2018-10-01 Dean Jackson <dino@apple.com>
Remove CSS Animation Triggers
https://bugs.webkit.org/show_bug.cgi?id=190175
<rdar://problem/44925626>
Reviewed by Simon Fraser.
* TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2018-10-02 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Use our own check of flatpak repos
https://bugs.webkit.org/show_bug.cgi?id=190194
Allowing us to not mess up with user installation
and "--assumeyes" everywhere.
Reviewed by Michael Catanzaro.
* flatpak/flatpakutils.py:
(FlatpakPackage.__init__):
(FlatpakPackage.install):
(FlatpakPackage.update):
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.__init__):
(WebkitFlatpak.clean_args):
2018-10-02 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] Implement a way for the UI process to request typing attributes at the current selection
https://bugs.webkit.org/show_bug.cgi?id=189983
<rdar://problem/44648705>
Reviewed by Ryosuke Niwa.
Adds new FontManagerTests that exercise -typingAttributesWithCompletionHandler:. See below for more detail.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
Add a new test that exercises font attribute modification via inspector bar. Also, add a new test that checks
typing attributes when using subscript/superscript/unscript. Lastly, augment an existing NSFontPanel test to
additionally check that shadowed text and strike-through are reflected in typing attributes.
(-[FontManagerTestWKWebView inspectorBarItemIdentifiers]):
(-[TestWKWebView typingAttributes]):
Add a synchronous wrapper around `-typingAttributesWithCompletionHandler:` by spinning the runloop.
(-[TestWKWebView collapseToStart]):
(webViewForFontManagerTesting):
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/mac/TestInspectorBar.h: Copied from Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h.
* TestWebKitAPI/mac/TestInspectorBar.mm: Added.
Introduce subclasses of `__InspectorBarItemController` and `NSInspectorBar` for testing inspector bar interaction.
(-[TestInspectorBarItemController initWithInspectorBar:]):
(-[TestInspectorBarItemController inspectorBar]):
(-[TestInspectorBarItemController updateSelectedAttributes]):
(-[TestInspectorBar initWithWebView:]):
(+[TestInspectorBar standardItemControllerClass]):
(+[TestInspectorBar standardTextItemIdentifiers]):
(-[TestInspectorBar _setStyleControlSelected:atIndex:]):
(-[TestInspectorBar chooseFontSize:]):
(-[TestInspectorBar chooseFontFamily:]):
(-[TestInspectorBar _chooseColor:inColorWell:]):
(-[TestInspectorBar chooseForegroundColor:]):
(-[TestInspectorBar chooseBackgroundColor:]):
(-[TestInspectorBar formatBold:]):
(-[TestInspectorBar formatItalic:]):
(-[TestInspectorBar formatUnderline:]):
Add helper methods to TestInspectorBar to simulate interacting with various controls (e.g. color wells and font
styling controls).
(-[TestInspectorBar itemController]):
(-[TestInspectorBar setItemController:]):
2018-10-02 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Implement icecream and ccache support
https://bugs.webkit.org/show_bug.cgi?id=190146
Reviewed by Alejandro G. Castro.
* flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.__init__):
(WebkitFlatpak.clean_args):
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak.save_config):
(WebkitFlatpak):
(WebkitFlatpak.setup_ccache):
(WebkitFlatpak.setup_icecc):
(WebkitFlatpak.setup_dev_env):
* flatpak/org.webkit.WebKit.yaml:
2018-10-02 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, fix missing return value in TestController::keyExistsInKeychain
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::keyExistsInKeychain):
2018-10-02 Basuke Suzuki <Basuke.Suzuki@sony.com>
[WinCairo] Enable WPT tests environment.
https://bugs.webkit.org/show_bug.cgi?id=190128
Reviewed by Youenn Fablet.
Escaping backslash of the path not to confuse the JSON parser.
* Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
(WebPlatformTestServer._prepare_config):
2018-10-01 Ross Kirsling <ross.kirsling@sony.com>
[Win][DRT] Actually set "experimental:WebAnimationsCSSIntegrationEnabled" when requested
https://bugs.webkit.org/show_bug.cgi?id=190150
Reviewed by Fujii Hironori.
* DumpRenderTree/win/DumpRenderTree.cpp:
(setWebPreferencesForTestOptions):
DRT has been recognizing this field, but not propagating its value to WebPreferences.
2018-10-01 Alex Christensen <achristensen@webkit.org>
Unreviewed, rolling out r236551.
Fails URL validating too aggressively
Reverted changeset:
"URLWithUserTypedString should return nil for URLs deemed to
be invalid by WebCore::URL"
https://bugs.webkit.org/show_bug.cgi?id=189979
https://trac.webkit.org/changeset/236551
2018-10-01 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Add SPI to customize the input accessory view when focusing an element
https://bugs.webkit.org/show_bug.cgi?id=190152
<rdar://problem/42754975>
Reviewed by Dan Bernstein.
Add an API test to verify that setting a custom input accessory view and custom input view on the form input
session when focusing an element overrides the first responder's (i.e. WKContentView's) `-inputView` and
`-inputAccessoryView`.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(webViewWithAutofocusedInput):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/ios/TestInputDelegate.h:
* TestWebKitAPI/Tests/ios/TestInputDelegate.mm:
(-[TestInputDelegate setWillStartInputSessionHandler:]):
(-[TestInputDelegate willStartInputSessionHandler]):
(-[TestInputDelegate _webView:willStartInputSession:]):
2018-10-01 Sihui Liu <sihui_liu@apple.com>
Remove StorageProcess
https://bugs.webkit.org/show_bug.cgi?id=189975
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebProcessKillIDBCleanup.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::terminateStorageProcess): Deleted.
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::generatePageConfiguration):
(WTR::TestController::databaseProcessName): Deleted.
(WTR::TestController::databaseProcessDidCrash): Deleted.
(WTR::TestController::terminateStorageProcess): Deleted.
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2018-10-01 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Import a JS CBOR coder
https://bugs.webkit.org/show_bug.cgi?id=189877
<rdar://problem/44701124>
Reviewed by Chris Dumez.
Add logic to only process privateKeyBase64, userCertificateBase64 and intermediateCACertificateBase64
only if acceptAttestation is true.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
2018-10-01 Chris Dumez <cdumez@apple.com>
Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=190052
Reviewed by Ryosuke Niwa.
The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
to log those events. It also uses console.log() before sending those events to indicate what the test is about
to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
so that it can log the message.
The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
handler to be transformed into synchronous IPC.
As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
messages may end up being out of order, leading to flakiness.
To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicated
that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::outputText):
2018-10-01 Daniel Bates <dabates@apple.com>
[iOS] Special keys are misidentified in DOM keyboard events
https://bugs.webkit.org/show_bug.cgi?id=189974
Reviewed by Wenson Hsieh.
Add support for testing keys Forward Delete and Num Lock / Clear.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(hidUsageCodeForCharacter):
2018-10-01 Alex Christensen <achristensen@webkit.org>
URL should not use TextEncoding internally
https://bugs.webkit.org/show_bug.cgi?id=190111
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::testUserPass):
(TestWebKitAPI::TEST_F):
2018-10-01 Daniel Bates <dabates@apple.com>
LLDB tests may use wrong configuration of lldbWebKitTester
https://bugs.webkit.org/show_bug.cgi?id=189011
Reviewed by Dean Jackson.
Fixes an issue where the LLDB unit tests may use the wrong configuration of lldbWebKitTester.
Additionally, add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
Currently the unit tests pick the LLDBWebKitTester binary based on the configuration set by
script set-webkit-configuration. This may not be the same configuration specified to test-webkitpy.
So, the unit tests may use the wrong binary. Instead we have test-webkitpy store the path
to the correct lldbWebKitTester binary that the unit tests should use in an environment variable,
called LLDB_WEBKIT_TESTER_EXECUTABLE. (We use an environment variable because the test driver,
test-webkitpy, and the unit tests cannot talk to each other directly due the limitations of
the Python unittest module, the Python multiprocessing module, and the general principle of unit
tests - to test code in isolation). The unit tests make use of the value of this environment
variable to launch lldbWebKitTester binary.
* Scripts/build-lldbwebkittester: We only support building lldbWebKitTester on Mac for now. Error
out if this script is invoked for a non-Mac platform.
* Scripts/webkitpy/test/main.py:
(Tester._run_tests): Build lldbWebKitTester and store the path to it in the environment variable
LLDB_WEBKIT_TESTER_EXECUTABLE.
(_build_lldb_webkit_tester): Deleted.
* lldb/dump_class_layout_unittest.py:
(TestDumpClassLayout.shouldSkip): Use SystemHost() here and remove the _host global variable as
this is the only call site that needs the Host object now.
(TestDumpClassLayout.setUpClass): Take the path to the lldbWebKitTester binary from the value of
the environment variable LLDB_WEBKIT_TESTER_EXECUTABLE.
* lldb/lldbWebKitTester/main.cpp:
(testSummaryProviders): Add back unit test support infrastructure originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
* lldb/lldb_webkit_unittest.py:
(LLDBDebugSession.setup): Take the path to the lldbWebKitTester binary from the value of the environment
variable LLDB_WEBKIT_TESTER_EXECUTABLE.
(TestSummaryProviders):
(TestSummaryProviders.shouldSkip): Skip the tests on non-Mac platforms.
(TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
(TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
(TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
(TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
(TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
Add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
2018-10-01 Olivier Blin <olivier.blin@softathome.com>
[WPE] Update install-dependencies
https://bugs.webkit.org/show_bug.cgi?id=190127
Reviewed by Michael Catanzaro.
* wpe/install-dependencies:
libxrandr-dev is needed for gstreamer-vaapi in jhbuild
It is used by gstvaapidisplay_x11.c.
Add it only for Apt, already ok for Pacman and DNF.
Install libevent-dev for WebRTC (like GTK)
Install libasound2-dev for WebRTC.
Add it only for Apt, already ok for Pacam and DNF.
Install libgbm-dev for HeadlessViewBackend, which uses gbm.h
2018-10-01 Thibault Saunier <tsaunier@igalia.com>
[Flatpak] Add libunwind in the sandbox
https://bugs.webkit.org/show_bug.cgi?id=190123
Allowing us to get proper traces in GStreamer trace grabing
debug functions.
Reviewed by Philippe Normand.
* flatpak/org.webkit.WebKit.yaml:
2018-09-29 Commit Queue <commit-queue@webkit.org>
Unreviewed, rolling out r236631.
https://bugs.webkit.org/show_bug.cgi?id=190112
Caused various eventSender tests, including fast/css/pseudo-
active-style-sharing*, to fail (Requested by smfr on #webkit).
Reverted changeset:
"Regression(r236512): http/tests/navigation/keyboard-events-
during-provisional-navigation.html is flaky"
https://bugs.webkit.org/show_bug.cgi?id=190052
https://trac.webkit.org/changeset/236631
2018-09-28 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Fix build after r236635
https://bugs.webkit.org/show_bug.cgi?id=189210
Unreviewed.
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
* WebGPUShadingLanguageRI/Test.js:
(tests.atomicsNull):
(tests.numThreads):
(tests.textureDimensionsNull):
2018-09-28 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Allow uniform buffers to be used in the interpreter
https://bugs.webkit.org/show_bug.cgi?id=189210
Reviewed by Filip Pizlo.
Every lvalue is associated with an address space, and the propagation of these address spaces
matches the propagation of lvalues. Luckily, there was already the infrastructure to do most
of this, so this patch just goes the last few yards. It also updates the standard library to
allow for writing into all writable address spaces for out-params.
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype.visitAssignment):
(Checker.prototype._finishVisitingPropertyAccess):
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
(Intrinsics.checkFalse):
(Intrinsics):
* WebGPUShadingLanguageRI/StandardLibrary.js:
(let.standardLibrary):
* WebGPUShadingLanguageRI/Test.js:
(tests.threadArrayRefLoad):
(tests.threadArrayRefLoadIntLiteral):
(tests.deviceArrayRefLoad):
(tests.threadArrayRefStore):
(tests.deviceArrayRefStore):
(tests.deviceArrayRefStoreIntLiteral):
(tests.threadPointerLoad):
(tests.threadPointerStore):
(tests.devicePointerLoad):
(tests.devicePointerStore):
(tests.arrayLoad):
(tests.constantAddressSpace):
(tests.standardLibraryDevicePointers):
(tests.threadArrayLoad): Deleted.
(tests.threadArrayLoadIntLiteral): Deleted.
(tests.deviceArrayLoad): Deleted.
(tests.threadArrayStore): Deleted.
(tests.deviceArrayStore): Deleted.
(tests.deviceArrayStoreIntLiteral): Deleted.
2018-09-28 Wenson Hsieh <wenson_hsieh@apple.com>
No DOM API to instantiate an attachment for an img element
https://bugs.webkit.org/show_bug.cgi?id=189934
<rdar://problem/44743222>
Reviewed by Ryosuke Niwa.
Adds 3 new API tests in WKAttachmentTests:
`AddAttachmentToConnectedImageElement` verifies that an image element that's already in the document can gain an
attachment element via `HTMLAttachmentElement.getAttachmentIdentifier`.
`ChangeFileWrapperForPastedImage` verifies that an image that has been pasted produces a _WKAttachment in the UI
process, and changing the file wrapper of that _WKAttachment changes the pasted image.
`ConnectImageWithAttachmentToDocument` verifies that script can create an image element, ensure that it has an
attachment, and set a file wrapper for the generated _WKAttachment. Connecting the image to the document should
then result in an image element with the contents of the _WKAttachment's file wrapper.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(-[TestWKWebView imageElementSize]):
(-[TestWKWebView waitForImageElementSizeToBecome:]):
(TestWebKitAPI::TEST):
(-[TestWKWebView waitForAttachmentElementSizeToBecome:]): Deleted.
2018-09-28 Chris Dumez <cdumez@apple.com>
Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=190052
Reviewed by Ryosuke Niwa.
The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
to log those events. It also uses console.log() before sending those events to indicate what the test is about
to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
so that it can log the message.
The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
handler to be transformed into synchronous IPC.
As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
messages may end up being out of order, leading to flakiness.
To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicating
that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::outputText):
2018-09-28 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Pointers should have automatically-generated equality checks
https://bugs.webkit.org/show_bug.cgi?id=189986
Reviewed by Filip Pizlo.
C allows for pointer equality, and we need it so people can do null checks.
This is generated the same way all our other NativeFuncs are generated - by Checker
creating NativeFuncs inside CallExpression.resolve().
This patch also does some general cleanup.
* WebGPUShadingLanguageRI/All.js: Everything the late checker does is no longer necessary.
The last thing it was doing was making sure that only primitive types are in resources, but
it's totally reasonable to put structs and arrays in resources, so I removed this pass. We
still have to add a check to make sure resources can't live within resources, but I expect
that will be done in the same place that semantics are checked.
* WebGPUShadingLanguageRI/AllocateAtEntryPoints.js:
(allocateAtEntryPoints.updateFunction.UpdateFunctions.prototype._addVariableDeclaration):
Name the global struct for debugging purposes.
* WebGPUShadingLanguageRI/CallExpression.js:
(CallExpression.prototype._resolveByInstantiation): Cleanup
(CallExpression.prototype._resolveWithOperatorAnderIndexer): Ditto
(CallExpression.prototype._resolveWithOperatorLength): Ditto
(CallExpression.prototype._resolveWithReferenceComparator): Add support to automatically
generate pointer equality NativeFuncs.
* WebGPUShadingLanguageRI/EPtr.js: Implement pointer equality in the interpreter.
* WebGPUShadingLanguageRI/LateChecker.js: Removed.
* WebGPUShadingLanguageRI/LayoutBuffers.js: Renamed from Tools/WebGPUShadingLanguageRI/LateCheckAndLayoutBuffers.js.
(layoutBuffers):
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:
* WebGPUShadingLanguageRI/NativeFunc.js:
* WebGPUShadingLanguageRI/OperatorArrayRefLength.js:
(OperatorArrayRefLength.prototype.instantiateImplementation):
(OperatorArrayRefLength):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/SPIRV.html:
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(tests.ternaryExpression):
(tests.break): Speed up testing time
(tests.doWhile): Ditto
(tests.forLoop): Ditto
(tests.atomics): Ditto
(tests.atomicsNull): Ditto
(tests.pointerEquality): Test pointer equality
(tests.standardLibraryDevicePointers):
(tests.devicePtrPtr): Deleted.
(tests.threadgroupPtrPtr): Deleted.
(tests.constantPtrPtr): Deleted.
* WebGPUShadingLanguageRI/index.html:
2018-09-28 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Polish WebAuthN auto-test environment
https://bugs.webkit.org/show_bug.cgi?id=189283
<rdar://problem/44117828>
Reviewed by Chris Dumez.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
2018-09-28 Chris Dumez <cdumez@apple.com>
Drop support for cross-origin-window-policy header
https://bugs.webkit.org/show_bug.cgi?id=190081
Reviewed by Ryosuke Niwa.
190081_DropCrossOriginWindowPolicy
* DumpRenderTree/mac/DumpRenderTree.mm:
(enableExperimentalFeatures):
* DumpRenderTree/win/DumpRenderTree.cpp:
(enableExperimentalFeatures):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
2018-09-28 Koby Boyango <koby.b@mce.systems>
[WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
https://bugs.webkit.org/show_bug.cgi?id=189991
Reviewed by Yusuke Suzuki.
* TestWebKitAPI/Tests/WTF/StringImpl.cpp:
2018-09-27 Ryan Haddad <ryanhaddad@apple.com>
Update flakiness dashboard configuration for Mojave queues
https://bugs.webkit.org/show_bug.cgi?id=190068
Reviewed by Alexey Proskuryakov.
* TestResultServer/static-dashboards/builders.jsonp:
2018-09-27 Ryan Haddad <ryanhaddad@apple.com>
Bring up queues for Mojave
https://bugs.webkit.org/show_bug.cgi?id=189935
Unreviewed infrastructure fix.
* BuildSlaveSupport/build.webkit.org-config/config.json: Remove trigger, update bot assignment.
2018-09-24 Ryan Haddad <ryanhaddad@apple.com>
Bring up queues for Mojave
https://bugs.webkit.org/show_bug.cgi?id=189935
Reviewed by Alexey Proskuryakov.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2018-09-27 Ryan Haddad <ryanhaddad@apple.com>
Increase the timeout for iOS Simulator data migration
https://bugs.webkit.org/show_bug.cgi?id=190059
Reviewed by Aakash Jain.
3 minutes isn't always enough time for the data migrator to complete
when booting up multiple iOS Simulators. Change the timeout to 10 minutes.
* Scripts/webkitpy/xcode/simulated_device.py:
(SimulatedDeviceManager): Create a constant for the default timeout.
(SimulatedDeviceManager.initialize_devices): Use new constant.
(SimulatedDeviceManager.swap): Ditto.
(SimulatedDeviceManager.wait_until_data_migration_is_done): Ditto.
2018-09-27 Alex Christensen <achristensen@webkit.org>
URLParser should use TextEncoding through an abstract class
https://bugs.webkit.org/show_bug.cgi?id=190027
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::checkURL):
(TestWebKitAPI::TEST_F):
2018-09-27 Ryan Haddad <ryanhaddad@apple.com>
iOS Simulator bots should pass '--dedicated-simulators' to run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=190042
Reviewed by Aakash Jain.
To make iOS Simulator bots resilient to issues that can arise from reusing
existing simulators, ensure that dedicated simulators are created for each test run.
* Scripts/webkitpy/common/config/ports.py:
(IOSSimulatorWK2Port.run_webkit_tests_command):
2018-09-27 Alex Christensen <achristensen@webkit.org>
URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
https://bugs.webkit.org/show_bug.cgi?id=189979
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
(TestWebKitAPI::originalDataAsString):
(TestWebKitAPI::TEST):
2018-09-27 Basuke Suzuki <Basuke.Suzuki@sony.com>
[Win][WebKit] Implement authentication dialog on MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=189846
Reviewed by Fujii Hironori.
It was implemented for WebKitLegacy, but not for WebKit.
Also added text field to display Realm information.
* MiniBrowser/win/Common.cpp:
(authDialogProc):
(askCredential):
(displayAuthDialog): Deleted.
* MiniBrowser/win/Common.h:
* MiniBrowser/win/MiniBrowserLib.rc:
* MiniBrowser/win/MiniBrowserLibResource.h:
* MiniBrowser/win/ResourceLoadDelegate.cpp:
(ResourceLoadDelegate::didReceiveAuthenticationChallenge):
* MiniBrowser/win/WebKitBrowserWindow.cpp:
(createString):
(createUTF8String):
(createWKString):
(createWKURL):
(WebKitBrowserWindow::WebKitBrowserWindow):
(WebKitBrowserWindow::didReceiveAuthenticationChallenge):
(toNullTerminatedUTF8): Deleted.
* MiniBrowser/win/WebKitBrowserWindow.h:
2018-09-27 Youenn Fablet <youenn@apple.com>
Enable getUserMedia in mini browser
https://bugs.webkit.org/show_bug.cgi?id=190012
Reviewed by Eric Carlson.
Enable MediaDevices and mock capture devices.
Grant mock devices access to any getUserMedia call.
Covered by manual testing.
* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
(-[WK2BrowserWindowController _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
2018-09-27 Antoine Quint <graouts@apple.com>
[Web Animations] Turn Web Animations with CSS integration on
https://bugs.webkit.org/show_bug.cgi?id=184819
<rdar://problem/39597337>
Reviewed by Dean Jackson.
* DumpRenderTree/TestOptions.h:
2018-09-26 Alex Christensen <achristensen@webkit.org>
Unreviewed, rolling out r236524.
Broke API tests
Reverted changeset:
"URLWithUserTypedString should return nil for URLs deemed to
be invalid by WebCore::URL"
https://bugs.webkit.org/show_bug.cgi?id=189979
https://trac.webkit.org/changeset/236524
2018-09-26 James Savage <james.savage@apple.com>
Allow override of viewport configuration.
https://bugs.webkit.org/show_bug.cgi?id=188772.
<rdar://problem/43538892>.
Reviewed by Simon Fraser.
* WebKitTestRunner/TestController.cpp:
(WTR::updateTestOptionsFromTestHeader): Parse new test option key from comments.
* WebKitTestRunner/TestOptions.h:
* WebKitTestRunner/ios/TestControllerIOS.mm:
(WTR::TestController::platformConfigureViewForTest): Handle new test option by
modifying the web view's preferences accordingly.
2018-09-26 Alex Christensen <achristensen@webkit.org>
URLs with mismatched surrogate pairs in the host should fail to parse
https://bugs.webkit.org/show_bug.cgi?id=190005
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebCore/URLParser.cpp:
(TestWebKitAPI::TEST_F):
2018-09-26 Alex Christensen <achristensen@webkit.org>
URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
https://bugs.webkit.org/show_bug.cgi?id=189979
<rdar://problem/44119696>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
2018-09-26 Ryosuke Niwa <rniwa@webkit.org>
Selection should work across shadow boundary when initiated by a mouse drag
https://bugs.webkit.org/show_bug.cgi?id=151380
<rdar://problem/24363872>
Reviewed by Wenson Hsieh.
Added the support for internal:selectionAcrossShadowBoundariesEnabled test option.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
(setWebPreferencesForTestOptions):
2018-09-26 Ryosuke Niwa <rniwa@webkit.org>
MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features
https://bugs.webkit.org/show_bug.cgi?id=189989
Reviewed by Simon Fraser.
When the preference isn't found in user defaults, use the default value of each feature's enabledness.
* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
2018-09-26 Philippe Normand <pnormand@igalia.com>
[Flatpak] Bump to apr 1.6.5
Version 1.6.3 is no longer available on Apache's website.
Rubber-stamped by Michael Catanzaro.
* flatpak/org.webkit.WebKit.yaml:
2018-09-25 Jiewen Tan <jiewen_tan@apple.com>
[WebAuthN] Make AuthenticatorManager
https://bugs.webkit.org/show_bug.cgi?id=189279
<rdar://problem/44116792>
Reviewed by Chris Dumez.
Besides the functionality to set the WebAuthenticationMockConfiguration. Three operations are
added to manipulate Keychain: addTestKeyToKeychain, cleanUpKeychain and keyExistedInKeychain.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/ios/LocalAuthenticator.mm: Removed.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setWebAuthenticationMockConfiguration):
(WTR::TestRunner::addTestKeyToKeychain):
(WTR::TestRunner::cleanUpKeychain):
(WTR::TestRunner::isKeyExisted):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::addTestKeyToKeychain):
(WTR::TestController::cleanUpKeychain):
(WTR::TestController::isKeyExisted):
(WTR::TestController::setWebAuthenticationMockConfiguration):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/cocoa/TestControllerCocoa.mm:
(WTR::TestController::addTestKeyToKeychain):
(WTR::TestController::cleanUpKeychain):
(WTR::TestController::keyExistedInKeychain):
2018-09-25 Sihui Liu <sihui_liu@apple.com>
Move Service Worker Management from Storage Process to Network Process
https://bugs.webkit.org/show_bug.cgi?id=189422
Reviewed by Youenn Fablet.
Change a check in ServiceWorkers.HasServiceWorkerRegistrationBit as storage process is not
launched during service worker operations now.
* TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2018-09-25 Eric Carlson <eric.carlson@apple.com>
[MediaStream] Update constraints supported by getDisplayMedia
https://bugs.webkit.org/show_bug.cgi?id=189930
<rdar://problem/44740305>
Unreviewed, fix test broken by r236465.
* TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
(TestWebKitAPI::TEST_F):
2018-09-25 Myles C. Maxfield <mmaxfield@apple.com>
[WHSL] Implement semantics
https://bugs.webkit.org/show_bug.cgi?id=189134
Reviewed by Filip Pizlo.
This patch adds parsing support and adds the checks required to support HLSL-style semantics.
There are 3 places where semantics are allowed:
1. In a field in a struct. E.g.
struct R {
float4 position : SV_Position;
}
vertex R foo() {
...
}
2. In a parameter of a function. If the function is not an entry point, the semantic is ignored.
compute void foo(device float[] data : buffer(u0)) {
...
}
3. On a function. This is so you don't have to create structs for the return types of simple vertex shaders.
vertex float4 foo() : SV_Position {
...
}
The semantics are partitioned into 4 types:
1. Built-in variables. For example, : SV_Position.
2. Resources. For example, : register(u0).
3. Stage-in / stage-out variables. For example, : attribute(0).
4. Specialization constants. For example, : specialized.
The semantics are validated according to a collection of rules:
- The same entry point can't list the same semantic twice
- Each built-in type has an appropriate type that is listed in the spec.
- Each built-in is appropriate as either an input or an output of a particular shader stage
- Resource semantics have to have the appropriate type (e.g. can't use register(s0) on a buffer)
- Resources can't be output from entry points
- The resource semantic mode must match the address space of the resource
- Stage-in and stage-out variables have to be POD
- Specialization constants can't be output from entry points, and have to be numbers
* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/BuiltInSemantic.js: Added.
(BuiltInSemantic):
(BuiltInSemantic.prototype.get name):
(BuiltInSemantic.prototype.get extraArguments):
(BuiltInSemantic.prototype.isAcceptableType):
(BuiltInSemantic.prototype.isAcceptableForShaderType):
(BuiltInSemantic.prototype.toString):
* WebGPUShadingLanguageRI/CallExpression.js:
(CallExpression.prototype._resolveWithOperatorAnderIndexer):
(CallExpression.prototype._resolveWithOperatorLength):
* WebGPUShadingLanguageRI/Checker.js:
(Checker):
(Checker.prototype.visitProgram):
(Checker.prototype._checkSemantics.Item):
(Checker.prototype._checkSemantics.Item.prototype.get type):
(Checker.prototype._checkSemantics.Item.prototype.get semantic):
(Checker.prototype._checkSemantics.Gatherer):
(Checker.prototype._checkSemantics.Gatherer.prototype.reset):
(Checker.prototype._checkSemantics.Gatherer.prototype.set currentSemantic):
(Checker.prototype._checkSemantics.Gatherer.prototype.get currentSemantic):
(Checker.prototype._checkSemantics.Gatherer.prototype.get result):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitEnumType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitVectorType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitMatrixType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitNativeType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitStructType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitTypeRef):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitPtrType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayRefType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayType):
(Checker.prototype._checkSemantics.Gatherer.prototype.visitFuncParameter):
(Checker.prototype._checkSemantics.checkDuplicateSemantics):
(Checker.prototype._checkSemantics.checkSemanticTypes):
(Checker.prototype._checkSemantics.checkSemanticForShaderType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitEnumType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitVectorType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitMatrixType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitNativeType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitPtrType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayRefType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitStructType):
(Checker.prototype._checkSemantics.PODChecker.prototype.visitTypeRef):
(Checker.prototype._checkSemantics.PODChecker):
(Checker.prototype._checkSemantics.checkPODData):
(Checker.prototype._checkSemantics):
(Checker.prototype._checkShaderType):
(Checker.prototype._checkOperatorOverload):
(Checker.prototype.visitFuncDef):
(Checker.prototype.visitEnumType):
(Checker.prototype.visitArrayType):
(Checker.prototype.visitMakePtrExpression):
(Checker.prototype.visitMakeArrayRefExpression):
(Checker.prototype._finishVisitingPropertyAccess):
(Checker.prototype.visitIndexExpression):
(Checker.prototype.visitReturn):
(Checker.prototype.visitSwitchStatement):
(Checker.prototype.visitTernaryExpression):
(Checker.prototype.visitCallExpression):
* WebGPUShadingLanguageRI/Field.js:
(Field):
(Field.prototype.get semantic):
(Field.prototype.toString):
* WebGPUShadingLanguageRI/Func.js:
(Func):
(Func.prototype.get semantic):
(Func.prototype.toDeclString):
* WebGPUShadingLanguageRI/FuncDef.js:
(FuncDef):
* WebGPUShadingLanguageRI/FuncParameter.js:
(FuncParameter):
(FuncParameter.prototype.get semantic):
(FuncParameter.prototype.toString):
* WebGPUShadingLanguageRI/Intrinsics.js:
* WebGPUShadingLanguageRI/LateChecker.js:
(LateChecker.prototype.visitReferenceType):
(LateChecker):
(LateChecker.prototype._checkShaderType): Deleted.
(LateChecker.prototype.visitFuncDef): Deleted.
* WebGPUShadingLanguageRI/NativeFunc.js:
(NativeFunc):
* WebGPUShadingLanguageRI/Parse.js:
(parseParameter):
(parseFuncDecl):
(parseFuncDef):
(parseStageInOutSemantic):
(parseResourceSemantic):
(parseSpecializationConstantSemantic):
(parseBuiltInSemantic):
(parseField):
(parseNativeFunc):
* WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
(programWithUnnecessaryThingsRemoved):
* WebGPUShadingLanguageRI/ResourceSemantic.js: Added.
(ResourceSemantic):
(ResourceSemantic.prototype.get resourceMode):
(ResourceSemantic.prototype.get index):
(ResourceSemantic.prototype.get space):
(ResourceSemantic.prototype.isAcceptableType):
(ResourceSemantic.prototype.isAcceptableForShaderType):
(ResourceSemantic.prototype.toString):
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitFuncParameter):
(Rewriter.prototype.visitField):
(Rewriter.prototype.visitBuiltInSemantic):
(Rewriter.prototype.visitResourceSemantic):
(Rewriter.prototype.visitStageInOutSemantic):
(Rewriter.prototype.visitSpecializationConstantSemantic):
(Rewriter):
* WebGPUShadingLanguageRI/SPIRV.html:
* WebGPUShadingLanguageRI/Semantic.js: Added.
(Semantic):
(Semantic.prototype.get origin):
(Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitBuiltInSemantic):
(Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitResourceSemantic):
(Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitStageInOutSemantic):
(Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitSpecializationConstantSemantic):
(Semantic.prototype.equalToOtherSemantic.Comparer):
(Semantic.prototype.equalToOtherSemantic):
* WebGPUShadingLanguageRI/SpecializationConstantSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/Field.js.
(SpecializationConstantSemantic):
(SpecializationConstantSemantic.prototype.isAcceptableType):
(SpecializationConstantSemantic.prototype.isAcceptableForShaderType):
(SpecializationConstantSemantic.prototype.toString):
* WebGPUShadingLanguageRI/StageInOutSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
(StageInOutSemantic):
(StageInOutSemantic.prototype.get index):
(StageInOutSemantic.prototype.isAcceptableType):
(StageInOutSemantic.prototype.isAcceptableForShaderType):
(StageInOutSemantic.prototype.toString):
* WebGPUShadingLanguageRI/StatementCloner.js:
(StatementCloner.prototype.visitNativeFunc):
* WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js:
(synthesizeArrayOperatorLength):
* WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js:
(synthesizeCopyConstructorOperator):
* WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
(synthesizeDefaultConstructorOperator):
* WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js:
(synthesizeEnumFunctions):
* WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
(setupAnder):
(synthesizeStructAccessorsForStructType):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(tests.shaderTypes):
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitFunc):
(Visitor.prototype.visitFuncParameter):
(Visitor.prototype.visitField):
(Visitor.prototype.visitBuiltInSemantic):
(Visitor.prototype.visitResourceSemantic):
(Visitor.prototype.visitStageInOutSemantic):
(Visitor.prototype.visitSpecializationConstantSemantic):
(Visitor):
* WebGPUShadingLanguageRI/index.html:
2018-09-25 Thomas Denney <tdenney@apple.com>
[WHLSL] Test suite for Metal code generation
https://bugs.webkit.org/show_bug.cgi?id=187738
Reviewed by Myles C. Maxfield.
This patch adds an Xcode project that contains a Cocoa app that can be
used for running WHLSL shaders on the GPU. It also contains an Xcode
test suite that runs all of the tests in Test.js on the GPU.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/.gitignore: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/AppIcon.appiconset/Contents.json: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/Contents.json: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Base.lproj/Main.storyboard: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Info.plist: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/WHLSL.entitlements: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/_SharedMetal.txt: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/main.m: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/Info.plist: Added.
* WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m: Added.
* WebGPUShadingLanguageRI/Test.js:
(tests.lotsOfLocalVariables):
2018-09-25 Myles C. Maxfield <mmaxfield@apple.com>
Unreviewed build fix after r236455
https://bugs.webkit.org/show_bug.cgi?id=189121
* WebGPUShadingLanguageRI/Test.js:
(tests.shaderStages):
2018-09-24 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Not all functions should be able to run in all shader stages
https://bugs.webkit.org/show_bug.cgi?id=189121
Reviewed by Filip Pizlo.
ddx() and ddy() can only run in fragment shaders, and the barrier functions can only run in compute shaders.
ddx_coarse() & friends are currently implemented as just calling ddx(), so we only need to modify those functions
if/when we make them native.
The texture sampling functions that use implicit derivatives can run in any shader stage - they just use a LOD of
0. Therefore, those functions are unchanged.
* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/Intrinsics.js:
* WebGPUShadingLanguageRI/LateChecker.js:
(LateChecker.prototype._checkShaderType):
* WebGPUShadingLanguageRI/NativeFunc.js:
(NativeFunc):
(NativeFunc.prototype.get stage):
(NativeFunc.prototype.toDeclString):
* WebGPUShadingLanguageRI/Parse.js:
(parseFuncDecl):
(parseNativeFunc):
(parseNative):
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare):
* WebGPUShadingLanguageRI/SPIRV.html:
* WebGPUShadingLanguageRI/StandardLibrary.js:
(let.standardLibrary):
* WebGPUShadingLanguageRI/StatementCloner.js:
(StatementCloner.prototype.visitNativeFunc):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(tests.shaderStages):
* WebGPUShadingLanguageRI/WSyntaxError.js:
(WSyntaxError.prototype.toString):
(WSyntaxError):
* WebGPUShadingLanguageRI/index.html:
2018-09-24 Thomas Denney <tdenney@apple.com>
[WHLSL] Implement trap statements in Metal code generation
https://bugs.webkit.org/show_bug.cgi?id=189615
Reviewed by Myles C. Maxfield.
Each function called by an entry point now receives an additional
boolean pointer parameter, which is set to false if the function traps.
After each function call (to a non-native function) this trap parameter
is checked. The behavior of the interpreter has also been updated so
that a function entry point catches the trap and instead returns zero,
matching the behavior of compiled code.
* WebGPUShadingLanguageRI/Evaluator.js: Adds a new flag to allow the
test suite to check for traps and also returns zero from entry points
whose invocation trapped.
* WebGPUShadingLanguageRI/Metal/MSLBackend.js: Pass program to function
declarations.
* WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Update dependencies.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Add program
property.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Ditto.
* WebGPUShadingLanguageRI/Metal/MSLInsertTrapParameter.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Conforms to the
new trapping behavior.
* WebGPUShadingLanguageRI/Test.js: Update tests that trap.
2018-09-24 Thomas Denney <tdenney@apple.com>
[WHLSL] It shouldn’t be possible to use ternary expressions as l-values
https://bugs.webkit.org/show_bug.cgi?id=189290
Reviewed by Myles C. Maxfield.
It is no longer possible for a ternary expression to be treated as an
l-value. This patch adds several test cases to verify that this is the
case.
* WebGPUShadingLanguageRI/Checker.js:
(Checker.prototype.visitTernaryExpression): No longer check isLValue.
* WebGPUShadingLanguageRI/NormalUsePropertyResolver:
(NormalUsePropertyResolver.visitTernaryExpression): Deleted.
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitTernaryExpression): No longer copy isLValue.
* WebGPUShadingLanguageRI/TernaryExpression.js:
(TernaryExpression):
(TernaryExpression.prototype.get elseExpression):
(TernaryExpression.prototype.get isLValue): Deleted.
(TernaryExpression.prototype.set isLValue): Deleted.
* WebGPUShadingLanguageRI/Test.js:
(tests.ternaryExpression): Add checks for failure if a failure is used
as an l-value.
(ternaryExpressionIsLValue.node.TernaryExpressionVisitor.prototype.visitTernaryExpression): Deleted.
(ternaryExpressionIsLValue.node.TernaryExpressionVisitor): Deleted.
(tests.ternaryExpressionIsLValue): Deleted.
2018-09-24 Jer Noble <jer.noble@apple.com>
SharedBuffer should have an equality test
https://bugs.webkit.org/show_bug.cgi?id=189919
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::TEST_F):
2018-09-24 Alex Christensen <achristensen@webkit.org>
Prepare to replace WKBundleFileHandleCreateWithPath with a version that takes a WKBundlePageRef
https://bugs.webkit.org/show_bug.cgi?id=189929
Reviewed by Andy Estes.
* TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp:
2018-09-24 Thomas Denney <tdenney@apple.com>
[WHLSL] Casting user-created types to themselves should always work
https://bugs.webkit.org/show_bug.cgi?id=189113
Reviewed by Myles C. Maxfield.
Casting user-defined types to themselves worked already, but we didn't
test it anywhere.
* WebGPUShadingLanguageRI/Test.js:
(tests.selfCasts):
2018-09-24 Zan Dobersek <zdobersek@igalia.com>
Unreviewed build fix for Jhbuild-using ports.
* gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch:
Adjust the patch so it applies cleanly on the 1.14.3 version of the
gst-plugins-good package.
2018-09-24 Ryan Haddad <ryanhaddad@apple.com>
Update flakiness dashboard configuration for iOS 12 queues
https://bugs.webkit.org/show_bug.cgi?id=189688
Reviewed by Alexey Proskuryakov.
* TestResultServer/static-dashboards/builders.jsonp:
2018-09-24 Alicia Boya García <aboya@igalia.com>
[GStreamer] Unreviewed build fix.
A GStreamer patch was not applying cleanly on 1.14.3.
* gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch:
2018-09-24 Alicia Boya García <aboya@igalia.com>
[MSE][GStreamer] Use no-more-pads event for noticing initialization segments
https://bugs.webkit.org/show_bug.cgi?id=189868
Reviewed by Xabier Rodriguez-Calvar.
Added patch from https://bugzilla.gnome.org/show_bug.cgi?id=797187
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Added.
2018-09-24 Alicia Boya García <aboya@igalia.com>
[MSE][GStreamer] Add patch to jhbuild: matroskademux: Allow Matroska headers to be read more than once
https://bugs.webkit.org/show_bug.cgi?id=185731
Reviewed by Xabier Rodriguez-Calvar.
Upstream bug in GStreamer: https://bugzilla.gnome.org/show_bug.cgi?id=793333
This fixes YTTV 35. AppendMultipleInitOpusAudio (and any other use
case where two WebM initialization segments are appended on a row).
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Added.
* gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Added.
* gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Added.
2018-09-22 Myles C. Maxfield <mmaxfield@apple.com>
[WHSL] Need grammar to specify kernel group size
https://bugs.webkit.org/show_bug.cgi?id=189108
Reviewed by Dean Jackson.
In HLSL, compute functions are annotated with their workgroup size.
For example,
[numthreads(3, 4, 5)] compute void foo(...) { ... }
* WebGPUShadingLanguageRI/All.js:
* WebGPUShadingLanguageRI/Func.js:
(Func):
(Func.prototype.get attributeBlock):
* WebGPUShadingLanguageRI/FuncAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
(FuncAttribute):
* WebGPUShadingLanguageRI/FuncDef.js:
(FuncDef):
* WebGPUShadingLanguageRI/FuncNumThreadsAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
(FuncNumThreadsAttribute):
(FuncNumThreadsAttribute.prototype.get x):
(FuncNumThreadsAttribute.prototype.get y):
(FuncNumThreadsAttribute.prototype.get z):
* WebGPUShadingLanguageRI/LateChecker.js:
(LateChecker.prototype._checkShaderType):
* WebGPUShadingLanguageRI/Parse.js:
(parseAttributeBlock):
(parseFuncDecl):
(parseFuncDef):
(parseNativeFunc):
* WebGPUShadingLanguageRI/SPIRV.html:
* WebGPUShadingLanguageRI/StatementCloner.js:
(StatementCloner.prototype.visitFuncDef):
(StatementCloner.prototype.visitFuncNumThreadsAttribute):
(StatementCloner):
* WebGPUShadingLanguageRI/Test.html:
* WebGPUShadingLanguageRI/Test.js:
(tests.numThreads):
* WebGPUShadingLanguageRI/Visitor.js:
(Visitor.prototype.visitFunc):
(Visitor.prototype.visitFuncNumThreadsAttribute):
(Visitor):
* WebGPUShadingLanguageRI/index.html:
2018-09-22 Myles C. Maxfield <mmaxfield@apple.com>
Native functions which accept pointers need to do null checks
https://bugs.webkit.org/show_bug.cgi?id=189883
Reviewed by Dean Jackson.
Simply guard all the places where we write through an author-provided pointer.
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
* WebGPUShadingLanguageRI/Test.js:
(tests.textureDimensionsNull):
2018-09-22 Myles C. Maxfield <mmaxfield@apple.com>
[WHLSL] Implement atomic operations and barriers
https://bugs.webkit.org/show_bug.cgi?id=189025
Reviewed by Dean Jackson.
In the interpreter, atomic operations don't need to be atomic.
* WebGPUShadingLanguageRI/Intrinsics.js:
(Intrinsics.):
* WebGPUShadingLanguageRI/StandardLibrary.js:
(let.standardLibrary):
* WebGPUShadingLanguageRI/Test.js:
(tests.atomics):
2018-09-22 Thibault Saunier <tsaunier@igalia.com>
[WPE] Be very permissive in the MiniBrowser.
https://bugs.webkit.org/show_bug.cgi?id=189800
This is just a test tool and we should make
it just work, security and privacy is not really
a primary focus here.
Reviewed by Žan Doberšek.
* MiniBrowser/wpe/main.cpp:
(decidePermissionRequest):
(main):
2018-09-21 Thomas Denney <tdenney@apple.com>
[WHLSL] Local variables should be statically allocated
https://bugs.webkit.org/show_bug.cgi?id=188402
Reviewed by Myles C. Maxfield.
An additional preparation stage is now performed so that all local
variables and function parameters are allocated in a single struct at
entry points. A pointer to this struct is then passed for function
calls.
* WebGPUShadingLanguageRI/All.js: Update dependencies.
* WebGPUShadingLanguageRI/AllocateAtEntryPoints.js: Added new stage.
* WebGPUShadingLanguageRI/CallExpression.js:
(CallExpression.prototype.set argumentList): Add setter because
allocateAtEntryPoints needs to change this.
* WebGPUShadingLanguageRI/EBufferBuilder.js: Remove a redundant
constructor that wasn't used anywhere.
* WebGPUShadingLanguageRI/Func.js:
(Func.prototype.set parameters): Add setter.
* WebGPUShadingLanguageRI/FuncDef.js:
(FuncDef.prototype.set body): Ditto.
* WebGPUShadingLanguageRI/Prepare.js:
(let.prepare): Add call to allocateAtEntryPoints. This call cannot
happen any earlier because it depends on having types for call
arguments.
* WebGPUShadingLanguageRI/Rewriter.js:
(Rewriter.prototype.visitReturn): Resolve issue where the return
statement's function wasn't copied. A null check is required as the
Rewriter might be used before this property is set.
* WebGPUShadingLanguageRI/SPIRV.html: Update dependencies.
* WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Abstracted logic
into a separate function so that allocateAtEntryPoints can create the
accessors for the struct type it introduces.
* WebGPUShadingLanguageRI/Test.html: Update dependencies.
* WebGPUShadingLanguageRI/Test.js: Add new tests to verify the static
allocation transform works safely.
* WebGPUShadingLanguageRI/index.html: Update dependencies.
2018-09-21 Jonathan Bedard <jbedard@apple.com>
Bring up queues for iOS 12 (Build fix)
https://bugs.webkit.org/show_bug.cgi?id=189683
Unreviewed build fix.
We should not build ImageDiff as x86 by default since 32 bit projects are
deprecated in Xcode. ImageDiff should only be built once.
* Scripts/build-webkit:
* Scripts/webkitdirs.pm:
(argumentsForConfiguration):
2018-09-21 Adrian Perez de Castro <aperez@igalia.com>
[WPE] Built RPM of WPE webkit fails to install with "nothing provides libWPEToolingBackends.so()"
https://bugs.webkit.org/show_bug.cgi?id=189797
Reviewed by Žan Doberšek.
* wpe/backends/CMakeLists.txt: Make libWPEToolingBackends a static library to avoid
the need for installing it. This works fine because the library only contains utility
code intended to be reused from other various components (MiniBrowser, WebKitTestRunner).
2018-09-20 Daniel Bates <dabates@apple.com>
Move IOKitSPI.h from TestRunnerShared to PAL
https://bugs.webkit.org/show_bug.cgi?id=189804
Reviewed by Wenson Hsieh.
Towards fixing <https://bugs.webkit.org/show_bug.cgi?id=189604> move the IOKit SPI forward
declarations to PAL so that they can be shared by WebKit, DumpRenderTree and WebKitTestRunner.
No functionality changed. So, no new tests.
* TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
* TestRunnerShared/spi/UIKitTestSPI.h:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
* WebKitTestRunner/ios/HIDEventGenerator.mm:
2018-09-20 Thomas Denney <tdenney@apple.com>
[WHLSL] Metal code generation
https://bugs.webkit.org/show_bug.cgi?id=187735
Reviewed by Myles C. Maxfield.
Adds support for generating Metal Shading Language from WHLSL. Clients
should include the file MetalCodegenAll.js and then call whlslToMsl
with their program source code to compile to Metal.
* WebGPUShadingLanguageRI/ArrayType.js:
(ArrayType.prototype.get arrayRefType): Adds the arrayRefType method to
all types to find the type of that expression when it is used in a
MakeArrayRefExpression.
* WebGPUShadingLanguageRI/MakeArrayRefExpression.js:
(MakeArrayRefExpression):
(MakeArrayRefExpression.prototype.get type): Uses the new arrayRefType
getter on all types to find the type of the expression.
* WebGPUShadingLanguageRI/Metal/MSLBackend.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLCompileResult.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLConstexprEmitter.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLFunctionForwardDeclaration.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLNameMangler.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLNativeFunctionCall.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLTypeAttributes.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLTypeAttributesMap.js: Added.
* WebGPUShadingLanguageRI/Metal/MSLTypeUnifier.js: Added.
* WebGPUShadingLanguageRI/Metal/TypeOf.js: Added.
* WebGPUShadingLanguageRI/Metal/WhlslToMsl.js: Added.
* WebGPUShadingLanguageRI/PropertyResolver.js:
* WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
* WebGPUShadingLanguageRI/Test.js: Added awkward tests for the compiler
to generate code for.
(tests.incrementAndDecrement):
(tests.returnIntLiteralUint):
(tests.returnIntLiteralFloat):
(tests.nestedSubscriptWithArraysInStructs):
(tests.nestedSubscript):
(tests.lotsOfLocalVariables):
* WebGPUShadingLanguageRI/Type.js:
(Type.prototype.get arrayRefType): See above.
2018-09-20 Ryan Haddad <ryanhaddad@apple.com>
Bring up queues for iOS 12
https://bugs.webkit.org/show_bug.cgi?id=189683
Unreviewed infrastructure fix.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12@2x.png: Renamed from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
(BubbleQueueServer): Move EWS bubbles to the iOS 12 section of the dashboard.
2018-09-20 Ryan Haddad <ryanhaddad@apple.com>
Bring up queues for iOS 12
https://bugs.webkit.org/show_bug.cgi?id=189683
Reviewed by Aakash Jain.
* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png: Added.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
(table.queue-grid tr.platform.ios-simulator-12 img.logo):
(table.queue-grid tr.platform.ios-12 img.logo):
(table.queue-grid tr.platform.ios-simulator-11 img.logo): Deleted.
(table.queue-grid tr.platform.ios-11 img.logo): Deleted.
* BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
* BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
(_should_file_trigger_build):
* BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
(ShouldBuildTest):
(ShouldBuildTest.test_should_build):
2018-09-20 Basuke Suzuki <Basuke.Suzuki@sony.com>
[Win] TestRunner::queueLoad() fails to generate correct url for some urls.
https://bugs.webkit.org/show_bug.cgi?id=189679
Reviewed by Fujii Hironori.
Replace the implementation with correct API call.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::queueLoad): Call UrlCombineW.
2018-09-20 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE] fails to build on ARM arches complaining about undefined reference to `epoxy_eglMakeCurrent'
https://bugs.webkit.org/show_bug.cgi?id=189556
Reviewed by Konstantin Tokarev.
This is only a speculative build fix as I didn't attempt to reproduce. Explicitly link to
libepoxy.
* wpe/backends/CMakeLists.txt:
2018-09-20 Daniel Bates <dabates@apple.com>
[iOS] Support testing more hardware special keys
https://bugs.webkit.org/show_bug.cgi?id=189793
Reviewed by Simon Fraser.
* TestRunnerShared/spi/IOKitSPI.h: Add more SPI constants.
* WebKitTestRunner/ios/HIDEventGenerator.mm:
(keyCodeForDOMFunctionKey): Extracted out logic from hidUsageCodeForCharacter() to return the
key code for the F1, F2, ..., F12 keys and extended the code to compute the key code for the
F13, F14, ..., F24 keys.
(hidUsageCodeForCharacter): Modified to call keyCodeForDOMFunctionKey().
2018-09-20 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, remove accidentally-committed debugging changes from flatpakutils script
Aaaaaah maybe this is why changes are supposed to be reviewed.
* flatpak/flatpakutils.py:
(WebkitFlatpak.clean_args):
2018-09-20 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, manually rollout our switch to master runtime
Phil wants html5-codecs, which aren't available yet here. Let's switch back to 3.28 in the
meantime, where we were already building GStreamer ourselves anyway. But use an updated
SDK revision.
* flatpak/files/httpd-autogen.sh: Added.
* flatpak/flatpakutils.py:
(WebkitFlatpak.clean_args):
* flatpak/org.webkit.GTK.yaml:
* flatpak/org.webkit.WebKit.yaml:
* flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
* flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Added.
2018-09-20 Thibault Saunier <tsaunier@igalia.com>
[WPE][GTK] webkit-flatpak intercepts --help for other commands
https://bugs.webkit.org/show_bug.cgi?id=189058
The approach of run_in_sandbox_if_available is that we basically have the
same set of arguments to setup the sandbox (ie. port name, build type, etc...)
and we can pass those args first to setup the flatpak launcher object
and then to the underlying script. That doesn't work well with the `--help` argument
as once processed it 1. prints the help (which make no sense to the user of the calling script)
2. exits the app - The solution is to just make sure that `--help` is not used when using
flatpakutils from any script that is not `webkit-flatpak` itself.
Reviewed by Michael Catanzaro.
* flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(run_in_sandbox_if_available):
2018-09-20 Xabier Rodriguez Calvar <calvaris@igalia.com>
Unreviewed. Add W3C imported tests to the MSEEME watchlist.
* Scripts/webkitpy/common/config/watchlist:
2018-09-20 Xabier Rodriguez Calvar <calvaris@igalia.com>
Unreviewed. Fix the Streams API watchlist.
* Scripts/webkitpy/common/config/watchlist:
2018-09-19 Chris Dumez <cdumez@apple.com>
Crash under WebProcessProxy::suspendedPageWasDestroyed(WebKit::SuspendedPageProxy&)
https://bugs.webkit.org/show_bug.cgi?id=189721
<rdar://problem/44359788>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-09-19 Thomas Denney <tdenney@apple.com>
[WHLSL] Improve test suite type safety
https://bugs.webkit.org/show_bug.cgi?id=189502
Reviewed by Myles C. Maxfield.
Each of the 'makeT' functions now call the relevant cast function on the
value before hand. The checkNumber function has also been removed and
its uses have been replaced with functions that also check the type.
Some of the arithmetic checks have been updated to reflect that the
casts happen outside of WHLSL evaluation. Other tests have also been
updated to reflect that some values cannot be precisely expressed in
32-bit floating point.
* WebGPUShadingLanguageRI/Casts.js:
(castToBool): Added.
(castAndCheckValue): Added.
(isBitwiseEquivalent): Moved from Intrinsics.js.
* WebGPUShadingLanguageRI/Intrinsics.js: Ditto.
* WebGPUShadingLanguageRI/SPIRV.html: Update depdencies.
* WebGPUShadingLanguageRI/Test.html: Ditto.
* WebGPUShadingLanguageRI/Test.js: Update makeT functions to do a cast
and check the result. Some tests were also updated to reflect the change
in the behavior of these functions.
* WebGPUShadingLanguageRI/index.html: Update dependencies.
2018-09-19 John Wilander <wilander@apple.com>
Resource Load Statistics: Add optional cap on partitioned cache max age
https://bugs.webkit.org/show_bug.cgi?id=189711
<rdar://problem/39246837>
Reviewed by Antti Koivisto and Chris Dumez.
This change adds infrastructure for layout tests of capped cache max age.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setStatisticsCacheMaxAgeCap):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::setStatisticsCacheMaxAgeCap):
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2018-09-19 Dawei Fenton <realdawei@apple.com>
Unreviewed. Update my email and alias in list of contributors.
* Scripts/webkitpy/common/config/contributors.json:
2018-09-19 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Unreviewed, try #3 to fix a typo
I feel like Charlie Brown, how hard this has been for me....
* Scripts/run-minibrowser:
* Scripts/webkitdirs.pm:
(runInFlatpakIfAvailable):
(runInFlatpakIfAvailible): Deleted.
2018-09-19 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Unreviewed, fix that typo in more places
It got copied into webkitdirs.pm!
* Scripts/webkitdirs.pm:
(runInFlatpakIfAvailible):
(runInFlatpakIfAvalaible): Deleted.
2018-09-19 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Unreviewed, fix a pervasive typo in the webkit-flatpak script
* flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):
(WebkitFlatpak.__init__):
(WebkitFlatpak.run):
2018-09-19 Michael Catanzaro <mcatanzaro@igalia.com>
[WPE][GTK] Unreviewed, update to latest GNOME SDK
* flatpak/org.webkit.WebKit.yaml:
2018-09-19 Michael Catanzaro <mcatanzaro@igalia.com>
Unreviewed, rolling out r235500.
Time to switch back to master runtime
Reverted changeset:
"Unreviewed, rolling out r235114."
https://bugs.webkit.org/show_bug.cgi?id=188731
https://trac.webkit.org/changeset/235500
2018-09-19 Adrian Perez de Castro <aperez@igalia.com>
Unreviewed. Add Pablo Saavedra to the list of contributors.
* Scripts/webkitpy/common/config/contributors.json:
2018-09-19 Philippe Normand <pnormand@igalia.com>
[GStreamer] Add support for AV1 decoding
https://bugs.webkit.org/show_bug.cgi?id=189647
Reviewed by Žan Doberšek.
Add patches required for AV1 decoding support. They're all
upstream already and will be shipped in GStreamer 1.16. The aom
GStreamer plugin depends on the aom library for which there's no
official release yet.
* gstreamer/jhbuild.modules:
* gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Added.
* gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Added.
* gstreamer/patches/gst-plugins-good-0001-qtdemux-Detect-and-expose-CEA-608-708-Closed-Caption.patch: Added. This one is unrelated but an implicit dependency of the next one.
* gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Added.
* gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Added.
* gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Added.
2018-09-18 Jonathan Bedard <jbedard@apple.com>
webkitpy: Clobbering and building occurs multiple times for iOS Simulator ports
https://bugs.webkit.org/show_bug.cgi?id=189702
<rdar://problem/44541704>
Reviewed by Aakash Jain.
* Scripts/webkitpy/layout_tests/controllers/manager.py:
(Manager._set_up_run): Move build check and clobbering to run, since set up is
run multiple times for iOS simulator.
(Manager.run):
2018-09-18 Chris Dumez <cdumez@apple.com>
"DidFirstVisuallyNonEmptyLayout" callback does not get called when restoring a page from PageCache
https://bugs.webkit.org/show_bug.cgi?id=189681
<rdar://problem/44526171>
Reviewed by Alex Christensen and Zalan Bujtas.
Add API test coverage.
* TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
(TestWebKitAPI::didFinishNavigation):
(TestWebKitAPI::TEST):
2018-09-18 Claudio Saavedra <csaavedra@igalia.com>
[WPE] Implement mouse event modifiers
https://bugs.webkit.org/show_bug.cgi?id=189697
Reviewed by Carlos Garcia Campos.
* WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
(WTR::wkEventModifiersToWPE):
(WTR::EventSenderProxy::mouseDown):
(WTR::EventSenderProxy::mouseUp):
2018-09-17 Yusuke Suzuki <utatane.tea@gmail.com>
[WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
https://bugs.webkit.org/show_bug.cgi?id=185339
Reviewed by Mark Lam.
* TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
(TestWebKitAPI::ToUpperConverter::stopProducing):
(TestWebKitAPI::ToUpperConverter::stopConsuming):
2018-09-17 Simon Fraser <simon.fraser@apple.com>
Many modern media control tests leak documents in testing
https://bugs.webkit.org/show_bug.cgi?id=189437
Reviewed by Darin Adler.
In order to accurately detect leaks in media controls tests which use lots of
SVGImages, we have to:
- Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer
to clear references to elements.
- Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources()
to drop the last handle to the CachedResource for an SVGImage.
- Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources()
to run again after that timer has fired.
This should fix most of the spurious leak reports involving SVGImage documents.
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::reportLiveDocuments):
(WTR::InjectedBundle::didReceiveMessageToPage):
2018-09-17 Chris Dumez <cdumez@apple.com>
PSON: window.open() with 'noopener' should only process-swap cross-site, not cross-origin
https://bugs.webkit.org/show_bug.cgi?id=189602
<rdar://problem/44430549>
Reviewed by Geoff Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-09-17 Philippe Normand <pnormand@igalia.com>
[JHBuild] Update to GStreamer 1.14.3
https://bugs.webkit.org/show_bug.cgi?id=189450
Reviewed by Xabier Rodriguez-Calvar.
* gstreamer/jhbuild.modules: Bump GStreamer modules from 1.14.1 to 1.14.3.
2018-09-17 Philippe Normand <pnormand@igalia.com>
[JHBuild] Doesn't check sha256 sums
https://bugs.webkit.org/show_bug.cgi?id=189646
Reviewed by Michael Catanzaro.
* gstreamer/jhbuild.modules: Properly set the sha256: prefix on hashes.
2018-09-17 Sihui Liu <sihui_liu@apple.com>
Move IndexedDB to Network Process
https://bugs.webkit.org/show_bug.cgi?id=189415
<rdar://problem/44396973>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
(TEST):
2018-09-08 Darin Adler <darin@apple.com>
Streamline JSRetainPtr, fix leaks of JSString and JSGlobalContext
https://bugs.webkit.org/show_bug.cgi?id=189455
Reviewed by Keith Miller.
There is a lot of copied and pasted code for WebKit vs. Legacy WebKit
testing and even for macOS vs. iOS vs. Windows platform-specific code.
For now, this patch just makes corresponding changes to the copied code.
Later we might get better results by merging more code instead of having
all these separate copies.
* DumpRenderTree/AccessibilityController.cpp:
(AccessibilityController::makeWindowObject): Use the adopt function
instead of the special Adopt constructor of JSRetainPtr.
* DumpRenderTree/AccessibilityTextMarker.cpp: Removed unneeded include.
* DumpRenderTree/AccessibilityUIElement.cpp: Ditto.
(allAttributesCallback): Don't adopt at this level; changed the
underlying function to return a JSRetainPtr so the adopt is right next
to the call to the create or copy function.
(attributesOfLinkedUIElementsCallback): Ditto.
(attributesOfDocumentLinksCallback): Ditto.
(attributesOfChildrenCallback): Ditto.
(parameterizedAttributeNamesCallback): Ditto.
(attributesOfColumnHeadersCallback): Ditto.
(attributesOfRowHeadersCallback): Ditto.
(attributesOfColumnsCallback): Ditto.
(attributesOfRowsCallback): Ditto.
(attributesOfVisibleCellsCallback): Ditto.
(attributesOfHeaderCallback): Ditto.
(rowIndexRangeCallback): Ditto.
(columnIndexRangeCallback): Ditto.
(rangeForLineCallback): Ditto.
(boundsForRangeCallback): Ditto.
(rangeForPositionCallback): Ditto.
(stringForRangeCallback): Ditto.
(attributedStringForRangeCallback): Ditto.
(uiElementCountForSearchPredicateCallback): Use the free adopt
function instead of the adopt member function.
(uiElementForSearchPredicateCallback): Ditto.
(selectTextWithCriteriaCallback): Don't adopt at this level.
(attributedStringForElementCallback): Ditto.
(setValueCallback): Use free adopt.
(stringAttributeValueCallback): Don't adopt at this level.
(uiElementArrayAttributeValueCallback): Ditto.
(uiElementAttributeValueCallback): Ditto.
(stringForTextMarkerRangeCallback): Ditto.
(attributedStringForTextMarkerRangeCallback): Ditto.
(attributedStringForTextMarkerRangeWithOptionsCallback): Ditto.
(getARIADropEffectsCallback): Ditto.
(getClassListCallback): Ditto.
(getRoleCallback): Ditto.
(getSubroleCallback): Ditto.
(getRoleDescriptionCallback): Ditto.
(getComputedRoleStringCallback): Ditto.
(getTitleCallback): Ditto.
(getDescriptionCallback): Ditto.
(getStringValueCallback): Ditto.
(getLanguageCallback): Ditto.
(getHelpTextCallback): Ditto.
(getOrientationCallback): Ditto.
(getPathDescriptionCallback): Ditto.
(getSelectedTextRangeCallback): Ditto.
(speakAsCallback): Ditto.
(getValueDescriptionCallback): Ditto.
(getAccessibilityValueCallback): Ditto.
(getDocumentEncodingCallback): Ditto.
(getDocumentURICallback): Ditto.
(getURLCallback): Ditto.
(characterAtOffsetCallback): Ditto.
(wordAtOffsetCallback): Ditto.
(lineAtOffsetCallback): Ditto.
(sentenceAtOffsetCallback): Ditto.
(stringForSelectionCallback): Ditto.
(getIdentifierCallback): Ditto.
(getTraitsCallback): Ditto.
(supportedActionsCallback): Ditto.
(mathPostscriptsDescriptionCallback): Ditto.
(mathPrescriptsDescriptionCallback): Ditto.
(AccessibilityUIElement::rangeForLine): Updated to return JSRetainPtr.
(AccessibilityUIElement::rangeForPosition): Ditto.
(AccessibilityUIElement::speakAs): Ditto.
(AccessibilityUIElement::pathDescription const): Ditto.
(AccessibilityUIElement::stringForTextMarkerRange): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
* DumpRenderTree/AccessibilityUIElement.h: Use JSRetainPtr instead of
raw pointers for the results of the functions that create strings.
The old way was difficult to get right; the functions didn't even follow
the create/copy naming rule.
* DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
(_platformTypeConstructor): Use the adopt function instead of the
JSRetainPtr adopt constructor. Also nullptr instead of 0.
* DumpRenderTree/GCController.cpp:
(GCController::makeWindowObject): Use adopt function instead of constructor.
* DumpRenderTree/TestRunner.cpp:
(pathToLocalResourceCallback): Use adopt function instead of constructor.
(addDisallowedURLCallback): Ditto.
(addURLToRedirectCallback): Ditto.
(clearApplicationCacheForOriginCallback): Ditto.
(applicationCacheDiskUsageForOriginCallback): Ditto.
(decodeHostNameCallback): Don't adopt at this level.
(encodeHostNameCallback): Ditto.
(execCommandCallback): Use adopt instead of JSRetainPtr::adopt.
(findStringCallback): Use adopt function instead of constructor.
(isCommandEnabledCallback): Ditto.
(overridePreferenceCallback): Ditto.
(queueLoadCallback): Ditto.
(queueLoadHTMLStringCallback): Ditto.
(queueLoadingScriptCallback): Ditto.
(queueNonLoadingScriptCallback): Ditto.
(setAuthenticationPasswordCallback): Ditto.
(setAuthenticationUsernameCallback): Ditto.
(setDomainRelaxationForbiddenForURLSchemeCallback): Ditto.
(setMockGeolocationPositionUnavailableErrorCallback): Ditto.
(setPOSIXLocaleCallback): Ditto.
(setPersistentUserStyleSheetLocationCallback): Ditto.
(setUserStyleSheetLocationCallback): Ditto.
(setValueForUserCallback): Ditto.
(setWillSendRequestClearHeaderCallback): Ditto.
(setPageVisibilityCallback): Ditto.
(evaluateInWebInspectorCallback): Ditto.
(evaluateScriptInIsolatedWorldCallback): Ditto.
(evaluateScriptInIsolatedWorldAndReturnValueCallback): Ditto.
(addOriginAccessWhitelistEntryCallback): Ditto.
(removeOriginAccessWhitelistEntryCallback): Ditto.
(setScrollbarPolicyCallback): Ditto.
(addUserScriptCallback): Ditto.
(addUserStyleSheetCallback): Ditto.
(apiTestNewWindowDataLoadBaseURLCallback): Ditto.
(authenticateSessionCallback): Ditto.
(getTitleTextDirectionCallback): Ditto.
(getInspectorTestStubURLCallback): Ditto.
(simulateLegacyWebNotificationClickCallback): Ditto.
(setTextDirectionCallback): Ditto.
(grantWebNotificationPermissionCallback): Ditto.
(denyWebNotificationPermissionCallback): Ditto.
(accummulateLogsForChannel): Ditto.
(runUIScriptCallback): Ditto.
(TestRunner::makeWindowObject): Ditto.
(TestRunner::uiScriptDidComplete): Ditto.
(TestRunner::setOpenPanelFiles): Ditto.
* DumpRenderTree/TestRunner.h: Use JSRetainPtr instead of
raw pointers for the results of the functions that create strings.
* DumpRenderTree/ios/AccessibilityControllerIOS.mm:
(AccessibilityController::platformName const): Use the adopt
function instead of the adopt constructor.
* DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
(createEmptyJSString): Added. This helper function makes reduces the
repetitive code to create empty strings.
(concatenateAttributeAndValue): Changed to return a JSRetainPtr.
(AccessibilityUIElement::identifier): Ditto.
(AccessibilityUIElement::traits): Ditto.
(AccessibilityUIElement::url): Ditto.
(AccessibilityUIElement::speakAs): Ditto.
(AccessibilityUIElement::stringForSelection): Ditto.
(AccessibilityUIElement::stringForRange): Ditto.
(AccessibilityUIElement::attributedStringForRange): Ditto.
(AccessibilityUIElement::attributedStringForElement): Ditto.
(AccessibilityUIElement::pathDescription const): Ditto.
(AccessibilityUIElement::stringForTextMarkerRange): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
(AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
(AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
(AccessibilityUIElement::attributesOfChildren): Ditto.
(AccessibilityUIElement::allAttributes): Ditto.
(AccessibilityUIElement::stringAttributeValue): Ditto.
(AccessibilityUIElement::parameterizedAttributeNames): Ditto.
(AccessibilityUIElement::role): Ditto.
(AccessibilityUIElement::subrole): Ditto.
(AccessibilityUIElement::roleDescription): Ditto.
(AccessibilityUIElement::computedRoleString): Ditto.
(AccessibilityUIElement::title): Ditto.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::orientation const): Ditto.
(AccessibilityUIElement::stringValue): Ditto.
(AccessibilityUIElement::language): Ditto.
(AccessibilityUIElement::helpText const): Ditto.
(AccessibilityUIElement::valueDescription): Ditto.
(AccessibilityUIElement::ariaDropEffects const): Ditto.
(AccessibilityUIElement::boundsForRange): Ditto.
(AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
(AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(AccessibilityUIElement::attributesOfColumns): Ditto.
(AccessibilityUIElement::attributesOfRows): Ditto.
(AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(AccessibilityUIElement::attributesOfHeader): Ditto.
(AccessibilityUIElement::rowIndexRange): Ditto.
(AccessibilityUIElement::columnIndexRange): Ditto.
(AccessibilityUIElement::selectedTextRange): Ditto.
(AccessibilityUIElement::accessibilityValue const): Ditto.
(AccessibilityUIElement::documentEncoding): Ditto.
(AccessibilityUIElement::documentURI): Ditto.
(AccessibilityUIElement::selectTextWithCriteria): Ditto.
(AccessibilityUIElement::classList const): Ditto.
* DumpRenderTree/mac/AccessibilityCommonMac.h: Changed the
createJSStringRef method to return a JSRetainPtr.
* DumpRenderTree/mac/AccessibilityCommonMac.mm:
(-[NSString createJSStringRef]): Ditto.
(searchPredicateParameterizedAttributeForSearchCriteria): Use the
adopt function instead of the adopt constructor.
* DumpRenderTree/mac/AccessibilityControllerMac.mm:
(AccessibilityController::platformName const): Ditto.
* DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
(-[NSString createJSStringRef]): Return a JSRetainPtr.
(makeValueRefForValue): Updated for the above, no adopt needed here now.
(makeObjectRefForDictionary): Ditto.
(-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
(createEmptyJSString): Added. This helper function makes reduces the
repetitive code to create empty strings.
(concatenateAttributeAndValue): Changed to return a JSRetainPtr.
(descriptionOfElements): Ditto.
(selectTextParameterizedAttributeForCriteria): Ditto.
(AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
(AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
(AccessibilityUIElement::attributesOfChildren): Ditto.
(AccessibilityUIElement::allAttributes): Ditto.
(AccessibilityUIElement::stringAttributeValue): Ditto.
(AccessibilityUIElement::parameterizedAttributeNames): Ditto.
(AccessibilityUIElement::role): Ditto.
(AccessibilityUIElement::subrole): Ditto.
(AccessibilityUIElement::roleDescription): Ditto.
(AccessibilityUIElement::computedRoleString): Ditto.
(AccessibilityUIElement::title): Ditto.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::orientation const): Ditto.
(AccessibilityUIElement::stringValue): Ditto.
(AccessibilityUIElement::language): Ditto.
(AccessibilityUIElement::helpText const): Ditto.
(AccessibilityUIElement::valueDescription): Ditto.
(AccessibilityUIElement::speakAs): Ditto.
(AccessibilityUIElement::classList const): Ditto.
(AccessibilityUIElement::ariaDropEffects const): Ditto.
(AccessibilityUIElement::rangeForLine): Ditto.
(AccessibilityUIElement::rangeForPosition): Ditto.
(AccessibilityUIElement::boundsForRange): Ditto.
(AccessibilityUIElement::stringForRange): Ditto.
(AccessibilityUIElement::attributedStringForRange): Ditto.
(AccessibilityUIElement::selectTextWithCriteria): Ditto.
(AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
(AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(AccessibilityUIElement::attributesOfColumns): Ditto.
(AccessibilityUIElement::attributesOfRows): Ditto.
(AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(AccessibilityUIElement::attributesOfHeader): Ditto.
(AccessibilityUIElement::rowIndexRange): Ditto.
(AccessibilityUIElement::columnIndexRange): Ditto.
(AccessibilityUIElement::pathDescription const): Ditto.
(AccessibilityUIElement::selectedTextRange): Ditto.
(AccessibilityUIElement::accessibilityValue const): Ditto.
(AccessibilityUIElement::documentEncoding): Ditto.
(AccessibilityUIElement::documentURI): Ditto.
(AccessibilityUIElement::url): Ditto.
(AccessibilityUIElement::stringForTextMarkerRange): Ditto.
(createJSStringRef): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
(AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
(AccessibilityUIElement::supportedActions): Ditto.
(AccessibilityUIElement::mathPostscriptsDescription const): Ditto.
(AccessibilityUIElement::mathPrescriptsDescription const): Ditto.
* DumpRenderTree/mac/FrameLoadDelegate.mm:
(-[FrameLoadDelegate didClearWindowObjectForFrame:inIsolatedWorld:]):
Use the adopt function instead of the adopt constructor.
* DumpRenderTree/mac/TestRunnerMac.mm:
(originsArrayToJS): Ditto.
(TestRunner::copyDecodedHostName): Return a JSRetainPtr.
(TestRunner::copyEncodedHostName): Ditto.
(TestRunner::pathToLocalResource): Ditto.
(TestRunner::queueLoad): Use adopt function instead of constructor.
(TestRunner::findString): Ditto.
(TestRunner::inspectorTestStubURL): Return a JSRetainPtr.
* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::winNotificationReceived): Use adopt function
instead of adopt constructor.
(AccessibilityController::platformName const): Ditto.
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(createEmptyJSString): Added. This helper function makes reduces the
repetitive code to create empty strings.
(AccessibilityUIElement::allAttributes): Changed to return a JSRetainPtr.
(AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
(AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
(AccessibilityUIElement::attributesOfChildren): Ditto.
(AccessibilityUIElement::parameterizedAttributeNames): Ditto.
(AccessibilityUIElement::role): Ditto.
(AccessibilityUIElement::subrole): Ditto.
(AccessibilityUIElement::roleDescription): Ditto.
(AccessibilityUIElement::computedRoleString): Ditto.
(AccessibilityUIElement::title): Ditto.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::stringValue): Ditto.
(AccessibilityUIElement::language): Ditto.
(AccessibilityUIElement::helpText const): Ditto.
(AccessibilityUIElement::valueDescription): Ditto.
(AccessibilityUIElement::ariaDropEffects const): Ditto.
(AccessibilityUIElement::orientation const): Ditto.
(AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
(AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(AccessibilityUIElement::attributesOfColumns): Ditto.
(AccessibilityUIElement::attributesOfRows): Ditto.
(AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(AccessibilityUIElement::attributesOfHeader): Ditto.
(AccessibilityUIElement::rowIndexRange): Ditto.
(AccessibilityUIElement::columnIndexRange): Ditto.
(AccessibilityUIElement::boundsForRange): Ditto.
(AccessibilityUIElement::stringForRange): Ditto.
(AccessibilityUIElement::attributedStringForRange): Ditto.
(AccessibilityUIElement::selectTextWithCriteria): Ditto.
(AccessibilityUIElement::selectedTextRange): Ditto.
(AccessibilityUIElement::stringAttributeValue): Ditto.
(AccessibilityUIElement::accessibilityValue const): Ditto.
(AccessibilityUIElement::documentEncoding): Ditto.
(AccessibilityUIElement::documentURI): Ditto.
(AccessibilityUIElement::url): Ditto.
(AccessibilityUIElement::classList const): Ditto.
* DumpRenderTree/win/TestRunnerWin.cpp:
(TestRunner::copyDecodedHostName): Changed to return a JSRetainPtr.
(TestRunner::copyEncodedHostName): Ditto.
(TestRunner::pathToLocalResource): Ditto.
(TestRunner::queueLoad): Ditto.
(TestRunner::findString): Ditto.
(TestRunner::inspectorTestStubURL): Ditto.
* TestRunnerShared/Bindings/JSWrapper.h:
(WTR::setProperty): Use adopt function instead of constructor.
* TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
(UIScriptContext::UIScriptContext): Ditto.
(UIScriptContext::runUIScript): Ditto.
* TestRunnerShared/UIScriptContext/UIScriptController.cpp:
(WTR::toDeviceOrientation): Ditto.
* TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
(nsTextCheckingType): Changed this function to not take an rvalue
reference to a JSRetainPtr since it doesn't take ownership.
(-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Updated
for the above change.
* TestWebKitAPI/JavaScriptTest.cpp:
(TestWebKitAPI::javaScriptCallback): Use adopt function instead of
adopt member function.
* TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp: Removed unneeded include.
* TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm: Ditto.
* TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Use adopt function instead of
adopt constructor.
* TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm: Ditto.
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
Removed unneeded includes.
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Ditto.
* WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Ditto.
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Ditto.
* WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
(_platformTypeConstructor): Use the adopt function instead of the
JSRetainPtr adopt constructor. Also nullptr instead of 0.
* WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
(WTR::arrayLength): Use adopt function instead of constructor.
(WTR::parseModifierArray): Ditto.
* WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
(WTR::propertyValue): Ditto.
(WTR::dumpPath): Ditto.
(WTR::toJS): Ditto.
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::findString): Ditto.
(WTR::TestRunner::statisticsDidRunTelemetryCallback): Ditto.
(WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback): Ditto.
(WTR::TestRunner::setOpenPanelFiles): Ditto.
* WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
(WTR::AccessibilityController::platformName): Ditto.
* WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
(-[NSString createJSStringRef]): Return a JSRetainPtr.
This fixes storage leaks in many functions below, which were using
the create function and putting the value right into a JSRetainPtr
without adoption.
(WTR::createEmptyJSString): Added. This helper function reduces the
repetitive code to create empty strings.
(WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
(WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
Use createEmptyJSString, fixing a storage leak due to missing adoption.
(WTR::AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
(WTR::AccessibilityUIElement::attributesOfChildren): Ditto.
(WTR::AccessibilityUIElement::allAttributes): Ditto.
(WTR::AccessibilityUIElement::stringAttributeValue): Ditto.
(WTR::AccessibilityUIElement::parameterizedAttributeNames): Ditto.
(WTR::AccessibilityUIElement::role): Ditto.
(WTR::AccessibilityUIElement::subrole): Ditto.
(WTR::AccessibilityUIElement::roleDescription): Ditto.
(WTR::AccessibilityUIElement::computedRoleString): Ditto.
(WTR::AccessibilityUIElement::title): Ditto.
(WTR::AccessibilityUIElement::orientation const): Ditto.
(WTR::AccessibilityUIElement::language): Ditto.
(WTR::AccessibilityUIElement::valueDescription): Ditto.
(WTR::AccessibilityUIElement::ariaDropEffects const): Ditto.
(WTR::AccessibilityUIElement::boundsForRange): Ditto.
(WTR::AccessibilityUIElement::stringForRange): Removed unneeded null check.
(WTR::AccessibilityUIElement::attributedStringForRange): Ditto.
(WTR::AccessibilityUIElement::attributesOfColumnHeaders):
Use createEmptyJSString, fixing a storage leak due to missing adoption.
(WTR::AccessibilityUIElement::attributesOfRowHeaders): Ditto.
(WTR::AccessibilityUIElement::attributesOfColumns): Ditto.
(WTR::AccessibilityUIElement::attributesOfRows): Ditto.
(WTR::AccessibilityUIElement::attributesOfVisibleCells): Ditto.
(WTR::AccessibilityUIElement::attributesOfHeader): Ditto.
(WTR::AccessibilityUIElement::selectedTextRange): Ditto.
(WTR::AccessibilityUIElement::accessibilityValue const): Ditto.
(WTR::AccessibilityUIElement::documentEncoding): Ditto.
(WTR::AccessibilityUIElement::documentURI): Ditto.
(WTR::AccessibilityUIElement::stringForSelection): Removed unneeded
null check.
(WTR::AccessibilityUIElement::stringForTextMarkerRange):
Use createEmptyJSString, fixing a storage leak due to missing adoption.
* WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h:
Use JSRetainPtr for the return value of createJSStringRef.
* WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
(-[NSString createJSStringRef]): Ditto.
(WTR::searchPredicateParameterizedAttributeForSearchCriteria): Use the
adopt function instead of the adopt constructor.
* WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::AccessibilityController::platformName): Ditto
* WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
(-[NSString createJSStringRef]): Return a JSRetainPtr.
(makeValueRefForValue): Updated for above by removing adopt.
(makeObjectRefForDictionary): Ditto.
(-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
(WTR::createEmptyJSString): Added. This helper function makes reduces the
repetitive code to create empty strings.
(WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
(WTR::descriptionOfElements): Ditto.
(WTR::selectTextParameterizedAttributeForCriteria): Ditto.
(WTR::AccessibilityUIElement::accessibilityValue const): Use createEmptyJSString,
fixing a storage leak due to missing adoption.
(WTR::AccessibilityUIElement::documentEncoding): Ditto.
(WTR::AccessibilityUIElement::documentURI): Ditto.
(WTR::createJSStringRef): Return a JSRetainPtr.
* WebKitTestRunner/StringFunctions.h:
(WTR::toWK): Take a const& to eliminate a little bit of reference count churn.
(WTR::toJS): Use the adopt function instead of the constructor.
2018-09-14 Dean Jackson <dino@grorg.org>
Add Justin Michaud.
* Scripts/webkitpy/common/config/contributors.json:
2018-09-14 Ryan Haddad <ryanhaddad@apple.com>
bots should pass --clobber-old-results to run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=189623
Reviewed by Aakash Jain.
In order to ensure that bots to not produce confusing results due to transient execptions,
or run out of space if they continually hit an exception, old layout test results should be clobbered.
* BuildSlaveSupport/build.webkit.org-config/steps.py:
(RunWebKitTests):
2018-09-13 Ryan Haddad <ryanhaddad@apple.com>
Unreviewed, rolling out r235954.
Breaks the watchOS build.
Reverted changeset:
"Move IndexedDB to Network Process"
https://bugs.webkit.org/show_bug.cgi?id=189415
https://trac.webkit.org/changeset/235954
2018-09-13 Daniel Bates <dabates@apple.com>
Add Copy WebKit Permalink plugin for Sublime Text
https://bugs.webkit.org/show_bug.cgi?id=189589
Rubber-stamped by Joseph Pecoraro.
Port the Copy WebKit Permalink Automator service to a Sublime Text plugin. Once installed you can
use the plugin to copy to the Clipboard a trac.webkit.org hyperlink to the selected line in the
active document with or without blame annotations.
Once installed, you can Control-click (on Mac) or right-click (on Windows and Linux) on a line and
choose Copy WebKit Permalink or Copy WebKit Permalink to Blame from the context menu to copy to the
Clipboard a permanent hyperlink to the selected line without or with blame annotations, respectively.
On Mac you can also invoke the same functionality using the keyboard shortcuts Command + Shift + Control + C
and Command + Shift + Control + Option + C, respectively.
* CopyPermalink/Sublime Text/CopyWebKitPermalink/Context.sublime-menu: Added.
* CopyPermalink/Sublime Text/CopyWebKitPermalink/CopyWebKitPermalink.py: Added.
* CopyPermalink/Sublime Text/CopyWebKitPermalink/Default (OSX).sublime-keymap: Added.
* CopyPermalink/Sublime Text/INSTALL: Added.
* CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/Info.plist: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/Info.plist.
* CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/document.wflow: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow.
* CopyPermalink/Xcode/INSTALL: Renamed from Tools/CopyPermalink/README.
2018-09-13 Carlos Garcia Campos <cgarcia@igalia.com>
Unreviewed. Fix WebDriver tests after r235225.
Use wpt serve command to run the http server.
* Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
(WebDriverW3CWebServer.__init__):
(WebDriverW3CWebServer.start):
(WebDriverW3CWebServer.stop):
2018-09-13 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Allow to run script dialogs asynchronously in the UI process
https://bugs.webkit.org/show_bug.cgi?id=189544
Reviewed by Michael Catanzaro.
Add test cases for the new API.
* TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
(testWebViewJavaScriptDialogs):
2018-09-12 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=189496
<rdar://problem/44370981>
Unreviewed warning fix.
r235929 has introduced a new compilation warning:
> Tools/ImageDiff/cairo/PlatformImageCairo.cpp:34:70: warning: unused parameter ‘imageSize’ [-Wunused-parameter]
* ImageDiff/cairo/PlatformImageCairo.cpp:
(ImageDiff::PlatformImage::createFromStdin): Removed the variable name.
2018-09-12 Dan Bernstein <mitz@apple.com>
[Cocoa] Complete support for Paste as Quotation
https://bugs.webkit.org/show_bug.cgi?id=189504
Reviewed by Wenson Hsieh.
* MiniBrowser/mac/MainMenu.xib: Added a Paste as Quotation command in the Edit menu.
2018-09-12 Sihui Liu <sihui_liu@apple.com>
Move IndexedDB to Network Process
https://bugs.webkit.org/show_bug.cgi?id=189415
Reviewed by Geoffrey Garen.
* TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
(TEST):
2018-09-12 Chris Dumez <cdumez@apple.com>
PSON: No process swap on back navigation after URL bar navigation
https://bugs.webkit.org/show_bug.cgi?id=189557
<rdar://problem/44353108>
Reviewed by Alex Christensen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2018-09-11 Dean Jackson <dino@apple.com>
Header parsing for experimental and internal debug features
https://bugs.webkit.org/show_bug.cgi?id=189486
<rdar://problem/44320618>
Reviewed by Tim Horton.
Keep track of experimental and internal debug features in TestOptions, and
allow webkit-test-runner headers to toggle them by name.
* DumpRenderTree/TestOptions.cpp:
(TestOptions::TestOptions):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
(WTR::TestOptions::hasSameInitializationOptions const):
2018-09-12 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang][DumpRenderTree] 0 and nullptr can't be implicitly converted to AccessibilityUIElement
https://bugs.webkit.org/show_bug.cgi?id=189492
Reviewed by Alex Christensen.
0 and nullptr can't be implicitly converted to
AccessibilityUIElement because only Windows port typedefs
PlatformUIElement as COMPtr<IAccessible> not a pointer.
Replaced "return 0" and "return nullptr" with "return { nullptr }".
* DumpRenderTree/AccessibilityUIElement.cpp:
(AccessibilityUIElement::horizontalScrollbar const):
(AccessibilityUIElement::verticalScrollbar const):
(AccessibilityUIElement::uiElementAttributeValue const):
(AccessibilityUIElement::accessibilityElementForTextMarker):
* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::elementAtPoint):
(AccessibilityController::accessibleElementById):
(AccessibilityController::focusedElement):
(AccessibilityController::rootElement):
* DumpRenderTree/win/AccessibilityUIElementWin.cpp:
(AccessibilityUIElement::elementAtPoint):
(AccessibilityUIElement::linkedUIElementAtIndex):
(AccessibilityUIElement::getChildAtIndex):
(AccessibilityUIElement::titleUIElement):
(AccessibilityUIElement::parentElement):
(AccessibilityUIElement::uiElementForSearchPredicate):
(AccessibilityUIElement::cellForColumnAndRow):
(AccessibilityUIElement::disclosedRowAtIndex):
(AccessibilityUIElement::ariaOwnsElementAtIndex):
(AccessibilityUIElement::ariaFlowToElementAtIndex):
(AccessibilityUIElement::ariaControlsElementAtIndex):
(AccessibilityUIElement::selectedRowAtIndex):
(AccessibilityUIElement::rowAtIndex):
(AccessibilityUIElement::disclosedByRow):
(AccessibilityUIElement::selectedChildAtIndex const):
2018-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
FontManagerTests.ChangeFontColorWithColorPanel fails on macOS Sierra
https://bugs.webkit.org/show_bug.cgi?id=189382
Reviewed by Ryosuke Niwa.
Fix the test by specifying colors in RGB colorspace.
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(TestWebKitAPI::TEST):
2018-09-11 Fujii Hironori <Hironori.Fujii@sony.com>
[Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=189496
Reviewed by Alex Christensen.
* ImageDiff/cairo/PlatformImageCairo.cpp:
(ImageDiff::PlatformImage::createFromStdin): Removed unnecessary ReadContext struct.
(ImageDiff::PlatformImage::writeAsPNGToStdout): Use '%lu' format type specifier for unsigned long.
2018-09-07 Dean Jackson <dino@apple.com>
Add and expose Internal features from WebKit
https://bugs.webkit.org/show_bug.cgi?id=189442
<rdar://problem/44243404>
Reviewed by Simon Fraser.
Update MiniBrowser to expose an Internal feature menu.
* MiniBrowser/mac/AppDelegate.m:
(defaultConfiguration):
* MiniBrowser/mac/SettingsController.m:
(-[SettingsController _populateMenu]):
(-[SettingsController validateMenuItem:]):
(-[SettingsController toggleExperimentalFeature:]):
(-[SettingsController toggleInternalDebugFeature:]):
2018-09-11 Wenson Hsieh <wenson_hsieh@apple.com>
[macOS] [WK2] Support changing foreground colors via color panel
https://bugs.webkit.org/show_bug.cgi?id=189382
<rdar://problem/44227311>
Reviewed by Ryosuke Niwa.
Add an API test that uses NSColorPanel to change the color of selected text, and also apply typing styles when
the selection is collapsed. The test also exercises switching between opaque colors (alpha = 1) and transparent
colors, as well as making different parts of a word different colors.
* TestWebKitAPI/Tests/mac/FontManagerTests.mm:
(-[TestWKWebView collapseToEnd]):
(webViewForFontManagerTesting):
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/TestWKWebView.h:
== Rolled over to ChangeLog-2018-09-11 ==