From b1dc0841fe6758ce52f052a1ab511ba3da9b531e Mon Sep 17 00:00:00 2001 From: Frederik Gladhorn Date: Wed, 16 Mar 2016 17:51:15 +0100 Subject: Always instantiate QPlatformAccessibility MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Instead of returning 0, instantiate QPlatformAccessibility which delegates the handling of accessibilty to accessibilitybridge plugins. This makes it possible to implement entirely custom handling of the accessibility events, making it possible to write for example in-process screen readers. Change-Id: I7bcfd83b769af8ca2689fb38add1345719cf804f Reviewed-by: Jesus Fernandez Reviewed-by: Jan Arve Sæther --- src/gui/kernel/qplatformintegration.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/gui/kernel') diff --git a/src/gui/kernel/qplatformintegration.cpp b/src/gui/kernel/qplatformintegration.cpp index 5bf0df67db..fd7f475bee 100644 --- a/src/gui/kernel/qplatformintegration.cpp +++ b/src/gui/kernel/qplatformintegration.cpp @@ -354,11 +354,16 @@ QPlatformInputContext *QPlatformIntegration::inputContext() const /*! Returns the platforms accessibility. - The default implementation returns 0, implying no accessibility support. + The default implementation returns QPlatformAccessibility which + delegates handling of accessibility to accessiblebridge plugins. */ QPlatformAccessibility *QPlatformIntegration::accessibility() const { - return 0; + static QPlatformAccessibility *accessibility = 0; + if (Q_UNLIKELY(!accessibility)) { + accessibility = new QPlatformAccessibility; + } + return accessibility; } #endif -- cgit v1.2.3