Merge commit 'origin/1.3'

This commit is contained in:
mae
2009-12-01 15:58:09 +01:00
5 changed files with 22 additions and 2 deletions

View File

@@ -1519,7 +1519,8 @@ BaseTextEditorPrivate::BaseTextEditorPrivate()
m_inBlockSelectionMode(false),
m_lastEventWasBlockSelectionEvent(false),
m_blockSelectionExtraX(0),
m_moveLineUndoHack(false)
m_moveLineUndoHack(false),
m_cursorBlockNumber(-1)
{
}
@@ -2866,6 +2867,22 @@ void BaseTextEditor::updateCurrentLineHighlight()
}
setExtraSelections(CurrentLineSelection, extraSelections);
// the extra area shows information for the entire current block, not just the currentline.
// This is why we must force a bigger update region.
int cursorBlockNumber = textCursor().blockNumber();
if (cursorBlockNumber != d->m_cursorBlockNumber) {
QPointF offset = contentOffset();
QTextBlock block = document()->findBlockByNumber(d->m_cursorBlockNumber);
if (block.isValid())
d->m_extraArea->update(blockBoundingGeometry(block).translated(offset).toAlignedRect());
block = document()->findBlockByNumber(cursorBlockNumber);
if (block.isValid())
d->m_extraArea->update(blockBoundingGeometry(block).translated(offset).toAlignedRect());
d->m_cursorBlockNumber = cursorBlockNumber;
}
}
void BaseTextEditor::slotCursorPositionChanged()