diff options
author | Orgad Shaneh <orgad.shaneh@audiocodes.com> | 2013-10-23 12:37:10 +0300 |
---|---|---|
committer | Orgad Shaneh <orgads@gmail.com> | 2013-10-30 08:18:40 +0100 |
commit | 0dbaac7bcf205b71ed8850623d6794e111cd9470 (patch) | |
tree | c14c8bab81ddd7f9272f17b183fbde77b159d8d0 /src/plugins/texteditor/findinfiles.cpp | |
parent | 491ba6faabd3d8a244c0127f9b1327f7066de227 (diff) |
TextEditor: Normalize path on Windows
Searching with wrong case causes the code-model to have duplicate files
when opening a file from the results
Change-Id: Id3e4d875230e14c2ab23345a7440372f71f76e8b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: David Schulz <david.schulz@digia.com>
Diffstat (limited to 'src/plugins/texteditor/findinfiles.cpp')
-rw-r--r-- | src/plugins/texteditor/findinfiles.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/plugins/texteditor/findinfiles.cpp b/src/plugins/texteditor/findinfiles.cpp index e103ced903c..81837ee2839 100644 --- a/src/plugins/texteditor/findinfiles.cpp +++ b/src/plugins/texteditor/findinfiles.cpp @@ -32,6 +32,7 @@ #include <coreplugin/editormanager/editormanager.h> #include <find/findplugin.h> #include <utils/filesearch.h> +#include <utils/fileutils.h> #include <utils/qtcassert.h> #include <QDebug> @@ -87,14 +88,13 @@ Utils::FileIterator *FindInFiles::files(const QStringList &nameFilters, QVariant FindInFiles::additionalParameters() const { - return qVariantFromValue(QDir::fromNativeSeparators(m_directory->currentText())); + return qVariantFromValue(path()); } QString FindInFiles::label() const { const QChar slash = QLatin1Char('/'); - const QStringList &nonEmptyComponents = QDir::cleanPath( - QFileInfo(QDir::fromNativeSeparators(m_directory->currentText())).absoluteFilePath()) + const QStringList &nonEmptyComponents = QDir::cleanPath(QFileInfo(path()).absoluteFilePath()) .split(slash, QString::SkipEmptyParts); return tr("Directory '%1':").arg(nonEmptyComponents.isEmpty() ? QString(slash) : nonEmptyComponents.last()); } @@ -103,7 +103,7 @@ QString FindInFiles::toolTip() const { //: %3 is filled by BaseFileFind::runNewSearch return tr("Path: %1\nFilter: %2\n%3") - .arg(QDir::toNativeSeparators(QFileInfo(m_directory->currentText()).absoluteFilePath())) + .arg(QDir::toNativeSeparators(QFileInfo(path()).absoluteFilePath())) .arg(fileNameFilters().join(QLatin1String(","))); } @@ -149,7 +149,7 @@ void FindInFiles::openFileBrowser() { if (!m_directory) return; - QString oldDir = m_directory->currentText(); + QString oldDir = path(); if (!QDir(oldDir).exists()) oldDir.clear(); QString dir = QFileDialog::getExistingDirectory(m_configWidget, @@ -158,6 +158,12 @@ void FindInFiles::openFileBrowser() m_directory->setEditText(QDir::toNativeSeparators(dir)); } +QString FindInFiles::path() const +{ + return QDir::fromNativeSeparators(Utils::FileUtils::normalizePathName( + m_directory->currentText())); +} + void FindInFiles::writeSettings(QSettings *settings) { settings->beginGroup(QLatin1String("FindInFiles")); |