diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp index b6a5a7187e3cc3f96c0e5cdffaf4cbdc5328e7e4..13ddb6a66bfa82c1f3bf2e1f3dff161b18507750 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.cpp +++ b/src/plugins/coreplugin/editormanager/editormanager.cpp @@ -1411,7 +1411,7 @@ EditorManager::makeFileWritable(IFile *file) IVersionControl *versionControl = m_d->m_core->vcsManager()->findVersionControlForDirectory(directory); const QString &fileName = file->fileName(); - switch (FileManager::promptReadOnlyFile(fileName, versionControl, m_d->m_core->mainWindow(), true)) { + switch (FileManager::promptReadOnlyFile(fileName, versionControl, m_d->m_core->mainWindow(), file->isSaveAsAllowed())) { case FileManager::RO_OpenVCS: if (!versionControl->vcsOpen(fileName)) { QMessageBox::warning(m_d->m_core->mainWindow(), tr("Failed!"), tr("Could not open the file for editing with SCC.")); @@ -1479,6 +1479,7 @@ bool EditorManager::saveFileAs(IFile *fileParam) return success; } +/* Adds the file name to the recent files if there is at least one non-temporary editor for it */ void EditorManager::addFileToRecentFiles(IFile *file) { bool isTemporary = true; diff --git a/src/plugins/coreplugin/filemanager.cpp b/src/plugins/coreplugin/filemanager.cpp index d6a1b64d654d2515af45ad81cfdf46f197e56506..d9887ea5328add8da920202670dccfb782649d0a 100644 --- a/src/plugins/coreplugin/filemanager.cpp +++ b/src/plugins/coreplugin/filemanager.cpp @@ -840,7 +840,7 @@ FileManager::ReadOnlyAction return RO_OpenVCS; if (clickedButton == makeWritableButton) return RO_MakeWriteable; - if (clickedButton == saveAsButton) + if (displaySaveAsButton && clickedButton == saveAsButton) return RO_SaveAs; return RO_Cancel; }