fix a few issues pointed out by AMO reviews of previous theme versions
[themes.git] / EarlyBlue / global / tree.css
1 /* ***** BEGIN LICENSE BLOCK *****
2  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
3  *
4  * The contents of this file are subject to the Mozilla Public License Version
5  * 1.1 (the "License"); you may not use this file except in compliance with
6  * the License. You may obtain a copy of the License at
7  * http://www.mozilla.org/MPL/
8  *
9  * Software distributed under the License is distributed on an "AS IS" basis,
10  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11  * for the specific language governing rights and limitations under the
12  * License.
13  *
14  * The Original Code is "Classic" theme of mozilla.org code.
15  *
16  * The Initial Developer of the Original Code is
17  * the Mozilla Organization.
18  * Portions created by the Initial Developer are Copyright (C) 1998-2001
19  * the Initial Developer. All Rights Reserved.
20  *
21  * Contributor(s):
22  *   Joe Hewitt (hewitt@netscape.com)
23  *   Dean Tessman (dean_tessman@hotmail.com)
24  *   Robert Kaiser <KaiRo@KaiRo.at>
25  *
26  * Alternatively, the contents of this file may be used under the terms of
27  * either the GNU General Public License Version 2 or later (the "GPL"), or
28  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
29  * in which case the provisions of the GPL or the LGPL are applicable instead
30  * of those above. If you wish to allow use of your version of this file only
31  * under the terms of either the GPL or the LGPL, and not to allow others to
32  * use your version of this file under the terms of the MPL, indicate your
33  * decision by deleting the provisions above and replace them with the notice
34  * and other provisions required by the GPL or the LGPL. If you do not delete
35  * the provisions above, a recipient may use your version of this file under
36  * the terms of any one of the MPL, the GPL or the LGPL.
37  *
38  * ***** END LICENSE BLOCK ***** */
39
40 /* ===== tree.css =======================================================
41   == Styles used by the XUL tree element.
42   ======================================================================= */
43
44 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
45
46 /* ::::: tree ::::: */
47
48 tree {
49   margin: 0px;
50   border: 1px inset #CCD0DD;
51   background-color: #FFFFFF;
52   color: #000000;
53 }
54
55 /* ::::: tree focusring ::::: */
56
57 .focusring > .tree-stack > .tree-rows > .tree-bodybox {
58   border: 1px solid transparent;
59 }
60
61 .focusring:-moz-focusring > .tree-stack > .tree-rows > .tree-bodybox {
62   border: 1px solid #000000;
63 }
64
65 /* ::::: tree rows ::::: */
66
67 treechildren::-moz-tree-row {
68   border: 1px solid transparent;
69   background-color: transparent;
70   min-height: 18px;
71   height: 1.3em;
72 }
73
74 treechildren::-moz-tree-row(selected) {
75   background-color: #808080;
76 }
77
78 treechildren::-moz-tree-row(selected, focus) {
79   background-color: #336699;
80 }
81
82 treechildren::-moz-tree-row(current, focus) {
83   border: 1px dotted #9999CC;
84 }
85
86 treechildren::-moz-tree-row(selected, current, focus) {
87   border: 1px dotted #666699;
88 }
89
90 tree[seltype="cell"] > treechildren::-moz-tree-row,
91 tree[seltype="text"] > treechildren::-moz-tree-row {
92   border: none;
93   background-color: transparent;
94 }
95
96 /* ::::: tree cells ::::: */
97
98 treechildren::-moz-tree-cell {
99   padding: 0px 2px;
100 }
101
102 tree[seltype="cell"] > treechildren::-moz-tree-cell-text,
103 tree[seltype="text"] > treechildren::-moz-tree-cell-text,
104 treechildren::-moz-tree-cell-text {
105   color: inherit;
106 }
107
108 treechildren::-moz-tree-cell-text(selected) {
109   color: #FFFFFF;
110 }
111
112 tree[seltype="cell"] > treechildren::-moz-tree-cell {
113   border: 1px solid transparent;
114   padding: 0px 1px;
115 }
116
117 tree[seltype="text"] > treechildren::-moz-tree-cell-text {
118   border: 1px solid transparent;
119   padding: 0px 1px 1px;
120 }
121
122 tree[seltype="cell"] > treechildren::-moz-tree-cell(active, selected) {
123   background-color: #808080;
124 }
125 tree[seltype="cell"] > treechildren::-moz-tree-cell-text(active, selected) {
126   color: #FFFFFF;
127 }
128
129 tree[seltype="text"] > treechildren::-moz-tree-cell-text(active, selected) {
130   background-color: #808080;
131   color: #FFFFFF;
132 }
133
134 treechildren::-moz-tree-cell-text(selected, focus) {
135   color: #FFFFFF;
136 }
137
138 tree[seltype="cell"] > treechildren::-moz-tree-cell(active, selected, focus) {
139   background-color: #336699;
140 }
141 tree[seltype="cell"] > treechildren::-moz-tree-cell-text(active, selected, focus) {
142   color: #FFFFFF;
143 }
144
145 tree[seltype="text"] > treechildren::-moz-tree-cell-text(active, selected, focus) {
146   background-color: #336699;
147   color: #FFFFFF;
148 }
149
150 tree[seltype="cell"] > treechildren::-moz-tree-cell(active, current, focus) {
151   border: 1px dotted #9999CC;
152 }
153
154 tree[seltype="text"] > treechildren::-moz-tree-cell-text(active, current, focus) {
155   border: 1px dotted #9999CC;
156 }
157
158 tree[seltype="cell"] > treechildren::-moz-tree-cell(active, selected, current, focus) {
159   border: 1px dotted #666699;
160 }
161
162 tree[seltype="text"] > treechildren::-moz-tree-cell-text(active, selected, current, focus) {
163   border: 1px dotted #666699;
164 }
165
166 /* ::::: lines connecting cells ::::: */
167
168 tree[seltype="cell"] > treechildren::-moz-tree-line,
169 tree[seltype="text"] > treechildren::-moz-tree-line,
170 treechildren::-moz-tree-line {
171   visibility: hidden;
172 }
173
174 tree[seltype="cell"] > treechildren::-moz-tree-line,
175 tree[seltype="text"] > treechildren::-moz-tree-line,
176 treechildren::-moz-tree-line {
177   border: 1px dotted #CCD0DD;
178 }
179
180 tree[seltype="cell"] > treechildren::-moz-tree-line(active, selected, focus),
181 treechildren::-moz-tree-line(selected, focus) {
182   border: 1px dotted #666699;
183 }
184
185 /* ::::: tree separator ::::: */
186
187 treechildren::-moz-tree-separator {
188   margin-top: 1px;
189   border: 1px outset #CCD0DD;
190   height: 2px;
191 }
192
193 /* ::::: drop feedback ::::: */
194
195 treechildren::-moz-tree-row(dropOn) {
196   background-color: #336699;
197 }
198
199 tree[seltype="cell"] > treechildren::-moz-tree-cell-text(primary, dropOn),
200 tree[seltype="text"] > treechildren::-moz-tree-cell-text(primary, dropOn),
201 treechildren::-moz-tree-cell-text(dropOn) {
202   color: #FFFFFF;
203 }
204
205 treechildren::-moz-tree-drop-feedback {
206   background-color: #336699;
207   width: 50px;
208   height: 2px;
209   -moz-margin-start: 5px;
210 }
211
212 treechildren::-moz-tree-drop-feedback(selected) {
213   background-color: #FFFFFF;
214 }
215
216 /* ::::: tree checkbox ::::: */
217
218 treechildren::-moz-tree-checkbox {
219   list-style-image: url("chrome://global/skin/tree/checkbox.gif");
220 }
221
222 treechildren::-moz-tree-checkbox(checked) {
223   list-style-image: url("chrome://global/skin/tree/checkbox-checked.gif");
224 }
225
226 /* ::::: tree progress meter ::::: */
227
228 treechildren::-moz-tree-progressmeter {
229   margin: 0px 0px;
230   border: 1px inset #CCD0DD;
231   background-color: #999999;
232   color: #6699CC;
233 }
234
235 treechildren::-moz-tree-progressmeter(progressUndetermined) {
236   list-style-image: url("chrome://global/skin/progressmeter/progressmeter-busy.gif");
237   background-color: #CCD0DD;
238 }
239
240 treechildren::-moz-tree-cell-text(progressmeter) {
241   margin: 2px 4px;
242 }
243
244 /* ::::: tree columns ::::: */
245
246 treecol {
247   -moz-box-align: center;
248   -moz-box-pack: center;
249   border: 1px outset #CCD0DD;
250   background-color: #CCD0DD;
251   color: #000000;
252   padding: 1px 4px;
253 }
254
255 treecolpicker {
256   -moz-box-align: center;
257   -moz-box-pack: center;
258   border: 1px solid transparent;
259   background-color: #CCD0DD;
260   padding: 1px 0px;
261 }
262
263 .treecol-image {
264   padding: 0 1px;
265 }
266
267 .treecol-text {
268   margin: 0px !important;
269   padding: 0px !important;
270 }
271
272 treecol[hideheader="true"] {
273   border: none;
274   padding: 0;
275 }
276
277 /* ..... internal box ..... */
278
279 treecol:hover:active {
280   border: 1px solid #666699;
281   padding-top: 2px;
282   padding-bottom: 0px;
283   -moz-padding-start: 5px;
284   -moz-padding-end: 3px;
285 }
286
287 treecolpicker:hover:active {
288   border: 1px solid #666699;
289 }
290
291 .treecol-image:hover:active {
292   padding-top: 2px;
293   padding-bottom: 0px;
294   -moz-padding-start: 2px;
295   -moz-padding-end: 0px;
296 }
297
298 /* ::::: column drag and drop styles ::::: */
299
300 treecol[dragging="true"] {
301   border: 1px solid transparent;
302   background-color: #336699;
303   color: #000000;
304 }
305
306 treecol[insertafter="true"]:-moz-locale-dir(ltr),
307 treecol[insertbefore="true"]:-moz-locale-dir(rtl) {
308   border-right: 1px solid #000000;
309 }
310
311 treecol[insertafter="true"]:-moz-locale-dir(rtl),
312 treecol[insertbefore="true"]:-moz-locale-dir(ltr) {
313   border-left: 1px solid #000000;
314 }
315
316 treechildren::-moz-tree-column(insertbefore) {
317   -moz-border-start: 1px solid #000000;
318 }
319
320 treechildren::-moz-tree-column(insertafter) {
321   -moz-border-end: 1px solid #000000;
322 }
323
324 /* ::::: sort direction indicator :::::  */
325
326 .treecol-sortdirection {
327   list-style-image: none;
328   width: 8px;  /* The image's width is 7 pixels */
329 }
330
331 treecol:not([hideheader="true"]) > .treecol-sortdirection[sortDirection="ascending"] {
332   list-style-image: url("chrome://global/skin/tree/sort-asc.gif");
333 }
334
335 treecol:not([hideheader="true"]) > .treecol-sortdirection[sortDirection="descending"] {
336   list-style-image: url("chrome://global/skin/tree/sort-desc.gif");
337 }
338
339 /* ::::: column picker :::::  */
340
341 .tree-columnpicker-icon {
342   list-style-image: url("chrome://global/skin/tree/columnpicker.gif");
343 }
344
345 /* ::::: twisty :::::  */
346
347 treechildren::-moz-tree-twisty {
348   -moz-padding-end: 2px;
349   padding-top: 1px;
350   width: 11px; /* The image's width is 11 pixels */
351   list-style-image: url("chrome://global/skin/tree/twisty-closed.gif");
352 }
353
354 treechildren::-moz-tree-twisty(open) {
355   width: 11px; /* The image's width is 11 pixels */
356   list-style-image: url("chrome://global/skin/tree/twisty-open.gif");
357 }
358
359 treechildren::-moz-tree-indentation {
360   width: 11px;
361 }
362
363 /* ::::: gridline style ::::: */
364
365 treechildren.gridlines::-moz-tree-cell {
366   border-right: 1px solid green;
367   border-bottom: 1px solid green;
368 }
369
370 treechildren.gridlines::-moz-tree-row {
371   border: none;
372 }
373
374 /* ::::: alternating background ::::: */
375
376 treechildren[alternatingbackground="true"]::-moz-tree-row(odd) {
377   background-color: #F5F7FF;
378 }
379
380 treechildren[alternatingbackground="true"]::-moz-tree-row(odd, selected) {
381   background-color: #A0A0A0;
382 }
383
384 treechildren[alternatingbackground="true"]::-moz-tree-row(odd, selected, focus) {
385   background-color: #6699CC;
386 }
387
388 /* ::::: editable tree ::::: */
389
390 treechildren::-moz-tree-row(selected, editing) {
391   background-color: transparent;
392   border: none;
393 }
394
395 treechildren::-moz-tree-cell-text(selected, editing) {
396   color: inherit;
397 }
398
399 .tree-input {
400   border: 1px solid #336699;
401   margin: 0;
402   -moz-margin-start: -4px;
403   padding: 1px;
404 }