aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickaccessibleattached.cpp
diff options
context:
space:
mode:
authorJan Arve Saether <jan-arve.saether@theqtcompany.com>2014-10-28 09:59:23 +0100
committerFrederik Gladhorn <frederik.gladhorn@theqtcompany.com>2014-10-28 10:08:39 +0100
commit94297b4ca50439d27dd5c3de6ff225185647cc46 (patch)
tree677601ce9023810bc62171901b70d8a7ca113d0e /src/quick/items/qquickaccessibleattached.cpp
parentdf7f3141bddfd84590091612b271521a5d721a37 (diff)
Do not crash QML apps on startup
This started crashing because of 8f6436f125faae91eb472ddddbbae06dba5da671 Task-number: QTBUG-42227 Change-Id: I9e4862f6008c6ad6ec54469f2b39dd6be583e422 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Diffstat (limited to 'src/quick/items/qquickaccessibleattached.cpp')
-rw-r--r--src/quick/items/qquickaccessibleattached.cpp17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/quick/items/qquickaccessibleattached.cpp b/src/quick/items/qquickaccessibleattached.cpp
index 38b26a53d0..abb763c2eb 100644
--- a/src/quick/items/qquickaccessibleattached.cpp
+++ b/src/quick/items/qquickaccessibleattached.cpp
@@ -292,10 +292,10 @@ QT_BEGIN_NAMESPACE
The corresponding handler is \c onDecreaseAction.
*/
-const QMetaMethod QQuickAccessibleAttached::sigPress = QMetaMethod::fromSignal(&QQuickAccessibleAttached::pressAction);
-const QMetaMethod QQuickAccessibleAttached::sigToggle = QMetaMethod::fromSignal(&QQuickAccessibleAttached::toggleAction);
-const QMetaMethod QQuickAccessibleAttached::sigIncrease = QMetaMethod::fromSignal(&QQuickAccessibleAttached::increaseAction);
-const QMetaMethod QQuickAccessibleAttached::sigDecrease = QMetaMethod::fromSignal(&QQuickAccessibleAttached::decreaseAction);
+QMetaMethod QQuickAccessibleAttached::sigPress;
+QMetaMethod QQuickAccessibleAttached::sigToggle;
+QMetaMethod QQuickAccessibleAttached::sigIncrease;
+QMetaMethod QQuickAccessibleAttached::sigDecrease;
QQuickAccessibleAttached::QQuickAccessibleAttached(QObject *parent)
: QObject(parent), m_role(QAccessible::NoRole)
@@ -317,6 +317,13 @@ QQuickAccessibleAttached::QQuickAccessibleAttached(QObject *parent)
if (!parent->property("cursorPosition").isNull()) {
connect(parent, SIGNAL(cursorPositionChanged()), this, SLOT(cursorPositionChanged()));
}
+
+ if (!sigPress.isValid()) {
+ sigPress = QMetaMethod::fromSignal(&QQuickAccessibleAttached::pressAction);
+ sigToggle = QMetaMethod::fromSignal(&QQuickAccessibleAttached::toggleAction);
+ sigIncrease = QMetaMethod::fromSignal(&QQuickAccessibleAttached::increaseAction);
+ sigDecrease = QMetaMethod::fromSignal(&QQuickAccessibleAttached::decreaseAction);
+ }
}
QQuickAccessibleAttached::~QQuickAccessibleAttached()
@@ -343,7 +350,7 @@ void QQuickAccessibleAttached::setIgnored(bool ignored)
bool QQuickAccessibleAttached::doAction(const QString &actionName)
{
- const QMetaMethod *sig = 0;
+ QMetaMethod *sig = 0;
if (actionName == QAccessibleActionInterface::pressAction())
sig = &sigPress;
else if (actionName == QAccessibleActionInterface::toggleAction())