diff options
author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> | 2016-10-24 10:19:59 +0200 |
---|---|---|
committer | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> | 2016-10-24 09:57:15 +0000 |
commit | cc30177a6927ee9619710efec45dbcd9d9fd4355 (patch) | |
tree | 2b35d4cfbc250b86ce3ecc0eede15abd1b069a4c /src/gui/painting/qpainter.cpp | |
parent | 398d67198c054ff5fa24103bda62cdaffdc194e2 (diff) |
Fix decorated text in extra-selections
Change ddef89b323e8507ea5f451cb53ed151e29a110b3 broke decorations
set using setExtraSelections(), because these decorations are
drawn with a second drawTextItem() call where numGlyphs is
set to 0. When the drawTextDecoration() call was moved into
the branches for multi/no-multi font engines, the call for
the cut-off when numGlyphs == 0 was unintentionally removed.
Task-number: QTBUG-54626
Change-Id: Ieb9fc23099a9d7daf87cc364d3fc9da128ec516d
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/gui/painting/qpainter.cpp')
-rw-r--r-- | src/gui/painting/qpainter.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gui/painting/qpainter.cpp b/src/gui/painting/qpainter.cpp index 6472481e7a..74b961f042 100644 --- a/src/gui/painting/qpainter.cpp +++ b/src/gui/painting/qpainter.cpp @@ -6439,7 +6439,8 @@ void QPainterPrivate::drawTextItem(const QPointF &p, const QTextItem &_ti, QText updateState(state); if (!ti.glyphs.numGlyphs) { - // nothing to do + drawTextItemDecoration(q, p, ti.fontEngine, textEngine, ti.underlineStyle, + ti.flags, ti.width.toReal(), ti.charFormat); } else if (ti.fontEngine->type() == QFontEngine::Multi) { QFontEngineMulti *multi = static_cast<QFontEngineMulti *>(ti.fontEngine); |