Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(917)

Unified Diff: third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js

Issue 1369063002: DevTools: merge excluded folder manager into isolated file system. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebaselined Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js
diff --git a/third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js b/third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js
index 7b2baa3a224719992836b76111733e0f7e6c5f7b..43b277440d4bdfb3df9d544dc980e72ce89d3714 100644
--- a/third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js
+++ b/third_party/WebKit/Source/devtools/front_end/workspace/IsolatedFileSystemManager.js
@@ -36,11 +36,12 @@ WebInspector.IsolatedFileSystemManager = function()
{
/** @type {!Object.<string, !WebInspector.IsolatedFileSystem>} */
this._fileSystems = {};
- this._excludedFolderManager = new WebInspector.ExcludedFolderManager();
InspectorFrontendHost.events.addEventListener(InspectorFrontendHostAPI.Events.FileSystemsLoaded, this._onFileSystemsLoaded, this);
InspectorFrontendHost.events.addEventListener(InspectorFrontendHostAPI.Events.FileSystemRemoved, this._onFileSystemRemoved, this);
InspectorFrontendHost.events.addEventListener(InspectorFrontendHostAPI.Events.FileSystemAdded, this._onFileSystemAdded, this);
+
+ this._initExcludePatterSetting();
}
/** @typedef {!{fileSystemName: string, rootURL: string, fileSystemPath: string}} */
@@ -48,24 +49,17 @@ WebInspector.IsolatedFileSystemManager.FileSystem;
WebInspector.IsolatedFileSystemManager.Events = {
FileSystemAdded: "FileSystemAdded",
- FileSystemRemoved: "FileSystemRemoved"
+ FileSystemRemoved: "FileSystemRemoved",
+ ExcludedFolderAdded: "ExcludedFolderAdded",
+ ExcludedFolderRemoved: "ExcludedFolderRemoved"
}
WebInspector.IsolatedFileSystemManager.prototype = {
/**
- * @return {!WebInspector.ExcludedFolderManager}
- */
- excludedFolderManager: function()
- {
- return this._excludedFolderManager;
- },
-
- /**
* @param {function()} callback
*/
initialize: function(callback)
{
- console.assert(!this._loaded);
this._initializeCallback = callback;
InspectorFrontendHost.requestFileSystems();
},
@@ -95,8 +89,6 @@ WebInspector.IsolatedFileSystemManager.prototype = {
addedFileSystemPaths[fileSystems[i].fileSystemPath] = true;
}
- this._loaded = true;
-
this._initializeCallback();
delete this._initializeCallback;
},
@@ -138,11 +130,12 @@ WebInspector.IsolatedFileSystemManager.prototype = {
*/
_fileSystemRemoved: function(fileSystemPath)
{
- this._excludedFolderManager.removeFileSystem(fileSystemPath);
var isolatedFileSystem = this._fileSystems[fileSystemPath];
delete this._fileSystems[fileSystemPath];
- if (isolatedFileSystem)
+ if (isolatedFileSystem) {
+ isolatedFileSystem.fileSystemRemoved();
this.dispatchEventToListeners(WebInspector.IsolatedFileSystemManager.Events.FileSystemRemoved, isolatedFileSystem);
+ }
},
/**
@@ -153,6 +146,63 @@ WebInspector.IsolatedFileSystemManager.prototype = {
return Object.keys(this._fileSystems);
},
+ /**
+ * @param {string} fileSystemPath
+ * @return {?WebInspector.IsolatedFileSystem}
+ */
+ fileSystem: function(fileSystemPath)
+ {
+ return this._fileSystems[fileSystemPath];
+ },
+
+ _initExcludePatterSetting: function()
+ {
+ var defaultCommonExcludedFolders = [
+ "/\\.git/",
+ "/\\.sass-cache/",
+ "/\\.hg/",
+ "/\\.idea/",
+ "/\\.svn/",
+ "/\\.cache/",
+ "/\\.project/"
+ ];
+ var defaultWinExcludedFolders = [
+ "/Thumbs.db$",
+ "/ehthumbs.db$",
+ "/Desktop.ini$",
+ "/\\$RECYCLE.BIN/"
+ ];
+ var defaultMacExcludedFolders = [
+ "/\\.DS_Store$",
+ "/\\.Trashes$",
+ "/\\.Spotlight-V100$",
+ "/\\.AppleDouble$",
+ "/\\.LSOverride$",
+ "/Icon$",
+ "/\\._.*$"
+ ];
+ var defaultLinuxExcludedFolders = [
+ "/.*~$"
+ ];
+ var defaultExcludedFolders = defaultCommonExcludedFolders;
+ if (WebInspector.isWin())
+ defaultExcludedFolders = defaultExcludedFolders.concat(defaultWinExcludedFolders);
+ else if (WebInspector.isMac())
+ defaultExcludedFolders = defaultExcludedFolders.concat(defaultMacExcludedFolders);
+ else
+ defaultExcludedFolders = defaultExcludedFolders.concat(defaultLinuxExcludedFolders);
+ var defaultExcludedFoldersPattern = defaultExcludedFolders.join("|");
+ this._workspaceFolderExcludePatternSetting = WebInspector.settings.createRegExpSetting("workspaceFolderExcludePattern", defaultExcludedFoldersPattern, WebInspector.isWin() ? "i" : "");
+ },
+
+ /**
+ * @return {!WebInspector.Setting}
+ */
+ workspaceFolderExcludePatternSetting: function()
+ {
+ return this._workspaceFolderExcludePatternSetting;
+ },
+
__proto__: WebInspector.Object.prototype
}

Powered by Google App Engine
This is Rietveld 408576698