TextEditor: Fix including folding end

Instead of the first visible block we need to check the last invisible
block whether we should add the folding end text to the fold
replacement.
Introduced in b6b756e737

Change-Id: Id93403a14145c09069281d32d5b622bad80c4ae6
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
David Schulz
2019-05-03 08:46:38 +02:00
parent 4b98f52c0e
commit 81f342ea00

View File

@@ -4717,13 +4717,13 @@ void TextEditorWidgetPrivate::paintReplacement(PaintEventData &data, QPainter &p
replacement.prepend(nextBlock.text().trimmed().at(0));
}
QTextBlock nextVisibleBlock = TextEditor::nextVisibleBlock(data.block, data.doc);
if (!nextVisibleBlock.isValid())
nextVisibleBlock = data.doc->lastBlock();
QTextBlock lastInvisibleBlock = TextEditor::nextVisibleBlock(data.block, data.doc).previous();
if (!lastInvisibleBlock.isValid())
lastInvisibleBlock = data.doc->lastBlock();
if (TextBlockUserData *blockUserData = TextDocumentLayout::testUserData(nextVisibleBlock)) {
if (TextBlockUserData *blockUserData = TextDocumentLayout::testUserData(lastInvisibleBlock)) {
if (blockUserData->foldingEndIncluded()) {
QString right = nextVisibleBlock.text().trimmed();
QString right = lastInvisibleBlock.text().trimmed();
if (right.endsWith(QLatin1Char(';'))) {
right.chop(1);
right = right.trimmed();