diff options
author | Friedemann Kleint <Friedemann.Kleint@nokia.com> | 2012-03-14 12:17:11 +0100 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-03-14 18:36:05 +0100 |
commit | 087d6c21b853f0802df882c3e1545a7b97e0c898 (patch) | |
tree | 4dfe5a32806d490b488aac392418b6955286460d /src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp | |
parent | 259332e6553f01d438fdff56e22c37eaeb3920e3 (diff) |
Fix compilation of the Windows accessibility code for MinGW.
Temporarily disable the code for MinGW.
Change-Id: I435305167e06af05b9a78901e6e3a35347c5c3f5
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Diffstat (limited to 'src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp')
-rw-r--r-- | src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp b/src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp index f409730600..4f92b910b2 100644 --- a/src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp +++ b/src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp @@ -54,13 +54,13 @@ #include <QtGui/qplatformnativeinterface_qpa.h> #include <QtGui/qwindow.h> #include <QtGui/qguiapplication.h> -#include <QtWidgets/qapplication.h> -#include <QtWidgets/qgraphicsitem.h> -#include <QtWidgets/qgraphicsview.h> -#include <QtWidgets/qmessagebox.h> #include "qwindowsaccessibility.h" -#include "iaccessible2.h" + +#ifndef Q_CC_MINGW +# include "iaccessible2.h" +#endif // !Q_CC_MINGW + #include "comutils.h" #include <oleacc.h> @@ -185,7 +185,7 @@ void QWindowsAccessibility::notifyAccessibilityUpdate(const QAccessibleEvent &ev // An event has to be associated with a window, // so find the first parent that is a widget and that has a WId QAccessibleInterface *iface = event.accessibleInterface(); - QWindow *window = iface ? window_helper(iface) : 0; + QWindow *window = iface ? QWindowsAccessibility::windowHelper(iface) : 0; delete iface; if (!window) { @@ -211,6 +211,20 @@ void QWindowsAccessibility::notifyAccessibilityUpdate(const QAccessibleEvent &ev #endif // Q_OS_WINCE } +QWindow *QWindowsAccessibility::windowHelper(const QAccessibleInterface *iface) +{ + QWindow *window = iface->window(); + if (!window) { + QAccessibleInterface *acc = iface->parent(); + while (acc && !window) { + window = acc->window(); + QAccessibleInterface *par = acc->parent(); + delete acc; + acc = par; + } + } + return window; +} /*! \internal @@ -218,12 +232,16 @@ void QWindowsAccessibility::notifyAccessibilityUpdate(const QAccessibleEvent &ev */ IAccessible *QWindowsAccessibility::wrap(QAccessibleInterface *acc) { +#ifdef Q_CC_MINGW + return 0; +#else if (!acc) return 0; QWindowsIA2Accessible *wacc = new QWindowsIA2Accessible(acc); IAccessible *iacc = 0; wacc->QueryInterface(IID_IAccessible, (void**)&iacc); return iacc; +#endif } /*! @@ -260,7 +278,7 @@ bool QWindowsAccessibility::handleAccessibleObjectFromWindowRequest(HWND hwnd, W #if 1 // Ignoring all requests while starting up // ### Maybe QPA takes care of this??? - if (QApplication::startingUp() || QApplication::closingDown()) + if (QCoreApplication::startingUp() || QCoreApplication::closingDown()) return false; #endif |