2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
3 * Copyright (C) 2009 Anthony Ricaud <rik@webkit.org>
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of
15 * its contributors may be used to endorse or promote products derived
16 * from this software without specific prior written permission.
18 * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
19 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21 * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
22 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 #timeline-overview-panel {
33 border-bottom: 1px solid rgb(140, 140, 140);
36 #timeline-overview-panel .timeline-graph-bar {
40 .timeline-records-title, .timeline-records-list {
41 background-color: rgb(236, 236, 236);
44 .timeline-records-title {
45 padding: 3px 3px 3px 5px;
47 color: rgb(92, 110, 129); text-shadow: rgba(255, 255, 255, 0.75) 0 1px 0;
50 .timeline-records-list {
54 #timeline-overview-sidebar {
57 border-right: 1px solid rgb(64%, 64%, 64%);
60 #timeline-overview-grid {
61 background-color: rgb(255, 255, 255);
64 .timeline-frames-view .timeline-records-counter {
68 .timeline-frames-view #timeline-overview-grid {
72 #timeline-overview-grid .resources-dividers-label-bar {
76 .timeline-frames-view .overview-grid-window,
77 .timeline-frames-view .overview-grid-dividers-background,
78 .timeline-frames-view .overview-grid-window-resizer {
82 #timeline-overview-grid #resources-graphs {
91 border-right: 0 none transparent;
96 .timeline-records-view {
97 overflow: hidden !important;
100 .timeline-details-split {
108 .timeline-view-stack {
113 #timeline-container .webkit-html-external-link,
114 #timeline-container .webkit-html-resource-link {
118 .timeline-tree-item {
125 text-overflow: ellipsis;
129 .timeline-tree-item.selected {
130 background-color: rgb(56, 121, 217) !important;
134 .timeline-tree-item.hovered:not(.selected),
135 .timeline-graph-side.hovered {
136 background-color: rgba(0, 0, 0, 0.05) !important;
139 .timeline-expandable {
141 border-left: 1px solid rgb(163, 163, 163);
142 pointer-events: none;
145 .timeline-expandable-left {
151 border-top: 1px solid rgb(163, 163, 163);
152 border-bottom: 1px solid rgb(163, 163, 163);
155 .timeline-tree-item-expand-arrow {
156 display: inline-block;
157 -webkit-user-select: none;
158 -webkit-mask-image: url(Images/statusbarButtonGlyphs.png);
159 -webkit-mask-size: 320px 144px;
163 background-color: rgb(110, 110, 110);
169 @media (-webkit-min-device-pixel-ratio: 1.5) {
170 .timeline-tree-item-expand-arrow {
171 -webkit-mask-image: url(Images/statusbarButtonGlyphs_2x.png);
175 .timeline-tree-item-expand-arrow.parent {
176 -webkit-mask-position: -4px -96px;
179 .timeline-tree-item-expand-arrow.parent.expanded {
180 -webkit-mask-position: -20px -96px;
183 .timeline-expandable-arrow {
184 background-image: url(Images/statusbarButtonGlyphs.png);
185 background-size: 320px 144px;
194 @media (-webkit-min-device-pixel-ratio: 1.5) {
195 .timeline-expandable-arrow {
196 background-image: url(Images/statusbarButtonGlyphs_2x.png);
200 .timeline-expandable-collapsed .timeline-expandable-arrow {
201 background-position: -4px -96px;
204 .timeline-expandable-expanded .timeline-expandable-arrow {
205 background-position: -20px -96px;
208 .timeline-tree-item .type {
212 .timeline-tree-item .count {
216 .timeline-tree-item .timeline-tree-icon {
224 display: inline-block;
227 .timeline-tree-item.background .timeline-tree-icon {
228 background: none !important;
231 .timeline-tree-item-warning {
233 background-image: url(Images/statusbarButtonGlyphs.png);
234 background-size: 320px 144px;
238 background-position: -202px -107px;
243 .timeline-tree-item-child-warning {
247 @media (-webkit-min-device-pixel-ratio: 1.5) {
248 .timeline-tree-item-warning {
249 background-image: url(Images/statusbarButtonGlyphs_2x.png);
253 .timeline-tree-item .data.dimmed {
254 color: rgba(0, 0, 0, 0.7);
255 pointer-events: none;
259 .timeline-tree-item.selected .data.dimmed {
260 color: rgba(255, 255, 255, 0.8);
261 pointer-events: auto;
264 .timeline-tree-item.selected .timeline-tree-item-expand-arrow {
265 background-color: white;
268 #timeline-overview-events,
269 #timeline-overview-memory {
278 #timeline-overview-memory {
282 #timeline-overview-pane {
287 #timeline-overview-container {
294 #timeline-overview-container canvas {
299 #timeline-overview-frames canvas {
301 background-color: rgba(255, 255, 255, 0.8);
312 .timeline-graph-side {
318 border-top: 1px solid transparent;
322 .timeline-graph-side.selected {
323 background-color: rgba(56, 121, 217, 0.1) !important;
326 .timeline-graph-bar-area {
332 pointer-events: none;
335 .timeline-graph-bar {
343 pointer-events: visibleFill;
348 .timeline-graph-bar.with-children {
350 box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
353 .timeline-graph-bar.cpu {
357 .timeline-graph-side.background .timeline-graph-bar {
358 background: transparent !important;
362 .timeline-aggregated-category {
363 display: inline-block;
373 .popover .timeline-aggregated-category.timeline-loading {
380 list-style-type: none;
383 .garbage-collect-status-bar-item .glyph {
384 -webkit-mask-position: -128px -24px;
387 .glue-async-status-bar-item .glyph {
388 -webkit-mask-position: -128px -48px;
391 .glue-async-status-bar-item.toggled-on:disabled .glyph {
392 background-color: rgba(0, 0, 0, 0.75);
395 #resources-container-content {
408 .resources-graph-side {
414 border-top: 1px solid transparent;
418 .resources-graph-bar-area {
426 #timeline-overview-sidebar .sidebar-tree {
430 #timeline-overview-sidebar .sidebar-tree-item {
437 border-left: 6px solid transparent;
442 #timeline-overview-sidebar .sidebar-tree-item:hover {
446 #timeline-overview-sidebar .sidebar-tree-item.selected {
451 border-left: 6px solid #555;
454 #timeline-overview-sidebar .sidebar-tree-item .titles.no-subtitle {
458 #timeline-overview-sidebar .icon {
461 -webkit-mask-image: url(Images/statusbarButtonGlyphs.png);
462 -webkit-mask-size: 320px 144px;
463 background-color: black;
466 @media (-webkit-min-device-pixel-ratio: 1.5) {
467 #timeline-overview-sidebar .icon {
468 -webkit-mask-image: url(Images/statusbarButtonGlyphs_2x.png);
472 .timeline-overview-sidebar-events .icon {
473 -webkit-mask-position: -192px -48px;
476 .timeline-overview-sidebar-frames .icon {
477 -webkit-mask-position: -160px -48px;
480 .timeline-overview-sidebar-memory .icon {
481 -webkit-mask-position: -224px -48px;
484 .memory-graph-label {
488 color: rgb(50%, 50%, 50%);
492 .max.memory-graph-label {
496 .min.memory-graph-label {
500 #memory-counters-graph {
501 border-right: 1px solid rgb(196, 196, 196);
504 #memory-graphs-canvas-container {
508 #memory-graphs-canvas-container.dom-counters .resources-dividers,
509 #memory-counters-graph {
513 #memory-graphs-container .split-view-contents-first {
514 background-color: rgb(236, 236, 236);
518 #memory-graphs-container .sidebar-tree-section {
522 .memory-counter-sidebar-info {
527 .memory-counter-sidebar-info .swatch{
528 background-image: none;
529 border: 1px solid rgba(0,0,0,0.3);
533 .memory-counter-sidebar-info.bottom-border-visible {
534 border-bottom: 1px solid #AAA;
537 .memory-counter-sidebar-info .title {
541 .memory-counter-value {
545 #counter-values-bar {
546 border-bottom: solid 1px lightgray;
552 .timeline .resources-event-divider {
555 border-left-width: 2px;
556 border-left-style: solid;
558 pointer-events: auto;
561 .resources-red-divider {
562 border-color: rgba(255, 0, 0, 0.5);
565 .resources-blue-divider {
566 border-color: rgba(0, 0, 255, 0.5);
569 .resources-orange-divider {
570 border-color: rgba(255, 178, 23, 0.5);
573 .resources-green-divider {
574 border-color: rgba(0, 130, 0, 0.5);
577 .resources-divider:last-child {
578 border-color: transparent;
581 .timeline .resources-event-divider.timeline-frame-divider {
582 background-color: rgba(180, 180, 180, 0.8);
586 pointer-events: none;
589 .timeline-frame-container {
592 background-color: rgb(220, 220, 220);
598 pointer-events: auto;
601 .timeline-frame-strip {
606 #timeline-grid-header {
607 pointer-events: none;
610 .timeline-utilization-strips {
613 justify-content: center;
616 .timeline-utilization-strip {
623 .timeline-utilization-strip .timeline-graph-bar {
624 border-color: rgb(192, 192, 192);
625 background-color: rgba(0, 0, 0, 0.1);
630 .timeline-utilization-strip.gpu .timeline-graph-bar {
631 background-color: #00a;
637 .timeline-utilization-strip.gpu .timeline-graph-bar.gpu-task-foreign {
638 background-color: #aaa;
641 .timeline-cpu-curtain-left, .timeline-cpu-curtain-right {
642 background-color: rgba(210, 210, 210, 0.5);
649 .timeline-cpu-curtain-left {
653 .timeline-cpu-curtain-right {
657 .image-preview-container {
658 background: transparent;
663 .image-preview-container img {
666 background-image: url(Images/checker.png);
667 -webkit-user-select: text;
668 -webkit-user-drag: auto;
675 .memory-category-value {
679 .highlighted-timeline-record {
680 -webkit-animation: "timeline_record_highlight" 2s 0s;
683 @-webkit-keyframes timeline_record_highlight {
684 from {background-color: rgba(255, 255, 120, 1); }
685 to { background-color: rgba(255, 255, 120, 0); }
688 .timeline-filters-header {
694 -webkit-user-select: text;
698 .timeline-details-title {
699 border-bottom: 1px solid #B8B8B8;
706 .timeline-details-row-title {
712 .timeline-details-row-data {
716 .timeline-details-view {
720 .timeline-details-view-title {
723 border-bottom: 1px solid rgb(202, 202, 202);
724 background-color: rgb(236, 236, 236);
727 color: rgb(92, 110, 129);
728 text-shadow: rgba(255, 255, 255, 0.75) 0 1px 0;
730 text-overflow: ellipsis;
733 .timeline-details-view-body {
740 .timeline-details-view-block {
744 .timeline-details-view-row {
745 padding: 2px 0 2px 6px;
749 .timeline-details-view-row-title {
751 color: rgb(48, 57, 66);
754 .timeline-details-view-row-value {
758 .timeline-details-view-row-details {
762 .timeline-details-view-row-details .image-preview-container {
766 .timeline-details-view-row-stack-trace {
767 padding: 4px 0 4px 20px;
770 .timeline-details-view-row-stack-trace div {
772 text-overflow: ellipsis;
775 .timeline-details-view-row-stack-trace .webkit-html-external-link,
776 .timeline-details-view-row-stack-trace .webkit-html-resource-link {
777 color: #333 !important;
780 .timeline-memory-split {
784 .timeline-memory-split > .split-view-contents-first {
793 .pie-chart-background {
798 background-color: rgb(248, 248, 248);
799 box-shadow: 0 1px 2px;
802 .pie-chart-foreground {
816 clip: rect(0px, 100px, 100px, 50px);
819 .pie-chart-slice-inner {
824 clip: rect(0px, 50px, 100px, 0px);
827 .timeline-aggregated-info {
834 .timeline-aggregated-info-legend > div {
837 text-overflow: ellipsis;
840 .timeline-aggregated-info .pie-chart {