|
1 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file, |
|
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
4 |
|
5 /** |
|
6 * The downloads richlistbox may list thousands of items, and it turns out |
|
7 * XBL binding attachment, and even more so detachment, is a performance hog. |
|
8 * This hack makes sure we don't apply any binding to inactive items (inactive |
|
9 * items are history downloads that haven't been in the visible area). |
|
10 * We can do this because the richlistbox implementation does not interact |
|
11 * much with the richlistitem binding. However, this may turn out to have |
|
12 * some side effects (see bug 828111 for the details). |
|
13 * |
|
14 * We might be able to do away with this workaround once bug 653881 is fixed. |
|
15 */ |
|
16 richlistitem.download { |
|
17 -moz-binding: none; |
|
18 } |
|
19 |
|
20 richlistitem.download[active] { |
|
21 -moz-binding: url('chrome://browser/content/downloads/download.xml#download-full-ui'); |
|
22 } |
|
23 |
|
24 .download-state:not( [state="0"] /* Downloading */) |
|
25 .downloadPauseMenuItem, |
|
26 .download-state:not( [state="4"] /* Paused */) |
|
27 .downloadResumeMenuItem, |
|
28 .download-state:not(:-moz-any([state="2"], /* Failed */ |
|
29 [state="4"]) /* Paused */) |
|
30 .downloadCancelMenuItem, |
|
31 .download-state[state]:not(:-moz-any([state="1"], /* Finished */ |
|
32 [state="2"], /* Failed */ |
|
33 [state="3"], /* Canceled */ |
|
34 [state="6"], /* Blocked (parental) */ |
|
35 [state="8"], /* Blocked (dirty) */ |
|
36 [state="9"]) /* Blocked (policy) */) |
|
37 .downloadRemoveFromHistoryMenuItem, |
|
38 .download-state:not(:-moz-any([state="-1"],/* Starting (initial) */ |
|
39 [state="0"], /* Downloading */ |
|
40 [state="1"], /* Finished */ |
|
41 [state="4"], /* Paused */ |
|
42 [state="5"]) /* Starting (queued) */) |
|
43 .downloadShowMenuItem, |
|
44 .download-state[state="7"] .downloadCommandsSeparator |
|
45 { |
|
46 display: none; |
|
47 } |