forked from qt-creator/qt-creator
Git: Fix branch expansion on show before the diff display is done
The description is shown first (with the <Expand> placeholder), and the diff parsing can be long. If <Expand> is clicked during parsing, it fails because the base directory is not set yet. Change-Id: Ib5e839b292c32091c726f24eb643d0fa5a142cb7 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
committed by
Orgad Shaneh
parent
2b650f713a
commit
eaf8ccf118
@@ -55,6 +55,11 @@ QString DiffEditorController::baseDirectory() const
|
|||||||
return m_document->baseDirectory();
|
return m_document->baseDirectory();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DiffEditorController::setBaseDirectory(const QString &directory)
|
||||||
|
{
|
||||||
|
m_document->setBaseDirectory(directory);
|
||||||
|
}
|
||||||
|
|
||||||
int DiffEditorController::contextLineCount() const
|
int DiffEditorController::contextLineCount() const
|
||||||
{
|
{
|
||||||
return m_document->contextLineCount();
|
return m_document->contextLineCount();
|
||||||
|
@@ -48,6 +48,7 @@ public:
|
|||||||
bool isReloading() const;
|
bool isReloading() const;
|
||||||
|
|
||||||
QString baseDirectory() const;
|
QString baseDirectory() const;
|
||||||
|
void setBaseDirectory(const QString &directory);
|
||||||
int contextLineCount() const;
|
int contextLineCount() const;
|
||||||
bool ignoreWhitespace() const;
|
bool ignoreWhitespace() const;
|
||||||
|
|
||||||
|
@@ -113,7 +113,8 @@ void DiffEditorDocument::setDiffFiles(const QList<FileData> &data, const QString
|
|||||||
const QString &startupFile)
|
const QString &startupFile)
|
||||||
{
|
{
|
||||||
m_diffFiles = data;
|
m_diffFiles = data;
|
||||||
m_baseDirectory = directory;
|
if (!directory.isEmpty())
|
||||||
|
m_baseDirectory = directory;
|
||||||
m_startupFile = startupFile;
|
m_startupFile = startupFile;
|
||||||
emit documentChanged();
|
emit documentChanged();
|
||||||
}
|
}
|
||||||
@@ -128,6 +129,11 @@ QString DiffEditorDocument::baseDirectory() const
|
|||||||
return m_baseDirectory;
|
return m_baseDirectory;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DiffEditorDocument::setBaseDirectory(const QString &directory)
|
||||||
|
{
|
||||||
|
m_baseDirectory = directory;
|
||||||
|
}
|
||||||
|
|
||||||
QString DiffEditorDocument::startupFile() const
|
QString DiffEditorDocument::startupFile() const
|
||||||
{
|
{
|
||||||
return m_startupFile;
|
return m_startupFile;
|
||||||
|
@@ -60,6 +60,7 @@ public:
|
|||||||
const QString &startupFile = QString());
|
const QString &startupFile = QString());
|
||||||
QList<FileData> diffFiles() const;
|
QList<FileData> diffFiles() const;
|
||||||
QString baseDirectory() const;
|
QString baseDirectory() const;
|
||||||
|
void setBaseDirectory(const QString &directory);
|
||||||
QString startupFile() const;
|
QString startupFile() const;
|
||||||
|
|
||||||
void setDescription(const QString &description);
|
void setDescription(const QString &description);
|
||||||
|
@@ -236,6 +236,7 @@ VcsBaseDiffEditorController::VcsBaseDiffEditorController(IDocument *document,
|
|||||||
: DiffEditorController(document)
|
: DiffEditorController(document)
|
||||||
, d(new VcsBaseDiffEditorControllerPrivate(this, client, workingDirectory))
|
, d(new VcsBaseDiffEditorControllerPrivate(this, client, workingDirectory))
|
||||||
{
|
{
|
||||||
|
setBaseDirectory(workingDirectory);
|
||||||
}
|
}
|
||||||
|
|
||||||
VcsBaseDiffEditorController::~VcsBaseDiffEditorController()
|
VcsBaseDiffEditorController::~VcsBaseDiffEditorController()
|
||||||
|
Reference in New Issue
Block a user