Fix a regression where events were not delivered on windows
authorJan-Arve Saether <jan-arve.saether@nokia.com>
Tue, 24 Apr 2012 07:52:52 +0000 (09:52 +0200)
committerQt by Nokia <qt-info@nokia.com>
Tue, 24 Apr 2012 17:38:58 +0000 (19:38 +0200)
Regression caused by a17907829e6b180f2bb4af9a8594996b2a0e531a

Change-Id: I8a2ca35cf176b4db47f29d848cbc2cd8180596d0
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
src/plugins/platforms/windows/accessible/qwindowsaccessibility.cpp
src/plugins/platforms/windows/accessible/qwindowsaccessibility.h

index 0672a86..17ee6eb 100644 (file)
@@ -110,10 +110,10 @@ QWindowsAccessibility::QWindowsAccessibility()
 {
 }
 
-void QWindowsAccessibility::notifyAccessibilityUpdate(const QAccessibleEvent &event)
+void QWindowsAccessibility::notifyAccessibilityUpdate(QAccessibleEvent *event)
 {
     QString soundName;
-    switch (event.type()) {
+    switch (event->type()) {
     case QAccessible::PopupMenuStart:
         soundName = QLatin1String("MenuPopup");
         break;
@@ -184,7 +184,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();
+    QAccessibleInterface *iface = event->accessibleInterface();
     QWindow *window = iface ? QWindowsAccessibility::windowHelper(iface) : 0;
     delete iface;
 
@@ -198,13 +198,13 @@ void QWindowsAccessibility::notifyAccessibilityUpdate(const QAccessibleEvent &ev
     HWND hWnd = (HWND)platform->nativeResourceForWindow("handle", window);
 
     static int eventNum = 0;
-    if (event.type() != QAccessible::MenuCommand) { // MenuCommand is faked
+    if (event->type() != QAccessible::MenuCommand) { // MenuCommand is faked
         // See comment "SENDING EVENTS TO OBJECTS WITH NO WINDOW HANDLE"
         eventNum %= 50;              //[0..49]
         int eventId = - (eventNum - 1);
 
-        qAccessibleRecentSentEvents()->insert(eventId, qMakePair(event.object(), event.child()));
-        ptrNotifyWinEvent(event.type(), hWnd, OBJID_CLIENT, eventId );
+        qAccessibleRecentSentEvents()->insert(eventId, qMakePair(event->object(), event->child()));
+        ptrNotifyWinEvent(event->type(), hWnd, OBJID_CLIENT, eventId );
 
         ++eventNum;
     }
index 0c3aca0..3366c32 100644 (file)
@@ -56,7 +56,7 @@ class QWindowsAccessibility : public QPlatformAccessibility
 public:
     QWindowsAccessibility();
     static bool handleAccessibleObjectFromWindowRequest(HWND hwnd, WPARAM wParam, LPARAM lParam, LRESULT *lResult);
-    virtual void notifyAccessibilityUpdate(const QAccessibleEvent &event);
+    virtual void notifyAccessibilityUpdate(QAccessibleEvent *event);
     /*
     virtual void setRootObject(QObject *o);
     virtual void initialize();