1 /* -*- Mode: javascript; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ft=javascript ts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
12 background-color: #000000;
19 #chrome-globals, #sources {
24 * This hardcoded width likely due to a toolkit Windows specific bug.
25 * See http://hg.mozilla.org/mozilla-central/annotate/f38d6df93cad/toolkit/themes/winstripe/global/textbox-aero.css#l7
39 .list-item:not(.selected):not(.empty):hover {
40 /* background: #cddae5; */
58 background-color: #000000;
62 #globalsearch > vbox:not(:empty) {
67 .dbg-source-results:not(:last-child) {
68 border-bottom: 1px dotted #9C9CFF;
72 -moz-padding-start: 6px;
75 .dbg-results-header .location {
79 .dbg-results-header .match-count {
80 -moz-padding-start: 6px;
84 .dbg-results-container .line-number {
87 -moz-padding-end: 4px;
88 -moz-border-end: 1px dotted #9C9CFF;
94 .dbg-results-container .line-contents {
95 -moz-padding-start: 4px;
99 .dbg-results-container .line-contents:hover {
103 .dbg-results-container .line-contents > .string {
107 .dbg-results-container .line-contents > .string[match=true] {
111 border: 1px solid #9C9CFF;
114 transition: transform 0.25s ease-in-out;
117 .dbg-results-container .line-contents > .string[match=true][focused] {
118 transition-duration: 0.1s;
119 transform: scale(1.75, 1.75);
126 #searchbox-panel .description {
130 #searchbox-panel button.operator {
134 font: 9pt "Liberation Mono", Consolas, "Courier New", monospace;
137 #searchbox-panel label.operator {
138 -moz-padding-start: 6px;
143 * Filtered sources panel
146 #filtered-sources-panel {
151 border: 1px solid #A09090;
152 border-top-color: #8050B0;
155 .dbg-source-item.selected {
158 .dbg-source-item:first-of-type {
159 border-top-color: #9C9CFF;
160 border-radius: 4px 4px 0 0;
163 .dbg-source-item:last-of-type {
164 border-radius: 0 0 4px 4px;
167 .dbg-source-item:only-of-type {
168 border-radius: 4px 4px 4px 4px;
171 .dbg-source-item:not(:hover) {
172 /* text-shadow: 0 1px #fff;*/
175 .dbg-source-item-name {
180 .dbg-source-item-details {
185 * Stack frames and breakpoints pane
188 #stackframes\+breakpoints {
192 #stackframes\+breakpoints[animated] {
193 transition: margin 0.25s ease-in-out;
197 * Variables and watch expressions pane
200 #variables\+expressions {
204 #variables\+expressions[animated] {
205 transition: margin 0.25s ease-in-out;
217 -moz-padding-start: 4px;
218 -moz-padding-end: 4px;
221 .dbg-stackframe-name {
225 .dbg-stackframe-details {
226 -moz-padding-start: 4px;
237 #breakpoints > vbox:not(:empty) {
242 .dbg-breakpoint:not(:last-child) {
243 border-bottom: 1px solid #008484;
246 .dbg-breakpoint-info {
250 .dbg-breakpoint-text {
251 font: 12px "Liberation Mono", Consolas, "Courier New", monospace;
254 #conditional-breakpoint-panel .description {
255 margin: -6px 0 8px 0;
258 #conditional-breakpoint-panel textbox {
263 * Watch expressions view
273 -moz-padding-start: 8px;
276 .dbg-expression-arrow {
279 background: url("chrome://browser/skin/devtools/commandline.png") 0px 4px no-repeat;
282 .dbg-expression-input {
286 .dbg-expression-delete {
290 .dbg-expression-delete:not(:hover) {
291 -moz-image-region: rect(0, 32px, 16px, 16px);
294 .dbg-expression-delete:hover {
298 .dbg-expression:hover > .dbg-expression-delete:not(:hover) {
300 transition: opacity 0.2s ease-in-out;
311 .dbg-variable-delete {
315 .dbg-variable-delete:not(:hover) {
316 -moz-image-region: rect(0, 32px, 16px, 16px);
319 .dbg-variable-delete:hover {
323 .variable-or-property:hover > .title > .dbg-variable-delete:not(:hover),
324 .variable-or-property:focus > .title > .dbg-variable-delete:not(:hover) {
326 transition: opacity 0.2s ease-in-out;
330 background: url("chrome://browser/skin/tabview/edit-light.png") center no-repeat;
335 .dbg-variable-throbber {
336 background: url("chrome://global/skin/icons/loading.gif") center no-repeat;
345 .scope:focus > .title {
357 -moz-margin-start: 2px;
358 -moz-margin-end: 2px;
361 .scope > .details.nonenum:not(:empty) {
362 border-top: 1px solid #9C9CFF;
370 -moz-margin-start: 1px;
371 -moz-margin-end: 1px;
372 border-bottom: 1px solid #008484;
373 transition: background 1s ease-in-out;
378 transition-duration: 0.4s;
381 .scope:focus > .title {
387 .variable > .title > .name {
391 .variable:not(:focus) > .title > .name {
395 .variable > .title > .value {
396 -moz-padding-start: 6px;
397 -moz-padding-end: 4px;
400 .variable[editable] > .title > .value {
404 .variable:not([non-header]) > .details {
405 -moz-margin-start: 10px;
413 transition: background 1s ease-in-out;
418 transition-duration: 0.4s;
419 background: rgba(255, 207, 0, 0.8);
422 .property:focus > .title {
428 .property:not(:focus) > .title > .name {
432 .property > .title > .value {
433 -moz-padding-start: 6px;
434 -moz-padding-end: 4px;
437 .property[editable] > .title > .value {
441 .property:not([non-header]) > .details {
442 -moz-margin-start: 10px;
446 * Non enumerable, configurable and writable variables and properties
449 .variable[proto] > .title > .name,
450 .property[proto] > .title > .name,
451 .variable[non-enumerable]:not([self]):not([exception]) > .title > .name,
452 .property[non-enumerable]:not([self]):not([exception]) > .title > .name {
456 .variable[non-configurable] > .title > .name,
457 .property[non-configurable] > .title > .name {
458 border-bottom: 1px dashed #9C9CFF;
461 .variable[non-configurable][non-writable] > .title > .name,
462 .property[non-configurable][non-writable] > .title > .name {
463 border-bottom: 1px dashed #FF0000;
466 .variable[non-writable] > .title:after,
467 .property[non-writable] > .title:after {
469 display: inline-block;
472 background: url("chrome://browser/skin/identity-icons-https.png") no-repeat;
477 @media (min-resolution: 2dppx) {
478 .variable[non-writable] > .title:after,
479 .property[non-writable] > .title:after {
480 background-image: url("chrome://browser/skin/identity-icons-https@2x.png");
481 background-size: 32px;
486 .variable[exception]:not(:focus) > .title > .name,
487 .property[exception]:not(:focus) > .title > .name {
491 .variable > tooltip > label,
492 .property > tooltip > label {
496 .variable[non-enumerable] > tooltip > label[value="enumerable"],
497 .property[non-enumerable] > tooltip > label[value="enumerable"],
498 .variable[non-configurable] > tooltip > label[value="configurable"],
499 .property[non-configurable] > tooltip > label[value="configurable"],
500 .variable[non-writable] > tooltip > label[value="writable"],
501 .property[non-writable] > tooltip > label[value="writable"] {
502 text-decoration: line-through;
506 * Variables and properties editing
509 .element-value-input {
510 -moz-margin-start: 4px !important;
513 .element-name-input {
514 -moz-margin-start: -2px !important;
519 .element-value-input,
520 .element-name-input {
522 border: 1px solid #9C9CFF !important;
526 * Variables and properties searching
529 .variables-searchinput.devtools-searchinput {
533 .variable[non-match],
534 .property[non-match] {
543 .variable-or-property:not(:focus) > .title > .token-undefined {
547 .variable-or-property:not(:focus) > .title > .token-null {
551 .variable-or-property:not(:focus) > .title > .token-boolean {
555 .variable-or-property:not(:focus) > .title > .token-number {
559 .variable-or-property:not(:focus) > .title > .token-string {
564 .variable-or-property:not(:focus) > .title > .token-other {
569 * Expand/collapse arrow
575 -moz-margin-start: 5px;
576 -moz-margin-end: 5px;
578 background: url("chrome://global/skin/tree/twisty-closed.gif") center center no-repeat;
582 background-image: url("chrome://global/skin/tree/twisty-open.gif");
585 .scope > .title > .arrow {
586 background-image: url("chrome://global/skin/tree/twisty-closed-selected.gif");
589 .scope > .title > .arrow[open] {
590 background-image: url("chrome://global/skin/tree/twisty-open-selected.gif");
602 list-style-image: url("chrome://browser/skin/devtools/debugger-expand.png");
603 -moz-image-region: rect(0px, 16px, 16px, 0px);
606 #toggle-panes:not([panesHidden]) {
607 list-style-image: url("chrome://browser/skin/devtools/debugger-collapse.png");
611 #toggle-panes:hover:active {
612 -moz-image-region: rect(0px, 32px, 16px, 16px);
616 list-style-image: url("chrome://browser/skin/devtools/debugger-play.png");
617 -moz-image-region: rect(0px, 16px, 16px, 0px);
620 #resume[checked=true],
622 -moz-image-region: rect(0px, 32px, 16px, 16px);
626 list-style-image: url("chrome://browser/skin/devtools/debugger-step-over.png");
627 -moz-image-region: rect(0px, 16px, 16px, 0px);
630 -moz-image-region: rect(0px, 32px, 16px, 16px);
634 list-style-image: url("chrome://browser/skin/devtools/debugger-step-in.png");
635 -moz-image-region: rect(0px, 16px, 16px, 0px);
638 -moz-image-region: rect(0px, 32px, 16px, 16px);
642 list-style-image: url("chrome://browser/skin/devtools/debugger-step-out.png");
643 -moz-image-region: rect(0px, 16px, 16px, 0px);
646 -moz-image-region: rect(0px, 32px, 16px, 16px);
649 #debugger-controls > toolbarbutton {
652 #debugger-controls > toolbarbutton:last-of-type {