Accessibility: Improve handling current value
Value interfaces on OS X and iOS can be strings, so can the value property of MSAA. Before we'd always only send doubles, instead change it to use strings as well. Change-Id: I1b4410c68238ba7a69a5507d87c251f2ac61c568 Reviewed-by: Caroline Chao <caroline.chao@digia.com>
This commit is contained in:
parent
3e91d06a39
commit
4f9427977c
@ -343,7 +343,7 @@ id getValueAttribute(QAccessibleInterface *interface)
|
||||
}
|
||||
|
||||
if (QAccessibleValueInterface *valueInterface = interface->valueInterface()) {
|
||||
return QCFString::toNSString(QString::number(valueInterface->currentValue().toDouble()));
|
||||
return QCFString::toNSString(valueInterface->currentValue().toString());
|
||||
}
|
||||
|
||||
if (interface->state().checkable) {
|
||||
|
@ -1039,7 +1039,7 @@ HRESULT STDMETHODCALLTYPE QWindowsMsaaAccessible::get_accValue(VARIANT varID, BS
|
||||
|
||||
QString value;
|
||||
if (accessible->valueInterface()) {
|
||||
value = QString::number(accessible->valueInterface()->currentValue().toDouble());
|
||||
value = accessible->valueInterface()->currentValue().toString();
|
||||
} else {
|
||||
value = accessible->text(QAccessible::Value);
|
||||
}
|
||||
|
@ -89,15 +89,7 @@ void *QAccessibleAbstractSpinBox::interface_cast(QAccessible::InterfaceType t)
|
||||
|
||||
QVariant QAccessibleAbstractSpinBox::currentValue() const
|
||||
{
|
||||
QVariant result = abstractSpinBox()->property("value");
|
||||
QVariant::Type type = result.type();
|
||||
|
||||
// IA2 only allows numeric types
|
||||
if (type == QVariant::Int || type == QVariant::UInt || type == QVariant::LongLong
|
||||
|| type == QVariant::ULongLong || type == QVariant::Double)
|
||||
return result;
|
||||
|
||||
return QVariant();
|
||||
return abstractSpinBox()->property("value");
|
||||
}
|
||||
|
||||
void QAccessibleAbstractSpinBox::setCurrentValue(const QVariant &value)
|
||||
|
Loading…
Reference in New Issue
Block a user