summaryrefslogtreecommitdiffstats
path: root/toolkit/themes/linux/global/menu.css
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/themes/linux/global/menu.css')
-rw-r--r--toolkit/themes/linux/global/menu.css179
1 files changed, 179 insertions, 0 deletions
diff --git a/toolkit/themes/linux/global/menu.css b/toolkit/themes/linux/global/menu.css
new file mode 100644
index 0000000000..786fea5dc7
--- /dev/null
+++ b/toolkit/themes/linux/global/menu.css
@@ -0,0 +1,179 @@
+/* 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/. */
+
+@import url("chrome://global/skin/menu-scrolling.css");
+
+/* ===== menu.css =======================================================
+ == Styles used by XUL menu-related elements.
+ ======================================================================= */
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+
+/* ::::: menu/menuitem ::::: */
+
+menupopup,
+menubar {
+ font: menu;
+}
+
+menu,
+menuitem,
+menucaption {
+ appearance: auto;
+ -moz-default-appearance: menuitem;
+ -moz-box-align: center;
+ padding: 4px 6px;
+ max-width: 42em;
+ list-style-image: none;
+ -moz-image-region: auto;
+
+ /* Specify our background to avoid triggering reflows on hover. This is an
+ * optimization, as backgrounds don't disable theming on XUL elements, but
+ * also papers over bug 1653832. */
+ background-color: initial;
+}
+
+menu:where([_moz-menuactive="true"]),
+menuitem:where([_moz-menuactive="true"]) {
+ color: -moz-menuhovertext;
+ background-color: -moz-menuhover;
+}
+
+menuitem[customoptionstyling="true"],
+menucaption[customoptionstyling="true"] {
+ appearance: none;
+}
+
+menu:where([disabled="true"]),
+menuitem:where([disabled="true"]),
+menucaption:where([disabled="true"]) {
+ color: GrayText;
+}
+
+menubar > menu {
+ padding: .3em .4em;
+}
+
+menubar:-moz-lwtheme > menu {
+ appearance: none;
+ text-shadow: none;
+}
+
+menubar:-moz-lwtheme > menu:not([open]) {
+ text-shadow: inherit;
+}
+
+menubar > menu:not([open], [disabled="true"]) {
+ color: inherit;
+}
+
+menubar > menu[open] {
+ color: -moz-menubarhovertext;
+ background-color: -moz-menuhover;
+}
+
+menuitem[default="true"],
+menuitem.spell-suggestion,
+menucaption {
+ font-weight: bold;
+}
+
+/* ::::: menu/menuitems in menulist popups ::::: */
+
+menulist > menupopup {
+ font: inherit;
+}
+
+menulist > menupopup > :is(menuitem, menucaption, menu) {
+ max-width: none;
+}
+
+/* ..... internal content .... */
+
+.menu-text,
+.menu-iconic-left,
+.menu-iconic-text {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important;
+ margin-inline-start: 0 !important;
+ margin-inline-end: 2px !important;
+}
+
+.menu-text {
+ /* This is (18 + the size of end-padding on .menu-iconic-left)px */
+ margin-inline-start: 21px !important;
+}
+
+.menu-accel,
+.menu-iconic-accel {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important;
+ margin-inline-start: 7px !important;
+}
+
+.menu-accel-container {
+ -moz-box-pack: end;
+}
+
+.menu-iconic-left {
+ min-width: 16px;
+ /* We can only hardcode this, to make the default GTK icon<->label spacing */
+ padding-inline-end: 3px !important;
+}
+
+.menu-iconic-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.menu-right {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-inline-start: 6px;
+ margin-inline-end: 0;
+ width: 1ex;
+ height: 1ex;
+ /* These next two rules are needed to prevent inheritance and thus ugliness */
+ list-style-image: none;
+ -moz-image-region: auto;
+ appearance: auto;
+ -moz-default-appearance: menuarrow;
+}
+
+.menubar-left {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-inline-start: 0;
+ margin-inline-end: 2px;
+}
+
+.menubar-text {
+ margin: 0 1px !important;
+}
+
+
+menulist > menupopup > :is(menuitem, menucaption, menu) > .menu-iconic-left {
+ display: none;
+}
+
+/* ::::: checkbox menuitem ::::: */
+
+menuitem:is([type="checkbox"], [checked="true"]) {
+ appearance: auto !important;
+ -moz-default-appearance: checkmenuitem !important;
+}
+
+/* ::::: radio menuitem ::::: */
+
+menuitem[type="radio"] {
+ appearance: auto !important;
+ -moz-default-appearance: radiomenuitem !important;
+}
+
+/* ::::: menuseparator ::::: */
+
+menuseparator {
+ appearance: auto;
+ -moz-default-appearance: menuseparator;
+}