Use name for combobox on Unix.
This is more conforming to the AT-SPI specs. Also we have working relations for the label when a buddy is set. Reviewed-by: Gabi (cherry picked from commit 8be3168aa2f300f9a93a53b417704f3f10b1dc8b) Change-Id: I1831d5063b003df2d209aba99d54558b6493a3e9 Reviewed-on: http://codereview.qt.nokia.com/3027 Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
This commit is contained in:
parent
2c91710679
commit
b0c1c98f76
@ -80,6 +80,9 @@
|
|||||||
#if defined(Q_WS_S60)
|
#if defined(Q_WS_S60)
|
||||||
#include "private/qt_s60_p.h"
|
#include "private/qt_s60_p.h"
|
||||||
#endif
|
#endif
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
#include "qaccessible.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
QT_BEGIN_NAMESPACE
|
QT_BEGIN_NAMESPACE
|
||||||
|
|
||||||
@ -1018,6 +1021,9 @@ void QComboBoxPrivate::_q_dataChanged(const QModelIndex &topLeft, const QModelIn
|
|||||||
}
|
}
|
||||||
q->update();
|
q->update();
|
||||||
}
|
}
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
QAccessible::updateAccessibility(q, 0, QAccessible::NameChanged);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void QComboBoxPrivate::_q_rowsInserted(const QModelIndex &parent, int start, int end)
|
void QComboBoxPrivate::_q_rowsInserted(const QModelIndex &parent, int start, int end)
|
||||||
@ -1271,6 +1277,9 @@ void QComboBoxPrivate::_q_emitCurrentIndexChanged(const QModelIndex &index)
|
|||||||
Q_Q(QComboBox);
|
Q_Q(QComboBox);
|
||||||
emit q->currentIndexChanged(index.row());
|
emit q->currentIndexChanged(index.row());
|
||||||
emit q->currentIndexChanged(itemText(index));
|
emit q->currentIndexChanged(itemText(index));
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
QAccessible::updateAccessibility(q, 0, QAccessible::NameChanged);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
QString QComboBoxPrivate::itemText(const QModelIndex &index) const
|
QString QComboBoxPrivate::itemText(const QModelIndex &index) const
|
||||||
@ -2635,6 +2644,9 @@ void QComboBox::clear()
|
|||||||
{
|
{
|
||||||
Q_D(QComboBox);
|
Q_D(QComboBox);
|
||||||
d->model->removeRows(0, d->model->rowCount(d->root), d->root);
|
d->model->removeRows(0, d->model->rowCount(d->root), d->root);
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
QAccessible::updateAccessibility(this, 0, QAccessible::NameChanged);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@ -2651,6 +2663,9 @@ void QComboBox::clearEditText()
|
|||||||
Q_D(QComboBox);
|
Q_D(QComboBox);
|
||||||
if (d->lineEdit)
|
if (d->lineEdit)
|
||||||
d->lineEdit->clear();
|
d->lineEdit->clear();
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
QAccessible::updateAccessibility(this, 0, QAccessible::NameChanged);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@ -2661,6 +2676,9 @@ void QComboBox::setEditText(const QString &text)
|
|||||||
Q_D(QComboBox);
|
Q_D(QComboBox);
|
||||||
if (d->lineEdit)
|
if (d->lineEdit)
|
||||||
d->lineEdit->setText(text);
|
d->lineEdit->setText(text);
|
||||||
|
#ifndef QT_NO_ACCESSIBILITY
|
||||||
|
QAccessible::updateAccessibility(this, 0, QAccessible::NameChanged);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
|
@ -1776,16 +1776,12 @@ QString QAccessibleComboBox::text(Text t, int child) const
|
|||||||
|
|
||||||
switch (t) {
|
switch (t) {
|
||||||
case Name:
|
case Name:
|
||||||
|
#ifndef Q_WS_X11 // on Linux we use relations for this, name is text (fall through to Value)
|
||||||
if (child == OpenList)
|
if (child == OpenList)
|
||||||
str = QComboBox::tr("Open");
|
str = QComboBox::tr("Open");
|
||||||
else
|
else
|
||||||
str = QAccessibleWidgetEx::text(t, 0);
|
str = QAccessibleWidgetEx::text(t, 0);
|
||||||
break;
|
break;
|
||||||
#ifndef QT_NO_SHORTCUT
|
|
||||||
case Accelerator:
|
|
||||||
if (child == OpenList)
|
|
||||||
str = (QString)QKeySequence(Qt::Key_Down);
|
|
||||||
// missing break?
|
|
||||||
#endif
|
#endif
|
||||||
case Value:
|
case Value:
|
||||||
if (comboBox()->isEditable())
|
if (comboBox()->isEditable())
|
||||||
@ -1793,6 +1789,12 @@ QString QAccessibleComboBox::text(Text t, int child) const
|
|||||||
else
|
else
|
||||||
str = comboBox()->currentText();
|
str = comboBox()->currentText();
|
||||||
break;
|
break;
|
||||||
|
#ifndef QT_NO_SHORTCUT
|
||||||
|
case Accelerator:
|
||||||
|
if (child == OpenList)
|
||||||
|
str = (QString)QKeySequence(Qt::Key_Down);
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user