diff options
author | Boris Dušek <me@dusek.me> | 2015-01-01 19:23:16 +0100 |
---|---|---|
committer | Boris Dušek <me@dusek.me> | 2015-02-13 20:53:26 +0000 |
commit | e6bbfc4d1a689b7201755416fb7bfb674f331179 (patch) | |
tree | d3e8b779a4a61c3b7f7760bbc7e0400171195d5b /src/widgets/accessible | |
parent | 9f3bd7542c30c8940b2ef57b523a111d4b847bde (diff) |
Make QAccessibleTextWidget::attributes respect default document font
QTextFormat::font{Weight,PointSize}() etc. return the font trait explicitly
set on the QTextFormat, while QTextFormat::font() returns font which also
uses the QTextDocument::defaultFont() as a default for any font traits not
explicitly set on the QTextFormat. Accessibility support for text attributes
used the former, which was wrong; this commit fixes it to use the latter.
Also includes tests to verify the fix.
Change-Id: Iab7f2be1b68adaad847d1f29c9e5af2195416035
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Diffstat (limited to 'src/widgets/accessible')
-rw-r--r-- | src/widgets/accessible/qaccessiblewidgets.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/widgets/accessible/qaccessiblewidgets.cpp b/src/widgets/accessible/qaccessiblewidgets.cpp index edc94b63f7..3f12ae6f0d 100644 --- a/src/widgets/accessible/qaccessiblewidgets.cpp +++ b/src/widgets/accessible/qaccessiblewidgets.cpp @@ -743,7 +743,7 @@ QString QAccessibleTextWidget::attributes(int offset, int *startOffset, int *end QTextBlockFormat blockFormat = cursor.blockFormat(); QMap<QByteArray, QString> attrs; - QString family = charFormat.fontFamily(); + QString family = charFormat.font().family(); if (!family.isEmpty()) { family = family.replace('\\',QStringLiteral("\\\\")); family = family.replace(':',QStringLiteral("\\:")); @@ -754,12 +754,12 @@ QString QAccessibleTextWidget::attributes(int offset, int *startOffset, int *end attrs["font-family"] = QString::fromLatin1("\"%1\"").arg(family); } - int fontSize = int(charFormat.fontPointSize()); + int fontSize = int(charFormat.font().pointSize()); if (fontSize) attrs["font-size"] = QString::fromLatin1("%1pt").arg(fontSize); //Different weight values are not handled - attrs["font-weight"] = QString::fromLatin1(charFormat.fontWeight() > QFont::Normal ? "bold" : "normal"); + attrs["font-weight"] = QString::fromLatin1(charFormat.font().weight() > QFont::Normal ? "bold" : "normal"); QFont::Style style = charFormat.font().style(); attrs["font-style"] = QString::fromLatin1((style == QFont::StyleItalic) ? "italic" : ((style == QFont::StyleOblique) ? "oblique": "normal")); |