QAccessibleCache: Generalize macOS-specific hooks to all Apple platforms

These are used from the iOS platform plugin as well, so rename the hooks
to make it clear what's going on.

Change-Id: I701550a189b0047b8c604c9c27986f780aa157d4
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit c3f1533fba88c2e9fc4ce238f68055e37675292c)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
Tor Arne Vestbø 2024-05-26 21:38:22 +02:00 committed by Qt Cherry-pick Bot
parent aec1edfe40
commit 1d8ae2799d
3 changed files with 11 additions and 11 deletions

View File

@ -172,8 +172,8 @@ void QAccessibleCache::deleteInterface(QAccessible::Id id, QObject *obj)
objectToId.remove(obj);
delete iface;
#ifdef Q_OS_MAC
removeCocoaElement(id);
#ifdef Q_OS_APPLE
removeAccessibleElement(id);
#endif
}

View File

@ -3,7 +3,7 @@
#include "qaccessiblecache_p.h"
// qcocoaaccessibilityelement.h in Cocoa platform plugin
// qcocoaaccessibilityelement.h in platform plugin
@interface QT_MANGLE_NAMESPACE(QMacAccessibilityElement)
- (void)invalidate;
@end
@ -12,19 +12,19 @@ QT_BEGIN_NAMESPACE
void QAccessibleCache::insertElement(QAccessible::Id axid, QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *element) const
{
cocoaElements[axid] = element;
accessibleElements[axid] = element;
}
void QAccessibleCache::removeCocoaElement(QAccessible::Id axid)
void QAccessibleCache::removeAccessibleElement(QAccessible::Id axid)
{
QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *element = elementForId(axid);
[element invalidate];
cocoaElements.remove(axid);
accessibleElements.remove(axid);
}
QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *QAccessibleCache::elementForId(QAccessible::Id axid) const
{
return cocoaElements.value(axid);
return accessibleElements.value(axid);
}
QT_END_NAMESPACE

View File

@ -41,7 +41,7 @@ public:
QAccessible::Id insert(QObject *object, QAccessibleInterface *iface) const;
void deleteInterface(QAccessible::Id id, QObject *obj = nullptr);
#ifdef Q_OS_MAC
#ifdef Q_OS_APPLE
QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *elementForId(QAccessible::Id axid) const;
void insertElement(QAccessible::Id axid, QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *element) const;
#endif
@ -56,9 +56,9 @@ private:
mutable QHash<QAccessibleInterface *, QAccessible::Id> interfaceToId;
mutable QMultiHash<QObject *, QPair<QAccessible::Id, const QMetaObject*>> objectToId;
#ifdef Q_OS_MAC
void removeCocoaElement(QAccessible::Id axid);
mutable QHash<QAccessible::Id, QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *> cocoaElements;
#ifdef Q_OS_APPLE
void removeAccessibleElement(QAccessible::Id axid);
mutable QHash<QAccessible::Id, QT_MANGLE_NAMESPACE(QMacAccessibilityElement) *> accessibleElements;
#endif
friend class QAccessible;