# HG changeset patch # User Chris Cannam # Date 1311684129 -3600 # Node ID dec4695f64e0bb56e1d5302732a4db609370272a # Parent 8bdc8f27d19c28eabc16c19e03fa64694b4b607d# Parent 101d113943c243b3ef8747989174deee9899e7e5 Merge diff -r 101d113943c2 -r dec4695f64e0 src/changesetitem.cpp --- a/src/changesetitem.cpp Fri Jul 22 12:00:29 2011 +0100 +++ b/src/changesetitem.cpp Tue Jul 26 13:42:09 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 101d113943c2 -r dec4695f64e0 src/changesetitem.h --- a/src/changesetitem.h Fri Jul 22 12:00:29 2011 +0100 +++ b/src/changesetitem.h Tue Jul 26 13:42:09 2011 +0100 @@ -85,6 +85,7 @@ protected: virtual void mousePressEvent(QGraphicsSceneMouseEvent *); + virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent *); private: void activateMenu();