From ee328adb2eb4d6e7baeda39db13f693628eaa0cf Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Thu, 14 Mar 2013 18:18:33 +0100 Subject: [PATCH] QTextEngine capitalization doesn't work with QRawFont The capitalization settings is attempted read via specialData->addFormats, but the QTextCharFormat there is reset when added, and should instead be accessed through specialData->addFormatIndices. Change-Id: I190c419f07c3f7e803ca1d44059e8f538216b9ab Reviewed-by: Pierre Rossi --- src/gui/text/qtextengine.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp index a0deeddb336..f1a0804e684 100644 --- a/src/gui/text/qtextengine.cpp +++ b/src/gui/text/qtextengine.cpp @@ -1435,9 +1435,10 @@ void QTextEngine::itemize() const int lastIndex = 0; for (int i = 0; i < specialData->addFormats.size(); ++i) { const QTextLayout::FormatRange &range = specialData->addFormats.at(i); - if (range.format.fontCapitalization()) { + QTextCharFormat format = formats()->charFormat(specialData->addFormatIndices.at(i)); + if (format.fontCapitalization()) { itemizer.generate(lastIndex, range.start - lastIndex, QFont::MixedCase); - itemizer.generate(range.start, range.length, range.format.fontCapitalization()); + itemizer.generate(range.start, range.length, format.fontCapitalization()); lastIndex = range.start + range.length; } }