tor-browser

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

svg.mako.rs (7148B)


      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
      3 * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
      4 
      5 <%namespace name="helpers" file="/helpers.mako.rs" />
      6 
      7 ${helpers.predefined_type(
      8    "vector-effect",
      9    "VectorEffect",
     10    "computed::VectorEffect::none()",
     11    engines="gecko",
     12    animation_type="discrete",
     13    spec="https://svgwg.org/svg2-draft/coords.html#VectorEffects",
     14    affects="layout",
     15 )}
     16 
     17 // Section 14 - Gradients and Patterns
     18 
     19 ${helpers.predefined_type(
     20    "stop-color",
     21    "Color",
     22    "computed::Color::BLACK",
     23    engines="gecko",
     24    spec="https://svgwg.org/svg2-draft/pservers.html#StopColorProperties",
     25    affects="paint",
     26 )}
     27 
     28 ${helpers.predefined_type(
     29    "stop-opacity",
     30    "Opacity",
     31    "1.0",
     32    engines="gecko",
     33    spec="https://svgwg.org/svg2-draft/pservers.html#StopOpacityProperty",
     34    affects="paint",
     35 )}
     36 
     37 // Filter Effects Module
     38 
     39 ${helpers.predefined_type(
     40    "flood-color",
     41    "Color",
     42    "computed::Color::BLACK",
     43    engines="gecko",
     44    spec="https://drafts.fxtf.org/filter-effects-1/#FloodColorProperty",
     45    affects="paint",
     46 )}
     47 
     48 ${helpers.predefined_type(
     49    "flood-opacity",
     50    "Opacity",
     51    "1.0",
     52    engines="gecko",
     53    spec="https://drafts.fxtf.org/filter-effects-1/#FloodOpacityProperty",
     54    affects="paint",
     55 )}
     56 
     57 ${helpers.predefined_type(
     58    "lighting-color",
     59    "Color",
     60    "computed::Color::WHITE",
     61    engines="gecko",
     62    spec="https://drafts.fxtf.org/filter-effects-1#LightingColorProperty",
     63    affects="paint",
     64 )}
     65 
     66 // CSS Masking Module Level 1
     67 // https://drafts.fxtf.org/css-masking-1
     68 ${helpers.single_keyword(
     69    "mask-type",
     70    "luminance alpha",
     71    engines="gecko",
     72    gecko_enum_prefix="StyleMaskType",
     73    animation_type="discrete",
     74    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-type",
     75    affects="paint",
     76 )}
     77 
     78 ${helpers.predefined_type(
     79    "clip-path",
     80    "basic_shape::ClipPath",
     81    "generics::basic_shape::ClipPath::None",
     82    engines="gecko servo",
     83    extra_prefixes="webkit",
     84    spec="https://drafts.fxtf.org/css-masking-1/#propdef-clip-path",
     85    affects="paint",
     86    servo_restyle_damage="repaint",
     87 )}
     88 
     89 ${helpers.single_keyword(
     90    "mask-mode",
     91    "match-source alpha luminance",
     92    engines="gecko",
     93    gecko_enum_prefix="StyleMaskMode",
     94    vector=True,
     95    animation_type="discrete",
     96    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-mode",
     97    affects="paint",
     98 )}
     99 
    100 ${helpers.predefined_type(
    101    "mask-repeat",
    102    "BackgroundRepeat",
    103    "computed::BackgroundRepeat::repeat()",
    104    engines="gecko",
    105    initial_specified_value="specified::BackgroundRepeat::repeat()",
    106    extra_prefixes="webkit",
    107    animation_type="discrete",
    108    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-repeat",
    109    vector=True,
    110    affects="paint",
    111 )}
    112 
    113 % for (axis, direction) in [("x", "Horizontal"), ("y", "Vertical")]:
    114    ${helpers.predefined_type(
    115        "mask-position-" + axis,
    116        "position::" + direction + "Position",
    117        "computed::LengthPercentage::zero_percent()",
    118        engines="gecko",
    119        extra_prefixes="webkit",
    120        initial_specified_value="specified::PositionComponent::Center",
    121        spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-position",
    122        vector_animation_type="repeatable_list",
    123        vector=True,
    124        affects="paint",
    125    )}
    126 % endfor
    127 
    128 ${helpers.single_keyword(
    129    "mask-clip",
    130    "border-box content-box padding-box",
    131    engines="gecko",
    132    extra_gecko_values="fill-box stroke-box view-box no-clip",
    133    vector=True,
    134    extra_prefixes="webkit",
    135    gecko_enum_prefix="StyleGeometryBox",
    136    gecko_inexhaustive=True,
    137    animation_type="discrete",
    138    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-clip",
    139    affects="paint",
    140 )}
    141 
    142 ${helpers.single_keyword(
    143    "mask-origin",
    144    "border-box content-box padding-box",
    145    engines="gecko",
    146    extra_gecko_values="fill-box stroke-box view-box",
    147    vector=True,
    148    extra_prefixes="webkit",
    149    gecko_enum_prefix="StyleGeometryBox",
    150    gecko_inexhaustive=True,
    151    animation_type="discrete",
    152    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-origin",
    153    affects="paint",
    154 )}
    155 
    156 ${helpers.predefined_type(
    157    "mask-size",
    158    "background::BackgroundSize",
    159    "computed::BackgroundSize::auto()",
    160    engines="gecko",
    161    initial_specified_value="specified::BackgroundSize::auto()",
    162    extra_prefixes="webkit",
    163    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-size",
    164    vector=True,
    165    vector_animation_type="repeatable_list",
    166    affects="paint",
    167 )}
    168 
    169 ${helpers.single_keyword(
    170    "mask-composite",
    171    "add subtract intersect exclude",
    172    engines="gecko",
    173    gecko_enum_prefix="StyleMaskComposite",
    174    vector=True,
    175    extra_prefixes="webkit",
    176    animation_type="discrete",
    177    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-composite",
    178    affects="paint",
    179 )}
    180 
    181 ${helpers.predefined_type(
    182    "mask-image",
    183    "Image",
    184    engines="gecko servo",
    185    servo_pref="layout.unimplemented",
    186    initial_value="computed::Image::None",
    187    initial_specified_value="specified::Image::None",
    188    parse_method="parse_with_cors_anonymous",
    189    spec="https://drafts.fxtf.org/css-masking-1/#propdef-mask-image",
    190    vector=True,
    191    extra_prefixes="webkit",
    192    animation_type="discrete",
    193    affects="paint",
    194 )}
    195 
    196 ${helpers.predefined_type(
    197    "x",
    198    "LengthPercentage",
    199    "computed::LengthPercentage::zero()",
    200    engines="gecko",
    201    spec="https://svgwg.org/svg2-draft/geometry.html#X",
    202    affects="layout",
    203 )}
    204 
    205 ${helpers.predefined_type(
    206    "y",
    207    "LengthPercentage",
    208    "computed::LengthPercentage::zero()",
    209    engines="gecko",
    210    spec="https://svgwg.org/svg2-draft/geometry.html#Y",
    211    affects="layout",
    212 )}
    213 
    214 ${helpers.predefined_type(
    215    "cx",
    216    "LengthPercentage",
    217    "computed::LengthPercentage::zero()",
    218    engines="gecko",
    219    spec="https://svgwg.org/svg2-draft/geometry.html#CX",
    220    affects="layout",
    221 )}
    222 
    223 ${helpers.predefined_type(
    224    "cy",
    225    "LengthPercentage",
    226    "computed::LengthPercentage::zero()",
    227    engines="gecko",
    228    spec="https://svgwg.org/svg2-draft/geometry.html#CY",
    229    affects="layout",
    230 )}
    231 
    232 ${helpers.predefined_type(
    233    "rx",
    234    "NonNegativeLengthPercentageOrAuto",
    235    "computed::NonNegativeLengthPercentageOrAuto::auto()",
    236    engines="gecko",
    237    spec="https://svgwg.org/svg2-draft/geometry.html#RX",
    238    affects="layout",
    239 )}
    240 
    241 ${helpers.predefined_type(
    242    "ry",
    243    "NonNegativeLengthPercentageOrAuto",
    244    "computed::NonNegativeLengthPercentageOrAuto::auto()",
    245    engines="gecko",
    246    spec="https://svgwg.org/svg2-draft/geometry.html#RY",
    247    affects="layout",
    248 )}
    249 
    250 ${helpers.predefined_type(
    251    "r",
    252    "NonNegativeLengthPercentage",
    253    "computed::NonNegativeLengthPercentage::zero()",
    254    engines="gecko",
    255    spec="https://svgwg.org/svg2-draft/geometry.html#R",
    256    affects="layout",
    257 )}
    258 
    259 ${helpers.predefined_type(
    260    "d",
    261    "DProperty",
    262    "specified::DProperty::none()",
    263    engines="gecko",
    264    spec="https://svgwg.org/svg2-draft/paths.html#TheDProperty",
    265    affects="layout",
    266 )}