aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins
diff options
context:
space:
mode:
authorFriedemann Kleint <[email protected]>2010-04-23 16:21:02 +0200
committerFriedemann Kleint <[email protected]>2010-04-23 16:21:09 +0200
commit5923733889075800a0979c73476bf3bbae204e89 (patch)
treee387ff01d3eecf606fba3e40782d046f60ce8bb5 /src/plugins
parentfbbb6cf64b6b7081eec3308dea008956f2bf5c66 (diff)
VCS: Speed up
Do not listen on ICore::contextChanged to update actions (became slow after additional contexts). git: Make code to find top level faster, avoid constructing file info lists. Acked-by: con
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/git/gitclient.cpp16
-rw-r--r--src/plugins/git/gitclient.h1
-rw-r--r--src/plugins/vcsbase/vcsbaseplugin.cpp2
3 files changed, 1 insertions, 18 deletions
diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp
index 6102efcc866..242e42db45a 100644
--- a/src/plugins/git/gitclient.cpp
+++ b/src/plugins/git/gitclient.cpp
@@ -153,28 +153,14 @@ GitClient::~GitClient()
const char *GitClient::noColorOption = "--no-color";
-QString GitClient::findRepositoryForFile(const QString &fileName)
-{
- const QString gitDirectory = QLatin1String(kGitDirectoryC);
- const QFileInfo info(fileName);
- QDir dir = info.absoluteDir();
- do {
- if (dir.entryList(QDir::AllDirs|QDir::Hidden).contains(gitDirectory))
- return dir.absolutePath();
- } while (dir.cdUp());
-
- return QString();
-}
-
QString GitClient::findRepositoryForDirectory(const QString &dir)
{
const QString gitDirectory = QLatin1String(kGitDirectoryC);
QDir directory(dir);
do {
- if (directory.entryList(QDir::AllDirs|QDir::Hidden).contains(gitDirectory))
+ if (QFileInfo(directory, gitDirectory).isDir())
return directory.absolutePath();
} while (directory.cdUp());
-
return QString();
}
diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h
index 81803fe8b2e..99f95fd6e01 100644
--- a/src/plugins/git/gitclient.h
+++ b/src/plugins/git/gitclient.h
@@ -75,7 +75,6 @@ public:
bool managesDirectory(const QString &) const { return false; }
QString findTopLevelForDirectory(const QString &) const { return QString(); }
- static QString findRepositoryForFile(const QString &fileName);
static QString findRepositoryForDirectory(const QString &dir);
void diff(const QString &workingDirectory, const QStringList &diffArgs, const QString &fileName);
diff --git a/src/plugins/vcsbase/vcsbaseplugin.cpp b/src/plugins/vcsbase/vcsbaseplugin.cpp
index 40d781fcb0c..436920142f2 100644
--- a/src/plugins/vcsbase/vcsbaseplugin.cpp
+++ b/src/plugins/vcsbase/vcsbaseplugin.cpp
@@ -173,8 +173,6 @@ StateListener::StateListener(QObject *parent) :
QObject(parent)
{
Core::ICore *core = Core::ICore::instance();
- connect(core, SIGNAL(contextChanged(Core::IContext*,QList<int>)),
- this, SLOT(slotStateChanged()));
connect(core->fileManager(), SIGNAL(currentFileChanged(QString)),
this, SLOT(slotStateChanged()));