1 /* vim:set ts=2 sw=2 sts=2 et: */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 /* Generic pane helpers */
8 .generic-toggled-side-pane {
10 -moz-margin-start: 0px !important;
11 /* Unfortunately, transitions don't work properly with locale-aware properties,
12 so both the left and right margins are set via js, while the start margin
13 is always overridden here. */
16 .generic-toggled-side-pane[animated] {
17 transition: margin 0.25s ease-in-out;
20 /* BreacrumbsWidget */
22 .breadcrumbs-widget-container {
24 /* A fake 1px-shadow is included in the border-images of the
25 breadcrumbs-widget-items, to match toolbar-buttons style.
26 This negative margin compensates the extra row of pixels created
31 /* Preloading hack, LTR */
33 .breadcrumbs-widget-container:-moz-locale-dir(ltr)::after {
37 url("breadcrumbs/ltr-start.png"),
38 url("breadcrumbs/ltr-start-selected.png"),
39 url("breadcrumbs/ltr-start-pressed.png"),
40 url("breadcrumbs/ltr-start-selected-pressed.png"),
41 url("breadcrumbs/ltr-middle.png"),
42 url("breadcrumbs/ltr-middle-selected.png"),
43 url("breadcrumbs/ltr-middle-pressed.png"),
44 url("breadcrumbs/ltr-middle-selected-pressed.png"),
45 url("breadcrumbs/ltr-end.png"),
46 url("breadcrumbs/ltr-end-selected.png"),
47 url("breadcrumbs/ltr-end-pressed.png"),
48 url("breadcrumbs/ltr-end-selected-pressed.png");
51 /* Preloading hack, RTL */
53 .breadcrumbs-widget-container:-moz-locale-dir(rtl)::after {
57 url("breadcrumbs/rtl-start.png"),
58 url("breadcrumbs/rtl-start-selected.png"),
59 url("breadcrumbs/rtl-start-pressed.png"),
60 url("breadcrumbs/rtl-start-selected-pressed.png"),
61 url("breadcrumbs/rtl-middle.png"),
62 url("breadcrumbs/rtl-middle-selected.png"),
63 url("breadcrumbs/rtl-middle-pressed.png"),
64 url("breadcrumbs/rtl-middle-selected-pressed.png"),
65 url("breadcrumbs/rtl-end.png"),
66 url("breadcrumbs/rtl-end-selected.png"),
67 url("breadcrumbs/rtl-end-pressed.png"),
68 url("breadcrumbs/rtl-end-selected-pressed.png");
86 .scrollbutton-up:not([disabled]):active:hover,
87 .scrollbutton-down:not([disabled]):active:hover {
90 .scrollbutton-up > .toolbarbutton-icon,
91 .scrollbutton-down > .toolbarbutton-icon {
95 .scrollbutton-up:not([disabled]):active:hover > .toolbarbutton-icon,
96 .scrollbutton-down:not([disabled]):active:hover > .toolbarbutton-icon {
99 .scrollbutton-up[disabled] > .toolbarbutton-icon,
100 .scrollbutton-down[disabled] > .toolbarbutton-icon {
103 .scrollbutton-up:-moz-locale-dir(ltr) {
104 border-top-right-radius: 0;
105 border-bottom-right-radius: 0;
108 .scrollbutton-down:-moz-locale-dir(ltr) {
109 border-top-left-radius: 0;
110 border-bottom-left-radius: 0;
113 .scrollbutton-up:-moz-locale-dir(rtl) {
114 border-top-left-radius: 0;
115 border-bottom-left-radius: 0;
118 .scrollbutton-down:-moz-locale-dir(rtl) {
119 border-top-right-radius: 0;
120 border-bottom-right-radius: 0;
123 .scrollbutton-up > .toolbarbutton-icon:-moz-locale-dir(rtl),
124 .scrollbutton-down > .toolbarbutton-icon:-moz-locale-dir(ltr) {
125 /* transform: scaleX(-1); */
128 .breadcrumbs-widget-item {
129 background-color: #000000;
135 border-width: 2px 13px;
143 .breadcrumbs-widget-item:hover {
144 background-color: #FFCF00;
148 .breadcrumbs-widget-item[checked]:not(:hover) {
149 background-color: #008484;
153 .breadcrumbs-widget-item[siblings-menu-open],
154 .breadcrumbs-widget-item:active {
155 background-color: #FF9F00;
159 .breadcrumbs-widget-item:-moz-focusring > label {
160 border-bottom: 1px dotted #008484;
163 .breadcrumbs-widget-item:-moz-focusring > .button-box {
167 .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-tag {
168 /* color: hsl(208,100%,60%); */
171 .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-id {
172 /* color: hsl(205,100%,70%); */
175 .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-pseudo-classes {
179 .breadcrumbs-widget-item-id,
180 .breadcrumbs-widget-item-classes {
181 /* color: #8d99a6; */
184 .breadcrumbs-widget-item-pseudo-classes {
188 /* Breadcrumbs LTR */
190 .breadcrumbs-widget-item:-moz-locale-dir(ltr) {
191 border-image: url("breadcrumbs/ltr-middle.png") 2 13 2 13 fill stretch;
194 .breadcrumbs-widget-item:not([checked]):hover:active:-moz-locale-dir(ltr) {
195 border-image: url("breadcrumbs/ltr-middle-pressed.png") 2 13 2 13 fill stretch;
198 .breadcrumbs-widget-item[checked]:-moz-locale-dir(ltr) {
199 border-image: url("breadcrumbs/ltr-middle-selected.png") 2 13 2 13 fill stretch;
202 .breadcrumbs-widget-item[checked]:hover:active:-moz-locale-dir(ltr) {
203 border-image: url("breadcrumbs/ltr-middle-selected-pressed.png") 2 13 2 13 fill stretch;
206 .breadcrumbs-widget-item:first-of-type:-moz-locale-dir(ltr) {
207 border-image: url("breadcrumbs/ltr-start.png") 2 13 2 13 fill stretch;
210 .breadcrumbs-widget-item:first-of-type:not([checked]):hover:active:-moz-locale-dir(ltr) {
211 border-image: url("breadcrumbs/ltr-start-pressed.png") 2 13 2 13 fill stretch;
214 .breadcrumbs-widget-item:first-of-type[checked]:-moz-locale-dir(ltr) {
215 border-image: url("breadcrumbs/ltr-start-selected.png") 2 13 2 13 fill stretch;
218 .breadcrumbs-widget-item:first-of-type[checked]:hover:active:-moz-locale-dir(ltr) {
219 border-image: url("breadcrumbs/ltr-start-selected-pressed.png") 2 13 2 13 fill stretch;
222 .breadcrumbs-widget-item:last-of-type:-moz-locale-dir(ltr) {
223 border-image: url("breadcrumbs/ltr-end.png") 2 13 2 13 fill stretch;
226 .breadcrumbs-widget-item:last-of-type:not([checked]):hover:active:-moz-locale-dir(ltr) {
227 border-image: url("breadcrumbs/ltr-end-pressed.png") 2 13 2 13 fill stretch;
230 .breadcrumbs-widget-item:last-of-type[checked]:-moz-locale-dir(ltr) {
231 border-image: url("breadcrumbs/ltr-end-selected.png") 2 13 2 13 fill stretch;
234 .breadcrumbs-widget-item:last-of-type[checked]:hover:active:-moz-locale-dir(ltr) {
235 border-image: url("breadcrumbs/ltr-end-selected-pressed.png") 2 13 2 13 fill stretch;
238 .breadcrumbs-widget-container[overflows] > .breadcrumbs-widget-item:first-of-type:-moz-locale-dir(ltr) {
241 .breadcrumbs-widget-container[overflows] > .breadcrumbs-widget-item:last-of-type:-moz-locale-dir(ltr) {
244 /* Breadcrumbs RTL */
246 .breadcrumbs-widget-item:-moz-locale-dir(rtl) {
247 border-image: url("breadcrumbs/rtl-middle.png") 2 13 2 13 fill stretch;
250 .breadcrumbs-widget-item:not([checked]):hover:active:-moz-locale-dir(rtl) {
251 border-image: url("breadcrumbs/rtl-middle-pressed.png") 2 13 2 13 fill stretch;
254 .breadcrumbs-widget-item[checked]:-moz-locale-dir(rtl) {
255 border-image: url("breadcrumbs/rtl-middle-selected.png") 2 13 2 13 fill stretch;
258 .breadcrumbs-widget-item[checked]:hover:active:-moz-locale-dir(rtl) {
259 border-image: url("breadcrumbs/rtl-middle-selected-pressed.png") 2 13 2 13 fill stretch;
262 .breadcrumbs-widget-item:first-of-type:-moz-locale-dir(rtl) {
263 border-image: url("breadcrumbs/rtl-start.png") 2 13 2 13 fill stretch;
266 .breadcrumbs-widget-item:first-of-type:not([checked]):hover:active:-moz-locale-dir(rtl) {
267 border-image: url("breadcrumbs/rtl-start-pressed.png") 2 13 2 13 fill stretch;
270 .breadcrumbs-widget-item:first-of-type[checked]:-moz-locale-dir(rtl) {
271 border-image: url("breadcrumbs/rtl-start-selected.png") 2 13 2 13 fill stretch;
274 .breadcrumbs-widget-item:first-of-type[checked]:hover:active:-moz-locale-dir(rtl) {
275 border-image: url("breadcrumbs/rtl-start-selected-pressed.png") 2 13 2 13 fill stretch;
278 .breadcrumbs-widget-item:last-of-type:-moz-locale-dir(rtl) {
279 border-image: url("breadcrumbs/rtl-end.png") 2 13 2 13 fill stretch;
282 .breadcrumbs-widget-item:last-of-type:not([checked]):hover:active:-moz-locale-dir(rtl) {
283 border-image: url("breadcrumbs/rtl-end-pressed.png") 2 13 2 13 fill stretch;
286 .breadcrumbs-widget-item:last-of-type[checked]:-moz-locale-dir(rtl) {
287 border-image: url("breadcrumbs/rtl-end-selected.png") 2 13 2 13 fill stretch;
290 .breadcrumbs-widget-item:last-of-type[checked]:hover:active:-moz-locale-dir(rtl) {
291 border-image: url("breadcrumbs/rtl-end-selected-pressed.png") 2 13 2 13 fill stretch;
294 .breadcrumbs-widget-container[overflows] > .breadcrumbs-widget-item:first-of-type:-moz-locale-dir(rtl) {
297 .breadcrumbs-widget-container[overflows] > .breadcrumbs-widget-item:last-of-type:-moz-locale-dir(rtl) {
302 .side-menu-widget-container {
303 background-color: #000000;
307 /* SideMenuWidget container */
309 .side-menu-widget-container[with-arrows=true]:-moz-locale-dir(ltr) {
312 .side-menu-widget-container[with-arrows=true]:-moz-locale-dir(rtl) {
315 .side-menu-widget-container[with-arrows=true] .side-menu-widget-group {
316 /* To allow visibility of the dark margin shadow. */
317 /* -moz-margin-end: 1px; */
320 .side-menu-widget-container[with-arrows=true] .side-menu-widget-item {
321 /* To compensate for the arrow image's dark margin. */
322 /* -moz-margin-end: -1px; */
325 /* SideMenuWidget groups */
327 .side-menu-widget-group-title {
330 background-color: #A09090;
334 /* SideMenuWidget items */
336 .side-menu-widget-item {
337 border-top: 1px solid #9C9CFF;
342 .side-menu-widget-item:last-of-type {
343 border-bottom: 1px solid #9C9CFF;
346 .side-menu-widget-item.selected {
347 background-color: #008484 !important;
351 .side-menu-widget-item.selected > .side-menu-widget-item-arrow {
352 background-size: auto, 1px 100%;
353 background-repeat: no-repeat;
356 .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(ltr) {
357 background-image: url("itemArrow-ltr.png"), linear-gradient(to right, #000000, #000000);
358 background-position: center right, top right;
361 .side-menu-widget-item.selected > .side-menu-widget-item-arrow:-moz-locale-dir(rtl) {
362 background-image: url("itemArrow-rtl.png"), linear-gradient(to right, #000000, #000000);
363 background-position: center left, top left;
366 /* SideMenuWidget items contents */
368 .side-menu-widget-item-label {
372 .side-menu-widget-item-arrow {
373 -moz-margin-start: -8px;
377 .side-menu-widget-item-other {
378 background-color: #000000;
380 -moz-padding-start: 5px;
383 .side-menu-widget-item-other.selected {
384 background-color: #008484;
388 .side-menu-widget-item-other:first-of-type {
389 /* border-top-left-radius: 4px; */
392 .side-menu-widget-item-other:not(.selected) > label {
396 /* SideMenuWidget checkboxes */
398 .side-menu-widget-group-checkbox {
400 -moz-margin-end: 4px;
403 .side-menu-widget-item-checkbox {
405 -moz-margin-start: 4px;
406 -moz-margin-end: -4px;
409 /* SideMenuWidget misc */
411 .side-menu-widget-empty-notice-container {
414 background-color: #000000;
421 .variables-view-container {
425 .variables-view-empty-notice {
430 .variables-view-scope > .title {
431 background-color: #A09090;
435 .variables-view-scope:focus > .title {
436 background-color: #008484;
440 .variables-view-scope > .variables-view-element-details:not(:empty) {
441 -moz-margin-start: 2px;
442 -moz-margin-end: 1px;
445 /* Generic traits applied to both variables and properties */
447 .variable-or-property {
448 transition: background 1s ease-in-out;
452 .variable-or-property[changed] {
453 background: rgba(255, 207, 0, 0.3);
454 transition-duration: 0.4s;
457 .variable-or-property > .title > .value {
459 -moz-padding-start: 6px;
460 -moz-padding-end: 4px;
463 .variable-or-property:focus > .title {
464 background-color: #008484;
469 .variable-or-property[editable] > .title > .value {
473 .variable-or-property:not([non-header]) > .variables-view-element-details {
474 -moz-margin-start: 10px;
477 /* Custom variables and properties traits */
479 .variables-view-variable {
480 -moz-margin-start: 1px;
481 -moz-margin-end: 1px;
484 .variables-view-variable:not(:last-child) {
485 border-bottom: 1px solid #A09090;
488 .variables-view-variable > .title > .name {
492 .variables-view-variable:not(:focus) > .title > .name {
496 .variables-view-property:not(:focus) > .title > .name {
500 /* Token value colors */
502 .variable-or-property:not(:focus) > .title > .token-undefined {
506 .variable-or-property:not(:focus) > .title > .token-null {
510 .variable-or-property:not(:focus) > .title > .token-boolean {
514 .variable-or-property:not(:focus) > .title > .token-number {
518 .variable-or-property:not(:focus) > .title > .token-string {
522 .variable-or-property:not(:focus) > .title > .token-other {
526 /* Custom configurable/enumerable/writable or frozen/sealed/extensible
527 * variables and properties */
529 .variable-or-property[non-enumerable]:not([self]):not([exception]):not([return]):not([scope]) > .title > .name {
533 .variable-or-property[non-configurable] > .title > .name {
534 border-bottom: 1px dashed #9C9CFF;
537 .variable-or-property[non-writable] > .title > .name {
538 border-bottom: 1px dashed #FF0000;
541 .variable-or-property-non-writable-icon {
542 background: url("chrome://browser/skin/identity-icons-https.png") no-repeat;
548 @media (min-resolution: 2dppx) {
549 .variable-or-property-non-writable-icon > .title:after {
550 background-image: url("chrome://browser/skin/identity-icons-https@2x.png");
551 background-size: 32px;
555 .variable-or-property-frozen-label,
556 .variable-or-property-sealed-label,
557 .variable-or-property-non-extensible-label {
558 -moz-padding-end: 4px;
561 .variable-or-property:not(:focus) > .title > .variable-or-property-frozen-label,
562 .variable-or-property:not(:focus) > .title > .variable-or-property-sealed-label,
563 .variable-or-property:not(:focus) > .title > .variable-or-property-non-extensible-label {
567 /* Special variables and properties */
569 .variable-or-property[safe-getter] > .title > .name {
570 border-bottom: 1px dashed #A09090;
573 .variable-or-property[exception]:not(:focus) > .title > .name {
577 .variable-or-property[return]:not(:focus) > .title > .name {
581 .variable-or-property[scope]:not(:focus) > .title > .name {
587 .variables-view-container[aligned-values] .title > .separator {
591 .variables-view-container[aligned-values] .title > .value {
596 .variables-view-container[aligned-values] .title > .element-value-input {
597 width: calc(70vw - 10px);
602 .variables-view-container[actions-first] .variables-view-delete,
603 .variables-view-container[actions-first] .variables-view-add-property {
604 -moz-box-ordinal-group: 0;
607 .variables-view-container[actions-first] [invisible] {
611 /* Variables and properties tooltips */
613 .variable-or-property > tooltip > label {
617 .variable-or-property[non-enumerable] > tooltip > label[value=enumerable],
618 .variable-or-property[non-configurable] > tooltip > label[value=configurable],
619 .variable-or-property[non-writable] > tooltip > label[value=writable]
620 .variable-or-property[non-extensible] > tooltip > label[value=extensible] {
622 text-decoration: line-through;
625 .variable-or-property[safe-getter] > tooltip > label[value=WebIDL] {
626 -moz-padding-start: 4px;
627 -moz-border-start: 1px dotted #9C9CFF;
631 /* Variables and properties editing */
633 .variables-view-delete {
634 list-style-image: url("chrome://browser/skin/devtools/vview-delete.png");
635 -moz-image-region: rect(0, 16px, 16px, 0);
638 .variables-view-delete:hover {
639 -moz-image-region: rect(0, 32px, 16px, 16px);
642 .variables-view-delete:active {
643 -moz-image-region: rect(0, 48px, 16px, 32px);
646 .variables-view-edit {
647 background: url("chrome://browser/skin/devtools/vview-edit.png") center no-repeat;
653 .variables-view-throbber {
654 background: url("chrome://global/skin/icons/loading_16.png") center no-repeat;
659 .element-value-input {
660 -moz-margin-start: 4px !important;
661 -moz-margin-end: 2px !important;
664 .element-name-input {
665 -moz-margin-start: -2px !important;
666 -moz-margin-end: 2px !important;
671 .element-value-input,
672 .element-name-input {
673 border: 1px solid #008484 !important;
676 /* Variables and properties searching */
678 .variables-view-searchinput {
682 .variable-or-property[non-match] {
687 /* Expand/collapse arrow */
690 background: url("chrome://global/skin/tree/twisty-closed.gif") center center no-repeat;
693 -moz-margin-start: 5px;
694 -moz-margin-end: 5px;
697 .variables-view-scope > .title > .arrow {
698 background-image: url("chrome://global/skin/tree/twisty-closed-selected.gif");
702 background-image: url("chrome://global/skin/tree/twisty-open.png");
705 .variables-view-scope > .title > .arrow[open] {
706 background-image: url("chrome://global/skin/tree/twisty-open-selected.gif");
713 /* === BEGIN manifest-editor.inc.css === */
715 /* Manifest Editor overrides */
717 .variables-view-container.manifest-editor {
718 background-color: #000000;
722 .manifest-editor .variable-or-property:focus > .title {
723 /* background-color: #EDEDED;
728 .manifest-editor .variables-view-property > .title > .name {
729 /* color: #27406A; */
732 .manifest-editor .variable-or-property > .title > label,
733 .manifest-editor textbox {
734 font-family: monospace;
737 .manifest-editor .variable-or-property > .title > .token-string {
738 /* color: #54BC6A; */
742 .manifest-editor .variable-or-property > .title > .token-boolean,
743 .manifest-editor .variable-or-property > .title > .token-number {
744 /* color: #009BD4; */
748 .manifest-editor .variable-or-property > .title > .token-undefined {
752 .manifest-editor .variable-or-property > .title > .token-null {
756 .manifest-editor .variable-or-property > .title > .token-other {
760 .manifest-editor .variables-view-variable {
764 .manifest-editor .variables-view-delete,
765 .manifest-editor .variables-view-delete:hover,
766 .manifest-editor .variables-view-delete:active,
767 .manifest-editor .variables-view-add-property:hover,
768 .manifest-editor .variables-view-add-property:active {
769 list-style-image: none;
770 -moz-image-region: initial;
773 .manifest-editor .variables-view-delete::before,
774 .manifest-editor .variables-view-add-property::before {
778 display: inline-block;
779 background-size: 11px auto;
782 .manifest-editor .variables-view-delete::before {
783 background-image: url("app-manager/remove.svg");
784 background-size: 12px auto;
787 .manifest-editor .variables-view-add-property::before {
788 background-image: url("app-manager/add.svg");
789 -moz-margin-end: 2px;
792 /* === END manifest-editor.inc.css === */