third part of syncing LCARStrek with Firefox 41 windows theme changes
[themes.git] / LCARStrek / browser / devtools / performance.css
index 98acfe047b5ecb9b75ceca193635a6491facc3b5..77ab4d9b341b5ca00c2d288508e795b721c293ee 100644 (file)
@@ -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;
 
 /* 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 {
   -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;
 }
 .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"],
   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);
 }
 
   background-color: var(--theme-selection-background);
 }
 
-.call-tree-item:focus label {
+.call-tree-item:focus description {
   color: var(--theme-selection-color) !important;
 }
 
   opacity: 0.6;
 }
 
+.call-tree-name {
+  -moz-margin-end: 4px !important;
+}
+
 .call-tree-url {
-  -moz-margin-start: 4px !important;
   cursor: pointer;
 }
 
   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);
 }
 
   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 <canvas> 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 <canvas> 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 {
   height: 8px;
   -moz-margin-start: 8px;
   -moz-margin-end: 6px;
-  border: 1px solid;
   border-radius: 1px;
 }
 
   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;
 }
   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;
+}