diff options
-rw-r--r-- | src/plugins/vcsbase/vcsbaseeditor.cpp | 26 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbaseeditor.h | 2 |
2 files changed, 14 insertions, 14 deletions
diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp index 5e2c5f9ed5..21d46e99a5 100644 --- a/src/plugins/vcsbase/vcsbaseeditor.cpp +++ b/src/plugins/vcsbase/vcsbaseeditor.cpp @@ -360,8 +360,10 @@ QAction *ChangeTextCursorHandler::createAnnotateAction(const QString &change, bo editorWidget()->annotatePreviousRevisionTextFormat() : editorWidget()->annotateRevisionTextFormat(); auto a = new QAction(format.arg(change), nullptr); - a->setData(change); - connect(a, &QAction::triggered, editorWidget(), &VcsBaseEditorWidget::slotAnnotateRevision); + VcsBaseEditorWidget *editor = editorWidget(); + connect(a, &QAction::triggered, editor, [editor, change] { + editor->slotAnnotateRevision(change); + }); return a; } @@ -1493,18 +1495,16 @@ void VcsBaseEditorWidget::addDiffActions(QMenu *, const DiffChunk &) { } -void VcsBaseEditorWidget::slotAnnotateRevision() +void VcsBaseEditorWidget::slotAnnotateRevision(const QString &change) { - if (auto a = qobject_cast<const QAction *>(sender())) { - const int currentLine = textCursor().blockNumber() + 1; - const QString fileName = fileNameForLine(currentLine); - QString workingDirectory = d->m_workingDirectory; - if (workingDirectory.isEmpty()) - workingDirectory = QFileInfo(fileName).absolutePath(); - emit annotateRevisionRequested(FilePath::fromString(workingDirectory), - QDir(workingDirectory).relativeFilePath(fileName), - a->data().toString(), currentLine); - } + const int currentLine = textCursor().blockNumber() + 1; + const QString fileName = fileNameForLine(currentLine); + QString workingDirectory = d->m_workingDirectory; + if (workingDirectory.isEmpty()) + workingDirectory = QFileInfo(fileName).absolutePath(); + emit annotateRevisionRequested(FilePath::fromString(workingDirectory), + QDir(workingDirectory).relativeFilePath(fileName), + change, currentLine); } QStringList VcsBaseEditorWidget::annotationPreviousVersions(const QString &) const diff --git a/src/plugins/vcsbase/vcsbaseeditor.h b/src/plugins/vcsbase/vcsbaseeditor.h index f7d4860ceb..99dc64a0ac 100644 --- a/src/plugins/vcsbase/vcsbaseeditor.h +++ b/src/plugins/vcsbase/vcsbaseeditor.h @@ -273,7 +273,7 @@ private: void slotPopulateLogBrowser(); void slotJumpToEntry(int); void slotCursorPositionChanged() override; - void slotAnnotateRevision(); + void slotAnnotateRevision(const QString &change); void slotApplyDiffChunk(); void slotPaste(); void showProgressIndicator(); |