diff --git a/browser_patches/webkit/BUILD_NUMBER b/browser_patches/webkit/BUILD_NUMBER index 0696e60354..ae35385d27 100644 --- a/browser_patches/webkit/BUILD_NUMBER +++ b/browser_patches/webkit/BUILD_NUMBER @@ -1,2 +1,2 @@ -1695 -Changed: yurys@chromium.org Mon Aug 1 11:25:26 PDT 2022 +1696 +Changed: dpino@igalia.com Tue Aug 2 10:40:41 PM HKT 2022 diff --git a/browser_patches/webkit/patches/bootstrap.diff b/browser_patches/webkit/patches/bootstrap.diff index 074680af55..6caeafd622 100644 --- a/browser_patches/webkit/patches/bootstrap.diff +++ b/browser_patches/webkit/patches/bootstrap.diff @@ -2303,7 +2303,7 @@ diff --git a/Source/WebCore/Modules/speech/cocoa/WebSpeechRecognizerTask.mm b/So index a941d76a4f748718df1e3cff2a6c5e0827f48891..f62db5a27ac0e4c12430e7d19e60c83d768ace22 100644 --- a/Source/WebCore/Modules/speech/cocoa/WebSpeechRecognizerTask.mm +++ b/Source/WebCore/Modules/speech/cocoa/WebSpeechRecognizerTask.mm -@@ -198,6 +198,7 @@ NS_ASSUME_NONNULL_BEGIN +@@ -198,6 +198,7 @@ - (void)sendEndIfNeeded - (void)speechRecognizer:(SFSpeechRecognizer *)speechRecognizer availabilityDidChange:(BOOL)available { @@ -2311,7 +2311,7 @@ index a941d76a4f748718df1e3cff2a6c5e0827f48891..f62db5a27ac0e4c12430e7d19e60c83d ASSERT(isMainThread()); if (available || !_task) -@@ -211,6 +212,7 @@ NS_ASSUME_NONNULL_BEGIN +@@ -211,6 +212,7 @@ - (void)speechRecognizer:(SFSpeechRecognizer *)speechRecognizer availabilityDidC - (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didHypothesizeTranscription:(SFTranscription *)transcription { @@ -2319,7 +2319,7 @@ index a941d76a4f748718df1e3cff2a6c5e0827f48891..f62db5a27ac0e4c12430e7d19e60c83d ASSERT(isMainThread()); [self sendSpeechStartIfNeeded]; -@@ -219,6 +221,7 @@ NS_ASSUME_NONNULL_BEGIN +@@ -219,6 +221,7 @@ - (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didHypothesizeTran - (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didFinishRecognition:(SFSpeechRecognitionResult *)recognitionResult { @@ -2327,7 +2327,7 @@ index a941d76a4f748718df1e3cff2a6c5e0827f48891..f62db5a27ac0e4c12430e7d19e60c83d ASSERT(isMainThread()); [self callbackWithTranscriptions:recognitionResult.transcriptions isFinal:YES]; -@@ -230,6 +233,7 @@ NS_ASSUME_NONNULL_BEGIN +@@ -230,6 +233,7 @@ - (void)speechRecognitionTask:(SFSpeechRecognitionTask *)task didFinishRecogniti - (void)speechRecognitionTaskWasCancelled:(SFSpeechRecognitionTask *)task { @@ -2362,20 +2362,10 @@ index f7180ed1d61cfa31b6d2efecd5b6f8a012fef8c2..bc9e0fa2695c53e2efa17f82a820b5d2 +JSTouchList.cpp +// Playwright end diff --git a/Source/WebCore/SourcesGTK.txt b/Source/WebCore/SourcesGTK.txt -index a2504495796d1d625afd0092ffd21739be30470f..275cf56761472c1b8ddd60b3b49c5fe62db6ca79 100644 +index a2504495796d1d625afd0092ffd21739be30470f..64be77d2ed6ef550e1f7d6779516187b471d1026 100644 --- a/Source/WebCore/SourcesGTK.txt +++ b/Source/WebCore/SourcesGTK.txt -@@ -38,6 +38,9 @@ accessibility/atspi/AccessibilityObjectValueAtspi.cpp - accessibility/atspi/AccessibilityRootAtspi.cpp - accessibility/atspi/AXObjectCacheAtspi.cpp - -+accessibility/empty/AXObjectCacheEmpty.cpp -+accessibility/empty/AccessibilityObjectEmpty.cpp -+ - editing/atspi/FrameSelectionAtspi.cpp - - editing/gtk/EditorGtk.cpp -@@ -138,3 +141,10 @@ platform/xdg/MIMETypeRegistryXdg.cpp +@@ -138,3 +138,10 @@ platform/xdg/MIMETypeRegistryXdg.cpp rendering/RenderThemeAdwaita.cpp rendering/RenderThemeGtk.cpp @@ -2387,18 +2377,10 @@ index a2504495796d1d625afd0092ffd21739be30470f..275cf56761472c1b8ddd60b3b49c5fe6 +JSSpeechSynthesisEventInit.cpp +// Playwright: end. diff --git a/Source/WebCore/SourcesWPE.txt b/Source/WebCore/SourcesWPE.txt -index 3351067102d0e96e185ec0e6ac01bf7273346de3..f0642fcebbce63a54f66a1847fc254601dc280ef 100644 +index 3351067102d0e96e185ec0e6ac01bf7273346de3..4ba7934bb5ec781525bb732dbe0736ee67d415be 100644 --- a/Source/WebCore/SourcesWPE.txt +++ b/Source/WebCore/SourcesWPE.txt -@@ -38,11 +38,16 @@ accessibility/atspi/AccessibilityObjectValueAtspi.cpp - accessibility/atspi/AccessibilityRootAtspi.cpp - accessibility/atspi/AXObjectCacheAtspi.cpp - -+accessibility/empty/AXObjectCacheEmpty.cpp -+accessibility/empty/AccessibilityObjectEmpty.cpp -+ - editing/atspi/FrameSelectionAtspi.cpp - editing/libwpe/EditorLibWPE.cpp +@@ -43,6 +43,8 @@ editing/libwpe/EditorLibWPE.cpp loader/soup/ResourceLoaderSoup.cpp @@ -2407,7 +2389,7 @@ index 3351067102d0e96e185ec0e6ac01bf7273346de3..f0642fcebbce63a54f66a1847fc25460 page/linux/ResourceUsageOverlayLinux.cpp page/linux/ResourceUsageThreadLinux.cpp -@@ -93,8 +98,19 @@ platform/text/LocaleICU.cpp +@@ -93,8 +95,19 @@ platform/text/LocaleICU.cpp platform/unix/LoggingUnix.cpp @@ -2587,103 +2569,6 @@ index ac383692edc6a32a3a40d58fa4f3953372e14a0c..398c271d1016fae5126f3e1c526eacb1 #endif virtual void detachPlatformWrapper(AccessibilityDetachmentType) = 0; }; -diff --git a/Source/WebCore/accessibility/empty/AXObjectCacheEmpty.cpp b/Source/WebCore/accessibility/empty/AXObjectCacheEmpty.cpp -new file mode 100644 -index 0000000000000000000000000000000000000000..0233d1046f7074c11e9a3bab50f8fe8c5af7d95a ---- /dev/null -+++ b/Source/WebCore/accessibility/empty/AXObjectCacheEmpty.cpp -@@ -0,0 +1,45 @@ -+/* -+ * Copyright (C) 2022 Microsoft Corporation. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "config.h" -+ -+#if ENABLE(ACCESSIBILITY) && !USE(ATK) && !USE(ATSPI) -+ -+#include "AXObjectCache.h" -+ -+namespace WebCore { -+ -+void AXObjectCache::detachWrapper(AXCoreObject* obj, AccessibilityDetachmentType) { } -+void AXObjectCache::attachWrapper(AXCoreObject*) { } -+void AXObjectCache::handleScrolledToAnchor(const Node* anchorNode) { } -+void AXObjectCache::postPlatformNotification(AXCoreObject* obj, AXNotification notification) { } -+void AXObjectCache::nodeTextChangePlatformNotification(AccessibilityObject*, AXTextChange, unsigned, const String&){ } -+void AXObjectCache::frameLoadingEventPlatformNotification(AccessibilityObject* obj, AXLoadingEvent notification) { } -+void AXObjectCache::platformHandleFocusedUIElementChanged(Node*, Node* newFocusedNode) { } -+void AXObjectCache::platformPerformDeferredCacheUpdate() { } -+ -+} // namespace WebCore -+ -+#endif // ENABLE(ACCESSIBILITY) -diff --git a/Source/WebCore/accessibility/empty/AccessibilityObjectEmpty.cpp b/Source/WebCore/accessibility/empty/AccessibilityObjectEmpty.cpp -new file mode 100644 -index 0000000000000000000000000000000000000000..dd2d8452302999e4a89b0bc18e842645c939247d ---- /dev/null -+++ b/Source/WebCore/accessibility/empty/AccessibilityObjectEmpty.cpp -@@ -0,0 +1,40 @@ -+/* -+ * Copyright (C) 2022 Microsoft Corporation. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "config.h" -+ -+#if ENABLE(ACCESSIBILITY) && !USE(ATK) && !USE(ATSPI) -+ -+#include "AccessibilityObject.h" -+ -+namespace WebCore { -+ -+bool AccessibilityObject::accessibilityIgnoreAttachment() const { return true; } -+AccessibilityObjectInclusion AccessibilityObject::accessibilityPlatformIncludesObject() const { return AccessibilityObjectInclusion::DefaultBehavior; } -+void AccessibilityObject::detachPlatformWrapper(AccessibilityDetachmentType) { } -+ -+} // namespace WebCore -+ -+#endif // ENABLE(ACCESSIBILITY) && !USE(ATK) && !USE(ATSPI) diff --git a/Source/WebCore/bindings/js/WebCoreBuiltinNames.h b/Source/WebCore/bindings/js/WebCoreBuiltinNames.h index 9dd8961100cc0f5bd89fcc4f96e742b065d9657b..39ab8b145c45b526536825407cf66676c99e3586 100644 --- a/Source/WebCore/bindings/js/WebCoreBuiltinNames.h @@ -9195,7 +9080,7 @@ diff --git a/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm b/Source/ index d8eeb6c27a92134728ffada573a1f140e303c727..9ddddb0796cc00d7eea060b11919711446a39586 100644 --- a/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm +++ b/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm -@@ -720,7 +720,7 @@ void NetworkSessionCocoa::setClientAuditToken(const WebCore::AuthenticationChall +@@ -720,7 +720,7 @@ - (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didRece if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) { sessionCocoa->setClientAuditToken(challenge); @@ -10612,7 +10497,7 @@ index 42efb8882044e4a3272d6cdccff47c33ee6fcfb7..ac503cd703c81f89fc04bcb2954b2d17 #import #import #import -@@ -234,6 +235,11 @@ static WallTime toSystemClockTime(NSDate *date) +@@ -234,6 +235,11 @@ - (void)removeDataOfTypes:(NSSet *)dataTypes modifiedSince:(NSDate *)date comple }); } @@ -10791,7 +10676,7 @@ diff --git a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm b/ index 2e235bb880c638a0e74256b6d66cb0244ea0a3f1..3471eebb47e860f7c2071d0e7f2691c9f0a6355d 100644 --- a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm +++ b/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm -@@ -257,6 +257,16 @@ +@@ -257,6 +257,16 @@ - (BOOL)processSwapsOnNavigation return _processPoolConfiguration->processSwapsOnNavigation(); } @@ -21141,7 +21026,7 @@ diff --git a/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm b/Source/WebKitLegac index 81093dca5a3f4cf8fa7a71551b9d7b11d7513d9e..0e62bc13f72397239c80bfbc3a272286d1fcb39f 100644 --- a/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm +++ b/Source/WebKitLegacy/mac/WebView/WebHTMLView.mm -@@ -4205,7 +4205,7 @@ static BOOL currentScrollIsBlit(NSView *clipView) +@@ -4205,7 +4205,7 @@ - (void)mouseDown:(WebEvent *)event _private->handlingMouseDownEvent = NO; } @@ -21154,7 +21039,7 @@ diff --git a/Source/WebKitLegacy/mac/WebView/WebView.mm b/Source/WebKitLegacy/ma index f57ff1862f7bc2d2e88710c7b43d62b78b1765a0..fdcf7866546515473fe579333184d9400d1f6bb6 100644 --- a/Source/WebKitLegacy/mac/WebView/WebView.mm +++ b/Source/WebKitLegacy/mac/WebView/WebView.mm -@@ -4038,7 +4038,7 @@ IGNORE_WARNINGS_END +@@ -4038,7 +4038,7 @@ + (void)_doNotStartObservingNetworkReachability } #endif // PLATFORM(IOS_FAMILY) @@ -21163,7 +21048,7 @@ index f57ff1862f7bc2d2e88710c7b43d62b78b1765a0..fdcf7866546515473fe579333184d940 - (NSArray *)_touchEventRegions { -@@ -4080,7 +4080,7 @@ IGNORE_WARNINGS_END +@@ -4080,7 +4080,7 @@ - (NSArray *)_touchEventRegions }).autorelease(); } @@ -21204,7 +21089,7 @@ index 0000000000000000000000000000000000000000..dd6a53e2d57318489b7e49dd7373706d + LIBVPX_LIBRARIES +) diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake -index b23e53adb4b366a83240951bb8c64894f4a61048..04258cfbd13cc6ada8b152b4716e11b2a53a436e 100644 +index b23e53adb4b366a83240951bb8c64894f4a61048..1e3c295c9478f62e57d60041e6abd87b01869f83 100644 --- a/Source/cmake/OptionsGTK.cmake +++ b/Source/cmake/OptionsGTK.cmake @@ -11,8 +11,13 @@ if (${CMAKE_VERSION} VERSION_LESS "3.20" AND NOT ${CMAKE_GENERATOR} STREQUAL "Ni @@ -21302,18 +21187,16 @@ index b23e53adb4b366a83240951bb8c64894f4a61048..04258cfbd13cc6ada8b152b4716e11b2 include(GStreamerDependencies) # Finalize the value for all options. Do not attempt to use an option before -@@ -276,7 +294,8 @@ if (NOT EXISTS "${TOOLS_DIR}/glib/apply-build-revision-to-files.py") - set(BUILD_REVISION "tarball") +@@ -277,6 +295,7 @@ if (NOT EXISTS "${TOOLS_DIR}/glib/apply-build-revision-to-files.py") endif () --SET_AND_EXPOSE_TO_BUILD(USE_ATSPI ${ENABLE_ACCESSIBILITY}) -+SET_AND_EXPOSE_TO_BUILD(USE_ATSPI FALSE) + SET_AND_EXPOSE_TO_BUILD(USE_ATSPI ${ENABLE_ACCESSIBILITY}) + SET_AND_EXPOSE_TO_BUILD(HAVE_GTK_UNIX_PRINTING ${GTK_UNIX_PRINT_FOUND}) SET_AND_EXPOSE_TO_BUILD(HAVE_OS_DARK_MODE_SUPPORT 1) diff --git a/Source/cmake/OptionsWPE.cmake b/Source/cmake/OptionsWPE.cmake -index 2cdf38d15dccb56c08b3fa2f9c819a7a0190c6c3..4a5bf880adcb1f48001916c7f2f08c6ac48fcd7a 100644 +index 2cdf38d15dccb56c08b3fa2f9c819a7a0190c6c3..ac427365642f9b2b8438240d7918af0ff6e0cc5c 100644 --- a/Source/cmake/OptionsWPE.cmake +++ b/Source/cmake/OptionsWPE.cmake @@ -9,8 +9,13 @@ if (${CMAKE_VERSION} VERSION_LESS "3.20" AND NOT ${CMAKE_GENERATOR} STREQUAL "Ni @@ -21400,15 +21283,6 @@ index 2cdf38d15dccb56c08b3fa2f9c819a7a0190c6c3..4a5bf880adcb1f48001916c7f2f08c6a WEBKIT_OPTION_DEFINE(USE_WOFF2 "Whether to enable support for WOFF2 Web Fonts." PUBLIC ON) # Private options specific to the WPE port. -@@ -298,7 +321,7 @@ if (NOT EXISTS "${TOOLS_DIR}/glib/apply-build-revision-to-files.py") - endif () - - SET_AND_EXPOSE_TO_BUILD(HAVE_ACCESSIBILITY ${ENABLE_ACCESSIBILITY}) --SET_AND_EXPOSE_TO_BUILD(USE_ATSPI ${ENABLE_ACCESSIBILITY}) -+SET_AND_EXPOSE_TO_BUILD(USE_ATSPI FALSE) - SET_AND_EXPOSE_TO_BUILD(USE_CAIRO TRUE) - SET_AND_EXPOSE_TO_BUILD(USE_EGL TRUE) - SET_AND_EXPOSE_TO_BUILD(USE_GCRYPT TRUE) diff --git a/Source/cmake/OptionsWin.cmake b/Source/cmake/OptionsWin.cmake index 3b6d4a7eaa531c9e26e8ebd907a4b846d04bece9..72d3a1e7fd2a2c5427139869644b95956f936260 100644 --- a/Source/cmake/OptionsWin.cmake @@ -22068,1194 +21942,6 @@ index ed6c15ce06c25ef12b165552bd665c5108d209dc..267612eb7239cfa91f0c675ec18d0975 # WebInspectorUI must come after JavaScriptCore and WebCore but before WebKit and WebKit2 my $webKitIndex = first { $projects[$_] eq "Source/WebKitLegacy" } 0..$#projects; -diff --git a/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityControllerEmpty.cpp b/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityControllerEmpty.cpp -new file mode 100644 -index 0000000000000000000000000000000000000000..3618075f10824beb0bc6cd8070772ab88f4e51c8 ---- /dev/null -+++ b/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityControllerEmpty.cpp -@@ -0,0 +1,84 @@ -+/* -+ * Copyright (C) 2022 Microsoft Corporation. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "config.h" -+ -+#if !USE(ATSPI) && !USE(ATK) -+ -+#include "AccessibilityController.h" -+#include "AccessibilityUIElement.h" -+#include -+ -+namespace WTR { -+ -+void AccessibilityController::resetToConsistentState() -+{ -+ notImplemented(); -+} -+ -+RefPtr AccessibilityController::accessibleElementById(JSStringRef id) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityController::platformName() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+void AccessibilityController::injectAccessibilityPreference(JSStringRef domain, JSStringRef key, JSStringRef value) -+{ -+ notImplemented(); -+} -+ -+Ref AccessibilityController::rootElement() -+{ -+ notImplemented(); -+ return AccessibilityUIElement::create(nullptr); -+} -+ -+RefPtr AccessibilityController::focusedElement() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityController::addNotificationListener(JSValueRef) -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityController::removeNotificationListener() -+{ -+ notImplemented(); -+ return false; -+} -+ -+} // namespace WTR -+ -+#endif // USE(ATSPI) -diff --git a/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityUIElementEmpty.cpp b/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityUIElementEmpty.cpp -new file mode 100644 -index 0000000000000000000000000000000000000000..ffb14d1eeb29fd2cd3f963f8a5ba3f94a6648af0 ---- /dev/null -+++ b/Tools/WebKitTestRunner/InjectedBundle/empty/AccessibilityUIElementEmpty.cpp -@@ -0,0 +1,1064 @@ -+/* -+ * Copyright (C) 2022 Microsoft Corporation. -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted provided that the following conditions -+ * are met: -+ * 1. Redistributions of source code must retain the above copyright -+ * notice, this list of conditions and the following disclaimer. -+ * 2. Redistributions in binary form must reproduce the above copyright -+ * notice, this list of conditions and the following disclaimer in the -+ * documentation and/or other materials provided with the distribution. -+ * -+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -+ */ -+ -+#include "config.h" -+#include "AccessibilityUIElement.h" -+ -+#if !USE(ATSPI) && !USE(ATK) -+ -+#include -+ -+namespace WTR { -+ -+AccessibilityUIElement::AccessibilityUIElement(PlatformUIElement) -+{ -+ notImplemented(); -+} -+ -+AccessibilityUIElement::AccessibilityUIElement(const AccessibilityUIElement&) -+{ -+ notImplemented(); -+} -+ -+AccessibilityUIElement::~AccessibilityUIElement() -+{ -+ notImplemented(); -+} -+ -+bool AccessibilityUIElement::isEqual(AccessibilityUIElement*) -+{ -+ notImplemented(); -+ return false; -+} -+ -+void AccessibilityUIElement::getChildren(Vector>&) -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::getChildrenWithRange(Vector>&, unsigned, unsigned) -+{ -+ notImplemented(); -+} -+ -+int AccessibilityUIElement::childrenCount() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+RefPtr AccessibilityUIElement::elementAtPoint(int, int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+unsigned AccessibilityUIElement::indexOfChild(AccessibilityUIElement*) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+ -+RefPtr AccessibilityUIElement::childAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::linkedUIElementAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::ariaOwnsElementAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::ariaFlowToElementAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::ariaControlsElementAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::disclosedRowAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::rowAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::selectedChildAtIndex(unsigned) const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+unsigned AccessibilityUIElement::selectedChildrenCount() const -+{ -+ notImplemented(); -+ return 0; -+} -+ -+RefPtr AccessibilityUIElement::selectedRowAtIndex(unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::titleUIElement() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::parentElement() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::disclosedByRow() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfLinkedUIElements() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfDocumentLinks() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfChildren() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::allAttributes() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::stringAttributeValue(JSStringRef) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::currentStateValue() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::stringDescriptionOfAttributeValue(JSStringRef) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+double AccessibilityUIElement::numberAttributeValue(JSStringRef attribute) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+JSValueRef AccessibilityUIElement::uiElementArrayAttributeValue(JSStringRef attribute) const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSValueRef AccessibilityUIElement::rowHeaders() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSValueRef AccessibilityUIElement::columnHeaders() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::uiElementAttributeValue(JSStringRef attribute) const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::boolAttributeValue(JSStringRef attribute) -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isAttributeSettable(JSStringRef attribute) -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isAttributeSupported(JSStringRef attribute) -+{ -+ notImplemented(); -+ return false; -+} -+ -+JSRetainPtr AccessibilityUIElement::parameterizedAttributeNames() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::role() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::subrole() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::roleDescription() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::computedRoleString() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::title() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::description() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::orientation() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::isAtomicLiveRegion() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+JSRetainPtr AccessibilityUIElement::liveRegionRelevant() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::liveRegionStatus() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::stringValue() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::language() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::helpText() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+double AccessibilityUIElement::x() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::y() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::width() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::height() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::clickPointX() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::clickPointY() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::intValue() const -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::minValue() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+double AccessibilityUIElement::maxValue() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+JSRetainPtr AccessibilityUIElement::valueDescription() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+int AccessibilityUIElement::insertionPointLineNumber() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+bool AccessibilityUIElement::isPressActionSupported() -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isIncrementActionSupported() -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isDecrementActionSupported() -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isBusy() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isEnabled() -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isRequired() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isFocused() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isSelected() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isSelectedOptionActive() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isExpanded() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isChecked() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isIndeterminate() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+int AccessibilityUIElement::hierarchicalLevel() const -+{ -+ notImplemented(); -+ return 0; -+} -+ -+JSRetainPtr AccessibilityUIElement::speakAs() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::ariaIsGrabbed() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+JSRetainPtr AccessibilityUIElement::ariaDropEffects() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+int AccessibilityUIElement::lineForIndex(int) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+JSRetainPtr AccessibilityUIElement::rangeForLine(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::rangeForPosition(int, int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::boundsForRange(unsigned, unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::stringForRange(unsigned, unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributedStringForRange(unsigned, unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::attributedStringRangeIsMisspelled(unsigned, unsigned) -+{ -+ notImplemented(); -+ return false; -+} -+ -+unsigned AccessibilityUIElement::uiElementCountForSearchPredicate(JSContextRef, AccessibilityUIElement*, bool, JSValueRef, JSStringRef, bool, bool) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+RefPtr AccessibilityUIElement::uiElementForSearchPredicate(JSContextRef, AccessibilityUIElement*, bool, JSValueRef, JSStringRef, bool, bool) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::selectTextWithCriteria(JSContextRef, JSStringRef, JSValueRef, JSStringRef, JSStringRef) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfColumnHeaders() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfRowHeaders() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfColumns() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfRows() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfVisibleCells() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributesOfHeader() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+int AccessibilityUIElement::rowCount() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+int AccessibilityUIElement::columnCount() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+int AccessibilityUIElement::indexInTable() -+{ -+ notImplemented(); -+ return 0; -+} -+ -+JSRetainPtr AccessibilityUIElement::rowIndexRange() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::columnIndexRange() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::cellForColumnAndRow(unsigned, unsigned) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::horizontalScrollbar() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::verticalScrollbar() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::selectedTextRange() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::setSelectedTextRange(unsigned, unsigned) -+{ -+ notImplemented(); -+ return false; -+} -+ -+void AccessibilityUIElement::increment() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::decrement() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::showMenu() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::press() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::setSelectedChild(AccessibilityUIElement* element) const -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::setSelectedChildAtIndex(unsigned index) const -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::removeSelectionAtIndex(unsigned index) const -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::clearSelectedChildren() const -+{ -+ notImplemented(); -+} -+ -+JSRetainPtr AccessibilityUIElement::accessibilityValue() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::documentEncoding() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::documentURI() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::url() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::addNotificationListener(JSValueRef functionCallback) -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::removeNotificationListener() -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isFocusable() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isSelectable() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isMultiSelectable() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isVisible() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isOffScreen() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isCollapsed() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isIgnored() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isSingleLine() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::isMultiLine() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::hasPopup() const -+{ -+ notImplemented(); -+ return false; -+} -+ -+JSRetainPtr AccessibilityUIElement::popupValue() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+void AccessibilityUIElement::takeFocus() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::takeSelection() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::addSelection() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::removeSelection() -+{ -+ notImplemented(); -+} -+ -+RefPtr AccessibilityUIElement::lineTextMarkerRangeForTextMarker(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::textMarkerRangeForElement(AccessibilityUIElement*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+int AccessibilityUIElement::textMarkerRangeLength(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+RefPtr AccessibilityUIElement::previousTextMarker(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::nextTextMarker(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::rectsForTextMarkerRange(AccessibilityTextMarkerRange*, JSStringRef) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::stringForTextMarkerRange(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::textMarkerRangeForMarkers(AccessibilityTextMarker*, AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::startTextMarkerForTextMarkerRange(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::endTextMarkerForTextMarkerRange(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::endTextMarkerForBounds(int, int, int, int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::startTextMarkerForBounds(int, int, int, int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::textMarkerForPoint(int, int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::accessibilityElementForTextMarker(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributedStringForTextMarkerRange(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions(AccessibilityTextMarkerRange*, bool) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute(JSStringRef, AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return false; -+} -+ -+int AccessibilityUIElement::indexForTextMarker(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return 0; -+} -+ -+bool AccessibilityUIElement::isTextMarkerValid(AccessibilityTextMarker*) -+{ -+ notImplemented(); -+ return false; -+} -+ -+RefPtr AccessibilityUIElement::textMarkerForIndex(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::startTextMarker() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+RefPtr AccessibilityUIElement::endTextMarker() -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::setSelectedTextMarkerRange(AccessibilityTextMarkerRange*) -+{ -+ notImplemented(); -+ return false; -+} -+ -+void AccessibilityUIElement::scrollToMakeVisible() -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::scrollToGlobalPoint(int, int) -+{ -+ notImplemented(); -+} -+ -+void AccessibilityUIElement::scrollToMakeVisibleWithSubFocus(int, int, int, int) -+{ -+ notImplemented(); -+} -+ -+JSRetainPtr AccessibilityUIElement::supportedActions() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::pathDescription() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::mathPostscriptsDescription() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::mathPrescriptsDescription() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::classList() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::characterAtOffset(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::wordAtOffset(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::lineAtOffset(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+JSRetainPtr AccessibilityUIElement::sentenceAtOffset(int) -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::replaceTextInRange(JSStringRef, int, int) -+{ -+ notImplemented(); -+ return false; -+} -+ -+bool AccessibilityUIElement::insertText(JSStringRef) -+{ -+ notImplemented(); -+ return false; -+} -+ -+JSRetainPtr AccessibilityUIElement::domIdentifier() const -+{ -+ notImplemented(); -+ return nullptr; -+} -+ -+bool AccessibilityUIElement::isInsertion() const -+{ -+ return false; -+} -+ -+bool AccessibilityUIElement::isDeletion() const -+{ -+ return false; -+} -+ -+bool AccessibilityUIElement::isFirstItemInSuggestion() const -+{ -+ return false; -+} -+ -+bool AccessibilityUIElement::isLastItemInSuggestion() const -+{ -+ return false; -+} -+ -+} // namespace WTF -+ -+#endif // !USE(ATSPI) && !USE(ATK) -diff --git a/Tools/WebKitTestRunner/PlatformGTK.cmake b/Tools/WebKitTestRunner/PlatformGTK.cmake -index a87adedcc0e1b67220f04e517097aae8fc640340..c087e9c65d0481253443fb0fb25b032c97f6e4c5 100644 ---- a/Tools/WebKitTestRunner/PlatformGTK.cmake -+++ b/Tools/WebKitTestRunner/PlatformGTK.cmake -@@ -42,6 +42,9 @@ list(APPEND WebKitTestRunnerInjectedBundle_SOURCES - InjectedBundle/atspi/AccessibilityNotificationHandler.cpp - InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp - -+ InjectedBundle/empty/AccessibilityControllerEmpty.cpp -+ InjectedBundle/empty/AccessibilityUIElementEmpty.cpp -+ - InjectedBundle/gtk/ActivateFontsGtk.cpp - InjectedBundle/gtk/InjectedBundleGtk.cpp - InjectedBundle/gtk/InjectedBundleUtilities.cpp -diff --git a/Tools/WebKitTestRunner/PlatformWPE.cmake b/Tools/WebKitTestRunner/PlatformWPE.cmake -index 4f3640a8b93897d69604ee8ba38cd07561720ad2..eafdffd4196008949287344534400b0f7a6ad845 100644 ---- a/Tools/WebKitTestRunner/PlatformWPE.cmake -+++ b/Tools/WebKitTestRunner/PlatformWPE.cmake -@@ -43,6 +43,9 @@ list(APPEND WebKitTestRunnerInjectedBundle_SOURCES - InjectedBundle/atspi/AccessibilityNotificationHandler.cpp - InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp - -+ InjectedBundle/empty/AccessibilityControllerEmpty.cpp -+ InjectedBundle/empty/AccessibilityUIElementEmpty.cpp -+ - InjectedBundle/wpe/ActivateFontsWPE.cpp - InjectedBundle/wpe/InjectedBundleWPE.cpp - InjectedBundle/wpe/TestRunnerWPE.cpp diff --git a/Tools/WebKitTestRunner/TestController.cpp b/Tools/WebKitTestRunner/TestController.cpp index e8e387c158ec25408ac34e483b9e7158dfaa7ffd..415a9062054bcd31c1854d66c50f1c9444234100 100644 --- a/Tools/WebKitTestRunner/TestController.cpp