| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 18 matching lines...) Expand all Loading... |
| 29 */ | 29 */ |
| 30 | 30 |
| 31 /** | 31 /** |
| 32 * @unrestricted | 32 * @unrestricted |
| 33 */ | 33 */ |
| 34 Sources.RevisionHistoryView = class extends UI.VBox { | 34 Sources.RevisionHistoryView = class extends UI.VBox { |
| 35 constructor() { | 35 constructor() { |
| 36 super(); | 36 super(); |
| 37 this._uiSourceCodeItems = new Map(); | 37 this._uiSourceCodeItems = new Map(); |
| 38 | 38 |
| 39 this._treeOutline = new TreeOutlineInShadow(); | 39 this._treeOutline = new UI.TreeOutlineInShadow(); |
| 40 this._treeOutline.registerRequiredCSS('sources/revisionHistory.css'); | 40 this._treeOutline.registerRequiredCSS('sources/revisionHistory.css'); |
| 41 this._treeOutline.makeDense(); | 41 this._treeOutline.makeDense(); |
| 42 this.element.appendChild(this._treeOutline.element); | 42 this.element.appendChild(this._treeOutline.element); |
| 43 | 43 |
| 44 /** | 44 /** |
| 45 * @param {!Workspace.UISourceCode} uiSourceCode | 45 * @param {!Workspace.UISourceCode} uiSourceCode |
| 46 * @this {Sources.RevisionHistoryView} | 46 * @this {Sources.RevisionHistoryView} |
| 47 */ | 47 */ |
| 48 function populateRevisions(uiSourceCode) { | 48 function populateRevisions(uiSourceCode) { |
| 49 if (uiSourceCode.history.length) | 49 if (uiSourceCode.history.length) |
| (...skipping 15 matching lines...) Expand all Loading... |
| 65 UI.viewManager.showView('sources.history'); | 65 UI.viewManager.showView('sources.history'); |
| 66 var historyView = | 66 var historyView = |
| 67 /** @type {!Sources.RevisionHistoryView} */ (self.runtime.sharedInstance
(Sources.RevisionHistoryView)); | 67 /** @type {!Sources.RevisionHistoryView} */ (self.runtime.sharedInstance
(Sources.RevisionHistoryView)); |
| 68 historyView._revealUISourceCode(uiSourceCode); | 68 historyView._revealUISourceCode(uiSourceCode); |
| 69 } | 69 } |
| 70 | 70 |
| 71 /** | 71 /** |
| 72 * @param {!Workspace.UISourceCode} uiSourceCode | 72 * @param {!Workspace.UISourceCode} uiSourceCode |
| 73 */ | 73 */ |
| 74 _createUISourceCodeItem(uiSourceCode) { | 74 _createUISourceCodeItem(uiSourceCode) { |
| 75 var uiSourceCodeItem = new TreeElement(uiSourceCode.displayName(), true); | 75 var uiSourceCodeItem = new UI.TreeElement(uiSourceCode.displayName(), true); |
| 76 uiSourceCodeItem.selectable = false; | 76 uiSourceCodeItem.selectable = false; |
| 77 | 77 |
| 78 // Insert in sorted order | 78 // Insert in sorted order |
| 79 var rootElement = this._treeOutline.rootElement(); | 79 var rootElement = this._treeOutline.rootElement(); |
| 80 for (var i = 0; i < rootElement.childCount(); ++i) { | 80 for (var i = 0; i < rootElement.childCount(); ++i) { |
| 81 if (rootElement.childAt(i).title.localeCompare(uiSourceCode.displayName())
> 0) { | 81 if (rootElement.childAt(i).title.localeCompare(uiSourceCode.displayName())
> 0) { |
| 82 rootElement.insertChild(uiSourceCodeItem, i); | 82 rootElement.insertChild(uiSourceCodeItem, i); |
| 83 break; | 83 break; |
| 84 } | 84 } |
| 85 } | 85 } |
| 86 if (i === rootElement.childCount()) | 86 if (i === rootElement.childCount()) |
| 87 rootElement.appendChild(uiSourceCodeItem); | 87 rootElement.appendChild(uiSourceCodeItem); |
| 88 | 88 |
| 89 this._uiSourceCodeItems.set(uiSourceCode, uiSourceCodeItem); | 89 this._uiSourceCodeItems.set(uiSourceCode, uiSourceCodeItem); |
| 90 | 90 |
| 91 var revisionCount = uiSourceCode.history.length; | 91 var revisionCount = uiSourceCode.history.length; |
| 92 for (var i = revisionCount - 1; i >= 0; --i) { | 92 for (var i = revisionCount - 1; i >= 0; --i) { |
| 93 var revision = uiSourceCode.history[i]; | 93 var revision = uiSourceCode.history[i]; |
| 94 var historyItem = | 94 var historyItem = |
| 95 new Sources.RevisionHistoryTreeElement(revision, uiSourceCode.history[
i - 1], i !== revisionCount - 1); | 95 new Sources.RevisionHistoryTreeElement(revision, uiSourceCode.history[
i - 1], i !== revisionCount - 1); |
| 96 uiSourceCodeItem.appendChild(historyItem); | 96 uiSourceCodeItem.appendChild(historyItem); |
| 97 } | 97 } |
| 98 | 98 |
| 99 var linkItem = new TreeElement(); | 99 var linkItem = new UI.TreeElement(); |
| 100 linkItem.selectable = false; | 100 linkItem.selectable = false; |
| 101 uiSourceCodeItem.appendChild(linkItem); | 101 uiSourceCodeItem.appendChild(linkItem); |
| 102 | 102 |
| 103 var revertToOriginal = | 103 var revertToOriginal = |
| 104 linkItem.listItemElement.createChild('span', 'revision-history-link revi
sion-history-link-row'); | 104 linkItem.listItemElement.createChild('span', 'revision-history-link revi
sion-history-link-row'); |
| 105 revertToOriginal.textContent = Common.UIString('apply original content'); | 105 revertToOriginal.textContent = Common.UIString('apply original content'); |
| 106 revertToOriginal.addEventListener('click', this._revertToOriginal.bind(this,
uiSourceCode)); | 106 revertToOriginal.addEventListener('click', this._revertToOriginal.bind(this,
uiSourceCode)); |
| 107 | 107 |
| 108 var clearHistoryElement = uiSourceCodeItem.listItemElement.createChild('span
', 'revision-history-link'); | 108 var clearHistoryElement = uiSourceCodeItem.listItemElement.createChild('span
', 'revision-history-link'); |
| 109 clearHistoryElement.textContent = Common.UIString('revert'); | 109 clearHistoryElement.textContent = Common.UIString('revert'); |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 171 _projectRemoved(event) { | 171 _projectRemoved(event) { |
| 172 var project = event.data; | 172 var project = event.data; |
| 173 project.uiSourceCodes().forEach(this._removeUISourceCode.bind(this)); | 173 project.uiSourceCodes().forEach(this._removeUISourceCode.bind(this)); |
| 174 } | 174 } |
| 175 }; | 175 }; |
| 176 | 176 |
| 177 | 177 |
| 178 /** | 178 /** |
| 179 * @unrestricted | 179 * @unrestricted |
| 180 */ | 180 */ |
| 181 Sources.RevisionHistoryTreeElement = class extends TreeElement { | 181 Sources.RevisionHistoryTreeElement = class extends UI.TreeElement { |
| 182 /** | 182 /** |
| 183 * @param {!Workspace.Revision} revision | 183 * @param {!Workspace.Revision} revision |
| 184 * @param {!Workspace.Revision} baseRevision | 184 * @param {!Workspace.Revision} baseRevision |
| 185 * @param {boolean} allowRevert | 185 * @param {boolean} allowRevert |
| 186 */ | 186 */ |
| 187 constructor(revision, baseRevision, allowRevert) { | 187 constructor(revision, baseRevision, allowRevert) { |
| 188 super(revision.timestamp.toLocaleTimeString(), true); | 188 super(revision.timestamp.toLocaleTimeString(), true); |
| 189 this.selectable = false; | 189 this.selectable = false; |
| 190 | 190 |
| 191 this._revision = revision; | 191 this._revision = revision; |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 267 this._revertElement.remove(); | 267 this._revertElement.remove(); |
| 268 } | 268 } |
| 269 | 269 |
| 270 /** | 270 /** |
| 271 * @param {?number} baseLineNumber | 271 * @param {?number} baseLineNumber |
| 272 * @param {?number} newLineNumber | 272 * @param {?number} newLineNumber |
| 273 * @param {string} lineContent | 273 * @param {string} lineContent |
| 274 * @param {string} changeType | 274 * @param {string} changeType |
| 275 */ | 275 */ |
| 276 _createLine(baseLineNumber, newLineNumber, lineContent, changeType) { | 276 _createLine(baseLineNumber, newLineNumber, lineContent, changeType) { |
| 277 var child = new TreeElement(); | 277 var child = new UI.TreeElement(); |
| 278 child.selectable = false; | 278 child.selectable = false; |
| 279 this.appendChild(child); | 279 this.appendChild(child); |
| 280 | 280 |
| 281 function appendLineNumber(lineNumber) { | 281 function appendLineNumber(lineNumber) { |
| 282 var numberString = lineNumber !== null ? numberToStringWithSpacesPadding(l
ineNumber + 1, 4) : spacesPadding(4); | 282 var numberString = lineNumber !== null ? numberToStringWithSpacesPadding(l
ineNumber + 1, 4) : spacesPadding(4); |
| 283 var lineNumberSpan = createElement('span'); | 283 var lineNumberSpan = createElement('span'); |
| 284 lineNumberSpan.classList.add('webkit-line-number'); | 284 lineNumberSpan.classList.add('webkit-line-number'); |
| 285 lineNumberSpan.textContent = numberString; | 285 lineNumberSpan.textContent = numberString; |
| 286 child.listItemElement.appendChild(lineNumberSpan); | 286 child.listItemElement.appendChild(lineNumberSpan); |
| 287 } | 287 } |
| 288 | 288 |
| 289 appendLineNumber(baseLineNumber); | 289 appendLineNumber(baseLineNumber); |
| 290 appendLineNumber(newLineNumber); | 290 appendLineNumber(newLineNumber); |
| 291 | 291 |
| 292 var contentSpan = createElement('span'); | 292 var contentSpan = createElement('span'); |
| 293 contentSpan.textContent = lineContent; | 293 contentSpan.textContent = lineContent; |
| 294 child.listItemElement.appendChild(contentSpan); | 294 child.listItemElement.appendChild(contentSpan); |
| 295 child.listItemElement.classList.add('revision-history-line'); | 295 child.listItemElement.classList.add('revision-history-line'); |
| 296 contentSpan.classList.add('revision-history-line-' + changeType); | 296 contentSpan.classList.add('revision-history-line-' + changeType); |
| 297 } | 297 } |
| 298 | 298 |
| 299 allowRevert() { | 299 allowRevert() { |
| 300 this._revertElement.classList.remove('hidden'); | 300 this._revertElement.classList.remove('hidden'); |
| 301 } | 301 } |
| 302 }; | 302 }; |
| OLD | NEW |