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

Side by Side Diff: third_party/WebKit/Source/devtools/front_end/sources/InplaceFormatterEditorAction.js

Issue 2492343002: Devtools: Pretty print fix for CSS coverage decorations. (Closed)
Patch Set: Pretty print fix for CSS coverage decorations. Created 4 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 /** 4 /**
5 * @implements {Sources.SourcesView.EditorAction} 5 * @implements {Sources.SourcesView.EditorAction}
6 * @unrestricted 6 * @unrestricted
7 */ 7 */
8 Sources.InplaceFormatterEditorAction = class { 8 Sources.InplaceFormatterEditorAction = class {
9 /** 9 /**
10 * @param {!Common.Event} event 10 * @param {!Common.Event} event
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 function innerCallback(formattedContent, formatterMapping) { 92 function innerCallback(formattedContent, formatterMapping) {
93 if (uiSourceCode.workingCopy() === formattedContent) 93 if (uiSourceCode.workingCopy() === formattedContent)
94 return; 94 return;
95 var sourceFrame = this._sourcesView.viewForFile(uiSourceCode); 95 var sourceFrame = this._sourcesView.viewForFile(uiSourceCode);
96 var start = [0, 0]; 96 var start = [0, 0];
97 if (sourceFrame) { 97 if (sourceFrame) {
98 var selection = sourceFrame.selection(); 98 var selection = sourceFrame.selection();
99 start = formatterMapping.originalToFormatted(selection.startLine, select ion.startColumn); 99 start = formatterMapping.originalToFormatted(selection.startLine, select ion.startColumn);
100 } 100 }
101 uiSourceCode.setWorkingCopy(formattedContent); 101 uiSourceCode.setWorkingCopy(formattedContent);
102 this._formatDecorations(uiSourceCode, formatterMapping);
103
102 this._sourcesView.showSourceLocation(uiSourceCode, start[0], start[1]); 104 this._sourcesView.showSourceLocation(uiSourceCode, start[0], start[1]);
103 } 105 }
104 } 106 }
107
108 /**
109 * @param {!Workspace.UISourceCode} uiSourceCode
110 * @param {!Sources.FormatterSourceMapping} sourceMapping
111 */
112 _formatDecorations(uiSourceCode, sourceMapping) {
113 if (!uiSourceCode.allDecorations)
114 return;
115
116 var oldDecorations = new Map(uiSourceCode.allDecorations);
117 uiSourceCode.removeAllDecorations();
118
119 for (var decorationList of oldDecorations.entries()) {
120 var type = decorationList[0];
121 var list = decorationList[1];
122
123 for (var decoration of list) {
124 var range = decoration.range();
125
126 [range.startLine, range.startColumn] = sourceMapping.originalToFormatted (range.startLine, range.startColumn);
lushnikov 2016/11/16 22:53:54 1. let's not mutate range 2. let's not use array d
127
128 [range.endLine, range.endColumn] = sourceMapping.originalToFormatted(ran ge.endLine, range.endColumn);
129
130 uiSourceCode.addDecoration(range, /** @type {string} */ (type), decorati on.data());
131 }
132 }
133 }
105 }; 134 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698