зеркало из https://github.com/mozilla/gecko-dev.git
308 строки
7.1 KiB
CSS
308 строки
7.1 KiB
CSS
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
/* ===== tree.css ===================================================
|
|
== Styles used by the XUL tree element.
|
|
======================================================================= */
|
|
|
|
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
|
|
@namespace html url("http://www.w3.org/1999/xhtml");
|
|
|
|
/* ::::: tree ::::: */
|
|
|
|
tree {
|
|
margin: 0 4px;
|
|
background-color: Field;
|
|
color: FieldText;
|
|
appearance: auto;
|
|
-moz-default-appearance: listbox;
|
|
}
|
|
|
|
/* ::::: tree rows ::::: */
|
|
|
|
treechildren::-moz-tree-row {
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
treechildren::-moz-tree-row,
|
|
treecol:not([hideheader="true"]),
|
|
treecolpicker {
|
|
min-height: max(24px, 1.3em);
|
|
}
|
|
|
|
treechildren::-moz-tree-row(multicol, odd) {
|
|
background-color: -moz-oddtreerow;
|
|
}
|
|
|
|
@media (-moz-windows-default-theme) {
|
|
treechildren::-moz-tree-row(hover) {
|
|
background-color: hsla(0,0%,50%,.15);
|
|
}
|
|
}
|
|
|
|
treechildren::-moz-tree-row(selected) {
|
|
background-color: -moz-cellhighlight;
|
|
}
|
|
|
|
treechildren::-moz-tree-row(selected, focus) {
|
|
background-color: SelectedItem;
|
|
}
|
|
|
|
treechildren::-moz-tree-row(current, focus) {
|
|
outline: var(--default-focusring);
|
|
outline-color: SelectedItem;
|
|
outline-offset: calc(-1 * var(--default-focusring-width));
|
|
}
|
|
|
|
treechildren::-moz-tree-row(selected, current, focus) {
|
|
outline-color: #F3D982;
|
|
}
|
|
|
|
/* ::::: tree cells ::::: */
|
|
|
|
treechildren::-moz-tree-cell {
|
|
padding: 0 2px;
|
|
}
|
|
|
|
treechildren::-moz-tree-cell-text {
|
|
color: inherit;
|
|
}
|
|
|
|
treechildren::-moz-tree-image(selected),
|
|
treechildren::-moz-tree-twisty(selected),
|
|
treechildren::-moz-tree-cell-text(selected) {
|
|
color: -moz-cellhighlighttext;
|
|
}
|
|
|
|
treechildren::-moz-tree-image(selected, focus),
|
|
treechildren::-moz-tree-twisty(selected, focus),
|
|
treechildren::-moz-tree-cell-text(selected, focus) {
|
|
color: SelectedItemText;
|
|
}
|
|
|
|
|
|
/* ::::: lines connecting cells ::::: */
|
|
|
|
treechildren::-moz-tree-line {
|
|
border: 1px dotted ThreeDShadow;
|
|
}
|
|
|
|
treechildren::-moz-tree-line(selected, focus) {
|
|
border: 1px dotted SelectedItemText;
|
|
}
|
|
|
|
|
|
/* ::::: tree separator ::::: */
|
|
|
|
treechildren::-moz-tree-separator {
|
|
border-top: 1px solid ThreeDShadow;
|
|
border-bottom: 1px solid ThreeDHighlight;
|
|
}
|
|
|
|
|
|
/* ::::: drop feedback ::::: */
|
|
|
|
treechildren::-moz-tree-cell-text(primary, dropOn) {
|
|
background-color: SelectedItem;
|
|
color: SelectedItemText;
|
|
}
|
|
|
|
treechildren::-moz-tree-drop-feedback {
|
|
background-color: SelectedItem;
|
|
width: 50px;
|
|
height: 2px;
|
|
margin-inline-start: 5px;
|
|
}
|
|
|
|
/* ::::: tree columns ::::: */
|
|
|
|
treecol,
|
|
treecolpicker {
|
|
appearance: auto;
|
|
-moz-default-appearance: treeheadercell;
|
|
-moz-box-align: center;
|
|
-moz-box-pack: center;
|
|
color: -moz-ColHeaderText;
|
|
padding: 0 4px;
|
|
}
|
|
|
|
treecol:where(:hover),
|
|
treecolpicker:where(:hover) {
|
|
color: -moz-ColHeaderHoverText;
|
|
}
|
|
|
|
.treecol-image {
|
|
padding: 0 1px;
|
|
}
|
|
|
|
.treecol-text {
|
|
margin: 0 !important;
|
|
}
|
|
|
|
treecol[hideheader="true"] {
|
|
appearance: none;
|
|
}
|
|
|
|
/* ::::: column drag and drop styles ::::: */
|
|
|
|
treecol[dragging="true"] {
|
|
color: Graytext;
|
|
}
|
|
|
|
treechildren::-moz-tree-column(insertbefore) {
|
|
border-inline-start: 1px solid ThreeDShadow;
|
|
}
|
|
|
|
treechildren::-moz-tree-column(insertafter) {
|
|
border-inline-end: 1px solid ThreeDShadow;
|
|
}
|
|
|
|
/* ::::: column picker ::::: */
|
|
|
|
.tree-columnpicker-icon {
|
|
list-style-image: url("chrome://global/skin/icons/columnpicker.svg");
|
|
-moz-context-properties: fill;
|
|
fill: currentColor;
|
|
}
|
|
|
|
/* ::::: tree icons ::::: */
|
|
|
|
treechildren::-moz-tree-image {
|
|
-moz-context-properties: fill;
|
|
fill: currentColor;
|
|
}
|
|
|
|
/* ::::: twisty ::::: */
|
|
|
|
treechildren::-moz-tree-twisty {
|
|
padding-top: 1px;
|
|
padding-inline: 4px;
|
|
width: 12px; /* The image's width is 12 pixels */
|
|
list-style-image: url("chrome://global/skin/icons/arrow-right-12.svg");
|
|
-moz-context-properties: fill;
|
|
fill: currentColor;
|
|
}
|
|
|
|
treechildren:-moz-locale-dir(rtl)::-moz-tree-twisty(closed) {
|
|
list-style-image: url("chrome://global/skin/icons/arrow-left-12.svg");
|
|
}
|
|
|
|
treechildren::-moz-tree-twisty(open) {
|
|
list-style-image: url("chrome://global/skin/icons/arrow-down-12.svg");
|
|
}
|
|
|
|
treechildren::-moz-tree-indentation {
|
|
width: 16px;
|
|
}
|
|
|
|
/* ::::: editable tree ::::: */
|
|
|
|
treechildren::-moz-tree-row(selected, editing) {
|
|
background-color: transparent;
|
|
border: none;
|
|
}
|
|
|
|
treechildren::-moz-tree-cell-text(selected, editing),
|
|
treechildren::-moz-tree-image(selected, editing) {
|
|
color: inherit;
|
|
}
|
|
|
|
html|input.tree-input {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
appearance: none;
|
|
-moz-box-flex: 1;
|
|
border: 0;
|
|
border-radius: 2px;
|
|
outline: var(--focus-outline);
|
|
margin-block: -1px 0;
|
|
margin-inline: -2px 0;
|
|
padding: 1px;
|
|
font: inherit;
|
|
}
|
|
|
|
.scrollbar-topmost {
|
|
position: relative;
|
|
z-index: 2147483647;
|
|
}
|
|
|
|
@media (-moz-platform: windows) {
|
|
/* ::::: sort direction indicator ::::: */
|
|
|
|
.treecol-sortdirection {
|
|
list-style-image: none;
|
|
-moz-context-properties: fill;
|
|
fill: currentColor;
|
|
}
|
|
|
|
treecol[sortDirection="ascending"]:not([hideheader="true"]) > .treecol-sortdirection {
|
|
list-style-image: url("chrome://global/skin/tree/sort-asc.svg");
|
|
}
|
|
|
|
treecol[sortDirection="descending"]:not([hideheader="true"]) > .treecol-sortdirection {
|
|
list-style-image: url("chrome://global/skin/tree/sort-dsc.svg");
|
|
}
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
treecol,
|
|
treecolpicker {
|
|
appearance: none;
|
|
background-color: ButtonFace;
|
|
color: ButtonText;
|
|
border-inline-start: 1px solid ThreeDLightShadow;
|
|
box-shadow: inset 0 -1px ThreeDLightShadow;
|
|
}
|
|
treecol:where([ordinal="1"]) {
|
|
border-inline-start: none;
|
|
}
|
|
:is(treecol, treecolpicker):where(:hover) {
|
|
background-color: -moz-ButtonHoverFace;
|
|
color: -moz-ButtonHoverText;
|
|
}
|
|
:is(treecol, treecolpicker):where(:hover:active) {
|
|
background-color: -moz-ButtonActiveFace;
|
|
color: -moz-ButtonActiveText;
|
|
}
|
|
}
|
|
|
|
@media (-moz-windows-classic) {
|
|
treecol,
|
|
treecolpicker {
|
|
border: 1px solid;
|
|
border-top-color: ThreeDHighlight;
|
|
border-inline-end-color: ThreeDShadow;
|
|
border-bottom-color: ThreeDShadow;
|
|
border-inline-start-color: ThreeDHighlight;
|
|
box-shadow: none;
|
|
background-color: -moz-Dialog;
|
|
}
|
|
|
|
:is(treecol, treecolpicker):where(:hover:active) {
|
|
border-top-color: ThreeDShadow;
|
|
border-inline-end-color: ThreeDHighlight;
|
|
border-bottom-color: ThreeDHighlight;
|
|
border-inline-start-color: ThreeDShadow;
|
|
}
|
|
}
|
|
}
|
|
|
|
@media (-moz-platform: macos) and (not (prefers-contrast)) {
|
|
/* We show a `SelectedItem` background on selected rows, so we do not need the
|
|
dotted outline in that case. For users who have Full Keyboard Access
|
|
enabled, macOS draws a blue highlight above the row highlight, so keyboard-
|
|
only users can still discern the currently-selected row when multiple rows
|
|
are selected. */
|
|
treechildren::-moz-tree-row(selected, current, focus) {
|
|
outline: none;
|
|
}
|
|
}
|
|
|
|
@media (-moz-platform: linux) {
|
|
.treecol-sortdirection {
|
|
appearance: auto;
|
|
-moz-default-appearance: treeheadersortarrow;
|
|
}
|
|
}
|