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

Unified Diff: third_party/WebKit/Source/devtools/front_end/bindings/CSSWorkspaceBinding.js

Issue 2856233002: DevTools: support uiLocationToRawLocations for CSS (Closed)
Patch Set: Created 3 years, 8 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: 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();

Powered by Google App Engine
This is Rietveld 408576698