From e59874f531e6f35d1fcff5a0fad4df5787bfa114 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Thu, 24 Aug 2017 08:32:13 +0300 Subject: [PATCH] CompileOutput: Activate links only on left button click Complements a7ffd67a91. Change-Id: I3e70cf635774db3e126984dd70362aa0d3baa82a Reviewed-by: Eike Ziller --- src/plugins/projectexplorer/compileoutputwindow.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/plugins/projectexplorer/compileoutputwindow.cpp b/src/plugins/projectexplorer/compileoutputwindow.cpp index e7a175fe272..fb56d5d2c62 100644 --- a/src/plugins/projectexplorer/compileoutputwindow.cpp +++ b/src/plugins/projectexplorer/compileoutputwindow.cpp @@ -110,8 +110,8 @@ private: protected: void mouseMoveEvent(QMouseEvent *ev) { - int line = cursorForPosition(ev->pos()).block().blockNumber(); - if (m_taskids.value(line, 0)) + const int line = cursorForPosition(ev->pos()).block().blockNumber(); + if (m_taskids.contains(line) && m_mousePressButton == Qt::NoButton) viewport()->setCursor(Qt::PointingHandCursor); else viewport()->setCursor(Qt::IBeamCursor); @@ -121,23 +121,27 @@ protected: void mousePressEvent(QMouseEvent *ev) { m_mousePressPosition = ev->pos(); + m_mousePressButton = ev->button(); QPlainTextEdit::mousePressEvent(ev); } void mouseReleaseEvent(QMouseEvent *ev) { - if ((m_mousePressPosition - ev->pos()).manhattanLength() < 4) { + if ((m_mousePressPosition - ev->pos()).manhattanLength() < 4 + && m_mousePressButton == Qt::LeftButton) { int line = cursorForPosition(ev->pos()).block().blockNumber(); if (unsigned taskid = m_taskids.value(line, 0)) TaskHub::showTaskInEditor(taskid); } + m_mousePressButton = Qt::NoButton; QPlainTextEdit::mouseReleaseEvent(ev); } private: QHash m_taskids; //Map blocknumber to taskId QPoint m_mousePressPosition; + Qt::MouseButton m_mousePressButton = Qt::NoButton; }; } // namespace Internal