| OLD | NEW |
| 1 /** | 1 /** |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 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 1472 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1483 } | 1483 } |
| 1484 }, | 1484 }, |
| 1485 | 1485 |
| 1486 /** | 1486 /** |
| 1487 * @param {number} y | 1487 * @param {number} y |
| 1488 * @param {number} startLevel | 1488 * @param {number} startLevel |
| 1489 * @param {number} endLevel | 1489 * @param {number} endLevel |
| 1490 */ | 1490 */ |
| 1491 _drawCollapsedOverviewForGroup: function(y, startLevel, endLevel) | 1491 _drawCollapsedOverviewForGroup: function(y, startLevel, endLevel) |
| 1492 { | 1492 { |
| 1493 var range = new SegmentedRange(mergeCallback); | 1493 var range = new WebInspector.SegmentedRange(mergeCallback); |
| 1494 var timeWindowRight = this._timeWindowRight; | 1494 var timeWindowRight = this._timeWindowRight; |
| 1495 var timeWindowLeft = this._timeWindowLeft - this._paddingLeft / this._ti
meToPixel; | 1495 var timeWindowLeft = this._timeWindowLeft - this._paddingLeft / this._ti
meToPixel; |
| 1496 var context = this._canvas.getContext("2d"); | 1496 var context = this._canvas.getContext("2d"); |
| 1497 var barHeight = this._barHeight - 2; | 1497 var barHeight = this._barHeight - 2; |
| 1498 var entryStartTimes = this._rawTimelineData.entryStartTimes; | 1498 var entryStartTimes = this._rawTimelineData.entryStartTimes; |
| 1499 var entryTotalTimes = this._rawTimelineData.entryTotalTimes; | 1499 var entryTotalTimes = this._rawTimelineData.entryTotalTimes; |
| 1500 | 1500 |
| 1501 for (var level = startLevel; level < endLevel; ++level) { | 1501 for (var level = startLevel; level < endLevel; ++level) { |
| 1502 var levelIndexes = this._timelineLevels[level]; | 1502 var levelIndexes = this._timelineLevels[level]; |
| 1503 var rightIndexOnLevel = levelIndexes.lowerBound(timeWindowRight, (ti
me, entryIndex) => time - entryStartTimes[entryIndex]) - 1; | 1503 var rightIndexOnLevel = levelIndexes.lowerBound(timeWindowRight, (ti
me, entryIndex) => time - entryStartTimes[entryIndex]) - 1; |
| 1504 var lastDrawOffset = Infinity; | 1504 var lastDrawOffset = Infinity; |
| 1505 | 1505 |
| 1506 for (var entryIndexOnLevel = rightIndexOnLevel; entryIndexOnLevel >=
0; --entryIndexOnLevel) { | 1506 for (var entryIndexOnLevel = rightIndexOnLevel; entryIndexOnLevel >=
0; --entryIndexOnLevel) { |
| 1507 var entryIndex = levelIndexes[entryIndexOnLevel]; | 1507 var entryIndex = levelIndexes[entryIndexOnLevel]; |
| 1508 var entryStartTime = entryStartTimes[entryIndex]; | 1508 var entryStartTime = entryStartTimes[entryIndex]; |
| 1509 var startPosition = this._timeToPositionClipped(entryStartTime); | 1509 var startPosition = this._timeToPositionClipped(entryStartTime); |
| 1510 var entryEndTime = entryStartTime + entryTotalTimes[entryIndex]; | 1510 var entryEndTime = entryStartTime + entryTotalTimes[entryIndex]; |
| 1511 if (isNaN(entryEndTime) || startPosition >= lastDrawOffset) | 1511 if (isNaN(entryEndTime) || startPosition >= lastDrawOffset) |
| 1512 continue; | 1512 continue; |
| 1513 if (entryEndTime <= timeWindowLeft) | 1513 if (entryEndTime <= timeWindowLeft) |
| 1514 break; | 1514 break; |
| 1515 lastDrawOffset = startPosition; | 1515 lastDrawOffset = startPosition; |
| 1516 var color = this._dataProvider.entryColor(entryIndex); | 1516 var color = this._dataProvider.entryColor(entryIndex); |
| 1517 range.append(new Segment(startPosition, this._timeToPositionClip
ped(entryEndTime), color)); | 1517 range.append(new WebInspector.Segment(startPosition, this._timeT
oPositionClipped(entryEndTime), color)); |
| 1518 } | 1518 } |
| 1519 } | 1519 } |
| 1520 | 1520 |
| 1521 var segments = range.segments().slice().sort((a, b) => a.data.localeComp
are(b.data)); | 1521 var segments = range.segments().slice().sort((a, b) => a.data.localeComp
are(b.data)); |
| 1522 var lastColor; | 1522 var lastColor; |
| 1523 context.beginPath(); | 1523 context.beginPath(); |
| 1524 for (var i = 0; i < segments.length; ++i) { | 1524 for (var i = 0; i < segments.length; ++i) { |
| 1525 var segment = segments[i]; | 1525 var segment = segments[i]; |
| 1526 if (lastColor !== segments[i].data) { | 1526 if (lastColor !== segments[i].data) { |
| 1527 context.fill(); | 1527 context.fill(); |
| 1528 context.beginPath(); | 1528 context.beginPath(); |
| 1529 lastColor = segments[i].data; | 1529 lastColor = segments[i].data; |
| 1530 context.fillStyle = lastColor; | 1530 context.fillStyle = lastColor; |
| 1531 } | 1531 } |
| 1532 context.rect(segment.begin, y, segment.end - segment.begin, barHeigh
t); | 1532 context.rect(segment.begin, y, segment.end - segment.begin, barHeigh
t); |
| 1533 } | 1533 } |
| 1534 context.fill(); | 1534 context.fill(); |
| 1535 | 1535 |
| 1536 /** | 1536 /** |
| 1537 * @param {!Segment} a | 1537 * @param {!WebInspector.Segment} a |
| 1538 * @param {!Segment} b | 1538 * @param {!WebInspector.Segment} b |
| 1539 * @return {?Segment} | 1539 * @return {?WebInspector.Segment} |
| 1540 */ | 1540 */ |
| 1541 function mergeCallback(a, b) | 1541 function mergeCallback(a, b) |
| 1542 { | 1542 { |
| 1543 return a.data === b.data && a.end + 0.4 > b.end ? a : null; | 1543 return a.data === b.data && a.end + 0.4 > b.end ? a : null; |
| 1544 } | 1544 } |
| 1545 }, | 1545 }, |
| 1546 | 1546 |
| 1547 /** | 1547 /** |
| 1548 * @param {!CanvasRenderingContext2D} context | 1548 * @param {!CanvasRenderingContext2D} context |
| 1549 * @param {number} height | 1549 * @param {number} height |
| (...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1962 this.update(); | 1962 this.update(); |
| 1963 }, | 1963 }, |
| 1964 | 1964 |
| 1965 _enabled: function() | 1965 _enabled: function() |
| 1966 { | 1966 { |
| 1967 return this._rawTimelineDataLength !== 0; | 1967 return this._rawTimelineDataLength !== 0; |
| 1968 }, | 1968 }, |
| 1969 | 1969 |
| 1970 __proto__: WebInspector.HBox.prototype | 1970 __proto__: WebInspector.HBox.prototype |
| 1971 } | 1971 } |
| OLD | NEW |