summaryrefslogtreecommitdiffstats
path: root/toolkit/content/xul.css
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/content/xul.css')
-rw-r--r--toolkit/content/xul.css1210
1 files changed, 1210 insertions, 0 deletions
diff --git a/toolkit/content/xul.css b/toolkit/content/xul.css
new file mode 100644
index 000000000..24a6713f9
--- /dev/null
+++ b/toolkit/content/xul.css
@@ -0,0 +1,1210 @@
+/* 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/. */
+
+/**
+ * A minimal set of rules for the XUL elements that may be implicitly created
+ * as part of HTML/SVG documents (e.g. scrollbars) can be found over in
+ * minimal-xul.css. Rules for everything else related to XUL can be found in
+ * this file. Make sure you choose the correct style sheet when adding new
+ * rules. (This split of the XUL rules is to minimize memory use and improve
+ * performance in HTML/SVG documents.)
+ *
+ * This file should also not contain any app specific styling. Defaults for
+ * widgets of a particular application should be in that application's style
+ * sheet. For example, style definitions for navigator can be found in
+ * navigator.css.
+ *
+ * THIS FILE IS LOCKED DOWN. YOU ARE NOT ALLOWED TO MODIFY IT WITHOUT FIRST
+ * HAVING YOUR CHANGES REVIEWED BY enndeakin@gmail.com
+ */
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* set default namespace to XUL */
+@namespace html url("http://www.w3.org/1999/xhtml"); /* namespace for HTML elements */
+@namespace xbl url("http://www.mozilla.org/xbl"); /* namespace for XBL elements */
+
+/* ::::::::::
+ :: Rules for 'hiding' portions of the chrome for special
+ :: kinds of windows (not JUST browser windows) with toolbars
+ ::::: */
+
+window[chromehidden~="menubar"] .chromeclass-menubar,
+window[chromehidden~="directories"] .chromeclass-directories,
+window[chromehidden~="status"] .chromeclass-status,
+window[chromehidden~="extrachrome"] .chromeclass-extrachrome,
+window[chromehidden~="location"] .chromeclass-location,
+window[chromehidden~="location"][chromehidden~="toolbar"] .chromeclass-toolbar,
+window[chromehidden~="toolbar"] .chromeclass-toolbar-additional {
+ display: none;
+}
+
+/* ::::::::::
+ :: Rules for forcing direction for entry and display of URIs
+ :: or URI elements
+ ::::: */
+
+.uri-element {
+ direction: ltr !important;
+}
+
+/****** elements that have no visual representation ******/
+
+script, data,
+xbl|children,
+commands, commandset, command,
+broadcasterset, broadcaster, observes,
+keyset, key, toolbarpalette, toolbarset,
+template, rule, conditions, action,
+bindings, binding, content, member, triple,
+treechildren, treeitem, treeseparator, treerow, treecell {
+ display: none;
+}
+
+/********** focus rules **********/
+
+button,
+checkbox,
+colorpicker[type="button"],
+datepicker[type="grid"],
+menulist,
+radiogroup,
+tree,
+browser,
+editor,
+iframe {
+ -moz-user-focus: normal;
+}
+
+menulist[editable="true"] {
+ -moz-user-focus: ignore;
+}
+
+/******** window & page ******/
+
+window,
+page {
+ overflow: -moz-hidden-unscrollable;
+ -moz-box-orient: vertical;
+}
+
+/******** box *******/
+
+vbox {
+ -moz-box-orient: vertical;
+}
+
+bbox {
+ -moz-box-align: baseline;
+}
+
+/********** button **********/
+
+button {
+ -moz-binding: url("chrome://global/content/bindings/button.xml#button");
+}
+
+button[type="repeat"] {
+ -moz-binding: url("chrome://global/content/bindings/button.xml#button-repeat");
+}
+
+button[type="menu"], button[type="panel"] {
+ -moz-binding: url("chrome://global/content/bindings/button.xml#menu");
+}
+
+button[type="menu-button"] {
+ -moz-binding: url("chrome://global/content/bindings/button.xml#menu-button");
+}
+
+/********** toolbarbutton **********/
+
+toolbarbutton {
+ -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#toolbarbutton");
+}
+
+toolbarbutton.badged-button > toolbarbutton,
+toolbarbutton.badged-button {
+ -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#toolbarbutton-badged");
+}
+
+.toolbarbutton-badge:not([value]),
+.toolbarbutton-badge[value=""] {
+ display: none;
+}
+
+toolbarbutton[type="menu"],
+toolbarbutton[type="panel"] {
+ -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#menu");
+}
+
+toolbarbutton.badged-button[type="menu"],
+toolbarbutton.badged-button[type="panel"] {
+ -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#toolbarbutton-badged-menu");
+}
+
+toolbarbutton[type="menu-button"] {
+ -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#menu-button");
+}
+
+toolbar[mode="icons"] .toolbarbutton-text,
+toolbar[mode="icons"] .toolbarbutton-multiline-text,
+toolbar[mode="text"] .toolbarbutton-icon {
+ display: none;
+}
+
+.toolbarbutton-multiline-text:not([wrap="true"]),
+.toolbarbutton-text[wrap="true"] {
+ display: none;
+}
+
+/******** browser, editor, iframe ********/
+
+browser,
+editor,
+iframe {
+ display: inline;
+}
+
+browser {
+ -moz-binding: url("chrome://global/content/bindings/browser.xml#browser");
+}
+
+editor {
+ -moz-binding: url("chrome://global/content/bindings/editor.xml#editor");
+}
+
+iframe {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#iframe");
+}
+
+/********** notifications **********/
+
+notificationbox {
+ -moz-binding: url("chrome://global/content/bindings/notification.xml#notificationbox");
+ -moz-box-orient: vertical;
+}
+
+.notificationbox-stack {
+ overflow: -moz-hidden-unscrollable;
+}
+
+notification {
+ -moz-binding: url("chrome://global/content/bindings/notification.xml#notification");
+ transition: margin-top 300ms, opacity 300ms;
+}
+
+/*********** popup notification ************/
+popupnotification {
+ -moz-binding: url("chrome://global/content/bindings/notification.xml#popup-notification");
+}
+
+.popup-notification-menubutton:not([label]) {
+ display: none;
+}
+
+/********** image **********/
+
+image {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#image");
+}
+
+/********** checkbox **********/
+
+checkbox {
+ -moz-binding: url("chrome://global/content/bindings/checkbox.xml#checkbox");
+}
+
+/********** radio **********/
+
+radiogroup {
+ -moz-binding: url("chrome://global/content/bindings/radio.xml#radiogroup");
+ -moz-box-orient: vertical;
+}
+
+radio {
+ -moz-binding: url("chrome://global/content/bindings/radio.xml#radio");
+}
+
+/******** groupbox *********/
+
+groupbox {
+ -moz-binding: url("chrome://global/content/bindings/groupbox.xml#groupbox");
+ display: -moz-groupbox;
+}
+
+caption {
+ -moz-binding: url("chrome://global/content/bindings/groupbox.xml#caption");
+}
+
+.groupbox-body {
+ -moz-box-pack: inherit;
+ -moz-box-align: inherit;
+ -moz-box-orient: vertical;
+}
+
+/******** draggable elements *********/
+
+%ifdef XP_MACOSX
+titlebar,
+toolbar:not([nowindowdrag="true"]):not([customizing="true"]),
+statusbar:not([nowindowdrag="true"]),
+%endif
+windowdragbox {
+ -moz-window-dragging: drag;
+}
+
+/* The list below is non-comprehensive and will probably need some tweaking. */
+toolbaritem,
+toolbarbutton,
+button,
+textbox,
+tab,
+radio,
+splitter,
+scale,
+menulist {
+ -moz-window-dragging: no-drag;
+}
+
+/******* toolbar *******/
+
+toolbox {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbox");
+ -moz-box-orient: vertical;
+}
+
+toolbar {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbar");
+}
+
+toolbar[customizing="true"][collapsed="true"] {
+ /* Some apps, e.g. Firefox, use 'collapsed' to hide toolbars.
+ Override it while customizing. */
+ visibility: visible;
+}
+
+toolbar[customizing="true"][hidden="true"] {
+ /* Some apps, e.g. SeaMonkey, use 'hidden' to hide toolbars.
+ Override it while customizing. */
+ display: -moz-box;
+}
+
+%ifdef XP_MACOSX
+toolbar[type="menubar"] {
+ min-height: 0 !important;
+ border: 0 !important;
+}
+%else
+toolbar[type="menubar"][autohide="true"] {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbar-menubar-autohide");
+ overflow: hidden;
+}
+
+toolbar[type="menubar"][autohide="true"][inactive="true"]:not([customizing="true"]) {
+ min-height: 0 !important;
+ height: 0 !important;
+ -moz-appearance: none !important;
+ border-style: none !important;
+}
+%endif
+
+toolbarseparator {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbardecoration");
+}
+
+toolbarspacer {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbardecoration");
+}
+
+toolbarspring {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbardecoration");
+ -moz-box-flex: 1000;
+}
+
+toolbarpaletteitem {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbarpaletteitem");
+}
+
+toolbarpaletteitem[place="palette"] {
+ -moz-box-orient: vertical;
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbarpaletteitem-palette");
+}
+
+/********* menubar ***********/
+
+menubar {
+ -moz-binding: url("chrome://global/content/bindings/toolbar.xml#menubar");
+}
+
+/********* menu ***********/
+
+menubar > menu {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menu-menubar");
+}
+
+menubar > menu.menu-iconic {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menu-menubar-iconic");
+}
+
+menu {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menu");
+}
+
+menu.menu-iconic {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menu-iconic");
+}
+
+menubar > menu:empty {
+ visibility: collapse;
+}
+
+/********* menuitem ***********/
+
+menuitem {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem");
+}
+
+menuitem.menuitem-iconic {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic");
+}
+
+menuitem[description] {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic-desc-noaccel");
+}
+
+menuitem[type="checkbox"],
+menuitem[type="radio"] {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic");
+}
+
+menuitem.menuitem-non-iconic {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menubutton-item");
+}
+
+menucaption {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menucaption");
+}
+
+.menu-text {
+ -moz-box-flex: 1;
+}
+
+/********* menuseparator ***********/
+
+menuseparator {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuseparator");
+}
+
+/********* popup & menupopup ***********/
+
+/* <popup> is deprecated. Only <menupopup> and <tooltip> are still valid. */
+
+popup,
+menupopup {
+ -moz-binding: url("chrome://global/content/bindings/popup.xml#popup");
+ -moz-box-orient: vertical;
+}
+
+panel {
+ -moz-binding: url("chrome://global/content/bindings/popup.xml#panel");
+ -moz-box-orient: vertical;
+}
+
+popup,
+menupopup,
+panel,
+tooltip {
+ display: -moz-popup;
+ z-index: 2147483647;
+ text-shadow: none;
+}
+
+tooltip {
+ -moz-binding: url("chrome://global/content/bindings/popup.xml#tooltip");
+ -moz-box-orient: vertical;
+ white-space: pre-wrap;
+ margin-top: 21px;
+}
+
+panel[type="arrow"] {
+ -moz-binding: url("chrome://global/content/bindings/popup.xml#arrowpanel");
+}
+
+%ifndef MOZ_WIDGET_GTK
+
+panel[type="arrow"]:not([animate="false"]) {
+ transform: scale(.4);
+ opacity: 0;
+ transition-property: transform, opacity;
+ transition-duration: 0.15s;
+ transition-timing-function: ease-out;
+}
+
+panel[type="arrow"][animate="open"] {
+ transform: none;
+ opacity: 1.0;
+}
+
+panel[type="arrow"][animate="cancel"] {
+ transform: none;
+}
+
+panel[arrowposition="after_start"]:-moz-locale-dir(ltr),
+panel[arrowposition="after_end"]:-moz-locale-dir(rtl) {
+ transform-origin: 20px top;
+}
+
+panel[arrowposition="after_end"]:-moz-locale-dir(ltr),
+panel[arrowposition="after_start"]:-moz-locale-dir(rtl) {
+ transform-origin: calc(100% - 20px) top;
+}
+
+panel[arrowposition="before_start"]:-moz-locale-dir(ltr),
+panel[arrowposition="before_end"]:-moz-locale-dir(rtl) {
+ transform-origin: 20px bottom;
+}
+
+panel[arrowposition="before_end"]:-moz-locale-dir(ltr),
+panel[arrowposition="before_start"]:-moz-locale-dir(rtl) {
+ transform-origin: calc(100% - 20px) bottom;
+}
+
+panel[arrowposition="start_before"]:-moz-locale-dir(ltr),
+panel[arrowposition="end_before"]:-moz-locale-dir(rtl) {
+ transform-origin: right 20px;
+}
+
+panel[arrowposition="start_after"]:-moz-locale-dir(ltr),
+panel[arrowposition="end_after"]:-moz-locale-dir(rtl) {
+ transform-origin: right calc(100% - 20px);
+}
+
+panel[arrowposition="end_before"]:-moz-locale-dir(ltr),
+panel[arrowposition="start_before"]:-moz-locale-dir(rtl) {
+ transform-origin: left 20px;
+}
+
+panel[arrowposition="end_after"]:-moz-locale-dir(ltr),
+panel[arrowposition="start_after"]:-moz-locale-dir(rtl) {
+ transform-origin: left calc(100% - 20px);
+}
+
+%endif
+
+%ifdef XP_MACOSX
+.statusbar-resizerpanel {
+ display: none;
+}
+%else
+window[sizemode="maximized"] statusbarpanel.statusbar-resizerpanel {
+ visibility: collapse;
+}
+%endif
+
+/******** grid **********/
+
+grid {
+ display: -moz-grid;
+}
+
+rows,
+columns {
+ display: -moz-grid-group;
+}
+
+row,
+column {
+ display: -moz-grid-line;
+}
+
+rows {
+ -moz-box-orient: vertical;
+}
+
+column {
+ -moz-box-orient: vertical;
+}
+
+/******** listbox **********/
+
+listbox {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listbox");
+}
+
+listhead {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listhead");
+}
+
+listrows {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listrows");
+}
+
+listitem {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listitem");
+}
+
+listitem[type="checkbox"] {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listitem-checkbox");
+}
+
+listheader {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listheader");
+ -moz-box-ordinal-group: 2147483646;
+}
+
+listcell {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listcell");
+}
+
+listcell[type="checkbox"] {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listcell-checkbox");
+}
+
+.listitem-iconic {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listitem-iconic");
+}
+
+listitem[type="checkbox"].listitem-iconic {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listitem-checkbox-iconic");
+}
+
+.listcell-iconic {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listcell-iconic");
+}
+
+listcell[type="checkbox"].listcell-iconic {
+ -moz-binding: url("chrome://global/content/bindings/listbox.xml#listcell-checkbox-iconic");
+}
+
+listbox {
+ display: -moz-grid;
+}
+
+listbox[rows] {
+ height: auto;
+}
+
+listcols, listhead, listrows, listboxbody {
+ display: -moz-grid-group;
+}
+
+listcol, listitem, listheaditem {
+ display: -moz-grid-line;
+}
+
+listbox {
+ -moz-user-focus: normal;
+ -moz-box-orient: vertical;
+ min-width: 0px;
+ min-height: 0px;
+ width: 200px;
+ height: 200px;
+}
+
+listhead {
+ -moz-box-orient: vertical;
+}
+
+listrows {
+ -moz-box-orient: vertical;
+ -moz-box-flex: 1;
+}
+
+listboxbody {
+ -moz-box-orient: vertical;
+ -moz-box-flex: 1;
+ /* Don't permit a horizontal scrollbar. See bug 285449 */
+ overflow-x: hidden !important;
+ overflow-y: auto;
+ min-height: 0px;
+}
+
+listcol {
+ -moz-box-orient: vertical;
+ min-width: 16px;
+}
+
+listcell {
+ -moz-box-align: center;
+}
+
+/******** tree ******/
+
+tree {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#tree");
+}
+
+treecols {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#treecols");
+}
+
+treecol {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#treecol");
+ -moz-box-ordinal-group: 2147483646;
+}
+
+treecol.treecol-image {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#treecol-image");
+}
+
+tree > treechildren {
+ display: -moz-box;
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#treebody");
+ -moz-user-select: none;
+ -moz-box-flex: 1;
+}
+
+treerows {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#treerows");
+}
+
+treecolpicker {
+ -moz-binding: url("chrome://global/content/bindings/tree.xml#columnpicker");
+}
+
+tree {
+ -moz-box-orient: vertical;
+ min-width: 0px;
+ min-height: 0px;
+ width: 10px;
+ height: 10px;
+}
+
+tree[hidecolumnpicker="true"] > treecols > treecolpicker {
+ display: none;
+}
+
+treecol {
+ min-width: 16px;
+}
+
+treecol[hidden="true"] {
+ visibility: collapse;
+ display: -moz-box;
+}
+
+.tree-scrollable-columns {
+ /* Yes, Virginia, this makes it scrollable */
+ overflow: hidden;
+}
+
+/* ::::: lines connecting cells ::::: */
+tree:not([treelines="true"]) > treechildren::-moz-tree-line {
+ visibility: hidden;
+}
+
+treechildren::-moz-tree-cell(ltr) {
+ direction: ltr !important;
+}
+
+/********** deck & stack *********/
+
+deck {
+ display: -moz-deck;
+ -moz-binding: url("chrome://global/content/bindings/general.xml#deck");
+}
+
+stack, bulletinboard {
+ display: -moz-stack;
+}
+
+/********** tabbox *********/
+
+tabbox {
+ -moz-binding: url("chrome://global/content/bindings/tabbox.xml#tabbox");
+ -moz-box-orient: vertical;
+}
+
+tabs {
+ -moz-binding: url("chrome://global/content/bindings/tabbox.xml#tabs");
+ -moz-box-orient: horizontal;
+}
+
+tab {
+ -moz-binding: url("chrome://global/content/bindings/tabbox.xml#tab");
+ -moz-box-align: center;
+ -moz-box-pack: center;
+}
+
+tab[selected="true"]:not([ignorefocus="true"]) {
+ -moz-user-focus: normal;
+}
+
+tabpanels {
+ -moz-binding: url("chrome://global/content/bindings/tabbox.xml#tabpanels");
+ display: -moz-deck;
+}
+
+/********** progressmeter **********/
+
+progressmeter {
+ -moz-binding: url("chrome://global/content/bindings/progressmeter.xml#progressmeter");
+}
+
+/********** basic rule for anonymous content that needs to pass box properties through
+ ********** to an insertion point parent that holds the real kids **************/
+
+.box-inherit {
+ -moz-box-orient: inherit;
+ -moz-box-pack: inherit;
+ -moz-box-align: inherit;
+ -moz-box-direction: inherit;
+}
+
+/********** textbox **********/
+
+textbox {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#textbox");
+ -moz-user-select: text;
+ text-shadow: none;
+}
+
+textbox[multiline="true"] {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#textarea");
+}
+
+.textbox-input-box {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#input-box");
+}
+
+html|textarea.textbox-textarea {
+ resize: none;
+}
+
+textbox[resizable="true"] > .textbox-input-box > html|textarea.textbox-textarea {
+ resize: both;
+}
+
+.textbox-input-box[spellcheck="true"] {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#input-box-spell");
+}
+
+textbox[type="timed"] {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#timed-textbox");
+}
+
+textbox[type="search"] {
+ -moz-binding: url("chrome://global/content/bindings/textbox.xml#search-textbox");
+}
+
+textbox[type="number"] {
+ -moz-binding: url("chrome://global/content/bindings/numberbox.xml#numberbox");
+}
+
+.textbox-contextmenu:-moz-locale-dir(rtl) {
+ direction: rtl;
+}
+
+/********** autocomplete textbox **********/
+
+/* SeaMonkey does not use the new toolkit's autocomplete widget */
+%ifdef MOZ_SUITE
+
+textbox[type="autocomplete"] {
+ -moz-binding: url("chrome://global/content/autocomplete.xml#autocomplete");
+}
+
+panel[type="autocomplete"] {
+ -moz-binding: url("chrome://global/content/autocomplete.xml#autocomplete-result-popup");
+}
+
+.autocomplete-history-popup {
+ -moz-binding: url("chrome://global/content/autocomplete.xml#autocomplete-history-popup");
+}
+
+.autocomplete-treebody {
+ -moz-binding: url("chrome://global/content/autocomplete.xml#autocomplete-treebody");
+}
+
+.autocomplete-history-dropmarker {
+ -moz-binding: url("chrome://global/content/autocomplete.xml#history-dropmarker");
+}
+
+panel[type="autocomplete-richlistbox"] {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-rich-result-popup");
+}
+
+.autocomplete-richlistbox {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-richlistbox");
+ -moz-user-focus: ignore;
+}
+
+.autocomplete-richlistbox > scrollbox {
+ overflow-x: hidden !important;
+}
+
+.autocomplete-richlistitem {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-richlistitem");
+ -moz-box-orient: vertical;
+ overflow: -moz-hidden-unscrollable;
+}
+
+%else
+
+textbox[type="autocomplete"] {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete");
+}
+
+panel[type="autocomplete"] {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-result-popup");
+}
+
+panel[type="autocomplete-richlistbox"] {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-rich-result-popup");
+}
+
+/* FIXME: bug 616258 */
+
+.autocomplete-tree {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-tree");
+ -moz-user-focus: ignore;
+}
+
+.autocomplete-treebody {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-treebody");
+}
+
+.autocomplete-richlistbox {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-richlistbox");
+ -moz-user-focus: ignore;
+}
+
+.autocomplete-richlistbox > scrollbox {
+ overflow-x: hidden !important;
+}
+
+.autocomplete-richlistitem {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-richlistitem");
+ -moz-box-orient: vertical;
+ overflow: -moz-hidden-unscrollable;
+}
+
+.autocomplete-treerows {
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#autocomplete-treerows");
+}
+
+.autocomplete-history-dropmarker {
+ display: none;
+}
+
+.autocomplete-history-dropmarker[enablehistory="true"] {
+ display: -moz-box;
+ -moz-binding: url("chrome://global/content/bindings/autocomplete.xml#history-dropmarker");
+}
+
+%endif
+
+/* the C++ implementation of widgets is too eager to make popups visible.
+ this causes problems (bug 120155 and others), thus this workaround: */
+popup[type="autocomplete"][hidden="true"] {
+ visibility: hidden;
+}
+
+/* The following rule is here to fix bug 96899 (and now 117952).
+ Somehow trees create a situation
+ in which a popupset flows itself as if its popup child is directly within it
+ instead of the placeholder child that should actually be inside the popupset.
+ This is a stopgap measure, and it does not address the real bug. */
+.autocomplete-result-popupset {
+ max-width: 0px;
+ width: 0 !important;
+ min-width: 0%;
+ min-height: 0%;
+}
+
+/********** colorpicker **********/
+
+colorpicker {
+ -moz-binding: url("chrome://global/content/bindings/colorpicker.xml#colorpicker");
+}
+
+colorpicker[type="button"] {
+ -moz-binding: url("chrome://global/content/bindings/colorpicker.xml#colorpicker-button");
+}
+
+.colorpickertile {
+ -moz-binding: url("chrome://global/content/bindings/colorpicker.xml#colorpickertile");
+}
+
+/********** menulist **********/
+
+menulist {
+ -moz-binding: url("chrome://global/content/bindings/menulist.xml#menulist");
+}
+
+menulist[popuponly="true"] {
+ -moz-binding: url("chrome://global/content/bindings/menulist.xml#menulist-popuponly");
+ -moz-appearance: none !important;
+ margin: 0 !important;
+ height: 0 !important;
+ border: 0 !important;
+}
+
+menulist[editable="true"] {
+ -moz-binding: url("chrome://global/content/bindings/menulist.xml#menulist-editable");
+}
+
+menulist[type="description"] {
+ -moz-binding: url("chrome://global/content/bindings/menulist.xml#menulist-description");
+}
+
+menulist > menupopup > menuitem {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menuitem-iconic-noaccel");
+}
+
+menulist > menupopup > menucaption {
+ -moz-binding: url("chrome://global/content/bindings/menu.xml#menucaption-inmenulist");
+}
+
+dropmarker {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#dropmarker");
+}
+
+/********** splitter **********/
+
+splitter {
+ -moz-binding: url("chrome://global/content/bindings/splitter.xml#splitter");
+}
+
+grippy {
+ -moz-binding: url("chrome://global/content/bindings/splitter.xml#grippy");
+}
+
+.tree-splitter {
+ width: 0px;
+ max-width: 0px;
+ min-width: 0% ! important;
+ min-height: 0% ! important;
+ -moz-box-ordinal-group: 2147483646;
+}
+
+/******** scrollbar ********/
+
+slider {
+ /* This is a hint to layerization that the scrollbar thumb can never leave
+ the scrollbar track. */
+ overflow: hidden;
+}
+
+/******** scrollbox ********/
+
+scrollbox {
+ -moz-binding: url("chrome://global/content/bindings/scrollbox.xml#scrollbox");
+ /* This makes it scrollable! */
+ overflow: hidden;
+}
+
+arrowscrollbox {
+ -moz-binding: url("chrome://global/content/bindings/scrollbox.xml#arrowscrollbox");
+}
+
+arrowscrollbox[clicktoscroll="true"] {
+ -moz-binding: url("chrome://global/content/bindings/scrollbox.xml#arrowscrollbox-clicktoscroll");
+}
+
+autorepeatbutton {
+ -moz-binding: url("chrome://global/content/bindings/scrollbox.xml#autorepeatbutton");
+}
+
+/********** statusbar **********/
+
+statusbar {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#statusbar");
+%ifdef XP_MACOSX
+ padding-right: 14px;
+%endif
+}
+
+statusbarpanel {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#statusbarpanel");
+}
+
+.statusbarpanel-iconic {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#statusbarpanel-iconic");
+}
+
+.statusbarpanel-iconic-text {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#statusbarpanel-iconic-text");
+}
+
+.statusbarpanel-menu-iconic {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#statusbarpanel-menu-iconic");
+}
+
+/********** spinbuttons ***********/
+
+spinbuttons {
+ -moz-binding: url("chrome://global/content/bindings/spinbuttons.xml#spinbuttons");
+}
+
+.spinbuttons-button {
+ -moz-user-focus: ignore;
+}
+
+/********** stringbundle **********/
+
+stringbundleset {
+ -moz-binding: url("chrome://global/content/bindings/stringbundle.xml#stringbundleset");
+ visibility: collapse;
+}
+
+stringbundle {
+ -moz-binding: url("chrome://global/content/bindings/stringbundle.xml#stringbundle");
+ visibility: collapse;
+}
+
+/********** dialog **********/
+
+dialog,
+dialog:root /* override :root from above */ {
+ -moz-binding: url("chrome://global/content/bindings/dialog.xml#dialog");
+ -moz-box-orient: vertical;
+}
+
+dialogheader {
+ -moz-binding: url("chrome://global/content/bindings/dialog.xml#dialogheader");
+}
+
+/********* page ************/
+
+page {
+ -moz-box-orient: vertical;
+}
+
+/********** wizard **********/
+
+wizard,
+wizard:root /* override :root from above */ {
+ -moz-binding: url("chrome://global/content/bindings/wizard.xml#wizard");
+ -moz-box-orient: vertical;
+ width: 40em;
+ height: 30em;
+}
+
+wizardpage {
+ -moz-binding: url("chrome://global/content/bindings/wizard.xml#wizardpage");
+ -moz-box-orient: vertical;
+ overflow: auto;
+}
+
+.wizard-header {
+ -moz-binding: url("chrome://global/content/bindings/wizard.xml#wizard-header");
+}
+
+.wizard-buttons {
+ -moz-binding: url("chrome://global/content/bindings/wizard.xml#wizard-buttons");
+}
+
+/********** preferences ********/
+
+prefwindow,
+prefwindow:root /* override :root from above */ {
+ -moz-binding: url("chrome://global/content/bindings/preferences.xml#prefwindow");
+ -moz-box-orient: vertical;
+}
+
+prefpane {
+ -moz-binding: url("chrome://global/content/bindings/preferences.xml#prefpane");
+ -moz-box-orient: vertical;
+}
+
+prefwindow > .paneDeckContainer {
+ overflow: hidden;
+}
+
+prefpane > .content-box {
+ overflow: hidden;
+}
+
+prefwindow[type="child"] > .paneDeckContainer {
+ overflow: -moz-hidden-unscrollable;
+}
+
+prefwindow[type="child"] > prefpane > .content-box {
+ -moz-box-flex: 1;
+ overflow: -moz-hidden-unscrollable;
+}
+
+preferences {
+ -moz-binding: url("chrome://global/content/bindings/preferences.xml#preferences");
+ visibility: collapse;
+}
+
+preference {
+ -moz-binding: url("chrome://global/content/bindings/preferences.xml#preference");
+ visibility: collapse;
+}
+
+radio[pane] {
+ -moz-binding: url("chrome://global/content/bindings/preferences.xml#panebutton") !important;
+ -moz-box-orient: vertical;
+ -moz-box-align: center;
+}
+
+prefwindow[chromehidden~="toolbar"] .chromeclass-toolbar {
+ display: none;
+}
+
+/********** expander ********/
+
+expander {
+ -moz-binding: url("chrome://global/content/bindings/expander.xml#expander");
+ -moz-box-orient: vertical;
+}
+
+
+/********** Rich Listbox ********/
+
+richlistbox {
+ -moz-binding: url('chrome://global/content/bindings/richlistbox.xml#richlistbox');
+ -moz-user-focus: normal;
+ -moz-box-orient: vertical;
+}
+
+richlistitem {
+ -moz-binding: url('chrome://global/content/bindings/richlistbox.xml#richlistitem');
+}
+
+richlistbox > listheader {
+ -moz-box-ordinal-group: 1;
+}
+
+/********** datepicker and timepicker ********/
+
+datepicker {
+ -moz-binding: url('chrome://global/content/bindings/datetimepicker.xml#datepicker');
+}
+
+datepicker[type="popup"] {
+ -moz-binding: url('chrome://global/content/bindings/datetimepicker.xml#datepicker-popup');
+}
+
+datepicker[type="grid"] {
+ -moz-binding: url('chrome://global/content/bindings/datetimepicker.xml#datepicker-grid');
+}
+
+timepicker {
+ -moz-binding: url('chrome://global/content/bindings/datetimepicker.xml#timepicker');
+}
+
+
+/*********** findbar ************/
+findbar {
+ -moz-binding: url('chrome://global/content/bindings/findbar.xml#findbar');
+}
+
+.findbar-textbox {
+ -moz-binding: url("chrome://global/content/bindings/findbar.xml#findbar-textbox");
+}
+
+
+/*********** filefield ************/
+filefield {
+ -moz-binding: url("chrome://global/content/bindings/filefield.xml#filefield");
+}
+
+/*********** tabmodalprompt ************/
+tabmodalprompt {
+ -moz-binding: url("chrome://global/content/tabprompts.xml#tabmodalprompt");
+ overflow: hidden;
+ text-shadow: none;
+}