Changeset 53167 in webkit
- Timestamp:
- Jan 12, 2010 3:34:20 PM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r53166 r53167 1 2010-01-12 Alexander Pavlov <apavlov@chromium.org> 2 3 Reviewed by Timothy Hatcher. 4 5 Optimize WebInspector.TimelineGrid.prototype.updateDividers() 6 7 DOM element property access and modification are slow and should be done as lazily as possible. 8 https://bugs.webkit.org/show_bug.cgi?id=33536 9 10 * inspector/front-end/TimelineGrid.js: 11 (WebInspector.TimelineGrid.prototype.updateDividers): 12 (WebInspector.TimelineGrid.prototype._setDividerAndBarLeft): 13 1 14 2010-01-12 Beth Dakin <bdakin@apple.com> 2 15 -
trunk/WebCore/inspector/front-end/TimelineGrid.js
r51339 r53167 63 63 return false; 64 64 65 if ( !(typeof paddingLeft === "number"))65 if (typeof paddingLeft !== "number") 66 66 paddingLeft = 0; 67 67 this._currentDividerSlice = slice; … … 72 72 var dividerLabelBar = this._dividersLabelBarElement.firstChild; 73 73 74 var clientWidth = this._dividersLabelBarElement.clientWidth - paddingLeft; 74 var dividersLabelBarElementClientWidth = this._dividersLabelBarElement.clientWidth; 75 var clientWidth = dividersLabelBarElementClientWidth - paddingLeft; 75 76 for (var i = paddingLeft ? 0 : 1; i <= dividerCount; ++i) { 76 77 if (!divider) { … … 86 87 dividerLabelBar.appendChild(label); 87 88 this._dividersLabelBarElement.appendChild(dividerLabelBar); 89 dividersLabelBarElementClientWidth = this._dividersLabelBarElement.clientWidth; 88 90 } 89 91 … … 94 96 95 97 var left = paddingLeft + clientWidth * (i / dividerCount); 96 var percentLeft = 100 * left / this._dividersLabelBarElement.clientWidth + "%"; 97 divider.style.left = percentLeft; 98 dividerLabelBar.style.left = percentLeft; 98 var percentLeft = 100 * left / dividersLabelBarElementClientWidth; 99 this._setDividerAndBarLeft(divider, dividerLabelBar, percentLeft); 99 100 100 101 if (!isNaN(slice)) … … 119 120 }, 120 121 122 _setDividerAndBarLeft: function(divider, dividerLabelBar, percentLeft) 123 { 124 var percentStyleLeft = parseFloat(divider.style.left); 125 if (!isNaN(percentStyleLeft) && Math.abs(percentStyleLeft - percentLeft) < 0.1) 126 return; 127 divider.style.left = percentLeft + "%"; 128 dividerLabelBar.style.left = percentLeft + "%"; 129 }, 130 121 131 addEventDivider: function(divider) 122 132 {
Note: See TracChangeset
for help on using the changeset viewer.