| Index: Source/WebCore/inspector/front-end/ScriptsPanel.js
|
| ===================================================================
|
| --- Source/WebCore/inspector/front-end/ScriptsPanel.js (revision 97058)
|
| +++ Source/WebCore/inspector/front-end/ScriptsPanel.js (working copy)
|
| @@ -280,19 +280,33 @@
|
| option._uiSourceCode = uiSourceCode;
|
| var parsedURL = uiSourceCode.url.asParsedURL();
|
|
|
| + const indent = WebInspector.isMac() ? "" : "\u00a0\u00a0\u00a0\u00a0";
|
| +
|
| var names = this._folderAndDisplayNameForScriptURL(uiSourceCode.url);
|
| - const indent = (!showScriptFolders || WebInspector.isMac()) ? "" : "\u00a0\u00a0\u00a0\u00a0";
|
| - option.text = indent + (names.displayName ? names.displayName : WebInspector.UIString("(program)"));
|
| option.displayName = names.displayName;
|
|
|
| - var folderNameForSorting;
|
| - if (uiSourceCode.isContentScript)
|
| - folderNameForSorting = "2:" + names.folderName;
|
| - else
|
| - folderNameForSorting = "0:" + (names.domain ? names.domain + "\t\t" : "") + names.folderName;
|
| + var contentScriptPrefix = uiSourceCode.isContentScript ? "2:" : "0:";
|
|
|
| - option.nameForSorting = folderNameForSorting + "\t/\t" + names.displayName; // Use '\t' to make files stick to their folder.
|
| + if (uiSourceCode.isContentScript && names.domain) {
|
| + // Render extension domain as a path in structured view
|
| + names.folderName = names.domain + (names.folderName ? names.folderName : "");
|
| + delete names.domain;
|
| + }
|
| +
|
| + var folderNameForSorting = contentScriptPrefix + (names.domain ? names.domain + "\t\t" : "") + names.folderName;
|
| +
|
| + if (showScriptFolders) {
|
| + option.text = indent + (names.displayName ? names.displayName : WebInspector.UIString("(program)"));
|
| + option.nameForSorting = folderNameForSorting + "\t/\t" + names.displayName; // Use '\t' to make files stick to their folder.
|
| + } else {
|
| + option.text = names.displayName ? names.displayName : WebInspector.UIString("(program)");
|
| + // Content script should contain its domain name as a prefix
|
| + if (uiSourceCode.isContentScript && names.folderName)
|
| + option.text = names.folderName + "/" + option.text;
|
| + option.nameForSorting = contentScriptPrefix + option.text;
|
| + }
|
| option.title = uiSourceCode.url;
|
| +
|
| if (uiSourceCode.isContentScript)
|
| option.addStyleClass("extension-script");
|
|
|
| @@ -300,10 +314,7 @@
|
| {
|
| function optionCompare(a, b)
|
| {
|
| - if (showScriptFolders)
|
| - return a.nameForSorting.localeCompare(b.nameForSorting);
|
| - else
|
| - return a.displayName.localeCompare(b.displayName);
|
| + return a.nameForSorting.localeCompare(b.nameForSorting);
|
| }
|
| var insertionIndex = insertionIndexForObjectInListSortedByFunction(option, select.childNodes, optionCompare);
|
| select.insertBefore(option, insertionIndex < 0 ? null : select.childNodes.item(insertionIndex));
|
| @@ -329,12 +340,12 @@
|
| insertOrdered(domainOption);
|
| }
|
|
|
| - if (showScriptFolders && names.folderName && !select.folderOptions[names.folderName]) {
|
| + if (showScriptFolders && names.folderName && !select.folderOptions[folderNameForSorting]) {
|
| var folderOption = document.createElement("option");
|
| folderOption.text = names.folderName;
|
| folderOption.nameForSorting = folderNameForSorting;
|
| folderOption.disabled = true;
|
| - select.folderOptions[names.folderName] = folderOption;
|
| + select.folderOptions[folderNameForSorting] = folderOption;
|
| insertOrdered(folderOption);
|
| }
|
|
|
|
|