# HG changeset patch # User Chris Cannam # Date 1311684116 -3600 # Node ID 8bdc8f27d19c28eabc16c19e03fa64694b4b607d # Parent 2d57b81671dea39140e91e464fa469fe907d079a Use contextMenuEvent instead of right-click in mousePressEvent to call up changeset item context menu. Appears to fix #201, though I'm cautious as I don't understand the reason diff -r 2d57b81671de -r 8bdc8f27d19c src/changesetitem.cpp --- a/src/changesetitem.cpp Thu Jul 14 13:56:20 2011 +0100 +++ b/src/changesetitem.cpp Tue Jul 26 13:41:56 2011 +0100 @@ -101,17 +101,16 @@ } else { showDetail(); } - } else if (e->button() == Qt::RightButton) { - if (m_detail) { - hideDetail(); - } - activateMenu(); } } void -ChangesetItem::activateMenu() +ChangesetItem::contextMenuEvent(QGraphicsSceneContextMenuEvent *) { + if (m_detail) { + hideDetail(); + } + m_parentDiffActions.clear(); m_summaryActions.clear(); @@ -201,9 +200,9 @@ QAction *tag = menu->addAction(tr("Add tag...")); connect(tag, SIGNAL(triggered()), this, SLOT(tagActivated())); + ungrabMouse(); + menu->exec(QCursor::pos()); - - ungrabMouse(); } void diff -r 2d57b81671de -r 8bdc8f27d19c src/changesetitem.h --- a/src/changesetitem.h Thu Jul 14 13:56:20 2011 +0100 +++ b/src/changesetitem.h Tue Jul 26 13:41:56 2011 +0100 @@ -85,6 +85,7 @@ protected: virtual void mousePressEvent(QGraphicsSceneMouseEvent *); + virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent *); private: void activateMenu();