diff --git a/src/plugins/git/commitdata.cpp b/src/plugins/git/commitdata.cpp index 7654d003722231652c38a09665a554412001706b..068b3bd1e89b0e895d1e8077902e90e14a89a2fb 100644 --- a/src/plugins/git/commitdata.cpp +++ b/src/plugins/git/commitdata.cpp @@ -54,7 +54,6 @@ void GitSubmitEditorPanelData::clear() email.clear(); bypassHooks = false; pushAction = NoPush; - hasRemotes = false; } QString GitSubmitEditorPanelData::authorString() const @@ -79,7 +78,9 @@ QDebug operator<<(QDebug d, const GitSubmitEditorPanelData &data) return d; } -CommitData::CommitData(CommitType type) : commitType(type) +CommitData::CommitData(CommitType type) + : commitType(type) + , enablePush(false) { } @@ -88,6 +89,7 @@ void CommitData::clear() panelInfo.clear(); panelData.clear(); amendSHA1.clear(); + enablePush = false; files.clear(); } diff --git a/src/plugins/git/commitdata.h b/src/plugins/git/commitdata.h index deb5072c3d1d8705fe6a0dc81e6e38f0a27ac3fd..635e24a3b9b6e25ebdbe472ed3e3fe1218fdad33 100644 --- a/src/plugins/git/commitdata.h +++ b/src/plugins/git/commitdata.h @@ -68,7 +68,6 @@ struct GitSubmitEditorPanelData QString email; bool bypassHooks; PushAction pushAction; - bool hasRemotes; }; QDebug operator<<(QDebug d, const GitSubmitEditorPanelData &); @@ -115,6 +114,7 @@ public: QString commitEncoding; GitSubmitEditorPanelInfo panelInfo; GitSubmitEditorPanelData panelData; + bool enablePush; QList<StateFilePair> files; diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 124a0d63a4565a759c03e3a46364aefa1556b728..0c3c245eb1f33e187521034c5c07bf1806da9f16 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -3045,7 +3045,7 @@ bool GitClient::getCommitData(const QString &workingDirectory, break; } - commitData.panelData.hasRemotes = !synchronousRemotesList(repoDirectory).isEmpty(); + commitData.enablePush = !synchronousRemotesList(repoDirectory).isEmpty(); return true; } diff --git a/src/plugins/git/gitsubmiteditor.cpp b/src/plugins/git/gitsubmiteditor.cpp index 7cd2ad9e932887f3dabbc280d3abacbc1c8c1a53..0b7b36566c4a035706549c48d901a82daa4366e3 100644 --- a/src/plugins/git/gitsubmiteditor.cpp +++ b/src/plugins/git/gitsubmiteditor.cpp @@ -111,7 +111,7 @@ void GitSubmitEditor::setCommitData(const CommitData &d) m_amendSHA1 = d.amendSHA1; GitSubmitEditorWidget *w = submitEditorWidget(); - w->initialize(m_commitType, m_workingDirectory, d.panelData, d.panelInfo); + w->initialize(m_commitType, m_workingDirectory, d.panelData, d.panelInfo, d.enablePush); w->setHasUnmerged(false); setEmptyFileListEnabled(m_commitType == AmendCommit); // Allow for just correcting the message diff --git a/src/plugins/git/gitsubmiteditorwidget.cpp b/src/plugins/git/gitsubmiteditorwidget.cpp index dbbc6d8c6f71d024c6d0e251fd7a4d16ce1f27ab..50cffe06b7ee2e070049c6a88efde2aff9ebdd6b 100644 --- a/src/plugins/git/gitsubmiteditorwidget.cpp +++ b/src/plugins/git/gitsubmiteditorwidget.cpp @@ -87,7 +87,8 @@ void GitSubmitEditorWidget::setHasUnmerged(bool e) void GitSubmitEditorWidget::initialize(CommitType commitType, const QString &repository, const GitSubmitEditorPanelData &data, - const GitSubmitEditorPanelInfo &info) + const GitSubmitEditorPanelInfo &info, + bool enablePush) { if (m_isInitialized) return; @@ -108,7 +109,7 @@ void GitSubmitEditorWidget::initialize(CommitType commitType, setPanelData(data); setPanelInfo(info); - if (data.hasRemotes && commitType != FixupCommit) { + if (enablePush && commitType != FixupCommit) { QMenu *menu = new QMenu(this); menu->addAction(tr("&Commit only"), this, SLOT(commitOnlySlot())); menu->addAction(tr("Commit and &Push"), this, SLOT(commitAndPushSlot())); diff --git a/src/plugins/git/gitsubmiteditorwidget.h b/src/plugins/git/gitsubmiteditorwidget.h index 73043cdaf3fd9ee7273ccb26bf173250521994eb..adef5096bd301aa39b2f33eafc3ae85cfcb9a1dd 100644 --- a/src/plugins/git/gitsubmiteditorwidget.h +++ b/src/plugins/git/gitsubmiteditorwidget.h @@ -72,7 +72,8 @@ public: void initialize(CommitType commitType, const QString &repository, const GitSubmitEditorPanelData &data, - const GitSubmitEditorPanelInfo &info); + const GitSubmitEditorPanelInfo &info, + bool enablePush); void refreshLog(const QString &repository); protected: