13a5a467a833d8e1f7269a56f05ae9a3da0f4974
[themes.git] / LCARStrek / devtools / toolbars.css
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/. */
5
6 /* CSS Variables specific to the devtools toolbar that aren't defined by the themes */
7 .theme-light,
8 .theme-dark,
9 .theme-firebug {
10   --toolbar-tab-hover: #FFCF00;
11   --toolbar-tab-hover-active: #FF9F00;
12   --searchbox-background-color: #000000;
13   --searchbox-border-color: #9C9CFF;
14   --searcbox-no-match-background-color: #400000;
15   --searcbox-no-match-border-color: #FF0000;
16   --magnifying-glass-image: url(images/search.svg);
17   --filter-image: url(images/filter.svg);
18   --tool-options-image: url(images/tool-options-tbutton.svg);
19   --icon-filter: invert(1);
20   --checked-icon-filter: url(images/filters.svg#checked-icon-state);
21   --toolbar-button-border-color: #A09090;
22 }
23
24 /* Toolbars */
25 .devtools-toolbar,
26 .devtools-sidebar-tabs tabs {
27   padding: 0;
28   border-width: 0;
29 /*  border-bottom-width: 1px;*/
30   border-style: solid;
31 /*  height: 24px;
32   line-height: 24px;*/
33   box-sizing: border-box;
34   font: 11px "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
35 }
36 .devtools-toolbar {
37   height: 24px;
38 }
39
40 .devtools-toolbar {
41   border-bottom: 3px solid var(--theme-body-background);
42 }
43
44 .devtools-toolbar checkbox {
45   /* LCARStrek checkbox colors don't work well against toolbar background */
46   background-color: var(--theme-toolbar-background);
47   padding: 2px;
48   line-height: -moz-block-height;
49 }
50 .devtools-toolbar checkbox .checkbox-check {
51 }
52 .devtools-toolbar checkbox .checkbox-label-box {
53 }
54 .devtools-toolbar checkbox .checkbox-label-box .checkbox-label {
55 }
56
57 /* HTML Checkboxes - a lot copied from global/in-content/common.css */
58 /* Hide the actual checkbox */
59 input[type="checkbox"]:not(#browser-style-checkbox),
60 #browser-style-checkbox:not([label]) { /* not()s are workaround for old placement of checkbox in label */
61   opacity: 0;
62   width: 0;
63   pointer-events: none;
64   position: absolute;
65 }
66
67 /* Create a box to style as the checkbox */
68 input[type="checkbox"] + label::before {
69   display: inline-block;
70   content: "";
71   vertical-align: middle;
72 }
73
74 .devtools-searchbox + #browser-style-checkbox-label, /* workaround for old placement of checkbox in label */
75 input[type="checkbox"] + label {
76   line-height: 0px;
77   color: var(--theme-capped-toolbar-text);
78 }
79
80 input[type="checkbox"] + label::before {
81   -moz-appearance: none;
82   width: 13px;
83   height: 13px;
84   border-radius: 0;
85   border: 1px solid var(--theme-body-color);
86   margin-inline-end: 3px;
87   margin-inline-start: 2px;
88   background-color: var(--theme-toolbar-background);
89   background-position: center center;
90   background-repeat: no-repeat;
91 }
92
93 input[type="checkbox"]:not(:disabled) + label:hover::before {
94   border-color: var(--theme-hover-background);
95 }
96 .devtools-searchbox + #browser-style-checkbox-label:hover, /* workaround for old placement of checkbox in label */
97 input[type="checkbox"]:not(:disabled) + label:hover {
98   color: var(--theme-hover-background);
99 }
100 input[type="checkbox"]:checked + label::before {
101   background-image: url("chrome://global/skin/in-content/check.svg#check");
102 }
103
104 input[type="checkbox"]:checked:disabled + label::before {
105   background-image: url("chrome://global/skin/in-content/check.svg#check-disabled");
106 }
107 input[type="checkbox"]:checked:not(:disabled) + label:hover::before {
108   background-image: url("chrome://global/skin/in-content/check.svg#check-hover");
109 }
110 input[type="checkbox"]:disabled + label::before {
111   border-color: var(--theme-body-color-inactive);
112 }
113 input[type="checkbox"]:disabled + label {
114   color: var(--theme-body-color-inactive);
115 }
116
117 .devtools-separator {
118   margin: 0 2px;
119   width: 2px;
120   background-image: linear-gradient(transparent 15%, var(--theme-splitter-color) 15%, var(--theme-splitter-color) 85%, transparent 85%);
121   background-size: 1px 100%;
122   background-repeat: no-repeat;
123   background-position: 0, 1px, 2px;
124 }
125
126 /* HTML toolbars - style them LCARStrek-like */
127
128 div.devtools-toolbar {
129   background-size: calc(100% - 30px);
130   background-image: linear-gradient(90deg, var(--theme-capped-toolbar-background), var(--theme-capped-toolbar-background));
131   background-repeat: no-repeat;
132   background-position: center center;
133   display: flex;
134 }
135
136 div.devtools-toolbar::before,
137 div.devtools-toolbar::after {
138   display: flex;
139   content: "";
140   width: 12px;
141   min-height: 16px;
142   background-color: var(--theme-toolbar-caps);
143 }
144
145 div.devtools-toolbar::before {
146   border-radius: 8px 0px 0px 8px;
147   border: none;
148   border-inline-end: 3px solid black;
149   margin-inline-end: 2px;
150 }
151
152 div.devtools-toolbar::after {
153   border-radius: 0px 8px 8px 0px;
154   border: none;
155   border-inline-start: 3px solid black;
156   margin-inline-start: auto; /* originally 2px, but auto makes us able to get flexible free space */
157 }
158
159 /* Toolbar buttons */
160
161 .devtools-menulist,
162 .devtools-toolbarbutton,
163 .devtools-button {
164 }
165
166 .devtools-menulist,
167 .devtools-toolbarbutton {
168 }
169
170 .devtools-toolbarbutton:not([label]) > .toolbarbutton-icon,
171 .devtools-button::before {
172   width: 16px;
173   height: 16px;
174 /*  transition: opacity 0.05s ease-in-out;*/
175 }
176
177 /* HTML buttons */
178 .devtools-button {
179   margin: 0;
180   padding: 0;
181   border: none;
182   border-radius: 3px;
183   min-width: 18px;
184   height: 100%;
185   margin-inline-start: 2px;
186   background: var(--theme-toolbar-background);
187   color: var(--theme-body-color);
188   /* The icon is absolutely positioned in the button using ::before */
189   position: relative;
190 }
191
192 .devtools-button:not([disabled]):hover {
193   background: var(--theme-hover-background);
194   color: var(--theme-hover-color);
195 }
196
197 .devtools-button:not([disabled]):hover:active {
198   background: var(--theme-active-background);
199   color: var(--theme-active-color);
200 }
201
202 /* Menu type buttons and checked states */
203 .devtools-button[checked] {
204   background: var(--theme-selection-background);
205   color: var(--theme-selection-color);
206 }
207
208 .devtools-button::before {
209   content: "";
210   display: block;
211   position: absolute;
212   left: 50%;
213   top: 50%;
214   margin: -8px 0 0 -8px;
215 /*  background-size: cover;
216   background-repeat: no-repeat;*/
217 /*  transition: opacity 0.05s ease-in-out;*/
218 }
219
220 .devtools-button:-moz-focusring {
221   outline: none;
222 }
223
224 /* Standalone buttons */
225 .devtools-button[standalone],
226 .devtools-button[data-standalone],
227 .devtools-toolbarbutton[standalone],
228 .devtools-toolbarbutton[data-standalone],
229 .menu-filter-button {
230   border: none;
231 /*  min-height: 32px; */
232   font: inherit;
233   background-color: var(--theme-button-background);
234   color: var(--theme-button-color);
235   border-radius: 300px;
236 }
237
238 .devtools-button[standalone]:hover,
239 .devtools-button[data-standalone]:hover,
240 .devtools-toolbarbutton[standalone]:hover,
241 .devtools-toolbarbutton[data-standalone]:hover,
242 .menu-filter-button:hover {
243   background-color: var(--theme-hover-background);
244   color: var(--theme-hover-color);
245 }
246
247 .devtools-button[standalone]:hover:active,
248 .devtools-button[data-standalone]:hover:active,
249 .devtools-toolbarbutton[standalone]:hover:active,
250 .devtools-toolbarbutton[data-standalone]:hover:active,
251 .menu-filter-button:hover:active {
252   background-color: var(--theme-active-background);
253   color: var(--theme-active-color);
254 }
255
256 .menu-filter-button.checked {
257   background: var(--theme-selection-background);
258   color: var(--theme-selection-color);
259 }
260
261 .menu-filter-button + .menu-filter-button {
262   margin-inline-start: 2px;
263 }
264
265 .devtools-toolbarbutton[standalone], .devtools-toolbarbutton[data-standalone] {
266 }
267
268 .devtools-toolbarbutton[label][standalone] {
269 }
270
271 .devtools-menulist,
272 .devtools-toolbarbutton,
273 .devtools-button {
274   min-height: 18px;
275 }
276
277 /* Icon button styles */
278 .devtools-toolbarbutton:not([label]),
279 .devtools-toolbarbutton[text-as-image] {
280   min-width: 16px;
281 }
282
283 /* Set flex attribute to Toolbox buttons and Picker container so,
284    they don't overlapp with the tab bar */
285 #toolbox-buttons {
286   display: flex;
287 }
288
289 #toolbox-picker-container {
290   display: flex;
291   margin-inline-start: 1px;
292 }
293
294 .devtools-toolbarbutton:not([label]) > .toolbarbutton-text {
295   display: none;
296 }
297
298 .devtools-toolbar .devtools-toolbarbutton {
299   margin-inline-start: 2px;
300 }
301
302 .devtools-toolbarbutton > .toolbarbutton-icon {
303 }
304
305 /* Menu button styles (eg. web console filters) */
306 .devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-button {
307 /*  -moz-box-orient: horizontal; */
308 }
309
310 .devtools-toolbarbutton[type=menu-button] {
311 }
312
313 .devtools-toolbarbutton > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
314 }
315
316 .devtools-menulist > .menulist-dropmarker {
317 }
318
319 .devtools-toolbarbutton[type=menu] > .toolbarbutton-menu-dropmarker,
320 .devtools-toolbarbutton[type=menu-button] > .toolbarbutton-menubutton-dropmarker {
321 }
322
323 /* Icon-only buttons */
324 .devtools-button:empty::before,
325 .devtools-toolbarbutton:not([label]):not([disabled]) > image {
326 /*  opacity: 0.8;*/
327 }
328
329 .devtools-button:hover:empty::before,
330 .devtools-button[checked]:empty::before,
331 .devtools-button[open]:empty::before,
332 .devtools-toolbarbutton:not([label]):hover > image,
333 .devtools-toolbarbutton:not([label])[checked=true] > image,
334 .devtools-toolbarbutton:not([label])[open=true] > image {
335 /*  opacity: 1;*/
336 }
337
338 .devtools-button:disabled,
339 .devtools-button[disabled],
340 .devtools-toolbarbutton[disabled] {
341 /*  opacity: 0.5 !important;*/
342 }
343
344 .devtools-button[standalone]::before,
345 .devtools-button[data-standalone]::before,
346 .devtools-button:not([disabled]):hover::before,
347 .devtools-button:not([disabled]):hover:active::before,
348 .devtools-button[checked]:empty::before,
349 .devtools-button[open]:empty::before,
350 .devtools-toolbarbutton[standalone] > image,
351 .devtools-toolbarbutton[data-standalone] > image,
352 .devtools-toolbarbutton:not([disabled]):hover > image,
353 .devtools-toolbarbutton:not([disabled]):hover:active > image,
354 .devtools-toolbarbutton[checked=true] > image,
355 .devtools-toolbarbutton[open=true] > image {
356   filter: var(--checked-icon-filter);
357 }
358
359 .devtools-button[disabled]::before,
360 .devtools-toolbarbutton[disabled] > image {
361   filter: url(images/filters.svg#disabled-icon-state);
362 }
363
364 /* Icon-and-text buttons */
365 .devtools-toolbarbutton.icon-and-text .toolbarbutton-text {
366   margin-inline-start: .5em !important;
367   font-weight: 600;
368 }
369
370 /* Text-only buttons */
371 .devtools-toolbarbutton[label]:not([text-as-image]):not([type=menu-button]),
372 .devtools-toolbarbutton[data-text-only],
373 #toolbox-buttons .devtools-toolbarbutton[text-as-image] {
374 /*  background-color: rgba(0, 0, 0, .2); / Splitter */
375 }
376
377 /* Text-only button states */
378 .devtools-button:not(:empty):not([disabled]):hover,
379 #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover,
380 .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover {
381 /*  background: rgba(0, 0, 0, .3); / Splitters */
382 }
383
384 .devtools-button:not(:empty):not([disabled]):hover:active,
385 #toolbox-buttons .devtools-toolbarbutton:not([disabled])[text-as-image]:hover:active,
386 .devtools-toolbarbutton:not(:-moz-any([checked=true],[disabled],[text-as-image]))[label]:hover:active {
387 /*  background: rgba(0, 0, 0, .4); / Splitters */
388 }
389
390 .devtools-toolbarbutton:not([disabled])[label][checked=true],
391 .devtools-toolbarbutton:not([disabled])[label][open],
392 .devtools-button:not(:empty)[checked=true],
393 #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked=true] {
394 /*  background: rgba(29, 79, 115, .7); / Select highlight blue /
395   color: var(--theme-selection-color); */
396 }
397
398 .devtools-menulist[open=true],
399 .devtools-toolbarbutton[open=true],
400 .devtools-toolbarbutton[open=true]:hover,
401 .devtools-toolbarbutton[open=true]:hover:active,
402 .devtools-toolbarbutton[checked=true],
403 .devtools-toolbarbutton[checked=true]:hover,
404 #toolbox-buttons .devtools-toolbarbutton[text-as-image][checked] {
405 /*  background: rgba(29, 79, 115, .8); / Select highlight blue /
406   color: var(--theme-selection-color); */
407 }
408
409 :root {
410   --clear-icon-url: url("chrome://devtools/skin/images/clear.svg");
411 }
412
413 .devtools-button.devtools-clear-icon::before {
414   background-image: var(--clear-icon-url);
415 }
416
417 .devtools-toolbarbutton.devtools-clear-icon {
418   list-style-image: var(--clear-icon-url);
419 }
420
421 .devtools-option-toolbarbutton {
422   list-style-image: var(--tool-options-image);
423 }
424
425 .devtools-toolbarbutton-group > .devtools-toolbarbutton:last-child {
426 }
427
428 .devtools-toolbarbutton-group + .devtools-toolbarbutton {
429 }
430
431 .devtools-separator + .devtools-toolbarbutton {
432 }
433
434 /* Text input */
435
436 .devtools-textinput,
437 .devtools-searchinput,
438 .devtools-filterinput {
439 /*  -moz-appearance: none;
440   margin: 1 3px;
441   border: 1px solid;
442   border-radius: 2px;
443   padding: 4px 6px;
444   border-color: var(--theme-splitter-color);
445   font: message-box;*/
446   margin-top: 0;
447   margin-bottom: 0;
448 }
449
450 :root[platform="mac"] .devtools-searchinput,
451 :root[platform="mac"] .devtools-textinput {
452 /*  border-radius: 20px;*/
453 }
454
455 .devtools-searchinput,
456 .devtools-filterinput {
457 /*  margin-top: 1px;
458   margin-bottom: 1px;
459   padding: 0;*/
460   padding-inline-start: 22px;
461   padding-inline-end: 4px;
462   background-position: 8px center;
463   background-size: 11px 11px;
464   background-repeat: no-repeat;
465   font-size: inherit;
466 }
467
468 .devtools-searchinput {
469   background-image: var(--magnifying-glass-image);
470 }
471
472 .devtools-filterinput {
473   background-image: var(--filter-image);
474 }
475
476 .devtools-searchinput:-moz-locale-dir(rtl),
477 .devtools-searchinput:dir(rtl),
478 .devtools-filterinput:-moz-locale-dir(rtl),
479 .devtools-filterinput:dir(rtl) {
480   background-position: calc(100% - 8px) center;
481 }
482
483 .devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-icon,
484 .devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-icon {
485   visibility: hidden;
486 }
487
488 .devtools-searchinput .textbox-input::placeholder,
489 .devtools-filterinput .textbox-input::placeholder {
490   font-style: normal;
491 }
492
493 /* Searchbox is a div container element for a search input element */
494 .devtools-searchbox {
495   display: flex;
496   flex: 1;
497   position: relative;
498 }
499
500 button + .devtools-searchbox {
501   margin-inline-start: 2px;
502 }
503
504 /* The spacing is accomplished with a padding on the searchbox */
505 .devtools-searchbox > .devtools-textinput,
506 .devtools-searchbox > .devtools-searchinput {
507 }
508
509 .devtools-textinput:focus,
510 .devtools-searchinput:focus,
511 .devtools-filterinput:focus {
512   border-color: var(--theme-focus-border-color-textbox);
513 /*  box-shadow: var(--theme-focus-box-shadow-textbox);*/
514   transition: all 0.2s ease-in-out;
515   outline: none;
516 }
517
518 /* Don't add 'double spacing' for inputs that are at beginning / end
519    of a toolbar (since the toolbar has it's own spacing). */
520 .devtools-toolbar > .devtools-textinput:first-child,
521 .devtools-toolbar > .devtools-searchinput:first-child,
522 .devtools-toolbar > .devtools-filterinput:first-child {
523 }
524 .devtools-toolbar > .devtools-textinput:last-child,
525 .devtools-toolbar > .devtools-searchinput:last-child,
526 .devtools-toolbar > .devtools-filterinput:last-child {
527 }
528 .devtools-toolbar > .devtools-searchbox:first-child {
529 }
530 .devtools-toolbar > .devtools-searchbox:last-child {
531 }
532
533 .devtools-rule-searchbox {
534   -moz-box-flex: 1;
535   width: 100%;
536 /*  font: inherit;*/
537 }
538
539 .devtools-rule-searchbox[filled] {
540   background-color: var(--searchbox-background-color);
541   border-color: var(--searchbox-border-color);
542   padding-inline-end: 23px;
543 }
544
545 .devtools-style-searchbox-no-match {
546   background-color: var(--searchbox-no-match-background-color) !important;
547   border-color: var(--searchbox-no-match-border-color) !important;
548 }
549
550 .devtools-searchinput-clear {
551   position: absolute;
552   top: 3.5px;
553   right: 7px;
554   padding: 0;
555   border: 0;
556   width: 16px;
557   height: 16px;
558   background-position: 0 0;
559   background-repeat: no-repeat;
560   background-color: transparent;
561 }
562
563 .devtools-searchinput-clear:dir(rtl) {
564   right: unset;
565   left: 7px;
566 }
567
568 .devtools-searchinput-clear {
569   background-image: url("chrome://devtools/skin/images/search-clear.svg");
570 }
571
572 .devtools-style-searchbox-no-match + .devtools-searchinput-clear {
573   background-image: url("chrome://devtools/skin/images/search-clear-failed.svg") !important;
574 }
575
576 .devtools-searchinput-clear:hover {
577   background-position: -16px 0;
578 }
579
580 .devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear,
581 .devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear {
582   list-style-image: url("chrome://devtools/skin/images/search-clear.svg");
583   -moz-image-region: rect(0, 16px, 16px, 0);
584 }
585
586 .devtools-searchinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear:hover,
587 .devtools-filterinput > .textbox-input-box > .textbox-search-icons > .textbox-search-clear:hover {
588   -moz-image-region: rect(0, 32px, 16px, 16px);
589 }
590
591 /* In-tools sidebar */
592
593 .devtools-sidebar-tabs {
594   height: 100%;
595 }
596
597 .devtools-sidebar-tabs > tabpanels {
598   padding: 0;
599   border: 0;
600 }
601
602 .devtools-sidebar-tabs tabs {
603   position: static;
604   overflow: hidden;
605 }
606
607 .devtools-sidebar-alltabs {
608 /*  -moz-appearance: none;
609   height: 24px;
610   line-height: 24px;
611   padding: 0 4px;
612   margin: 0;
613   border-width: 0 0 1px 0;
614   border-inline-start-width: 1px;
615   border-style: solid;*/
616 }
617
618 .devtools-sidebar-alltabs .toolbarbutton-icon {
619   display: none;
620 }
621
622 .devtools-sidebar-tabs tabs > .tabs-right,
623 .devtools-sidebar-tabs tabs > .tabs-left {
624   display: none;
625 }
626
627 .devtools-sidebar-tabs tabs > tab {
628   min-width: 78px;
629   text-align: center;
630   -moz-box-flex: 1;
631   position: static;
632   margin-top: 0;
633 }
634
635 .devtools-sidebar-tabs tabs > tab:-moz-focusring {
636   position: static;
637 }
638
639 .devtools-sidebar-tabs tabs > tab:first-of-type {
640   margin-inline-start: 0;
641 }
642
643 .devtools-sidebar-tabs tabs > tab:last-of-type {
644   border-inline-end-width: 0;
645 }
646
647 .devtools-sidebar-tabs tabs > tab {
648 }
649
650 .devtools-sidebar-tabs tabs > tab[selected],
651 .devtools-sidebar-tabs tabs > tab[selected] + tab {
652 }
653
654 .devtools-sidebar-tabs tabs > tab:first-child {
655 }
656
657 .devtools-sidebar-tabs tabs > tab:hover {
658 }
659
660 .devtools-sidebar-tabs tabs > tab:hover:active {
661 }
662
663 .devtools-sidebar-tabs tabs > tab[selected],
664 .devtools-sidebar-tabs tabs > tab[selected]:hover:active {
665 }
666
667 .hidden-labels-box:not(.visible) > label,
668 .hidden-labels-box.visible ~ .hidden-labels-box > label:last-child {
669   display: none;
670 }
671
672 .devtools-invisible-splitter {
673   border-color: transparent;
674   background-color: transparent;
675 }
676
677 .devtools-horizontal-splitter,
678 .devtools-side-splitter {
679 /*  background-color: var(--theme-splitter-color);*/
680 }
681
682 /* HACK around hardcoded stylings for the HTML-based sidebar tabs */
683 .tabs .tabs-menu-item,
684 .theme-dark .tabs .tabs-menu-item,
685 .theme-light .tabs .tabs-menu-item {
686   margin: 0;
687   margin-inline-end: 3px !important;
688   padding: 0 !important;
689   border-radius: 8px 8px 0 0;
690   border: 0 !important;
691   background-color: var(--theme-button-background);
692 }
693 .tabs .tabs-menu-item a {
694   color: var(--theme-button-color) !important;
695   padding: 0px 3px !important;
696 }
697 .tabs .tabs-menu-item.is-active {
698   height: auto !important;
699 }
700 .tabs .tabs-navigation {
701   height: auto !important;
702   border: 0 !important;
703   border-bottom: 3px solid  var(--theme-body-background) !important;
704 }
705
706 /* Throbbers */
707
708 .devtools-throbber::before {
709   content: "";
710   display: inline-block;
711   vertical-align: bottom;
712   margin-inline-end: 0.5em;
713   width: 1em;
714   height: 1em;
715   border: 2px solid currentColor;
716   border-right-color: transparent;
717   border-radius: 50%;
718   animation: 1.1s linear throbber-spin infinite;
719 }
720
721 @keyframes throbber-spin {
722   from {
723     transform: none;
724   }
725   to {
726     transform: rotate(360deg);
727   }
728 }