Index: third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
diff --git a/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js b/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
index c0bef9b443f5ff036567c6727774db6a498dc533..98aabfe47987af080c0da9005e53782b6aa87580 100644 |
--- a/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
+++ b/third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js |
@@ -79,12 +79,10 @@ Bindings.CSSWorkspaceBinding = class { |
} |
/** |
- * @param {?SDK.CSSLocation} rawLocation |
+ * @param {!SDK.CSSLocation} rawLocation |
* @return {?Workspace.UILocation} |
*/ |
rawLocationToUILocation(rawLocation) { |
- if (!rawLocation) |
- return null; |
for (var i = this._sourceMappings.length - 1; i >= 0; --i) { |
var uiLocation = this._sourceMappings[i].rawLocationToUILocation(rawLocation); |
if (uiLocation) |
@@ -94,6 +92,22 @@ Bindings.CSSWorkspaceBinding = class { |
} |
/** |
+ * @param {!Workspace.UILocation} uiLocation |
+ * @return {!Array<!SDK.CSSLocation>} |
+ */ |
+ uiLocationToRawLocations(uiLocation) { |
+ for (var i = this._sourceMappings.length - 1; i >= 0; --i) { |
+ var rawLocations = this._sourceMappings[i].uiLocationToRawLocations(uiLocation); |
+ if (rawLocations.length) |
+ return rawLocations; |
+ } |
+ var rawLocationArrays = |
dgozman
2017/05/04 00:04:55
var rawLocations = [];
for (var modelInfo of this.
|
+ Array.from(this._modelToInfo.values(), modelInfo => modelInfo._uiLocationToRawLocations(uiLocation)); |
+ return [].concat(...rawLocationArrays); |
+ } |
+ |
+ |
+ /** |
* @param {!Bindings.CSSWorkspaceBinding.SourceMapping} sourceMapping |
*/ |
addSourceMapping(sourceMapping) { |
@@ -112,6 +126,12 @@ Bindings.CSSWorkspaceBinding.SourceMapping.prototype = { |
* @return {?Workspace.UILocation} |
*/ |
rawLocationToUILocation(rawLocation) {}, |
+ |
+ /** |
+ * @param {!Workspace.UILocation} uiLocation |
+ * @return {!Array<!SDK.CSSLocation>} |
+ */ |
+ uiLocationToRawLocations(uiLocation) {}, |
}; |
Bindings.CSSWorkspaceBinding.ModelInfo = class { |
@@ -213,6 +233,18 @@ Bindings.CSSWorkspaceBinding.ModelInfo = class { |
return uiLocation; |
} |
+ /** |
+ * @param {!Workspace.UILocation} uiLocation |
+ * @return {!Array<!SDK.CSSLocation>} |
+ */ |
+ _uiLocationToRawLocations(uiLocation) { |
+ var rawLocations = this._sassSourceMapping.uiLocationToRawLocations(uiLocation); |
+ if (rawLocations.length) |
+ return rawLocations; |
+ return this._stylesSourceMapping.uiLocationToRawLocations(uiLocation); |
+ } |
+ |
+ |
_dispose() { |
Common.EventTarget.removeEventListeners(this._eventListeners); |
this._stylesSourceMapping.dispose(); |