VCS: Remove "Prompt to submit" settings

Task-number: QTCREATORBUG-22233
Change-Id: Ifbfd738281066af7913357ff9e2466a6c983452c
Reviewed-by: André Hartmann <aha_1980@gmx.de>
This commit is contained in:
Orgad Shaneh
2022-10-14 14:29:13 +03:00
committed by Orgad Shaneh
parent a450a6707e
commit eaad78547c
18 changed files with 16 additions and 75 deletions

View File

@@ -802,7 +802,7 @@ bool BazaarPluginPrivate::submitEditorAboutToClose()
QTC_ASSERT(editorDocument, return true); QTC_ASSERT(editorDocument, return true);
const VcsBaseSubmitEditor::PromptSubmitResult response = const VcsBaseSubmitEditor::PromptSubmitResult response =
commitEditor->promptSubmit(this, nullptr, !m_submitActionTriggered); commitEditor->promptSubmit(this, !m_submitActionTriggered);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (response) { switch (response) {

View File

@@ -754,9 +754,8 @@ bool ClearCasePluginPrivate::submitEditorAboutToClose()
// Prompt user. Force a prompt unless submit was actually invoked (that // Prompt user. Force a prompt unless submit was actually invoked (that
// is, the editor was closed or shutdown). // is, the editor was closed or shutdown).
bool prompt = m_settings.promptToCheckIn;
const VcsBaseSubmitEditor::PromptSubmitResult answer = const VcsBaseSubmitEditor::PromptSubmitResult answer =
editor->promptSubmit(this, &prompt, !m_submitActionTriggered); editor->promptSubmit(this, !m_submitActionTriggered);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (answer) { switch (answer) {
case VcsBaseSubmitEditor::SubmitCanceled: case VcsBaseSubmitEditor::SubmitCanceled:
@@ -767,11 +766,6 @@ bool ClearCasePluginPrivate::submitEditorAboutToClose()
default: default:
break; break;
} }
// If user changed
if (prompt != m_settings.promptToCheckIn) {
m_settings.promptToCheckIn = prompt;
m_settings.toSettings(ICore::settings());
}
const QStringList fileList = editor->checkedFiles(); const QStringList fileList = editor->checkedFiles();
bool closeEditor = true; bool closeEditor = true;

View File

@@ -20,7 +20,6 @@ const char keepFileUndoCheckoutKeyC[] = "KeepFileUnDoCheckout";
const char diffTypeKeyC[] = "DiffType"; const char diffTypeKeyC[] = "DiffType";
const char diffArgsKeyC[] = "DiffArgs"; const char diffArgsKeyC[] = "DiffArgs";
const char autoAssignActivityKeyC[] = "AutoAssignActivityName"; const char autoAssignActivityKeyC[] = "AutoAssignActivityName";
const char promptToCheckInKeyC[] = "PromptToCheckIn";
const char disableIndexerKeyC[] = "DisableIndexer"; const char disableIndexerKeyC[] = "DisableIndexer";
const char totalFilesKeyC[] = "TotalFiles"; const char totalFilesKeyC[] = "TotalFiles";
const char indexOnlyVOBsC[] = "IndexOnlyVOBs"; const char indexOnlyVOBsC[] = "IndexOnlyVOBs";
@@ -59,7 +58,6 @@ void ClearCaseSettings::fromSettings(QSettings *settings)
diffArgs = settings->value(QLatin1String(diffArgsKeyC), QLatin1String(defaultDiffArgs)).toString(); diffArgs = settings->value(QLatin1String(diffArgsKeyC), QLatin1String(defaultDiffArgs)).toString();
autoAssignActivityName = settings->value(QLatin1String(autoAssignActivityKeyC), true).toBool(); autoAssignActivityName = settings->value(QLatin1String(autoAssignActivityKeyC), true).toBool();
historyCount = settings->value(QLatin1String(historyCountKeyC), int(defaultHistoryCount)).toInt(); historyCount = settings->value(QLatin1String(historyCountKeyC), int(defaultHistoryCount)).toInt();
promptToCheckIn = settings->value(QLatin1String(promptToCheckInKeyC), false).toBool();
disableIndexer = settings->value(QLatin1String(disableIndexerKeyC), false).toBool(); disableIndexer = settings->value(QLatin1String(disableIndexerKeyC), false).toBool();
indexOnlyVOBs = settings->value(QLatin1String(indexOnlyVOBsC), QString()).toString(); indexOnlyVOBs = settings->value(QLatin1String(indexOnlyVOBsC), QString()).toString();
extDiffAvailable = !Utils::Environment::systemEnvironment().searchInPath(QLatin1String("diff")).isEmpty(); extDiffAvailable = !Utils::Environment::systemEnvironment().searchInPath(QLatin1String("diff")).isEmpty();
@@ -91,7 +89,6 @@ void ClearCaseSettings::toSettings(QSettings *settings) const
settings->setValue(QLatin1String(diffTypeKeyC), sDiffType); settings->setValue(QLatin1String(diffTypeKeyC), sDiffType);
settings->setValue(QLatin1String(autoAssignActivityKeyC), autoAssignActivityName); settings->setValue(QLatin1String(autoAssignActivityKeyC), autoAssignActivityName);
settings->setValue(QLatin1String(historyCountKeyC), historyCount); settings->setValue(QLatin1String(historyCountKeyC), historyCount);
settings->setValue(QLatin1String(promptToCheckInKeyC), promptToCheckIn);
settings->setValue(QLatin1String(disableIndexerKeyC), disableIndexer); settings->setValue(QLatin1String(disableIndexerKeyC), disableIndexer);
settings->setValue(QLatin1String(indexOnlyVOBsC), indexOnlyVOBs); settings->setValue(QLatin1String(indexOnlyVOBsC), indexOnlyVOBs);
settings->beginGroup(QLatin1String(totalFilesKeyC)); settings->beginGroup(QLatin1String(totalFilesKeyC));
@@ -113,7 +110,6 @@ bool ClearCaseSettings::equals(const ClearCaseSettings &s) const
&& diffType == s.diffType && diffType == s.diffType
&& diffArgs == s.diffArgs && diffArgs == s.diffArgs
&& autoAssignActivityName == s.autoAssignActivityName && autoAssignActivityName == s.autoAssignActivityName
&& promptToCheckIn == s.promptToCheckIn
&& disableIndexer == s.disableIndexer && disableIndexer == s.disableIndexer
&& indexOnlyVOBs == s.indexOnlyVOBs && indexOnlyVOBs == s.indexOnlyVOBs
&& totalFiles == s.totalFiles; && totalFiles == s.totalFiles;

View File

@@ -45,7 +45,6 @@ public:
bool autoCheckOut = true; bool autoCheckOut = true;
bool noComment = false; bool noComment = false;
bool keepFileUndoCheckout = true; bool keepFileUndoCheckout = true;
bool promptToCheckIn = false;
bool disableIndexer = false; bool disableIndexer = false;
bool extDiffAvailable = false; bool extDiffAvailable = false;
int historyCount; int historyCount;

View File

@@ -173,7 +173,6 @@ SettingsPageWidget::SettingsPageWidget()
graphicalDiffRadioButton->setChecked(true); graphicalDiffRadioButton->setChecked(true);
autoAssignActivityCheckBox->setChecked(s.autoAssignActivityName); autoAssignActivityCheckBox->setChecked(s.autoAssignActivityName);
historyCountSpinBox->setValue(s.historyCount); historyCountSpinBox->setValue(s.historyCount);
promptCheckBox->setChecked(s.promptToCheckIn);
disableIndexerCheckBox->setChecked(s.disableIndexer); disableIndexerCheckBox->setChecked(s.disableIndexer);
diffArgsEdit->setText(s.diffArgs); diffArgsEdit->setText(s.diffArgs);
indexOnlyVOBsEdit->setText(s.indexOnlyVOBs); indexOnlyVOBsEdit->setText(s.indexOnlyVOBs);
@@ -193,7 +192,6 @@ void SettingsPageWidget::apply()
rc.diffType = ExternalDiff; rc.diffType = ExternalDiff;
rc.autoAssignActivityName = autoAssignActivityCheckBox->isChecked(); rc.autoAssignActivityName = autoAssignActivityCheckBox->isChecked();
rc.historyCount = historyCountSpinBox->value(); rc.historyCount = historyCountSpinBox->value();
rc.promptToCheckIn = promptCheckBox->isChecked();
rc.disableIndexer = disableIndexerCheckBox->isChecked(); rc.disableIndexer = disableIndexerCheckBox->isChecked();
rc.diffArgs = diffArgsEdit->text(); rc.diffArgs = diffArgsEdit->text();
rc.indexOnlyVOBs = indexOnlyVOBsEdit->text(); rc.indexOnlyVOBs = indexOnlyVOBsEdit->text();

View File

@@ -726,11 +726,8 @@ bool CvsPluginPrivate::submitEditorAboutToClose()
// Prompt user. Force a prompt unless submit was actually invoked (that // Prompt user. Force a prompt unless submit was actually invoked (that
// is, the editor was closed or shutdown). // is, the editor was closed or shutdown).
const VcsBaseSubmitEditor::PromptSubmitResult answer = editor->promptSubmit( const VcsBaseSubmitEditor::PromptSubmitResult answer =
this, nullptr, editor->promptSubmit(this, !m_submitActionTriggered);
!m_submitActionTriggered,
true,
&m_settings.promptOnSubmit);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (answer) { switch (answer) {
case VcsBaseSubmitEditor::SubmitCanceled: case VcsBaseSubmitEditor::SubmitCanceled:

View File

@@ -96,7 +96,6 @@ CvsSettingsPage::CvsSettingsPage(CvsSettings *settings)
s.timeout, s.timeout,
s.diffOptions, s.diffOptions,
}, },
s.promptOnSubmit,
s.describeByCommitId, s.describeByCommitId,
} }
}, },

