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

Unified Diff: Source/devtools/front_end/FileSystemProjectDelegate.js

Issue 18341003: DevTools: [CodeMirror] Add syntax highlighting for some other languages. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebaselined Created 7 years, 6 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: 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);
},

Powered by Google App Engine
This is Rietveld 408576698