diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp index 1976195c91f36156e1d43b05f206d15ae75f989f..9f1e7a8bef547ce924d146a0f479ac408da1dfe1 100644 --- a/src/plugins/cppeditor/cppeditor.cpp +++ b/src/plugins/cppeditor/cppeditor.cpp @@ -832,6 +832,15 @@ void CPPEditor::mouseReleaseEvent(QMouseEvent *e) TextEditor::BaseTextEditor::mouseReleaseEvent(e); } +void CPPEditor::keyReleaseEvent(QKeyEvent *e) +{ + // Clear link emulation when Ctrl is released + if (e->key() == Qt::Key_Control) { + setExtraSelections(OtherSelection, QList<QTextEdit::ExtraSelection>()); + viewport()->setCursor(Qt::IBeamCursor); + } +} + QList<int> CPPEditorEditable::context() const { return m_context; diff --git a/src/plugins/cppeditor/cppeditor.h b/src/plugins/cppeditor/cppeditor.h index c54b33a0cb083e39c731d16717da06749fcf5bb6..3414d79f1c68fc63bbfacb391cbf6b9a312cf117 100644 --- a/src/plugins/cppeditor/cppeditor.h +++ b/src/plugins/cppeditor/cppeditor.h @@ -96,9 +96,10 @@ public slots: void deleteEndOfToken(); protected: - void contextMenuEvent(QContextMenuEvent *e); - void mouseMoveEvent(QMouseEvent *e); - void mouseReleaseEvent(QMouseEvent *e); + void contextMenuEvent(QContextMenuEvent *); + void mouseMoveEvent(QMouseEvent *); + void mouseReleaseEvent(QMouseEvent *); + void keyReleaseEvent(QKeyEvent *); TextEditor::BaseTextEditorEditable *createEditableInterface();