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;
438 .property[editable] > .title > .value {
442 .property:not([non-header]) > .details {
443 -moz-margin-start: 10px;
447 * Non enumerable, configurable and writable variables and properties
450 .variable[proto] > .title > .name,
451 .property[proto] > .title > .name,
452 .variable[non-enumerable]:not([self]):not([exception]) > .title > .name,
453 .property[non-enumerable]:not([self]):not([exception]) > .title > .name {
457 .variable[non-configurable] > .title > .name,
458 .property[non-configurable] > .title > .name {
459 border-bottom: 1px dashed #9C9CFF;
462 .variable[non-configurable][non-writable] > .title > .name,
463 .property[non-configurable][non-writable] > .title > .name {
464 border-bottom: 1px dashed #FF0000;
467 .variable[non-writable] > .title:after,
468 .property[non-writable] > .title:after {
470 display: inline-block;
473 background: url("chrome://browser/skin/identity-icons-https.png") no-repeat;
478 @media (min-resolution: 2dppx) {
479 .variable[non-writable] > .title:after,
480 .property[non-writable] > .title:after {
481 background-image: url("chrome://browser/skin/identity-icons-https@2x.png");
482 background-size: 32px;
487 .variable[exception]:not(:focus) > .title > .name,
488 .property[exception]:not(:focus) > .title > .name {
492 .variable > tooltip > label,
493 .property > tooltip > label {
497 .variable[non-enumerable] > tooltip > label[value="enumerable"],
498 .property[non-enumerable] > tooltip > label[value="enumerable"],
499 .variable[non-configurable] > tooltip > label[value="configurable"],
500 .property[non-configurable] > tooltip > label[value="configurable"],
501 .variable[non-writable] > tooltip > label[value="writable"],
502 .property[non-writable] > tooltip > label[value="writable"] {
503 text-decoration: line-through;
507 * Variables and properties editing
510 .element-value-input {
511 -moz-margin-start: 4px !important;
514 .element-name-input {
515 -moz-margin-start: -2px !important;
520 .element-value-input,
521 .element-name-input {
523 border: 1px solid #9C9CFF !important;
527 * Variables and properties searching
530 .variables-searchinput.devtools-searchinput {
534 .variable[non-match],
535 .property[non-match] {
544 .variable-or-property:not(:focus) > .title > .token-undefined {
548 .variable-or-property:not(:focus) > .title > .token-null {
552 .variable-or-property:not(:focus) > .title > .token-boolean {
556 .variable-or-property:not(:focus) > .title > .token-number {
560 .variable-or-property:not(:focus) > .title > .token-string {
565 .variable-or-property:not(:focus) > .title > .token-other {
570 * Expand/collapse arrow
576 -moz-margin-start: 5px;
577 -moz-margin-end: 5px;
579 background: url("chrome://global/skin/tree/twisty-closed.gif") center center no-repeat;
583 background-image: url("chrome://global/skin/tree/twisty-open.gif");
586 .scope > .title > .arrow {
587 background-image: url("chrome://global/skin/tree/twisty-closed-selected.gif");
590 .scope > .title > .arrow[open] {
591 background-image: url("chrome://global/skin/tree/twisty-open-selected.gif");
603 list-style-image: url("chrome://browser/skin/devtools/debugger-expand.png");
604 -moz-image-region: rect(0px, 16px, 16px, 0px);
607 #toggle-panes:not([panesHidden]) {
608 list-style-image: url("chrome://browser/skin/devtools/debugger-collapse.png");
612 #toggle-panes:hover:active {
613 -moz-image-region: rect(0px, 32px, 16px, 16px);
617 list-style-image: url("chrome://browser/skin/devtools/debugger-play.png");
618 -moz-image-region: rect(0px, 16px, 16px, 0px);
621 #resume[checked=true],
623 -moz-image-region: rect(0px, 32px, 16px, 16px);
627 list-style-image: url("chrome://browser/skin/devtools/debugger-step-over.png");
628 -moz-image-region: rect(0px, 16px, 16px, 0px);
631 -moz-image-region: rect(0px, 32px, 16px, 16px);
635 list-style-image: url("chrome://browser/skin/devtools/debugger-step-in.png");
636 -moz-image-region: rect(0px, 16px, 16px, 0px);
639 -moz-image-region: rect(0px, 32px, 16px, 16px);
643 list-style-image: url("chrome://browser/skin/devtools/debugger-step-out.png");
644 -moz-image-region: rect(0px, 16px, 16px, 0px);
647 -moz-image-region: rect(0px, 32px, 16px, 16px);
650 #debugger-controls > toolbarbutton {
653 #debugger-controls > toolbarbutton:last-of-type {