View File

@@ -1407,7 +1407,7 @@ bool GitPluginPrivate::submitEditorAboutToClose()
// Prompt user. Force a prompt unless submit was actually invoked (that // Prompt user. Force a prompt unless submit was actually invoked (that
// is, the editor was closed or shutdown). // is, the editor was closed or shutdown).
const VcsBaseSubmitEditor::PromptSubmitResult answer const VcsBaseSubmitEditor::PromptSubmitResult answer
= editor->promptSubmit(this, nullptr, !m_submitActionTriggered, false); = editor->promptSubmit(this, !m_submitActionTriggered, false);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (answer) { switch (answer) {
case VcsBaseSubmitEditor::SubmitCanceled: case VcsBaseSubmitEditor::SubmitCanceled:

View File

@@ -663,7 +663,7 @@ bool MercurialPluginPrivate::submitEditorAboutToClose()
QTC_ASSERT(editorFile, return true); QTC_ASSERT(editorFile, return true);
const VcsBaseSubmitEditor::PromptSubmitResult response = const VcsBaseSubmitEditor::PromptSubmitResult response =
commitEditor->promptSubmit(this, nullptr, !m_submitActionTriggered); commitEditor->promptSubmit(this, !m_submitActionTriggered);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (response) { switch (response) {

View File

@@ -1544,19 +1544,13 @@ bool PerforcePluginPrivate::submitEditorAboutToClose()
QTC_ASSERT(editorDocument, return true); QTC_ASSERT(editorDocument, return true);
// Prompt the user. Force a prompt unless submit was actually invoked (that // Prompt the user. Force a prompt unless submit was actually invoked (that
// is, the editor was closed or shutdown). // is, the editor was closed or shutdown).
bool wantsPrompt = m_settings.promptToSubmit.value();
const VcsBaseSubmitEditor::PromptSubmitResult answer = const VcsBaseSubmitEditor::PromptSubmitResult answer =
perforceEditor->promptSubmit(this, &wantsPrompt, !m_submitActionTriggered); perforceEditor->promptSubmit(this, !m_submitActionTriggered);
m_submitActionTriggered = false; m_submitActionTriggered = false;
if (answer == VcsBaseSubmitEditor::SubmitCanceled) if (answer == VcsBaseSubmitEditor::SubmitCanceled)
return false; return false;
// Set without triggering the checking mechanism
if (wantsPrompt != m_settings.promptToSubmit.value()) {
m_settings.promptToSubmit.setValue(wantsPrompt);
m_settings.writeSettings(ICore::settings());
}
if (!DocumentManager::saveDocument(editorDocument)) if (!DocumentManager::saveDocument(editorDocument))
return false; return false;
if (answer == VcsBaseSubmitEditor::SubmitDiscarded) { if (answer == VcsBaseSubmitEditor::SubmitDiscarded) {

View File

@@ -81,11 +81,6 @@ PerforceSettings::PerforceSettings()
timeOutS.setLabelText(tr("Timeout:")); timeOutS.setLabelText(tr("Timeout:"));
timeOutS.setSuffix(tr("s")); timeOutS.setSuffix(tr("s"));
registerAspect(&promptToSubmit);
promptToSubmit.setSettingsKey("PromptForSubmit");
promptToSubmit.setDefaultValue(true);
promptToSubmit.setLabelText(tr("Prompt on submit"));
registerAspect(&autoOpen); registerAspect(&autoOpen);
autoOpen.setSettingsKey("PromptToOpen"); autoOpen.setSettingsKey("PromptToOpen");
autoOpen.setDefaultValue(true); autoOpen.setDefaultValue(true);
@@ -257,7 +252,6 @@ PerforceSettingsPage::PerforceSettingsPage(PerforceSettings *settings)
title(PerforceSettings::tr("Miscellaneous")), title(PerforceSettings::tr("Miscellaneous")),
Column { Column {
Row { s.logCount, s.timeOutS, st }, Row { s.logCount, s.timeOutS, st },
s.promptToSubmit,
s.autoOpen s.autoOpen
} }
}; };

View File

@@ -77,7 +77,6 @@ public:
Utils::IntegerAspect logCount; Utils::IntegerAspect logCount;
Utils::BoolAspect customEnv; Utils::BoolAspect customEnv;
Utils::IntegerAspect timeOutS; Utils::IntegerAspect timeOutS;
Utils::BoolAspect promptToSubmit;
Utils::BoolAspect autoOpen; Utils::BoolAspect autoOpen;
private: private:

View File

@@ -563,8 +563,8 @@ bool SubversionPluginPrivate::submitEditorAboutToClose()
// Prompt user. Force a prompt unless submit was actually invoked (that // Prompt user. Force a prompt unless submit was actually invoked (that
// is, the editor was closed or shutdown). // is, the editor was closed or shutdown).
const VcsBaseSubmitEditor::PromptSubmitResult answer = editor->promptSubmit( const VcsBaseSubmitEditor::PromptSubmitResult answer =
this, nullptr, !m_submitActionTriggered, true, &m_settings.promptOnSubmit); editor->promptSubmit(this, !m_submitActionTriggered);
m_submitActionTriggered = false; m_submitActionTriggered = false;
switch (answer) { switch (answer) {
case VcsBaseSubmitEditor::SubmitCanceled: case VcsBaseSubmitEditor::SubmitCanceled:

View File

@@ -72,9 +72,6 @@ SubversionSettings::SubversionSettings()
timeout.setLabelText(tr("Timeout:")); timeout.setLabelText(tr("Timeout:"));
timeout.setSuffix(tr("s")); timeout.setSuffix(tr("s"));
registerAspect(&promptOnSubmit);
promptOnSubmit.setLabelText(tr("Prompt on submit"));
QObject::connect(&useAuthentication, &BaseAspect::changed, [this] { QObject::connect(&useAuthentication, &BaseAspect::changed, [this] {
userName.setEnabled(useAuthentication.value()); userName.setEnabled(useAuthentication.value());
password.setEnabled(useAuthentication.value()); password.setEnabled(useAuthentication.value());
@@ -115,7 +112,6 @@ SubversionSettingsPage::SubversionSettingsPage(SubversionSettings *settings)
title(SubversionSettings::tr("Miscellaneous")), title(SubversionSettings::tr("Miscellaneous")),
Column { Column {
Row { s.logCount, s.timeout, st }, Row { s.logCount, s.timeout, st },
s.promptOnSubmit,
s.spaceIgnorantAnnotation, s.spaceIgnorantAnnotation,
} }
}, },

View File

@@ -40,11 +40,6 @@ VcsBaseSettings::VcsBaseSettings()
registerAspect(&path); registerAspect(&path);
path.setSettingsKey("Path"); path.setSettingsKey("Path");
registerAspect(&promptOnSubmit);
promptOnSubmit.setSettingsKey("PromptOnSubmit");
promptOnSubmit.setDefaultValue(true);
promptOnSubmit.setLabelText(tr("Prompt on submit"));
registerAspect(&timeout); registerAspect(&timeout);
timeout.setSettingsKey("Timeout"); timeout.setSettingsKey("Timeout");
timeout.setRange(0, 3600 * 24 * 365); timeout.setRange(0, 3600 * 24 * 365);

View File

@@ -21,7 +21,6 @@ public:
Utils::StringAspect userName; Utils::StringAspect userName;
Utils::StringAspect userEmail; Utils::StringAspect userEmail;
Utils::IntegerAspect logCount; Utils::IntegerAspect logCount;
Utils::BoolAspect promptOnSubmit;
Utils::IntegerAspect timeout; // Seconds Utils::IntegerAspect timeout; // Seconds
Utils::StringAspect path; Utils::StringAspect path;

View File

@@ -497,14 +497,9 @@ static QString withUnusedMnemonic(QString string, const QList<QPushButton *> &ot
VcsBaseSubmitEditor::PromptSubmitResult VcsBaseSubmitEditor::PromptSubmitResult
VcsBaseSubmitEditor::promptSubmit(VcsBasePluginPrivate *plugin, VcsBaseSubmitEditor::promptSubmit(VcsBasePluginPrivate *plugin,
bool *promptSettingOld, bool prompt,
bool forcePrompt, bool canCommitOnFailure)
bool canCommitOnFailure,
BoolAspect *promptSetting)
{ {
BoolAspect dummySetting;
if (!promptSetting && !promptSettingOld)
promptSetting = &dummySetting;
auto submitWidget = static_cast<SubmitEditorWidget *>(this->widget()); auto submitWidget = static_cast<SubmitEditorWidget *>(this->widget());
Core::EditorManager::activateEditor(this, Core::EditorManager::IgnoreNavigationHistory); Core::EditorManager::activateEditor(this, Core::EditorManager::IgnoreNavigationHistory);
@@ -514,9 +509,6 @@ VcsBaseSubmitEditor::PromptSubmitResult
QString errorMessage; QString errorMessage;
const bool value = promptSettingOld ? *promptSettingOld : promptSetting->value();
const bool prompt = forcePrompt || value;
// Pop up a message depending on whether the check succeeded and the // Pop up a message depending on whether the check succeeded and the
// user wants to be prompted // user wants to be prompted
bool canCommit = checkSubmitMessage(&errorMessage) && submitWidget->canSubmit(&errorMessage); bool canCommit = checkSubmitMessage(&errorMessage) && submitWidget->canSubmit(&errorMessage);
@@ -536,10 +528,6 @@ VcsBaseSubmitEditor::PromptSubmitResult
errorMessage.isEmpty() ? errorMessage : ": " + errorMessage); errorMessage.isEmpty() ? errorMessage : ": " + errorMessage);
} }
mb.setText(message); mb.setText(message);
mb.setCheckBoxText(tr("Prompt to %1").arg(commitName.toLower()));
mb.setChecked(value);
// Provide check box to turn off prompt ONLY if it was not forced
mb.setCheckBoxVisible(value && !forcePrompt);
QDialogButtonBox::StandardButtons buttons = QDialogButtonBox::Close | QDialogButtonBox::Cancel; QDialogButtonBox::StandardButtons buttons = QDialogButtonBox::Close | QDialogButtonBox::Cancel;
if (canCommit || canCommitOnFailure) if (canCommit || canCommitOnFailure)
buttons |= QDialogButtonBox::Ok; buttons |= QDialogButtonBox::Ok;
@@ -548,19 +536,14 @@ VcsBaseSubmitEditor::PromptSubmitResult
// On Windows there is no mnemonic for Close. Set it explicitly. // On Windows there is no mnemonic for Close. Set it explicitly.
mb.button(QDialogButtonBox::Close)->setText(tr("&Close")); mb.button(QDialogButtonBox::Close)->setText(tr("&Close"));
cancelButton->setText(tr("&Keep Editing")); cancelButton->setText(tr("&Keep Editing"));
// forcePrompt is true when the editor is closed, and false when triggered by the submit action // prompt is true when the editor is closed, and false when triggered by the submit action
if (forcePrompt) if (prompt)
cancelButton->setDefault(true); cancelButton->setDefault(true);
if (QPushButton *commitButton = mb.button(QDialogButtonBox::Ok)) { if (QPushButton *commitButton = mb.button(QDialogButtonBox::Ok)) {
commitButton->setText(withUnusedMnemonic(commitName, commitButton->setText(withUnusedMnemonic(commitName,
{cancelButton, mb.button(QDialogButtonBox::Close)})); {cancelButton, mb.button(QDialogButtonBox::Close)}));
} }
if (mb.exec() == QDialog::Accepted) { mb.exec();
if (promptSettingOld)
*promptSettingOld = mb.isChecked();
else
promptSetting->setValue(mb.isChecked());
}
QAbstractButton *chosen = mb.clickedButton(); QAbstractButton *chosen = mb.clickedButton();
if (!chosen || chosen == cancelButton) if (!chosen || chosen == cancelButton)
return SubmitCanceled; return SubmitCanceled;

View File

@@ -55,10 +55,8 @@ public:
// prompt setting. The user can uncheck it from the message box. // prompt setting. The user can uncheck it from the message box.
enum PromptSubmitResult { SubmitConfirmed, SubmitCanceled, SubmitDiscarded }; enum PromptSubmitResult { SubmitConfirmed, SubmitCanceled, SubmitDiscarded };
PromptSubmitResult promptSubmit(VcsBasePluginPrivate *plugin, PromptSubmitResult promptSubmit(VcsBasePluginPrivate *plugin,
bool *promptSettingOld, bool prompt,
bool forcePrompt = false, bool canCommitOnFailure = true);
bool canCommitOnFailure = true,
Utils::BoolAspect *promptSetting = nullptr);
QAbstractItemView::SelectionMode fileListSelectionMode() const; QAbstractItemView::SelectionMode fileListSelectionMode() const;
void setFileListSelectionMode(QAbstractItemView::SelectionMode sm); void setFileListSelectionMode(QAbstractItemView::SelectionMode sm);