X-Git-Url: https://git-public.kairo.at/?p=themes.git;a=blobdiff_plain;f=LCARStrek%2Fbrowser%2Fdevtools%2Fperformance.css;h=77ab4d9b341b5ca00c2d288508e795b721c293ee;hp=98acfe047b5ecb9b75ceca193635a6491facc3b5;hb=936e60fe1e8ef7a38298736369448d66d0507842;hpb=b3bf08b110943f4abc9642b613f0dcb078c22b0b diff --git a/LCARStrek/browser/devtools/performance.css b/LCARStrek/browser/devtools/performance.css index 98acfe04..77ab4d9b 100644 --- a/LCARStrek/browser/devtools/performance.css +++ b/LCARStrek/browser/devtools/performance.css @@ -7,6 +7,7 @@ .theme-dark, .theme-light { --cell-border-color: #A09090; + --cell-border-color-light: #A09090; --focus-cell-border-color: #9C9CFF; --row-alt-background-color: #403400; --row-hover-background-color: #544400; @@ -14,13 +15,8 @@ /* Toolbar */ -#performance-toolbar > tabs, -#performance-toolbar { - -moz-border-end-color: var(--theme-splitter-color); -} - -#performance-toolbar-controls-detail-views > toolbarbutton { - min-width: 0; +#performance-toolbar-control-other { + -moz-padding-end: 5px; } #performance-toolbar-controls-detail-views .toolbarbutton-text { @@ -28,69 +24,218 @@ -moz-padding-end: 8px; } -/* Recording Notice */ - -#performance-view .notice-container { - font-size: 120%; - background-color: var(--theme-toolbar-background); - color: var(--theme-body-color); - padding-bottom: 20vh; +#filter-button { + list-style-image: url(timeline-filter.svg#filter); + min-width: 24px; } -#performance-view .notice-container button { - min-width: 30px; - min-height: 28px; - margin: 0; +#filter-button[disabled] { + list-style-image: url(timeline-filter.svg#filter-disabled); } -/* Overview Panel */ +#filter-button:not([disabled]):hover, +#filter-button:not([disabled]):hover:active, +#filter-button[open] { + list-style-image: url(timeline-filter.svg#filter-open); +} -.record-button { - list-style-image: url(profiler-stopwatch.svg); +#performance-filter-menupopup > menuitem:before { + content: ""; + display: block; + width: 8px; + height: 8px; + margin: 0 8px; + border-radius: 1px; } -.record-button[checked] { - list-style-image: url(profiler-stopwatch-checked.svg); +#filter-button { + list-style-image: url(timeline-filter.svg#filter); + min-width: 24px; } -.record-button[locked] { - pointer-events: none; +#filter-button[disabled] { + list-style-image: url(timeline-filter.svg#filter-disabled); } -.record-button .button-icon { - margin: 0; +#filter-button[open] { + list-style-image: url(timeline-filter.svg#filter-open); } -.record-button .button-text { - display: none; +#performance-filter-menupopup > menuitem:before { + content: ""; + display: block; + width: 8px; + height: 8px; + margin: 0 8px; + border-radius: 1px; } -/* Details Panel */ +/* Details panel buttons */ #select-waterfall-view { list-style-image: url(performance-icons.svg#details-waterfall); } +#select-waterfall-view:hover, +#select-waterfall-view:hover:active, +#select-waterfall-view[checked] { + list-style-image: url(performance-icons.svg#details-waterfall-active); +} + #select-js-calltree-view, #select-memory-calltree-view { list-style-image: url(performance-icons.svg#details-call-tree); } +#select-js-calltree-view:hover, +#select-js-calltree-view:hover:active, +#select-js-calltree-view[checked], +#select-memory-calltree-view:hover, +#select-memory-calltree-view:hover:active, +#select-memory-calltree-view[checked] { + list-style-image: url(performance-icons.svg#details-call-tree-active); +} + #select-js-flamegraph-view, #select-memory-flamegraph-view { list-style-image: url(performance-icons.svg#details-flamegraph); } +#select-js-flamegraph-view:hover, +#select-js-flamegraph-view:hover:active, +#select-js-flamegraph-view[checked], +#select-memory-flamegraph-view:hover, +#select-memory-flamegraph-view:hover:active, +#select-memory-flamegraph-view[checked] { + list-style-image: url(performance-icons.svg#details-flamegraph-active); +} + +/* Recording buttons */ + +#main-record-button { + list-style-image: url(profiler-stopwatch-tbutton.svg); +} + +#empty-notice > .record-button, +#main-record-button:hover, +#main-record-button:hover:active { + list-style-image: url(profiler-stopwatch.svg); +} + +#main-record-button[checked] { + list-style-image: url(profiler-stopwatch-checked.svg); +} + +#main-record-button .button-icon { + margin: 0; +} + +#main-record-button .button-text { + display: none; +} + +.notice-container .record-button { + padding: 5px !important; +} + +.notice-container .record-button[checked], +.notice-container .record-button[checked] { + color: var(--theme-selection-color) !important; + background: var(--theme-selection-background) !important; +} + +.record-button[locked] { + pointer-events: none; + opacity: 0.5; +} + +/* Sidebar & recording items */ + +.recording-item { + padding: 4px; +} + +.recording-item-title { + font-size: 110%; +} + +.recording-item-footer { + padding-top: 4px; + font-size: 90%; +} + +.recording-item-save { + text-decoration: underline; + cursor: pointer; +} + +.recording-item-duration, +.recording-item-save { + color: var(--theme-body-color-alt); +} + +#recordings-list .selected label { + /* Text inside a selected item should not be custom colored. */ + color: inherit !important; +} + + +/* Recording notices */ + +.notice-container { + font-size: 120%; + background-color: var(--theme-toolbar-background); + color: var(--theme-body-color); + padding-bottom: 20vh; +} + +.console-profile-command { + font-family: monospace; + margin: 3px 2px; +} + +.realtime-disabled-message, +.realtime-disabled-on-e10s-message { + display: none; +} + +#performance-view[e10s="disabled"] .realtime-disabled-on-e10s-message { + display: initial; + opacity: 0.5; + +} +#performance-view[e10s="unsupported"] .realtime-disabled-message { + display: initial; + opacity: 0.5; +} + +.buffer-status-message, +.buffer-status-message-full { + display: none; +} + +#details-pane-container[buffer-status="in-progress"] .buffer-status-message { + display: initial; + opacity: 0.5; +} + +#details-pane-container[buffer-status="full"] .buffer-status-message { + display: initial; + color: var(--theme-highlight-red); + font-weight: bold; + opacity: 1; +} + +#details-pane-container[buffer-status="full"] .buffer-status-message-full { + display: initial; +} + /* Profile call tree */ .call-tree-cells-container { - /* Hack: force hardware acceleration */ - transform: translateZ(1px); overflow: auto; } -.call-tree-cells-container[allocations-hidden] .call-tree-cell[type="allocations"], -.call-tree-cells-container[allocations-hidden] .call-tree-cell[type="self-allocations"], .call-tree-cells-container[categories-hidden] .call-tree-category { display: none; } @@ -124,7 +269,7 @@ .call-tree-cell[type="allocations"], .call-tree-header[type="self-allocations"], .call-tree-cell[type="self-allocations"] { - width: 7vw; + width: 9vw; } .call-tree-header[type="function"], @@ -159,7 +304,7 @@ background-color: var(--theme-tab-toolbar-background); } -.call-tree-item:last-child:not(:focus) { +.call-tree-item:last-child { border-bottom: 1px solid var(--cell-border-color); } @@ -175,7 +320,7 @@ background-color: var(--theme-selection-background); } -.call-tree-item:focus label { +.call-tree-item:focus description { color: var(--theme-selection-color) !important; } @@ -191,8 +336,11 @@ opacity: 0.6; } +.call-tree-name { + -moz-margin-end: 4px !important; +} + .call-tree-url { - -moz-margin-start: 4px !important; cursor: pointer; } @@ -200,11 +348,11 @@ text-decoration: underline; } -.call-tree-url { +.call-tree-url, .tree-widget-item:not(.theme-selected) .opt-url { color: var(--theme-highlight-blue); } -.call-tree-line { +.call-tree-line, .tree-widget-item:not(.theme-selected) .opt-line { color: var(--theme-highlight-orange); } @@ -219,119 +367,110 @@ color: var(--theme-content-color2); } -.call-tree-name[value=""], -.call-tree-url[value=""], -.call-tree-line[value=""], -.call-tree-column[value=""], -.call-tree-host[value=""] { - display: none; -} - -.call-tree-zoom { - -moz-appearance: none; - background-color: transparent; - background-position: center; - background-repeat: no-repeat; - background-size: 11px; - min-width: 11px; - -moz-margin-start: 8px !important; - cursor: zoom-in; - opacity: 0; +.call-tree-category { + transform: scale(0.75); + transform-origin: center right; } -.theme-dark .call-tree-zoom { - background-image: url(magnifying-glass.png); -} +/** + * Waterfall ticks header + */ -.theme-light .call-tree-zoom { - background-image: url(magnifying-glass-light.png); +.waterfall-header-ticks { + overflow: hidden; } -@media (min-resolution: 2dppx) { - .theme-dark .call-tree-zoom { - background-image: url(magnifying-glass@2x.png); - } - - .theme-light .call-tree-zoom { - background-image: url(magnifying-glass-light@2x.png); - } +.waterfall-header-name { + padding: 2px 4px; + font-size: 90%; } -.call-tree-item:hover .call-tree-zoom { - transition: opacity 0.3s ease-in; - opacity: 1; +.waterfall-header-tick { + width: 100px; + font-size: 9px; + transform-origin: left center; + color: var(--theme-body-color); } -.call-tree-item:hover .call-tree-zoom:hover { - opacity: 0; +.waterfall-header-tick:not(:first-child) { + -moz-margin-start: -100px !important; /* Don't affect layout. */ } -.call-tree-category { - transform: scale(0.75); - transform-origin: center right; +.waterfall-background-ticks { + /* Background created on a in js. */ + /* @see browser/devtools/timeline/widgets/waterfall.js */ + background-image: -moz-element(#waterfall-background); + background-repeat: repeat-y; + background-position: -1px center; } /** - * Details Waterfall Styles + * Markers waterfall breakdown */ -.waterfall-list-contents { - /* Hack: force hardware acceleration */ - transform: translateZ(1px); +#waterfall-breakdown { overflow-x: hidden; overflow-y: auto; } -.waterfall-header-contents { - overflow-x: hidden; +.waterfall-tree-item:not([level="0"]) { + background-image: repeating-linear-gradient( + -45deg, + transparent 0px, + transparent 2px, + rgba(255,255,255,0.05) 2px, + rgba(255,255,255,0.05) 4px + ); } -.waterfall-background-ticks { - /* Background created on a in js. */ - /* @see browser/devtools/timeline/widgets/waterfall.js */ - background-image: -moz-element(#waterfall-background); - background-repeat: repeat-y; - background-position: -1px center; +.waterfall-tree-item[expandable] .waterfall-marker-bullet, +.waterfall-tree-item[expandable] .waterfall-marker-bar { + background-image: repeating-linear-gradient( + -45deg, + transparent 0px, + transparent 5px, + rgba(0,0,0,0.35) 5px, + rgba(0,0,0,0.35) 10px + ); } -.waterfall-marker-container[is-spacer] { - pointer-events: none; +.waterfall-tree-item[expanded], +.waterfall-tree-item:not([level="0"]) + .waterfall-tree-item[level="0"] { + box-shadow: 0 -1px var(--cell-border-color-light); } -.waterfall-marker-container:not([is-spacer]):nth-child(2n) { - background-color: #403400; +.waterfall-tree-item:nth-child(2n) > .waterfall-marker { + background-color: var(--row-alt-background-color); } -.waterfall-marker-container:hover { - background-color: #FFCF00 !important; +.waterfall-tree-item:hover { + background-color: var(--row-hover-background-color); } -.waterfall-marker-item { - overflow: hidden; +.waterfall-tree-item:last-child { + border-bottom: 1px solid var(--cell-border-color); } -.waterfall-sidebar { - -moz-border-end: 1px solid var(--theme-splitter-color); +.waterfall-tree-item:focus { + background-color: var(--theme-selection-background); } -.waterfall-marker-container:hover > .waterfall-sidebar { - background-color: transparent; +.waterfall-tree-item:focus description { + color: var(--theme-selection-color) !important; } -.waterfall-header-name { - padding: 2px 4px; - font-size: 90%; -} +/** + * Marker left sidebar + */ -.waterfall-header-tick { - width: 100px; - font-size: 9px; - transform-origin: left center; - color: var(--theme-body-color); +.waterfall-sidebar { + -moz-border-end: 1px solid var(--cell-border-color); } -.waterfall-header-tick:not(:first-child) { - -moz-margin-start: -100px !important; /* Don't affect layout. */ +.waterfall-tree-item > .waterfall-sidebar:hover, +.waterfall-tree-item:hover > .waterfall-sidebar, +.waterfall-tree-item:focus > .waterfall-sidebar { + background: transparent; } .waterfall-marker-bullet { @@ -339,7 +478,6 @@ height: 8px; -moz-margin-start: 8px; -moz-margin-end: 6px; - border: 1px solid; border-radius: 1px; } @@ -348,51 +486,48 @@ padding-bottom: 1px !important; } -.waterfall-marker-bar { - height: 9px; - border: 1px solid; - border-radius: 1px; - transform-origin: left center; -} +/** + * Marker timebar + */ -.waterfall-marker-container.selected > .waterfall-sidebar, -.waterfall-marker-container.selected > .waterfall-marker-item { - background-color: var(--theme-selection-background); - color: var(--theme-selection-color); +.waterfall-marker { + overflow: hidden; } -.waterfall-marker-container.selected .waterfall-marker-bullet, -.waterfall-marker-container.selected .waterfall-marker-bar { - border-color: initial !important; +.waterfall-marker-bar { + height: 9px; + transform-origin: left center; + border-radius: 1px; } -.waterfall-marker-location { - color: #3333FF; +.waterfall-marker > .theme-twisty { + /* Don't affect layout. */ + width: 14px; + -moz-margin-end: -14px; } -.waterfall-marker-location:hover, -.waterfall-marker-location:focus { - text-decoration: underline; -} +/** + * Marker details view + */ #waterfall-details { -moz-padding-start: 8px; -moz-padding-end: 8px; padding-top: 2vh; overflow: auto; + min-width: 50px; +} + +#waterfall-details > * { + padding-top: 3px; } .marker-details-bullet { width: 8px; height: 8px; - border: 1px solid; border-radius: 1px; } -#waterfall-details > * { - padding-top: 3px; -} - .marker-details-labelname { -moz-padding-end: 4px; } @@ -406,34 +541,38 @@ font-weight: bold; } -/* Recording items */ +/** + * Marker colors + */ -.recording-item { - padding: 4px; +menuitem.marker-color-graphs-purple:before, +.marker-color-graphs-purple { + background-color: var(--theme-graphs-purple); } -.recording-item-title { - font-size: 110%; +menuitem.marker-color-graphs-grey:before, +.marker-color-graphs-grey{ + background-color: var(--theme-graphs-grey); } -.recording-item-footer { - padding-top: 4px; - font-size: 90%; +menuitem.marker-color-graphs-green:before, +.marker-color-graphs-green { + background-color: var(--theme-graphs-green); } -.recording-item-save { - text-decoration: underline; - cursor: pointer; +menuitem.marker-color-graphs-yellow:before, +.marker-color-graphs-yellow { + background-color: var(--theme-graphs-yellow); } -.recording-item-duration, -.recording-item-save { - color: var(--theme-body-color-alt); +menuitem.marker-color-graphs-red:before, +.marker-color-graphs-red { + background-color: var(--theme-graphs-red); } -#recordings-list .selected label { - /* Text inside a selected item should not be custom colored. */ - color: inherit !important; +menuitem.marker-color-graphs-blue:before, +.marker-color-graphs-blue { + background-color: var(--theme-graphs-blue); } /* Profile call tree */ @@ -534,8 +673,11 @@ call-tree-item:not([origin="content"]) .call-tree-line { opacity: 0.6; } +.call-tree-name { + -moz-margin-end: 4px !important; +} + .call-tree-url { - -moz-margin-start: 4px !important; cursor: pointer; } @@ -560,12 +702,6 @@ call-tree-item:not([origin="content"]) .call-tree-line { color: ver(--theme-body-color); } -.call-tree-url[value=""], -.call-tree-line[value=""], -.call-tree-host[value=""] { - display: none; -} - .call-tree-zoom { -moz-appearance: none; background-color: transparent; @@ -582,7 +718,7 @@ call-tree-item:not([origin="content"]) .call-tree-line { background-image: url(magnifying-glass.png); } -@media (min-resolution: 2dppx) { +@media (min-resolution: 1.25dppx) { .call-tree-zoom { background-image: url(magnifying-glass@2x.png); } @@ -601,3 +737,151 @@ call-tree-item:not([origin="content"]) .call-tree-line { transform: scale(0.75); transform-origin: center right; } + +/** + * JIT View + */ + +#jit-optimizations-view { + width: 350px; + overflow-x: hidden; + overflow-y: auto; + min-width: 200px; +} + +/* override default styles for tree widget */ +#jit-optimizations-view .tree-widget-empty-text { + font-size: inherit; + padding: 0px; + margin: 8px; +} + +#jit-optimizations-view:not(.empty) .tree-widget-empty-text { + display: none; +} + +#jit-optimizations-toolbar { + height: 18px; + min-height: 0px; /* override .devtools-toolbar min-height */ +} + +.jit-optimizations-title { + margin: 0px 4px; + font-weight: 600; +} + +#jit-optimizations-raw-view { + font-size: 90%; +} + +/* override default .tree-widget-item line-height */ +#jit-optimizations-raw-view .tree-widget-item { + line-height: 20px !important; + display: block; + overflow: hidden; +} + +#jit-optimizations-raw-view .tree-widget-item[level="1"] { + font-weight: 600; +} + +#jit-optimizations-view .opt-outcome::before { + content: "→"; + margin: 4px 0px; + color: var(--theme-body-color); +} +#jit-optimizations-view .theme-selected .opt-outcome::before { + color: var(--theme-selection-color); +} + +#jit-optimizations-view .tree-widget-item:not(.theme-selected) .opt-outcome[outcome=success] { + color: var(--theme-highlight-green); +} +#jit-optimizations-view .tree-widget-item:not(.theme-selected) .opt-outcome[outcome=failure] { + color: var(--theme-highlight-red); +} +#jit-optimizations-view .tree-widget-container { + -moz-margin-end: 0px; +} +#jit-optimizations-view .tree-widget-container > li, +#jit-optimizations-view .tree-widget-children > li { + overflow: hidden; +} + +.opt-line::before { + content: ":"; + color: var(--theme-highlight-orange); +} +.theme-selected .opt-line::before { + color: var(--theme-selection-color); +} +.opt-line.header-line::before { + color: var(--theme-body-color); +} +#jit-optimizations-view.empty .opt-line.header-line::before { + display: none; +} + +.opt-url { + -moz-margin-start: 4px !important; +} +.opt-url:hover { + text-decoration: underline; +} +.opt-url.debugger-link { + cursor: pointer; +} + +#jit-optimizations-view .opt-icon::before { + content: ""; + background-image: url(chrome://browser/skin/devtools/webconsole.png); + background-repeat: no-repeat; + background-size: 48px 40px; + margin: 5px 6px 0 0; + width: 8px; + height: 8px; + max-height: 8px; + display: inline-block; +} + +#jit-optimizations-view .opt-icon[severity=warning]::before { + background-position: -16px -16px; +} + +@media (min-resolution: 1.25dppx) { + #jit-optimizations-view .opt-icon::before { + background-image: url(chrome://browser/skin/devtools/webconsole@2x.png); + } +} + +/** + * Configurable Options + * + * Elements can be tagged with a class and visibility is controlled via a + * preference being applied or removed. + */ + +/** + * devtools.performance.ui.experimental + */ +menuitem.experimental-option::before { + content: ""; + background-image: url(chrome://browser/skin/devtools/webconsole.png); + background-repeat: no-repeat; + background-size: 48px 40px; + margin: 2px 5px 0 0; + width: 8px; + height: 8px; + max-height: 8px; + display: inline-block; + background-position: -16px -16px; +} +@media (min-resolution: 1.25dppx) { + menuitem.experimental-option::before { + background-image: url(chrome://browser/skin/devtools/webconsole@2x.png); + } +} +#performance-options-menupopup:not(.experimental-enabled) .experimental-option, +#performance-options-menupopup:not(.experimental-enabled) .experimental-option::before { + display: none; +}