settings->remove(FolderMan::escapeAlias(_definition.alias));
}
+bool Folder::isFileExcludedAbsolute(const QString& fullPath) const
+{
+ return _engine->excludedFiles().isExcluded(fullPath, path(), _definition.ignoreHiddenFiles);
+}
+
bool Folder::isFileExcludedRelative(const QString& relativePath) const
{
return _engine->excludedFiles().isExcluded(path() + relativePath, path(), _definition.ignoreHiddenFiles);
/// Removes the folder from the account's settings.
void removeFromSettings() const;
+ /**
+ * Returns whether a file inside this folder should be excluded.
+ */
+ bool isFileExcludedAbsolute(const QString& fullPath) const;
+
/**
* Returns whether a file inside this folder should be excluded.
*/
: QObject(folder),
_folder(folder)
{
- _canonicalFolderPath = QFileInfo(root).canonicalFilePath();
-
- _d.reset(new FolderWatcherPrivate(this, _canonicalFolderPath));
+ _d.reset(new FolderWatcherPrivate(this, root));
_timer.start();
}
if( !_folder ) return false;
#ifndef OWNCLOUD_TEST
- QString relPath = path;
- if (relPath.startsWith(_canonicalFolderPath)) {
- relPath = relPath.remove(0, _canonicalFolderPath.length()+1);
- if (_folder->isFileExcludedRelative(relPath)) {
- qDebug() << "* Ignoring file" << relPath << "in" << _canonicalFolderPath;
- return true;
- }
+ if (_folder->isFileExcludedAbsolute(path)) {
+ qDebug() << "* Ignoring file" << path;
+ return true;
}
- // there could be an odd watch event not being inside the _canonicalFolderPath
- // We will just not ignore it then, who knows.
-
#endif
return false;
}