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

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

Issue 131033004: DevTools: introduce goto-column functionality (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 11 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
« no previous file with comments | « Source/devtools/front_end/CodeMirrorTextEditor.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/devtools/front_end/FilteredItemSelectionDialog.js
diff --git a/Source/devtools/front_end/FilteredItemSelectionDialog.js b/Source/devtools/front_end/FilteredItemSelectionDialog.js
index 0fedcc9f82206b8fe28aa09909c819308303b77f..cd7aef1739c52dbc32a786e29fcdeca7d94e3731 100644
--- a/Source/devtools/front_end/FilteredItemSelectionDialog.js
+++ b/Source/devtools/front_end/FilteredItemSelectionDialog.js
@@ -624,8 +624,9 @@ WebInspector.SelectUISourceCodeDialog.prototype = {
/**
* @param {?WebInspector.UISourceCode} uiSourceCode
* @param {number=} lineNumber
+ * @param {number=} columnNumber
*/
- uiSourceCodeSelected: function(uiSourceCode, lineNumber)
+ uiSourceCodeSelected: function(uiSourceCode, lineNumber, columnNumber)
{
// Overridden by subclasses
},
@@ -689,7 +690,7 @@ WebInspector.SelectUISourceCodeDialog.prototype = {
{
query = this.rewriteQuery(query);
var uiSourceCode = this._uiSourceCodes[itemIndex];
- titleElement.textContent = uiSourceCode.displayName() + (this._queryLineNumber ? this._queryLineNumber : "");
+ titleElement.textContent = uiSourceCode.displayName() + (this._queryLineNumberAndColumnNumber || "");
subtitleElement.textContent = uiSourceCode.fullDisplayName().trimEnd(100);
var indexes = [];
@@ -713,15 +714,23 @@ WebInspector.SelectUISourceCodeDialog.prototype = {
*/
selectItem: function(itemIndex, promptValue)
{
- if (/^:\d+$/.test(promptValue.trimRight())) {
vsevik 2014/01/27 17:19:11 Let's keep trimRight
lushnikov 2014/01/28 13:27:07 Done; even more: made trim() call here as it makes
- var lineNumber = parseInt(promptValue.trimRight().substring(1), 10) - 1;
- if (!isNaN(lineNumber) && lineNumber >= 0)
- this.uiSourceCodeSelected(null, lineNumber);
+ var gotoLineNumber = promptValue.match(/^(:\d+)(:\d+)?$/);
+ if (gotoLineNumber) {
+ var lineNumber = parseInt(gotoLineNumber[1].substr(1), 10) - 1;
+ var columnNumber;
+ if (gotoLineNumber[2])
+ columnNumber = parseInt(gotoLineNumber[2].substr(1), 10) - 1;
+ this.uiSourceCodeSelected(null, lineNumber, columnNumber);
return;
}
- var lineNumberMatch = promptValue.match(/[^:]+\:([\d]*)$/);
- var lineNumber = lineNumberMatch ? Math.max(parseInt(lineNumberMatch[1], 10) - 1, 0) : undefined;
- this.uiSourceCodeSelected(this._uiSourceCodes[itemIndex], lineNumber);
+ var gotoSourceMatch = promptValue.match(/^[^:]+(:\d+)?(:\d+)?$/);
vsevik 2014/01/27 17:19:11 A lot of code duplication here.
lushnikov 2014/01/28 13:27:07 Done.
+ var lineNumber;
+ var columnNumber;
+ if (gotoSourceMatch[1])
+ lineNumber = parseInt(gotoSourceMatch[1].substr(1), 10) - 1;
+ if (gotoSourceMatch[2])
+ columnNumber = parseInt(gotoSourceMatch[2].substr(1), 10) - 1;
+ this.uiSourceCodeSelected(this._uiSourceCodes[itemIndex], lineNumber, columnNumber);
},
/**
@@ -733,8 +742,8 @@ WebInspector.SelectUISourceCodeDialog.prototype = {
if (!query)
return query;
query = query.trim();
- var lineNumberMatch = query.match(/([^:]+)(\:[\d]*)$/);
- this._queryLineNumber = lineNumberMatch ? lineNumberMatch[2] : "";
+ var lineNumberMatch = query.match(/^([^:]+)((?::[^:]*){0,2})$/);
+ this._queryLineNumberAndColumnNumber = lineNumberMatch ? lineNumberMatch[2] : "";
return lineNumberMatch ? lineNumberMatch[1] : query;
},
@@ -775,14 +784,15 @@ WebInspector.OpenResourceDialog.prototype = {
/**
* @param {?WebInspector.UISourceCode} uiSourceCode
* @param {number=} lineNumber
+ * @param {number=} columnNumber
*/
- uiSourceCodeSelected: function(uiSourceCode, lineNumber)
+ uiSourceCodeSelected: function(uiSourceCode, lineNumber, columnNumber)
{
if (!uiSourceCode)
uiSourceCode = this._panel.currentUISourceCode();
if (!uiSourceCode)
return;
- this._panel.showUISourceCode(uiSourceCode, lineNumber);
+ this._panel.showUISourceCode(uiSourceCode, lineNumber, columnNumber);
},
/**
@@ -841,8 +851,9 @@ WebInspector.SelectUISourceCodeForProjectTypeDialog.prototype = {
/**
* @param {!WebInspector.UISourceCode} uiSourceCode
* @param {number=} lineNumber
+ * @param {number=} columnNumber
*/
- uiSourceCodeSelected: function(uiSourceCode, lineNumber)
+ uiSourceCodeSelected: function(uiSourceCode, lineNumber, columnNumber)
{
this._callback(uiSourceCode);
},
« no previous file with comments | « Source/devtools/front_end/CodeMirrorTextEditor.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698