forked from qt-creator/qt-creator
ProjectTree: Make project loading fast again
Change-Id: I4a84579311a606d442805acbac2793e8b5ddf515 Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
This commit is contained in:
@@ -192,7 +192,9 @@ void ProjectTree::updateFromDocumentManager(bool invalidCurrentNode)
|
||||
|
||||
void ProjectTree::update(Node *node, Project *project)
|
||||
{
|
||||
if (project != m_currentProject) {
|
||||
bool changedProject = project != m_currentProject;
|
||||
bool changedNode = node != m_currentNode;
|
||||
if (changedProject) {
|
||||
if (m_currentProject) {
|
||||
disconnect(m_currentProject, &Project::projectContextUpdated,
|
||||
this, &ProjectTree::updateContext);
|
||||
@@ -216,16 +218,18 @@ void ProjectTree::update(Node *node, Project *project)
|
||||
Qt::UniqueConnection);
|
||||
}
|
||||
|
||||
if (node != m_currentNode) {
|
||||
if (changedNode) {
|
||||
m_currentNode = node;
|
||||
emit currentNodeChanged(m_currentNode, project);
|
||||
}
|
||||
|
||||
emit currentProjectChanged(m_currentProject);
|
||||
|
||||
if (changedProject) {
|
||||
emit currentProjectChanged(m_currentProject);
|
||||
updateDefaultLocationForNewFiles();
|
||||
updateContext();
|
||||
}
|
||||
}
|
||||
|
||||
void ProjectTree::updateDefaultLocationForNewFiles()
|
||||
{
|
||||
|
Reference in New Issue
Block a user