Make QLineControl send accessibility updates.
authorFrederik Gladhorn <frederik.gladhorn@nokia.com>
Tue, 26 Apr 2011 16:41:15 +0000 (18:41 +0200)
committerThierry Bastian <thierry.bastian@nokia.com>
Thu, 12 May 2011 13:58:43 +0000 (15:58 +0200)
To make it emit the signals for the right object, it needs its parent to
be the QGraphicsItem/SGItem/QLineEdit.
According to IA2 it should emit TextUpdated and CursorMoved signals.
TextChanged is deprecated.
More fine grained signals would be desireable but this makes changes work at all.

Reviewed-by: Morten Sorvig
src/declarative/graphicsitems/qdeclarativetextinput.cpp
src/declarative/graphicsitems/qdeclarativetextinput_p_p.h

index 9a91769..4500a87 100644 (file)
@@ -1876,6 +1876,7 @@ bool QDeclarativeTextInput::isInputMethodComposing() const
 void QDeclarativeTextInputPrivate::init()
 {
     Q_Q(QDeclarativeTextInput);
+    control->setParent(q);
     control->setCursorWidth(1);
     control->setPasswordCharacter(QLatin1Char('*'));
     q->setSmooth(smooth);
index f6f6bd8..7595b36 100644 (file)
@@ -70,7 +70,7 @@ class Q_AUTOTEST_EXPORT QDeclarativeTextInputPrivate : public QDeclarativeImplic
 {
     Q_DECLARE_PUBLIC(QDeclarativeTextInput)
 public:
-    QDeclarativeTextInputPrivate() : control(new QLineControl(QString())),
+    QDeclarativeTextInputPrivate() : control(new QLineControl),
                  color((QRgb)0), style(QDeclarativeText::Normal),
                  styleColor((QRgb)0), hAlign(QDeclarativeTextInput::AlignLeft),
                  mouseSelectionMode(QDeclarativeTextInput::SelectCharacters), inputMethodHints(Qt::ImhNone),
@@ -89,7 +89,6 @@ public:
 
     ~QDeclarativeTextInputPrivate()
     {
-        delete control;
     }
 
     int xToPos(int x, QTextLine::CursorPosition betweenOrOn = QTextLine::CursorBetweenCharacters) const