Diff
Modified: trunk/LayoutTests/ChangeLog (92957 => 92958)
--- trunk/LayoutTests/ChangeLog 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/LayoutTests/ChangeLog 2011-08-12 13:54:10 UTC (rev 92958)
@@ -1,3 +1,16 @@
+2011-08-12 Pavel Feldman <[email protected]>
+
+ Web Inspector: make folders optional in the Scripts' panel file selector.
+ https://bugs.webkit.org/show_bug.cgi?id=66100
+
+ Reviewed by Yury Semikhatsky.
+
+ * http/tests/inspector/debugger-test.js:
+ (initialize_DebuggerTest):
+ * inspector/debugger/scripts-sorting-expected.txt:
+ * inspector/debugger/scripts-sorting.html:
+ * platform/chromium/inspector/debugger/scripts-sorting-expected.txt:
+
2011-08-12 Pavel Podivilov <[email protected]>
Web Inspector: add space between error info and error message in source frame message bubble.
Modified: trunk/LayoutTests/http/tests/inspector/debugger-test.js (92957 => 92958)
--- trunk/LayoutTests/http/tests/inspector/debugger-test.js 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/LayoutTests/http/tests/inspector/debugger-test.js 2011-08-12 13:54:10 UTC (rev 92958)
@@ -159,7 +159,7 @@
{
var filesSelect = document.getElementById("scripts-files");
for (var i = 0; i < filesSelect.length; ++i) {
- if (filesSelect[i].scriptNameForTest === scriptName) {
+ if (filesSelect[i].displayName === scriptName) {
filesSelect.selectedIndex = i;
WebInspector.panels.scripts._filesSelectChanged();
var sourceFrame = WebInspector.panels.scripts.visibleView;
Modified: trunk/LayoutTests/inspector/debugger/scripts-sorting-expected.txt (92957 => 92958)
--- trunk/LayoutTests/inspector/debugger/scripts-sorting-expected.txt 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/LayoutTests/inspector/debugger/scripts-sorting-expected.txt 2011-08-12 13:54:10 UTC (rev 92958)
@@ -1,5 +1,11 @@
Tests scripts sorting in the scripts panel.
Debugger was enabled.
+
+WebInspector.settings.showScriptFolders = true
+
+WebInspector.settings.showScriptFolders = false
+
+WebInspector.settings.showScriptFolders = true
Debugger was disabled.
Modified: trunk/LayoutTests/inspector/debugger/scripts-sorting.html (92957 => 92958)
--- trunk/LayoutTests/inspector/debugger/scripts-sorting.html 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/LayoutTests/inspector/debugger/scripts-sorting.html 2011-08-12 13:54:10 UTC (rev 92958)
@@ -30,6 +30,21 @@
function step1()
{
+ try {
+ dumpScriptsList();
+ WebInspector.settings.showScriptFolders.set(false);
+ dumpScriptsList();
+ } finally {
+ WebInspector.settings.showScriptFolders.set(true);
+ }
+ dumpScriptsList();
+ InspectorTest.completeDebuggerTest();
+ }
+
+ function dumpScriptsList()
+ {
+ InspectorTest.addResult("");
+ InspectorTest.addResult("WebInspector.settings.showScriptFolders = " + WebInspector.settings.showScriptFolders.get());
var select = WebInspector.panels.scripts._filesSelectElement;
for (var i = 0; i < select.length; ++i) {
var text = select[i].textContent.replace(/\u00a0/g, " ");
@@ -37,7 +52,6 @@
continue;
InspectorTest.addResult(text);
}
- InspectorTest.completeDebuggerTest();
}
}
</script>
Modified: trunk/LayoutTests/platform/chromium/inspector/debugger/scripts-sorting-expected.txt (92957 => 92958)
--- trunk/LayoutTests/platform/chromium/inspector/debugger/scripts-sorting-expected.txt 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/LayoutTests/platform/chromium/inspector/debugger/scripts-sorting-expected.txt 2011-08-12 13:54:10 UTC (rev 92958)
@@ -1,6 +1,8 @@
Tests scripts sorting in the scripts panel.
Debugger was enabled.
+
+WebInspector.settings.showScriptFolders = true
*Non*URL*path
— foo.com —
block.js?block=foo
@@ -15,5 +17,33 @@
/i/js
jquery-1.5.1.min.js
jquery.cookie.js
+
+WebInspector.settings.showScriptFolders = false
+*Non*URL*path
+block.js?block=foo
+ga.js
+jquery-1.5.1.min.js
+jquery.cookie.js
+lenta.ban?pg=4883&ifr=1
+lenta.ban?pg=5309&ifr=1
+motor.js?1308927432
+top100.jcn?80674
+xgemius.js
+
+WebInspector.settings.showScriptFolders = true
+ *Non*URL*path
+— foo.com —
+ block.js?block=foo
+ ga.js
+ lenta.ban?pg=4883&ifr=1
+ lenta.ban?pg=5309&ifr=1
+ top100.jcn?80674
+/_js/production
+ motor.js?1308927432
+/i
+ xgemius.js
+/i/js
+ jquery-1.5.1.min.js
+ jquery.cookie.js
Debugger was disabled.
Modified: trunk/Source/WebCore/ChangeLog (92957 => 92958)
--- trunk/Source/WebCore/ChangeLog 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/Source/WebCore/ChangeLog 2011-08-12 13:54:10 UTC (rev 92958)
@@ -1,3 +1,23 @@
+2011-08-12 Pavel Feldman <[email protected]>
+
+ Web Inspector: make folders optional in the Scripts' panel file selector.
+ https://bugs.webkit.org/show_bug.cgi?id=66100
+
+ Reviewed by Yury Semikhatsky.
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype._showScriptFoldersSettingChanged):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered.optionCompare):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect.insertOrdered):
+ (WebInspector.ScriptsPanel.prototype._addOptionToFilesSelect):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype._resetFilesSelect):
+ * inspector/front-end/Settings.js:
+ (WebInspector.Settings):
+ * inspector/front-end/SettingsScreen.js:
+ (WebInspector.SettingsScreen):
+
2011-08-12 Pavel Podivilov <[email protected]>
Web Inspector: add space between error info and error message in source frame message bubble.
Modified: trunk/Source/WebCore/English.lproj/localizedStrings.js
(Binary files differ)
Modified: trunk/Source/WebCore/inspector/front-end/ScriptsPanel.js (92957 => 92958)
--- trunk/Source/WebCore/inspector/front-end/ScriptsPanel.js 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/Source/WebCore/inspector/front-end/ScriptsPanel.js 2011-08-12 13:54:10 UTC (rev 92958)
@@ -169,6 +169,8 @@
var enableDebugger = Preferences.debuggerAlwaysEnabled || WebInspector.settings.debuggerEnabled.get();
if (enableDebugger)
WebInspector.debuggerModel.enableDebugger();
+
+ WebInspector.settings.showScriptFolders.addChangeListener(this._showScriptFoldersSettingChanged.bind(this));
}
// Keep these in sync with WebCore::ScriptDebugServer
@@ -254,8 +256,28 @@
this._showSourceFrameAndAddToHistory(sourceFile.id);
},
+ _showScriptFoldersSettingChanged: function()
+ {
+ var selectedOption = this._filesSelectElement[this._filesSelectElement.selectedIndex];
+ var sourceFileId = selectedOption._sourceFileId;
+
+ var options = Array.prototype.slice.call(this._filesSelectElement);
+ this._resetFilesSelect();
+ for (var i = 0; i < options.length; ++i) {
+ if (options[i]._sourceFile)
+ this._addOptionToFilesSelect(options[i]._sourceFile);
+ }
+
+ if (sourceFileId) {
+ var index = this._sourceFileIdToFilesSelectOption[sourceFileId].index;
+ this._filesSelectElement.selectedIndex = index;
+ }
+ },
+
_addOptionToFilesSelect: function(sourceFile)
{
+ var showScriptFolders = WebInspector.settings.showScriptFolders.get();
+
var select = this._filesSelectElement;
if (!select.domainOptions)
select.domainOptions = {};
@@ -263,12 +285,13 @@
select.folderOptions = {};
var option = document.createElement("option");
+ option._sourceFile = sourceFile;
var parsedURL = sourceFile.url.asParsedURL();
var names = this._folderAndDisplayNameForScriptURL(sourceFile.url);
- const indent = WebInspector.isMac() ? "" : "\u00a0\u00a0\u00a0\u00a0";
+ const indent = (!showScriptFolders || WebInspector.isMac()) ? "" : "\u00a0\u00a0\u00a0\u00a0";
option.text = indent + (names.displayName ? names.displayName : WebInspector.UIString("(program)"));
- option.scriptNameForTest = names.displayName;
+ option.displayName = names.displayName;
var folderNameForSorting;
if (sourceFile.isContentScript)
@@ -285,7 +308,10 @@
{
function optionCompare(a, b)
{
- return a.nameForSorting.localeCompare(b.nameForSorting);
+ if (showScriptFolders)
+ return a.nameForSorting.localeCompare(b.nameForSorting);
+ else
+ return a.displayName.localeCompare(b.displayName);
}
var insertionIndex = insertionIndexForObjectInListSortedByFunction(option, select.childNodes, optionCompare);
select.insertBefore(option, insertionIndex < 0 ? null : select.childNodes.item(insertionIndex));
@@ -302,7 +328,7 @@
insertOrdered(contentScriptSection);
}
- if (!sourceFile.isContentScript && names.domain && !select.domainOptions[names.domain]) {
+ if (showScriptFolders && !sourceFile.isContentScript && names.domain && !select.domainOptions[names.domain]) {
var domainOption = document.createElement("option");
domainOption.text = "\u2014 " + names.domain + " \u2014";
domainOption.nameForSorting = "0:" + names.domain;
@@ -311,7 +337,7 @@
insertOrdered(domainOption);
}
- if (names.folderName && !select.folderOptions[names.folderName]) {
+ if (showScriptFolders && names.folderName && !select.folderOptions[names.folderName]) {
var folderOption = document.createElement("option");
folderOption.text = names.folderName;
folderOption.nameForSorting = folderNameForSorting;
@@ -530,13 +556,9 @@
}
this._sourceFileIdToSourceFrame = {};
- this._sourceFileIdToFilesSelectOption = {};
- this._filesSelectElement.removeChildren();
- this._filesSelectElement.removeChildren();
- this._filesSelectElement.domainOptions = {};
- this._filesSelectElement.folderOptions = {};
+
+ this._resetFilesSelect();
delete this._filesSelectElement.initialSelectionProcessed;
- delete this._filesSelectElement.contentScriptSection;
this.functionsSelectElement.removeChildren();
this.viewsContainerElement.removeChildren();
@@ -547,6 +569,15 @@
this.sidebarPanes.workers.reset();
},
+ _resetFilesSelect: function()
+ {
+ this._sourceFileIdToFilesSelectOption = {};
+ this._filesSelectElement.removeChildren();
+ this._filesSelectElement.domainOptions = {};
+ this._filesSelectElement.folderOptions = {};
+ delete this._filesSelectElement.contentScriptSection;
+ },
+
get visibleView()
{
return this._visibleView;
Modified: trunk/Source/WebCore/inspector/front-end/Settings.js (92957 => 92958)
--- trunk/Source/WebCore/inspector/front-end/Settings.js 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/Source/WebCore/inspector/front-end/Settings.js 2011-08-12 13:54:10 UTC (rev 92958)
@@ -85,6 +85,7 @@
this.installApplicationSetting("xhrBreakpoints", []);
this.installApplicationSetting("workerInspectionEnabled", []);
this.installApplicationSetting("cacheDisabled", false);
+ this.installApplicationSetting("showScriptFolders", true);
// If there are too many breakpoints in a storage, it is likely due to a recent bug that caused
// periodical breakpoints duplication leading to inspector slowness.
Modified: trunk/Source/WebCore/inspector/front-end/SettingsScreen.js (92957 => 92958)
--- trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2011-08-12 13:03:09 UTC (rev 92957)
+++ trunk/Source/WebCore/inspector/front-end/SettingsScreen.js 2011-08-12 13:54:10 UTC (rev 92958)
@@ -47,11 +47,14 @@
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Show user agent styles"), WebInspector.settings.showUserAgentStyles));
if (Preferences.canDisableCache) {
- p = this._appendSection(WebInspector.UIString("Network"));
+ p = this._appendSection(WebInspector.UIString("Network"), true);
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Disable cache"), WebInspector.settings.cacheDisabled));
}
- p = this._appendSection(WebInspector.UIString("Console"));
+ p = this._appendSection(WebInspector.UIString("Scripts"), true);
+ p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Show script folders"), WebInspector.settings.showScriptFolders));
+
+ p = this._appendSection(WebInspector.UIString("Console"), true);
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Log XMLHttpRequests"), WebInspector.settings.monitoringXHREnabled));
p.appendChild(this._createCheckboxSetting(WebInspector.UIString("Preserve log upon navigation"), WebInspector.settings.preserveConsoleLog));