diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp index eb65457c1090bacf713cae9b51b5eaf598b8f5fa..004792b8730673262a1b1d60e96e9dc4640eb672 100644 --- a/src/plugins/vcsbase/vcsbaseeditor.cpp +++ b/src/plugins/vcsbase/vcsbaseeditor.cpp @@ -214,6 +214,9 @@ void VCSBaseEditor::contextMenuEvent(QContextMenuEvent *e) void VCSBaseEditor::mouseMoveEvent(QMouseEvent *e) { + bool overrideCursor = false; + Qt::CursorShape cursorShape; + if (m_d->m_parameters->type == LogOutput || m_d->m_parameters->type == AnnotateOutput) { // Link emulation behaviour for 'click on change-interaction' QTextCursor cursor = cursorForPosition(e->pos()); @@ -226,13 +229,18 @@ void VCSBaseEditor::mouseMoveEvent(QMouseEvent *e) change = changeUnderCursor(cursor); sel.format.setProperty(QTextFormat::UserProperty, change); setExtraSelections(OtherSelection, QList<QTextEdit::ExtraSelection>() << sel); - viewport()->setCursor(Qt::PointingHandCursor); + overrideCursor = true; + cursorShape = Qt::PointingHandCursor; } } else { setExtraSelections(OtherSelection, QList<QTextEdit::ExtraSelection>()); - viewport()->setCursor(Qt::IBeamCursor); + overrideCursor = true; + cursorShape = Qt::IBeamCursor; } TextEditor::BaseTextEditor::mouseMoveEvent(e); + + if (overrideCursor) + viewport()->setCursor(cursorShape); } void VCSBaseEditor::mouseReleaseEvent(QMouseEvent *e)