make devtools scrollbars work nicely
[themes.git] / LCARStrek / global / scrollbars.css
index 91200383c42a54ae0815cdcd6587e10d5977eec5..1d3504bdc13106dd31b74110d9f1c8e2365eb6b5 100644 (file)
@@ -1,58 +1,41 @@
-/* ***** BEGIN LICENSE BLOCK *****
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
- *
- * The contents of this file are subject to the Mozilla Public License Version
- * 1.1 (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- * http://www.mozilla.org/MPL/
- *
- * Software distributed under the License is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- * for the specific language governing rights and limitations under the
- * License.
- *
- * The Original Code is "Classic" theme of mozilla.org code.
- *
- * The Initial Developer of the Original Code is
- * the Mozilla Organization.
- * Portions created by the Initial Developer are Copyright (C) 1998-2001
- * the Initial Developer. All Rights Reserved.
- *
- * Contributor(s):
- *   Robert Kaiser <KaiRo@KaiRo.at>
- *
- * Alternatively, the contents of this file may be used under the terms of
- * either the GNU General Public License Version 2 or later (the "GPL"), or
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- * in which case the provisions of the GPL or the LGPL are applicable instead
- * of those above. If you wish to allow use of your version of this file only
- * under the terms of either the GPL or the LGPL, and not to allow others to
- * use your version of this file under the terms of the MPL, indicate your
- * decision by deleting the provisions above and replace them with the notice
- * and other provisions required by the GPL or the LGPL. If you do not delete
- * the provisions above, a recipient may use your version of this file under
- * the terms of any one of the MPL, the GPL or the LGPL.
- *
- * ***** END LICENSE BLOCK ***** */
-
-@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+/* 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/. */
 
 /* ===== scrollbars.css =================================================
   == Styles used by XUL scrollbar-related elements.
   ======================================================================= */
 
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml"); /* namespace for HTML elements */
+
 /* ::::: scrollbar ::::: */
 
 scrollbar {
   -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar");
   cursor: default;
   background-color: #000000;
+  border-radius: 50%;
+  pointer-events: auto;
+}
+
+@media all and (-moz-overlay-scrollbars) {
+  scrollbar[root="true"] {
+    position: relative;
+    z-index: 2147483647; /* largest positive value of a signed 32-bit integer */
+  }
+
+  scrollbar:not([active="true"]),
+  scrollbar[disabled="true"] {
+    visibility: hidden;
+  }
 }
 
 /* ::::: slider ::::: */
 
 slider {
   height: 13px;
+  background-color: #404048; /* #202024;*/
 }
 
 slider[orient="vertical"] {
@@ -70,10 +53,19 @@ scrollbarbutton {
   min-height: 13px;
 }
 
+scrollbar:not([orient="vertical"]) > scrollbarbutton {
+  min-width: 16px;
+}
+
+scrollbar[orient="vertical"] > scrollbarbutton {
+  min-height: 16px;
+}
+
+
 /* ::::: thumb ::::: */
 
 thumb {
-  background-color: #9C9CFF;
+  background-color: #A09090;
   background-image: url("chrome://global/skin/scrollbar/thumb-vert-grip.gif");
 }
 
@@ -99,67 +91,164 @@ thumb[orient="horizontal"][disabled="true"] {
   background-image: url("chrome://global/skin/scrollbar/thumb-horiz-grip-disabled.gif");
 }
 
+/* keep clickthrough scrollbars in e.g. devtoools with a simpler thumb */
+scrollbar[clickthrough="always"] > slider > thumb {
+  background-image: none;
+}
+
 /* ::::: scrollbar button ::::: */
 
 scrollbarbutton {
+  background-color: #C09070;
 }
 
-scrollbarbutton:hover:active {
-  padding: 2px 0px 0px 2px;
-}   
-
-/* ..... increment .... */
-
-scrollbarbutton[type="increment"] {
-  background-image: url("chrome://global/skin/scrollbar/button-right.gif");
-  margin: 0px 0px 0px 3px;
+scrollbarbutton:hover:active,
+scrollbarbutton[active="true"] {
+  background-position: calc(50% + 1px) calc(50% + 1px);
 }
 
-scrollbarbutton[type="increment"]:hover {
-  background-image: url("chrome://global/skin/scrollbar/button-right-hover.gif");
+scrollbarbutton:hover {
+  background-color: #FFCF00;
 }
 
-scrollbarbutton[type="increment"][disabled="true"] {
-  background-image: url("chrome://global/skin/scrollbar/button-right-disabled.gif") !important;
+scrollbarbutton:hover:active {
+  background-color: #FF9F00;
 }
 
-scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {
-  background-image: url("chrome://global/skin/scrollbar/button-down.gif");
-  margin: 3px 0px 0px 0px;
+scrollbarbutton[disabled="true"] {
+  background-color: #402858 !important;
 }
 
-scrollbar[orient="vertical"] > scrollbarbutton[type="increment"]:hover {
-  background-image: url("chrome://global/skin/scrollbar/button-down-hover.gif");
+/* XXX - scrollbar.xml always grabs the OS settings and we don't want that (but keep clickthrough scrollbars in e.g. devtoools working) */
+scrollbarbutton[sbattr="scrollbar-up-bottom"],
+scrollbarbutton[sbattr="scrollbar-down-top"] {
+  display: none;
 }
-
-scrollbar[orient="vertical"] > scrollbarbutton[type="increment"][disabled="true"] {
-  background-image: url("chrome://global/skin/scrollbar/button-down-disabled.gif") !important;
+scrollbar:not([clickthrough="always"]) > scrollbarbutton[sbattr="scrollbar-up-top"],
+scrollbar:not([clickthrough="always"]) > scrollbarbutton[sbattr="scrollbar-down-bottom"] {
+  display: -moz-box !important;
 }
 
-/* ..... decrement .... */
+/* ::::: square at the corner of two scrollbars ::::: */
 
-scrollbarbutton[type="decrement"] {
-  background-image: url("chrome://global/skin/scrollbar/button-left.gif");
-  margin: 0px 3px 0px 0px;
+scrollcorner {
+  -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar-base");
+  cursor: default;
+  background-color: #000000;
+  width: 13px;
 }
 
-scrollbarbutton[type="decrement"]:hover {
-  background-image: url("chrome://global/skin/scrollbar/button-left-hover.gif");
-}
+/* ..... increment .... */
 
-scrollbarbutton[type="decrement"][disabled="true"] {
-  background-image: url("chrome://global/skin/scrollbar/button-left-disabled.gif") !important;
+scrollbarbutton[type="increment"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-right.png");
+  border-radius: 0 300px 300px 0;
+  border-inline-start: 3px solid #000000;
 }
 
-scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {
-  background-image: url("chrome://global/skin/scrollbar/button-up.gif");
-  margin: 0px 0px 3px 0px;
+scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-down.png");
+  border-radius: 0 0 300px 300px;
+  border-inline-start: none;
+  border-top: 3px solid #000000;
 }
 
-scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"]:hover {
-  background-image: url("chrome://global/skin/scrollbar/button-up-hover.gif");
+/* ..... decrement .... */
+
+scrollbarbutton[type="decrement"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-left.png");
+  border-radius: 300px 0 0 300px;
+  border-inline-end: 3px solid #000000;
 }
 
-scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"][disabled="true"] {
-   background-image: url("chrome://global/skin/scrollbar/button-up-disabled.gif") !important;
+scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {
+  background-image: url("chrome://global/skin/scrollbar/arrow-up.png");
+  border-radius: 300px 300px 0 0;
+  border-inline-end: none;
+  border-bottom: 3px solid #000000;
+}
+
+/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
+/* ::::::::::::::::::::: MEDIA PRINT :::::::::::::::::::::: */
+/* :::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
+@media print {
+  /* ::::: scrollbar ::::: */
+
+  html|div scrollbar {
+    -moz-appearance: scrollbartrack-horizontal;
+    -moz-binding: url("chrome://global/content/bindings/scrollbar.xml#scrollbar");
+    cursor: default;
+    background: url("chrome://global/skin/scrollbar/slider.gif") scrollbar;
+  }
+
+  html|div scrollbar[orient="vertical"]
+  {
+     -moz-appearance: scrollbartrack-vertical;
+  }
+
+  /* ::::: borders for thumb and buttons ::::: */
+
+  html|div thumb,
+  html|div scrollbarbutton {
+    border: 2px solid;
+    -moz-border-top-colors: ThreeDLightShadow ThreeDHighlight;
+    -moz-border-right-colors: ThreeDDarkShadow ThreeDShadow;
+    -moz-border-bottom-colors: ThreeDDarkShadow ThreeDShadow;
+    -moz-border-left-colors: ThreeDLightShadow ThreeDHighlight;
+    background-color: -moz-Dialog;
+  }
+
+  /* ::::: thumb (horizontal) ::::: */
+
+  html|div thumb {
+    -moz-appearance: scrollbarthumb-vertical;
+    min-height: 8px;
+  }
+
+  html|div thumb[orient="horizontal"] {
+    -moz-appearance: scrollbarthumb-horizontal;
+    min-width: 8px;
+  }
+
+  /* ::::: scrollbar button ::::: */
+
+  html|div scrollbarbutton {
+    background: -moz-Dialog no-repeat 50% 50%;
+    min-width: 16px;
+    min-height: 16px;
+  }
+
+  html|div scrollbarbutton:hover:active,
+  html|div scrollbarbutton[active="true"] {
+    -moz-border-top-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-right-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-bottom-colors: ThreeDShadow -moz-Dialog;
+    -moz-border-left-colors: ThreeDShadow -moz-Dialog;
+    background-position: 60% 60%;
+  }
+
+  /* ..... increment .... */
+
+  html|div scrollbarbutton[type="increment"] {
+    -moz-appearance: scrollbarbutton-right;
+    background-image: url("chrome://global/skin/scrollbar/arrow-right.png")
+  }
+
+  html|div scrollbar[orient="vertical"] > scrollbarbutton[type="increment"] {
+    -moz-appearance: scrollbarbutton-down;
+    background-image: url("chrome://global/skin/scrollbar/arrow-down.png")
+  }
+
+  /* ..... decrement .... */
+
+  html|div scrollbarbutton[type="decrement"] {
+    -moz-appearance: scrollbarbutton-left;
+     background-image: url("chrome://global/skin/scrollbar/arrow-left.png")
+  }
+
+  html|div scrollbar[orient="vertical"] > scrollbarbutton[type="decrement"] {
+    -moz-appearance: scrollbarbutton-up;
+     background-image: url("chrome://global/skin/scrollbar/arrow-up.png")
+  }
+
 }