tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

CSS.webidl (7107B)


      1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
      4 * You can obtain one at http://mozilla.org/MPL/2.0/.
      5 *
      6 * The origin of this IDL file is
      7 * http://dev.w3.org/csswg/css3-conditional/
      8 * http://dev.w3.org/csswg/cssom/#the-css.escape%28%29-method
      9 * https://www.w3.org/TR/css-highlight-api-1/#registration
     10 *
     11 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
     12 * liability, trademark and document use rules apply.
     13 */
     14 
     15 [Exposed=Window]
     16 namespace CSS {
     17  boolean supports(UTF8String property, UTF8String value);
     18  boolean supports(UTF8String conditionText);
     19 };
     20 
     21 // http://dev.w3.org/csswg/cssom/#the-css.escape%28%29-method
     22 partial namespace CSS {
     23  DOMString escape(DOMString ident);
     24 };
     25 
     26 // https://www.w3.org/TR/css-highlight-api-1/#registration
     27 partial namespace CSS {
     28  [Pref="dom.customHighlightAPI.enabled", GetterThrows]
     29  readonly attribute HighlightRegistry highlights;
     30 };
     31 
     32 // https://drafts.css-houdini.org/css-properties-values-api-1/#registering-custom-properties
     33 // See https://github.com/w3c/css-houdini-drafts/pull/1100 for DOMString vs. UTF8String
     34 dictionary PropertyDefinition {
     35  required UTF8String name;
     36           UTF8String syntax       = "*";
     37  required boolean    inherits;
     38           UTF8String initialValue;
     39 };
     40 partial namespace CSS {
     41  [Pref="layout.css.properties-and-values.enabled", Throws]
     42  undefined registerProperty(PropertyDefinition definition);
     43 };
     44 
     45 // https://drafts.css-houdini.org/css-typed-om-1/#numeric-factory
     46 // TODO: Ideally, only a single Pref annotation would be needed here, but
     47 // partial namespaces can't currently be gated by a pref as a whole.
     48 // See bug 1980157.
     49 partial namespace CSS {
     50  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue number(double value);
     51  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue percent(double value);
     52 
     53  // <length>
     54  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cap(double value);
     55  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue ch(double value);
     56  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue em(double value);
     57  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue ex(double value);
     58  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue ic(double value);
     59  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lh(double value);
     60  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rcap(double value);
     61  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rch(double value);
     62  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rem(double value);
     63  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rex(double value);
     64  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue ric(double value);
     65  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rlh(double value);
     66  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vw(double value);
     67  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vh(double value);
     68  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vi(double value);
     69  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vb(double value);
     70  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vmin(double value);
     71  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue vmax(double value);
     72  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svw(double value);
     73  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svh(double value);
     74  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svi(double value);
     75  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svb(double value);
     76  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svmin(double value);
     77  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue svmax(double value);
     78  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvw(double value);
     79  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvh(double value);
     80  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvi(double value);
     81  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvb(double value);
     82  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvmin(double value);
     83  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue lvmax(double value);
     84  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvw(double value);
     85  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvh(double value);
     86  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvi(double value);
     87  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvb(double value);
     88  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvmin(double value);
     89  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dvmax(double value);
     90  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqw(double value);
     91  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqh(double value);
     92  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqi(double value);
     93  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqb(double value);
     94  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqmin(double value);
     95  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cqmax(double value);
     96  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue cm(double value);
     97  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue mm(double value);
     98  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue Q(double value);
     99  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue in(double value);
    100  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue pt(double value);
    101  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue pc(double value);
    102  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue px(double value);
    103 
    104  // <angle>
    105  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue deg(double value);
    106  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue grad(double value);
    107  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue rad(double value);
    108  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue turn(double value);
    109 
    110  // <time>
    111  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue s(double value);
    112  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue ms(double value);
    113 
    114  // <frequency>
    115  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue Hz(double value);
    116  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue kHz(double value);
    117 
    118  // <resolution>
    119  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dpi(double value);
    120  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dpcm(double value);
    121  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue dppx(double value);
    122 
    123  // <flex>
    124  [NewObject, Pref="layout.css.typed-om.enabled"] CSSUnitValue fr(double value);
    125 };