diff --git a/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp b/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp index c12703e661f8fb5ec0d625ad14931e38010b4964..94f14677fc3c3693dfcf98ee54d65255bd8d0a9e 100644 --- a/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp +++ b/src/plugins/vcsbase/wizard/vcsconfigurationpage.cpp @@ -118,8 +118,6 @@ VcsConfigurationPage::VcsConfigurationPage() : d(new Internal::VcsConfigurationP auto verticalLayout = new QVBoxLayout(this); verticalLayout->addWidget(d->m_configureButton); - connect(d->m_versionControl, &IVersionControl::configurationChanged, - this, &QWizardPage::completeChanged); connect(d->m_configureButton, &QAbstractButton::clicked, this, &VcsConfigurationPage::openConfiguration); } @@ -145,6 +143,11 @@ void VcsConfigurationPage::setVersionControlId(const QString &id) void VcsConfigurationPage::initializePage() { + if (d->m_versionControl) { + disconnect(d->m_versionControl, &IVersionControl::configurationChanged, + this, &QWizardPage::completeChanged); + } + if (!d->m_versionControlId.isEmpty()) { auto jw = qobject_cast<JsonWizard *>(wizard()); if (!jw) { @@ -167,6 +170,9 @@ void VcsConfigurationPage::initializePage() } } + connect(d->m_versionControl, &IVersionControl::configurationChanged, + this, &QWizardPage::completeChanged); + d->m_configureButton->setEnabled(d->m_versionControl); if (d->m_versionControl) setSubTitle(tr("Please configure <b>%1</b> now.").arg(d->m_versionControl->displayName()));