diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index c8c9b11d95b..32ef40257f4 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -460,6 +460,22 @@ qt_extend_target(Gui CONDITION APPLE AND QT_FEATURE_accessibility ${FWFoundation} ) +qt_extend_target(Gui CONDITION WIN32 AND NOT WINRT AND QT_FEATURE_accessibility + SOURCES + accessible/windows/apisupport/qwindowsuiawrapper_p.h + accessible/windows/apisupport/uiaattributeids_p.h + accessible/windows/apisupport/uiacontroltypeids_p.h + accessible/windows/apisupport/uiaerrorids_p.h + accessible/windows/apisupport/uiaeventids_p.h + accessible/windows/apisupport/uiageneralids_p.h + accessible/windows/apisupport/uiaserverinterfaces_p.h + accessible/windows/apisupport/uiaclientinterfaces_p.h + accessible/windows/apisupport/uiapatternids_p.h + accessible/windows/apisupport/uiapropertyids_p.h + accessible/windows/apisupport/uiatypes_p.h + accessible/windows/apisupport/qwindowsuiawrapper.cpp +) + qt_extend_target(Gui CONDITION QT_FEATURE_action SOURCES kernel/qaction.cpp kernel/qaction.h kernel/qaction_p.h diff --git a/src/gui/accessible/accessible.pri b/src/gui/accessible/accessible.pri index 8dd821fe6a4..95132d69dee 100644 --- a/src/gui/accessible/accessible.pri +++ b/src/gui/accessible/accessible.pri @@ -22,4 +22,6 @@ qtConfig(accessibility) { LIBS_PRIVATE += -framework Foundation } + + win32:!winrt: include(windows/windows.pri) } diff --git a/src/gui/accessible/windows/apisupport/apisupport.pri b/src/gui/accessible/windows/apisupport/apisupport.pri new file mode 100644 index 00000000000..b5c0843abc6 --- /dev/null +++ b/src/gui/accessible/windows/apisupport/apisupport.pri @@ -0,0 +1,15 @@ +HEADERS += \ + accessible/windows/apisupport/qwindowsuiawrapper_p.h \ + accessible/windows/apisupport/uiaattributeids_p.h \ + accessible/windows/apisupport/uiacontroltypeids_p.h \ + accessible/windows/apisupport/uiaerrorids_p.h \ + accessible/windows/apisupport/uiaeventids_p.h \ + accessible/windows/apisupport/uiageneralids_p.h \ + accessible/windows/apisupport/uiaserverinterfaces_p.h \ + accessible/windows/apisupport/uiaclientinterfaces_p.h \ + accessible/windows/apisupport/uiapatternids_p.h \ + accessible/windows/apisupport/uiapropertyids_p.h \ + accessible/windows/apisupport/uiatypes_p.h + +SOURCES += \ + accessible/windows/apisupport/qwindowsuiawrapper.cpp diff --git a/src/platformsupport/windowsuiautomation/qwindowsuiawrapper.cpp b/src/gui/accessible/windows/apisupport/qwindowsuiawrapper.cpp similarity index 100% rename from src/platformsupport/windowsuiautomation/qwindowsuiawrapper.cpp rename to src/gui/accessible/windows/apisupport/qwindowsuiawrapper.cpp diff --git a/src/platformsupport/windowsuiautomation/qwindowsuiawrapper_p.h b/src/gui/accessible/windows/apisupport/qwindowsuiawrapper_p.h similarity index 99% rename from src/platformsupport/windowsuiautomation/qwindowsuiawrapper_p.h rename to src/gui/accessible/windows/apisupport/qwindowsuiawrapper_p.h index 9208acbc31e..b8142952159 100644 --- a/src/platformsupport/windowsuiautomation/qwindowsuiawrapper_p.h +++ b/src/gui/accessible/windows/apisupport/qwindowsuiawrapper_p.h @@ -68,7 +68,7 @@ QT_REQUIRE_CONFIG(accessibility); QT_BEGIN_NAMESPACE -class QWindowsUiaWrapper +class Q_GUI_EXPORT QWindowsUiaWrapper { QWindowsUiaWrapper(); virtual ~QWindowsUiaWrapper(); diff --git a/src/platformsupport/windowsuiautomation/uiaattributeids_p.h b/src/gui/accessible/windows/apisupport/uiaattributeids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiaattributeids_p.h rename to src/gui/accessible/windows/apisupport/uiaattributeids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiaclientinterfaces_p.h b/src/gui/accessible/windows/apisupport/uiaclientinterfaces_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiaclientinterfaces_p.h rename to src/gui/accessible/windows/apisupport/uiaclientinterfaces_p.h diff --git a/src/platformsupport/windowsuiautomation/uiacontroltypeids_p.h b/src/gui/accessible/windows/apisupport/uiacontroltypeids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiacontroltypeids_p.h rename to src/gui/accessible/windows/apisupport/uiacontroltypeids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiaerrorids_p.h b/src/gui/accessible/windows/apisupport/uiaerrorids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiaerrorids_p.h rename to src/gui/accessible/windows/apisupport/uiaerrorids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiaeventids_p.h b/src/gui/accessible/windows/apisupport/uiaeventids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiaeventids_p.h rename to src/gui/accessible/windows/apisupport/uiaeventids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiageneralids_p.h b/src/gui/accessible/windows/apisupport/uiageneralids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiageneralids_p.h rename to src/gui/accessible/windows/apisupport/uiageneralids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiapatternids_p.h b/src/gui/accessible/windows/apisupport/uiapatternids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiapatternids_p.h rename to src/gui/accessible/windows/apisupport/uiapatternids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiapropertyids_p.h b/src/gui/accessible/windows/apisupport/uiapropertyids_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiapropertyids_p.h rename to src/gui/accessible/windows/apisupport/uiapropertyids_p.h diff --git a/src/platformsupport/windowsuiautomation/uiaserverinterfaces_p.h b/src/gui/accessible/windows/apisupport/uiaserverinterfaces_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiaserverinterfaces_p.h rename to src/gui/accessible/windows/apisupport/uiaserverinterfaces_p.h diff --git a/src/platformsupport/windowsuiautomation/uiatypes_p.h b/src/gui/accessible/windows/apisupport/uiatypes_p.h similarity index 100% rename from src/platformsupport/windowsuiautomation/uiatypes_p.h rename to src/gui/accessible/windows/apisupport/uiatypes_p.h diff --git a/src/gui/accessible/windows/windows.pri b/src/gui/accessible/windows/windows.pri new file mode 100644 index 00000000000..9cebe1e2fb2 --- /dev/null +++ b/src/gui/accessible/windows/windows.pri @@ -0,0 +1 @@ +include(apisupport/apisupport.pri) diff --git a/src/platformsupport/CMakeLists.txt b/src/platformsupport/CMakeLists.txt index eb67070d243..e55937ddc8f 100644 --- a/src/platformsupport/CMakeLists.txt +++ b/src/platformsupport/CMakeLists.txt @@ -37,6 +37,3 @@ endif() if(QT_FEATURE_accessibility AND QT_FEATURE_accessibility_atspi_bridge) add_subdirectory(linuxaccessibility) endif() -if(QT_FEATURE_accessibility AND WIN32 AND NOT WINRT) - add_subdirectory(windowsuiautomation) -endif() diff --git a/src/platformsupport/platformsupport.pro b/src/platformsupport/platformsupport.pro index a3b194a17b3..ae71ecadedf 100644 --- a/src/platformsupport/platformsupport.pro +++ b/src/platformsupport/platformsupport.pro @@ -34,7 +34,6 @@ qtConfig(accessibility) { SUBDIRS += linuxaccessibility linuxaccessibility.depends += accessibility } - win32:!winrt: SUBDIRS += windowsuiautomation } !android:linux*:qtHaveModule(dbus) \ diff --git a/src/platformsupport/windowsuiautomation/CMakeLists.txt b/src/platformsupport/windowsuiautomation/CMakeLists.txt deleted file mode 100644 index c610b97fd6e..00000000000 --- a/src/platformsupport/windowsuiautomation/CMakeLists.txt +++ /dev/null @@ -1,28 +0,0 @@ -# Generated from windowsuiautomation.pro. - -##################################################################### -## WindowsUIAutomationSupport Module: -##################################################################### - -qt_add_module(WindowsUIAutomationSupport - STATIC - INTERNAL_MODULE - SOURCES - qwindowsuiawrapper.cpp qwindowsuiawrapper_p.h - uiaattributeids_p.h - uiaclientinterfaces_p.h - uiacontroltypeids_p.h - uiaerrorids_p.h - uiaeventids_p.h - uiageneralids_p.h - uiapatternids_p.h - uiapropertyids_p.h - uiaserverinterfaces_p.h - uiatypes_p.h - PUBLIC_LIBRARIES - Qt::CorePrivate - Qt::GuiPrivate -) - -#### Keys ignored in scope 1:.:.:windowsuiautomation.pro:: -# MODULE = "windowsuiautomation_support" diff --git a/src/platformsupport/windowsuiautomation/windowsuiautomation.pro b/src/platformsupport/windowsuiautomation/windowsuiautomation.pro deleted file mode 100644 index 97cdb60ef97..00000000000 --- a/src/platformsupport/windowsuiautomation/windowsuiautomation.pro +++ /dev/null @@ -1,23 +0,0 @@ -TARGET = QtWindowsUIAutomationSupport -MODULE = windowsuiautomation_support - -QT = core-private gui-private -CONFIG += static internal_module - -HEADERS += \ - qwindowsuiawrapper_p.h \ - uiaattributeids_p.h \ - uiacontroltypeids_p.h \ - uiaerrorids_p.h \ - uiaeventids_p.h \ - uiageneralids_p.h \ - uiaserverinterfaces_p.h \ - uiaclientinterfaces_p.h \ - uiapatternids_p.h \ - uiapropertyids_p.h \ - uiatypes_p.h - -SOURCES += \ - qwindowsuiawrapper.cpp - -load(qt_module) diff --git a/src/plugins/platforms/windows/uiautomation/qwindowsuiaaccessibility.cpp b/src/plugins/platforms/windows/uiautomation/qwindowsuiaaccessibility.cpp index 93b96226550..0903f5a6182 100644 --- a/src/plugins/platforms/windows/uiautomation/qwindowsuiaaccessibility.cpp +++ b/src/plugins/platforms/windows/uiautomation/qwindowsuiaaccessibility.cpp @@ -50,7 +50,7 @@ #include #include #include -#include +#include #include diff --git a/src/plugins/platforms/windows/uiautomation/qwindowsuiabaseprovider.h b/src/plugins/platforms/windows/uiautomation/qwindowsuiabaseprovider.h index a20df28e3f2..a14eb8ca65c 100644 --- a/src/plugins/platforms/windows/uiautomation/qwindowsuiabaseprovider.h +++ b/src/plugins/platforms/windows/uiautomation/qwindowsuiabaseprovider.h @@ -47,7 +47,7 @@ #include #include -#include +#include QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/windows/uiautomation/qwindowsuiautils.h b/src/plugins/platforms/windows/uiautomation/qwindowsuiautils.h index 6a482f6c1c4..0daef2ea633 100644 --- a/src/plugins/platforms/windows/uiautomation/qwindowsuiautils.h +++ b/src/plugins/platforms/windows/uiautomation/qwindowsuiautils.h @@ -48,7 +48,7 @@ #include #include #include -#include +#include QT_BEGIN_NAMESPACE diff --git a/src/plugins/platforms/windows/uiautomation/uiautomation.pri b/src/plugins/platforms/windows/uiautomation/uiautomation.pri index 1c4b018d1c2..fd3ed1c6dfb 100644 --- a/src/plugins/platforms/windows/uiautomation/uiautomation.pri +++ b/src/plugins/platforms/windows/uiautomation/uiautomation.pri @@ -1,6 +1,3 @@ -qtHaveModule(windowsuiautomation_support-private): \ - QT += windowsuiautomation_support-private - SOURCES += \ $$PWD/qwindowsuiaaccessibility.cpp \ $$PWD/qwindowsuiaprovidercache.cpp \ diff --git a/sync.profile b/sync.profile index 90012d8b635..49494b6971f 100644 --- a/sync.profile +++ b/sync.profile @@ -12,7 +12,6 @@ "QtDBus" => "$basedir/src/dbus", "QtConcurrent" => "$basedir/src/concurrent", "QtAccessibilitySupport" => "$basedir/src/platformsupport/accessibility", - "QtWindowsUIAutomationSupport" => "$basedir/src/platformsupport/windowsuiautomation", "QtLinuxAccessibilitySupport" => "$basedir/src/platformsupport/linuxaccessibility", "QtDeviceDiscoverySupport" => "$basedir/src/platformsupport/devicediscovery", "QtEventDispatcherSupport" => "$basedir/src/platformsupport/eventdispatchers", diff --git a/tests/auto/other/qaccessibility/qaccessibility.pro b/tests/auto/other/qaccessibility/qaccessibility.pro index 6f3740a24f1..65fdbdc103d 100644 --- a/tests/auto/other/qaccessibility/qaccessibility.pro +++ b/tests/auto/other/qaccessibility/qaccessibility.pro @@ -8,9 +8,6 @@ HEADERS += accessiblewidgets.h unix:!darwin:!haiku:!integity: LIBS += -lm win32 { - !winrt { - QT += windowsuiautomation_support-private - } LIBS += -loleacc -loleaut32 QMAKE_USE += ole32 uuid } diff --git a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp index 2a2d4591a18..339e7ad20dc 100644 --- a/tests/auto/other/qaccessibility/tst_qaccessibility.cpp +++ b/tests/auto/other/qaccessibility/tst_qaccessibility.cpp @@ -32,7 +32,7 @@ # include #ifndef Q_OS_WINRT # include -# include +# include #endif # include # include @@ -3827,8 +3827,10 @@ void tst_QAccessibility::bridgeTest() QVERIFY(SUCCEEDED(hr)); // Get UI Automation interface. + const GUID CLSID_CUIAutomation_test{0xff48dba4, 0x60ef, 0x4201, + {0xaa,0x87, 0x54,0x10,0x3e,0xef,0x59,0x4e}}; IUIAutomation *automation = nullptr; - hr = CoCreateInstance(CLSID_CUIAutomation, nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&automation)); + hr = CoCreateInstance(CLSID_CUIAutomation_test, nullptr, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&automation)); QVERIFY(SUCCEEDED(hr)); // Get button element from UI Automation using point. diff --git a/util/cmake/helper.py b/util/cmake/helper.py index 593c9db38ec..e1adf7161e3 100644 --- a/util/cmake/helper.py +++ b/util/cmake/helper.py @@ -347,12 +347,6 @@ _qt_library_map = [ LibraryMapping("webview", "Qt6", "Qt::WebView", extra=["COMPONENTS", "WebView"]), LibraryMapping("widgets", "Qt6", "Qt::Widgets", extra=["COMPONENTS", "Widgets"]), LibraryMapping("window-lib", "Qt6", "Qt::AppManWindow", extra=["COMPONENTS", "AppManWindow"]), - LibraryMapping( - "windowsuiautomation_support", - "Qt6", - "Qt::WindowsUIAutomationSupport", - extra=["COMPONENTS", "WindowsUIAutomationSupport"], - ), LibraryMapping("winextras", "Qt6", "Qt::WinExtras", extra=["COMPONENTS", "WinExtras"]), LibraryMapping("x11extras", "Qt6", "Qt::X11Extras", extra=["COMPONENTS", "X11Extras"]), LibraryMapping("xcb_qpa_lib", "Qt6", "Qt::XcbQpa", extra=["COMPONENTS", "XcbQpa"]),