| Index: Source/devtools/front_end/FileSystemProjectDelegate.js
|
| diff --git a/Source/devtools/front_end/FileSystemProjectDelegate.js b/Source/devtools/front_end/FileSystemProjectDelegate.js
|
| index 6e89bc5f66a5f29e5e13e793411fa49adafb5696..7013ec1e4c6bb658ed2036f9e632cfca37c5c7e2 100644
|
| --- a/Source/devtools/front_end/FileSystemProjectDelegate.js
|
| +++ b/Source/devtools/front_end/FileSystemProjectDelegate.js
|
| @@ -41,8 +41,9 @@ WebInspector.FileSystemProjectDelegate = function(isolatedFileSystem, workspace)
|
| this._workspace = workspace;
|
| }
|
|
|
| -WebInspector.FileSystemProjectDelegate._scriptExtensions = ["js", "java", "cc", "cpp", "h", "cs", "py", "php"].keySet();
|
| -WebInspector.FileSystemProjectDelegate._styleSheetExtensions = ["css", "scss", "sass"].keySet();
|
| +WebInspector.FileSystemProjectDelegate._scriptExtensions = ["js", "java", "coffee", "ts", "dart"].keySet();
|
| +WebInspector.FileSystemProjectDelegate._styleSheetExtensions = ["css", "scss", "sass", "less"].keySet();
|
| +WebInspector.FileSystemProjectDelegate._documentExtensions = ["htm", "html", "asp", "aspx", "phtml", "jsp"].keySet();
|
|
|
| WebInspector.FileSystemProjectDelegate.projectId = function(fileSystemPath)
|
| {
|
| @@ -105,8 +106,9 @@ WebInspector.FileSystemProjectDelegate.prototype = {
|
| */
|
| function innerCallback(content)
|
| {
|
| - var contentType = this._contentTypeForPath(path);
|
| - callback(content, false, contentType.canonicalMimeType());
|
| + var extension = this._extensionForPath(path);
|
| + var mimeType = WebInspector.ResourceType.mimeTypesForExtensions[extension];
|
| + callback(content, false, mimeType);
|
| }
|
| },
|
|
|
| @@ -184,20 +186,27 @@ WebInspector.FileSystemProjectDelegate.prototype = {
|
|
|
| /**
|
| * @param {string} path
|
| - * @return {WebInspector.ResourceType}
|
| + * @return {string}
|
| */
|
| - _contentTypeForPath: function(path)
|
| + _extensionForPath: function(path)
|
| {
|
| var extensionIndex = path.lastIndexOf(".");
|
| - var extension = "";
|
| - if (extensionIndex !== -1)
|
| - extension = path.substring(extensionIndex + 1).toLowerCase();
|
| - var contentType = WebInspector.resourceTypes.Other;
|
| + if (extensionIndex === -1)
|
| + return "";
|
| + return path.substring(extensionIndex + 1).toLowerCase();
|
| + },
|
| +
|
| + /**
|
| + * @param {string} extension
|
| + * @return {WebInspector.ResourceType}
|
| + */
|
| + _contentTypeForExtension: function(extension)
|
| + {
|
| if (WebInspector.FileSystemProjectDelegate._scriptExtensions[extension])
|
| return WebInspector.resourceTypes.Script;
|
| if (WebInspector.FileSystemProjectDelegate._styleSheetExtensions[extension])
|
| return WebInspector.resourceTypes.Stylesheet;
|
| - if (extension === "html" || extension === "htm")
|
| + if (WebInspector.FileSystemProjectDelegate._documentExtensions[extension])
|
| return WebInspector.resourceTypes.Document;
|
| return WebInspector.resourceTypes.Other;
|
| },
|
| @@ -221,7 +230,9 @@ WebInspector.FileSystemProjectDelegate.prototype = {
|
| var name = filePath.substring(slash + 1);
|
|
|
| var url = this._workspace.urlForPath(this._fileSystem.path(), filePath);
|
| - var contentType = this._contentTypeForPath(filePath);
|
| + var extension = this._extensionForPath(filePath);
|
| + var contentType = this._contentTypeForExtension(extension);
|
| +
|
| var fileDescriptor = new WebInspector.FileDescriptor(parentPath, name, "file://" + fullPath, url, contentType, true);
|
| this.dispatchEventToListeners(WebInspector.ProjectDelegate.Events.FileAdded, fileDescriptor);
|
| },
|
|
|