5#ifndef QSPIACCESSIBLEBRIDGE_H
6#define QSPIACCESSIBLEBRIDGE_H
19#include <QtGui/private/qtguiglobal_p.h>
20#include <QtDBus/qdbusconnection.h>
21#include <qpa/qplatformaccessibility.h>
22#include <QtCore/qhash.h>
25class DeviceEventControllerAdaptor;
32class QAtSpiDBusConnection;
41 using SpiRoleMapping = QHash <QAccessible::Role, RoleNames>;
43 QSpiAccessibleBridge();
45 virtual ~QSpiAccessibleBridge();
47 void notifyAccessibilityUpdate(QAccessibleEvent *event) override;
48 QDBusConnection dBusConnection()
const;
50 const SpiRoleMapping &spiRoleNames()
const {
return m_spiRoleMapping; }
52 static QSpiAccessibleBridge *instance();
53 static RoleNames namesForRole(QAccessible::Role role);
56 void enabledChanged(
bool enabled);
59 void initializeConstantMappings();
63 QtGuiPrivate::DeviceEventControllerAdaptor *dec;
64 AtSpiAdaptor *dbusAdaptor;
65 QAtSpiDBusConnection* dbusConnection;
66 SpiRoleMapping m_spiRoleMapping;
QString introspect(const QString &path) const override
This function needs to handle the introspection of the virtual object on path.
static QStringList accessibleInterfaces(QAccessibleInterface *interface)
static QSpiAttributeSet getAttributes(QAccessibleInterface *)
void notify(QAccessibleEvent *event)
void windowActivated(QObject *window, bool active)
void registerApplication()
void eventListenerDeregistered(const QString &bus, const QString &path)
static AtspiRole getRole(QAccessibleInterface *interface)
bool handleMessage(const QDBusMessage &message, const QDBusConnection &connection) override
This function needs to handle all messages to the path of the virtual object, when the SubPath option...
Connects to the accessibility dbus.
QDBusConnection connection() const
Returns the DBus connection that got established.
QT_REQUIRE_CONFIG(thread)
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiDeviceEvent &event)
Q_DECLARE_TYPEINFO(QSpiTextRange, Q_RELOCATABLE_TYPE)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiAction &action)
QList< QSpiAccessibleCacheItem > QSpiAccessibleCacheArray
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiAction &action)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiObjectReference &address)
Q_DECLARE_TYPEINFO(QSpiMatchRule, Q_RELOCATABLE_TYPE)
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiAppUpdate &update)
Q_DECLARE_TYPEINFO(QSpiAppUpdate, Q_RELOCATABLE_TYPE)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiAccessibleCacheItem &item)
@ QSPI_APP_UPDATE_REMOVED
QList< QSpiTextRange > QSpiTextRangeList
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiObjectReference &address)
QList< QSpiObjectReference > QSpiObjectReferenceArray
QMap< QString, QString > QSpiAttributeSet
Q_DECLARE_TYPEINFO(QSpiObjectReference, Q_RELOCATABLE_TYPE)
QList< QSpiRelationArrayEntry > QSpiRelationArray
void qSpiInitializeStructTypes()
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiDeviceEvent &event)
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiEventListener &action)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiMatchRule &matchRule)
std::pair< unsigned int, QSpiObjectReferenceArray > QSpiRelationArrayEntry
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiAccessibleCacheItem &item)
Q_DECLARE_TYPEINFO(QSpiAppUpdateType, Q_PRIMITIVE_TYPE)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiEventListener &action)
QDBusArgument & operator<<(QDBusArgument &argument, const QSpiAppUpdate &update)
QList< QSpiAction > QSpiActionArray
QList< QSpiEventListener > QSpiEventListenerArray
Q_DECLARE_TYPEINFO(QSpiAction, Q_RELOCATABLE_TYPE)
const QDBusArgument & operator>>(const QDBusArgument &argument, QSpiMatchRule &matchRule)
Q_DECLARE_TYPEINFO(QSpiEventListener, Q_RELOCATABLE_TYPE)
Q_DECLARE_TYPEINFO(QSpiDeviceEvent, Q_RELOCATABLE_TYPE)
Q_DECLARE_TYPEINFO(QSpiAccessibleCacheItem, Q_RELOCATABLE_TYPE)
QT_REQUIRE_CONFIG(accessibility)
QStringList supportedInterfaces
QSpiObjectReferenceArray children
QSpiObjectReference application
QSpiObjectReference parent
QSpiAttributeSet attributes
QSpiObjectReference(const QDBusConnection &connection, const QDBusObjectPath &path)