LCOV - code coverage report
Current view: directory - layout/style - nsCSSPropList.h (source / functions) Found Hit Coverage
Test: app.info Lines: 479 0 0.0 %
Date: 2012-06-02 Functions: 864 0 0.0 %

       1                 : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
       2                 : /* ***** BEGIN LICENSE BLOCK *****
       3                 :  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
       4                 :  *
       5                 :  * The contents of this file are subject to the Mozilla Public License Version
       6                 :  * 1.1 (the "License"); you may not use this file except in compliance with
       7                 :  * the License. You may obtain a copy of the License at
       8                 :  * http://www.mozilla.org/MPL/
       9                 :  *
      10                 :  * Software distributed under the License is distributed on an "AS IS" basis,
      11                 :  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
      12                 :  * for the specific language governing rights and limitations under the
      13                 :  * License.
      14                 :  *
      15                 :  * The Original Code is mozilla.org code.
      16                 :  *
      17                 :  * The Initial Developer of the Original Code is
      18                 :  * Netscape Communications Corporation.
      19                 :  * Portions created by the Initial Developer are Copyright (C) 1999
      20                 :  * the Initial Developer. All Rights Reserved.
      21                 :  *
      22                 :  * Contributor(s):
      23                 :  *   L. David Baron <dbaron@dbaron.org>, Mozilla Corporation
      24                 :  *   Mats Palmgren <matspal@gmail.com>
      25                 :  *
      26                 :  * Alternatively, the contents of this file may be used under the terms of
      27                 :  * either of the GNU General Public License Version 2 or later (the "GPL"),
      28                 :  * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
      29                 :  * in which case the provisions of the GPL or the LGPL are applicable instead
      30                 :  * of those above. If you wish to allow use of your version of this file only
      31                 :  * under the terms of either the GPL or the LGPL, and not to allow others to
      32                 :  * use your version of this file under the terms of the MPL, indicate your
      33                 :  * decision by deleting the provisions above and replace them with the notice
      34                 :  * and other provisions required by the GPL or the LGPL. If you do not delete
      35                 :  * the provisions above, a recipient may use your version of this file under
      36                 :  * the terms of any one of the MPL, the GPL or the LGPL.
      37                 :  *
      38                 :  * ***** END LICENSE BLOCK ***** */
      39                 : 
      40                 : /*
      41                 :  * a list of all CSS properties with considerable data about them, for
      42                 :  * preprocessing
      43                 :  */
      44                 : 
      45                 : /******
      46                 : 
      47                 :   This file contains the list of all parsed CSS properties.  It is
      48                 :   designed to be used as inline input through the magic of C
      49                 :   preprocessing.  All entries must be enclosed in the appropriate
      50                 :   CSS_PROP_* macro which will have cruel and unusual things done to it.
      51                 :   It is recommended (but not strictly necessary) to keep all entries in
      52                 :   alphabetical order.
      53                 : 
      54                 :   The arguments to CSS_PROP and CSS_PROP_* are:
      55                 : 
      56                 :   -. 'name' entries represent a CSS property name and *must* use only
      57                 :   lowercase characters.
      58                 : 
      59                 :   -. 'id' should be the same as 'name' except that all hyphens ('-')
      60                 :   in 'name' are converted to underscores ('_') in 'id'. This lets us
      61                 :   do nice things with the macros without having to copy/convert strings
      62                 :   at runtime.  These are the names used for the enum values of the
      63                 :   nsCSSProperty enumeration defined in nsCSSProps.h.
      64                 : 
      65                 :   -. 'method' is designed to be as input for CSS2Properties and similar
      66                 :   callers.  It must always be the same as 'name' except it must use
      67                 :   InterCaps and all hyphens ('-') must be removed.  Callers using this
      68                 :   parameter must also define the CSS_PROP_DOMPROP_PREFIXED(prop) macro,
      69                 :   either to be Moz ## prop or to just be prop, depending on whether they
      70                 :   want Moz prefixes or not (i.e., whether the use is for internal use
      71                 :   such as nsRuleData::ValueFor* or external use).
      72                 : 
      73                 :   -. 'flags', a bitfield containing CSS_PROPERTY_* flags.
      74                 : 
      75                 :   -. 'parsevariant', to be passed to ParseVariant in the parser.
      76                 : 
      77                 :   -. 'kwtable', which is either nsnull or the name of the appropriate
      78                 :   keyword table member of class nsCSSProps, for use in
      79                 :   nsCSSProps::LookupPropertyValue.
      80                 : 
      81                 :   -. 'stylestruct_' [used only for CSS_PROP, not CSS_PROP_*] gives the
      82                 :   name of the style struct.  Can be used to make nsStyle##stylestruct_
      83                 :   and eStyleStruct_##stylestruct_
      84                 : 
      85                 :   -. 'stylestructoffset_' [not used for CSS_PROP_BACKENDONLY] gives the
      86                 :   result of offsetof(nsStyle*, member).  Ignored (and generally
      87                 :   CSS_PROP_NO_OFFSET, or -1) for properties whose animtype_ is
      88                 :   eStyleAnimType_None.
      89                 : 
      90                 :   -. 'animtype_' [not used for CSS_PROP_BACKENDONLY] gives the
      91                 :   animation type (see nsStyleAnimType) of this property.
      92                 : 
      93                 :   CSS_PROP_SHORTHAND only takes 1-4.
      94                 : 
      95                 :  ******/
      96                 : 
      97                 : 
      98                 : /*************************************************************************/
      99                 : 
     100                 : 
     101                 : // All includers must explicitly define CSS_PROP_SHORTHAND if they
     102                 : // want it.
     103                 : #ifndef CSS_PROP_SHORTHAND
     104                 : #define CSS_PROP_SHORTHAND(name_, id_, method_, flags_) /* nothing */
     105                 : #define DEFINED_CSS_PROP_SHORTHAND
     106                 : #endif
     107                 : 
     108                 : #define CSS_PROP_NO_OFFSET (-1)
     109                 : 
     110                 : // Callers may define CSS_PROP_LIST_EXCLUDE_INTERNAL if they want to
     111                 : // exclude internal properties that are not represented in the DOM (only
     112                 : // the DOM style code defines this).
     113                 : 
     114                 : // A caller who wants all the properties can define the |CSS_PROP|
     115                 : // macro.
     116                 : #ifdef CSS_PROP
     117                 : 
     118                 : #define USED_CSS_PROP
     119                 : #define CSS_PROP_FONT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Font, stylestructoffset_, animtype_)
     120                 : #define CSS_PROP_COLOR(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Color, stylestructoffset_, animtype_)
     121                 : #define CSS_PROP_BACKGROUND(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Background, stylestructoffset_, animtype_)
     122                 : #define CSS_PROP_LIST(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, List, stylestructoffset_, animtype_)
     123                 : #define CSS_PROP_POSITION(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Position, stylestructoffset_, animtype_)
     124                 : #define CSS_PROP_TEXT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Text, stylestructoffset_, animtype_)
     125                 : #define CSS_PROP_TEXTRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, TextReset, stylestructoffset_, animtype_)
     126                 : #define CSS_PROP_DISPLAY(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Display, stylestructoffset_, animtype_)
     127                 : #define CSS_PROP_VISIBILITY(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Visibility, stylestructoffset_, animtype_)
     128                 : #define CSS_PROP_CONTENT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Content, stylestructoffset_, animtype_)
     129                 : #define CSS_PROP_QUOTES(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Quotes, stylestructoffset_, animtype_)
     130                 : #define CSS_PROP_USERINTERFACE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, UserInterface, stylestructoffset_, animtype_)
     131                 : #define CSS_PROP_UIRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, UIReset, stylestructoffset_, animtype_)
     132                 : #define CSS_PROP_TABLE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Table, stylestructoffset_, animtype_)
     133                 : #define CSS_PROP_TABLEBORDER(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, TableBorder, stylestructoffset_, animtype_)
     134                 : #define CSS_PROP_MARGIN(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Margin, stylestructoffset_, animtype_)
     135                 : #define CSS_PROP_PADDING(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Padding, stylestructoffset_, animtype_)
     136                 : #define CSS_PROP_BORDER(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Border, stylestructoffset_, animtype_)
     137                 : #define CSS_PROP_OUTLINE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Outline, stylestructoffset_, animtype_)
     138                 : #define CSS_PROP_XUL(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, XUL, stylestructoffset_, animtype_)
     139                 : #define CSS_PROP_COLUMN(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, Column, stylestructoffset_, animtype_)
     140                 : #define CSS_PROP_SVG(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, SVG, stylestructoffset_, animtype_)
     141                 : #define CSS_PROP_SVGRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, SVGReset, stylestructoffset_, animtype_)
     142                 : 
     143                 : // For properties that are stored in the CSS backend but are not
     144                 : // computed.  An includer may define this in addition to CSS_PROP, but
     145                 : // otherwise we treat it as the same.
     146                 : #ifndef CSS_PROP_BACKENDONLY
     147                 : #define CSS_PROP_BACKENDONLY(name_, id_, method_, flags_, parsevariant_, kwtable_) CSS_PROP(name_, id_, method_, flags_, parsevariant_, kwtable_, BackendOnly, CSS_PROP_NO_OFFSET, eStyleAnimType_None)
     148                 : #define DEFINED_CSS_PROP_BACKENDONLY
     149                 : #endif
     150                 : 
     151                 : #else /* !defined(CSS_PROP) */
     152                 : 
     153                 : // An includer who does not define CSS_PROP can define any or all of the
     154                 : // per-struct macros that are equivalent to it, and the rest will be
     155                 : // ignored.
     156                 : 
     157                 : #ifndef CSS_PROP_FONT
     158                 : #define CSS_PROP_FONT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     159                 : #define DEFINED_CSS_PROP_FONT
     160                 : #endif
     161                 : #ifndef CSS_PROP_COLOR
     162                 : #define CSS_PROP_COLOR(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     163                 : #define DEFINED_CSS_PROP_COLOR
     164                 : #endif
     165                 : #ifndef CSS_PROP_BACKGROUND
     166                 : #define CSS_PROP_BACKGROUND(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     167                 : #define DEFINED_CSS_PROP_BACKGROUND
     168                 : #endif
     169                 : #ifndef CSS_PROP_LIST
     170                 : #define CSS_PROP_LIST(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     171                 : #define DEFINED_CSS_PROP_LIST
     172                 : #endif
     173                 : #ifndef CSS_PROP_POSITION
     174                 : #define CSS_PROP_POSITION(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     175                 : #define DEFINED_CSS_PROP_POSITION
     176                 : #endif
     177                 : #ifndef CSS_PROP_TEXT
     178                 : #define CSS_PROP_TEXT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     179                 : #define DEFINED_CSS_PROP_TEXT
     180                 : #endif
     181                 : #ifndef CSS_PROP_TEXTRESET
     182                 : #define CSS_PROP_TEXTRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     183                 : #define DEFINED_CSS_PROP_TEXTRESET
     184                 : #endif
     185                 : #ifndef CSS_PROP_DISPLAY
     186                 : #define CSS_PROP_DISPLAY(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     187                 : #define DEFINED_CSS_PROP_DISPLAY
     188                 : #endif
     189                 : #ifndef CSS_PROP_VISIBILITY
     190                 : #define CSS_PROP_VISIBILITY(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     191                 : #define DEFINED_CSS_PROP_VISIBILITY
     192                 : #endif
     193                 : #ifndef CSS_PROP_CONTENT
     194                 : #define CSS_PROP_CONTENT(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     195                 : #define DEFINED_CSS_PROP_CONTENT
     196                 : #endif
     197                 : #ifndef CSS_PROP_QUOTES
     198                 : #define CSS_PROP_QUOTES(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     199                 : #define DEFINED_CSS_PROP_QUOTES
     200                 : #endif
     201                 : #ifndef CSS_PROP_USERINTERFACE
     202                 : #define CSS_PROP_USERINTERFACE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     203                 : #define DEFINED_CSS_PROP_USERINTERFACE
     204                 : #endif
     205                 : #ifndef CSS_PROP_UIRESET
     206                 : #define CSS_PROP_UIRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     207                 : #define DEFINED_CSS_PROP_UIRESET
     208                 : #endif
     209                 : #ifndef CSS_PROP_TABLE
     210                 : #define CSS_PROP_TABLE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     211                 : #define DEFINED_CSS_PROP_TABLE
     212                 : #endif
     213                 : #ifndef CSS_PROP_TABLEBORDER
     214                 : #define CSS_PROP_TABLEBORDER(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     215                 : #define DEFINED_CSS_PROP_TABLEBORDER
     216                 : #endif
     217                 : #ifndef CSS_PROP_MARGIN
     218                 : #define CSS_PROP_MARGIN(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     219                 : #define DEFINED_CSS_PROP_MARGIN
     220                 : #endif
     221                 : #ifndef CSS_PROP_PADDING
     222                 : #define CSS_PROP_PADDING(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     223                 : #define DEFINED_CSS_PROP_PADDING
     224                 : #endif
     225                 : #ifndef CSS_PROP_BORDER
     226                 : #define CSS_PROP_BORDER(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     227                 : #define DEFINED_CSS_PROP_BORDER
     228                 : #endif
     229                 : #ifndef CSS_PROP_OUTLINE
     230                 : #define CSS_PROP_OUTLINE(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     231                 : #define DEFINED_CSS_PROP_OUTLINE
     232                 : #endif
     233                 : #ifndef CSS_PROP_XUL
     234                 : #define CSS_PROP_XUL(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     235                 : #define DEFINED_CSS_PROP_XUL
     236                 : #endif
     237                 : #ifndef CSS_PROP_COLUMN
     238                 : #define CSS_PROP_COLUMN(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     239                 : #define DEFINED_CSS_PROP_COLUMN
     240                 : #endif
     241                 : #ifndef CSS_PROP_SVG
     242                 : #define CSS_PROP_SVG(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     243                 : #define DEFINED_CSS_PROP_SVG
     244                 : #endif
     245                 : #ifndef CSS_PROP_SVGRESET
     246                 : #define CSS_PROP_SVGRESET(name_, id_, method_, flags_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
     247                 : #define DEFINED_CSS_PROP_SVGRESET
     248                 : #endif
     249                 : 
     250                 : #ifndef CSS_PROP_BACKENDONLY
     251                 : #define CSS_PROP_BACKENDONLY(name_, id_, method_, flags_, parsevariant_, kwtable_) /* nothing */
     252                 : #define DEFINED_CSS_PROP_BACKENDONLY
     253                 : #endif
     254                 : 
     255                 : #endif /* !defined(CSS_PROP) */
     256                 : 
     257                 : /*************************************************************************/
     258                 : 
     259                 : // For notes XXX bug 3935 below, the names being parsed do not correspond
     260                 : // to the constants used internally.  It would be nice to bring the
     261                 : // constants into line sometime.
     262                 : 
     263                 : // The parser will refuse to parse properties marked with -x-.
     264                 : 
     265                 : // Those marked XXX bug 48973 are CSS2 properties that we support
     266                 : // differently from the spec for UI requirements.  If we ever
     267                 : // support them correctly the old constants need to be renamed and
     268                 : // new ones should be entered.
     269                 : 
     270                 : // CSS2.1 section 5.12.1 says that the properties that apply to
     271                 : // :first-line are: font properties, color properties, background
     272                 : // properties, 'word-spacing', 'letter-spacing', 'text-decoration',
     273                 : // 'vertical-align', 'text-transform', and 'line-height'.
     274                 : //
     275                 : // We also allow 'text-shadow', which was listed in CSS2 (where the
     276                 : // property existed).
     277                 : 
     278                 : // CSS2.1 section 5.12.2 says that the properties that apply to
     279                 : // :first-letter are: font properties, 'text-decoration',
     280                 : // 'text-transform', 'letter-spacing', 'word-spacing' (when
     281                 : // appropriate), 'line-height', 'float', 'vertical-align' (only if
     282                 : // 'float' is 'none'), margin properties, padding properties, border
     283                 : // properties, 'color', and background properties.  We also allow
     284                 : // 'text-shadow' (see above) and 'box-shadow' (which is like the
     285                 : // border properties).
     286                 : 
     287                 : // We include '-moz-background-inline-policy' (css3-background's
     288                 : // 'background-break') in both as a background property, although this
     289                 : // is somewhat questionable.
     290                 : 
     291               0 : CSS_PROP_DISPLAY(
     292                 :     -moz-appearance,
     293                 :     appearance,
     294                 :     CSS_PROP_DOMPROP_PREFIXED(Appearance),
     295                 :     CSS_PROPERTY_PARSE_VALUE,
     296                 :     VARIANT_HK,
     297                 :     kAppearanceKTable,
     298                 :     CSS_PROP_NO_OFFSET,
     299               0 :     eStyleAnimType_None)
     300               0 : CSS_PROP_SHORTHAND(
     301                 :     -moz-outline-radius,
     302                 :     _moz_outline_radius,
     303                 :     CSS_PROP_DOMPROP_PREFIXED(OutlineRadius),
     304                 :     CSS_PROPERTY_PARSE_FUNCTION)
     305               0 : CSS_PROP_OUTLINE(
     306                 :     -moz-outline-radius-topleft,
     307                 :     _moz_outline_radius_topLeft,
     308                 :     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopleft),
     309                 :     CSS_PROPERTY_PARSE_FUNCTION |
     310                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     311                 :         CSS_PROPERTY_STORES_CALC,
     312                 :     0,
     313                 :     nsnull,
     314                 :     offsetof(nsStyleOutline, mOutlineRadius),
     315                 :     eStyleAnimType_Corner_TopLeft)
     316               0 : CSS_PROP_OUTLINE(
     317                 :     -moz-outline-radius-topright,
     318                 :     _moz_outline_radius_topRight,
     319                 :     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopright),
     320                 :     CSS_PROPERTY_PARSE_FUNCTION |
     321                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     322                 :         CSS_PROPERTY_STORES_CALC,
     323                 :     0,
     324                 :     nsnull,
     325                 :     offsetof(nsStyleOutline, mOutlineRadius),
     326                 :     eStyleAnimType_Corner_TopRight)
     327               0 : CSS_PROP_OUTLINE(
     328                 :     -moz-outline-radius-bottomright,
     329                 :     _moz_outline_radius_bottomRight,
     330                 :     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomright),
     331                 :     CSS_PROPERTY_PARSE_FUNCTION |
     332                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     333                 :         CSS_PROPERTY_STORES_CALC,
     334                 :     0,
     335                 :     nsnull,
     336                 :     offsetof(nsStyleOutline, mOutlineRadius),
     337                 :     eStyleAnimType_Corner_BottomRight)
     338               0 : CSS_PROP_OUTLINE(
     339                 :     -moz-outline-radius-bottomleft,
     340                 :     _moz_outline_radius_bottomLeft,
     341                 :     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomleft),
     342                 :     CSS_PROPERTY_PARSE_FUNCTION |
     343                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     344                 :         CSS_PROPERTY_STORES_CALC,
     345                 :     0,
     346                 :     nsnull,
     347                 :     offsetof(nsStyleOutline, mOutlineRadius),
     348                 :     eStyleAnimType_Corner_BottomLeft)
     349               0 : CSS_PROP_TEXT(
     350                 :     -moz-tab-size,
     351                 :     _moz_tab_size,
     352                 :     CSS_PROP_DOMPROP_PREFIXED(TabSize),
     353                 :     CSS_PROPERTY_PARSE_VALUE |
     354                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
     355                 :     VARIANT_HI,
     356                 :     nsnull,
     357                 :     offsetof(nsStyleText, mTabSize),
     358               0 :     eStyleAnimType_None)
     359                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     360               0 : CSS_PROP_FONT(
     361                 :     -x-system-font,
     362                 :     _x_system_font,
     363                 :     CSS_PROP_DOMPROP_PREFIXED(SystemFont),
     364                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     365                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
     366                 :     0,
     367                 :     kFontKTable,
     368                 :     CSS_PROP_NO_OFFSET,
     369               0 :     eStyleAnimType_None)
     370                 : #endif
     371               0 : CSS_PROP_SHORTHAND(
     372                 :     -moz-animation,
     373                 :     animation,
     374                 :     CSS_PROP_DOMPROP_PREFIXED(Animation),
     375                 :     CSS_PROPERTY_PARSE_FUNCTION)
     376               0 : CSS_PROP_DISPLAY(
     377                 :     -moz-animation-delay,
     378                 :     animation_delay,
     379                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationDelay),
     380                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     381                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     382                 :     VARIANT_TIME, // used by list parsing
     383                 :     nsnull,
     384                 :     CSS_PROP_NO_OFFSET,
     385                 :     eStyleAnimType_None)
     386               0 : CSS_PROP_DISPLAY(
     387                 :     -moz-animation-direction,
     388                 :     animation_direction,
     389                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationDirection),
     390                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     391                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     392                 :     VARIANT_KEYWORD, // used by list parsing
     393                 :     kAnimationDirectionKTable,
     394                 :     CSS_PROP_NO_OFFSET,
     395                 :     eStyleAnimType_None)
     396               0 : CSS_PROP_DISPLAY(
     397                 :     -moz-animation-duration,
     398                 :     animation_duration,
     399                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationDuration),
     400                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     401                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     402                 :     VARIANT_TIME, // used by list parsing
     403                 :     nsnull,
     404                 :     CSS_PROP_NO_OFFSET,
     405                 :     eStyleAnimType_None)
     406               0 : CSS_PROP_DISPLAY(
     407                 :     -moz-animation-fill-mode,
     408                 :     animation_fill_mode,
     409                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationFillMode),
     410                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     411                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     412                 :     VARIANT_KEYWORD, // used by list parsing
     413                 :     kAnimationFillModeKTable,
     414                 :     CSS_PROP_NO_OFFSET,
     415                 :     eStyleAnimType_None)
     416               0 : CSS_PROP_DISPLAY(
     417                 :     -moz-animation-iteration-count,
     418                 :     animation_iteration_count,
     419                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationIterationCount),
     420                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     421                 :         // nonnegative per
     422                 :         // http://lists.w3.org/Archives/Public/www-style/2011Mar/0355.html
     423                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     424                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     425                 :     VARIANT_KEYWORD | VARIANT_NUMBER, // used by list parsing
     426                 :     kAnimationIterationCountKTable,
     427                 :     CSS_PROP_NO_OFFSET,
     428                 :     eStyleAnimType_None)
     429               0 : CSS_PROP_DISPLAY(
     430                 :     -moz-animation-name,
     431                 :     animation_name,
     432                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationName),
     433                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     434                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     435                 :     // FIXME: The spec should say something about 'inherit' and 'initial'
     436                 :     // not being allowed.
     437                 :     VARIANT_NONE | VARIANT_IDENTIFIER_NO_INHERIT, // used by list parsing
     438                 :     nsnull,
     439                 :     CSS_PROP_NO_OFFSET,
     440                 :     eStyleAnimType_None)
     441               0 : CSS_PROP_DISPLAY(
     442                 :     -moz-animation-play-state,
     443                 :     animation_play_state,
     444                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationPlayState),
     445                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     446                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     447                 :     VARIANT_KEYWORD, // used by list parsing
     448                 :     kAnimationPlayStateKTable,
     449                 :     CSS_PROP_NO_OFFSET,
     450                 :     eStyleAnimType_None)
     451               0 : CSS_PROP_DISPLAY(
     452                 :     -moz-animation-timing-function,
     453                 :     animation_timing_function,
     454                 :     CSS_PROP_DOMPROP_PREFIXED(AnimationTimingFunction),
     455                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     456                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     457                 :     VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
     458                 :     kTransitionTimingFunctionKTable,
     459                 :     CSS_PROP_NO_OFFSET,
     460                 :     eStyleAnimType_None)
     461               0 : CSS_PROP_SHORTHAND(
     462                 :     background,
     463                 :     background,
     464                 :     Background,
     465                 :     CSS_PROPERTY_PARSE_FUNCTION)
     466               0 : CSS_PROP_BACKGROUND(
     467                 :     background-attachment,
     468                 :     background_attachment,
     469                 :     BackgroundAttachment,
     470                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     471                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     472                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     473                 :     VARIANT_KEYWORD, // used by list parsing
     474                 :     kBackgroundAttachmentKTable,
     475                 :     CSS_PROP_NO_OFFSET,
     476               0 :     eStyleAnimType_None)
     477               0 : CSS_PROP_BACKGROUND(
     478                 :     background-clip,
     479                 :     background_clip,
     480                 :     BackgroundClip,
     481                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     482                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     483                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     484                 :     VARIANT_KEYWORD, // used by list parsing
     485                 :     kBackgroundOriginKTable,
     486                 :     CSS_PROP_NO_OFFSET,
     487               0 :     eStyleAnimType_None)
     488               0 : CSS_PROP_BACKGROUND(
     489                 :     background-color,
     490                 :     background_color,
     491                 :     BackgroundColor,
     492                 :     CSS_PROPERTY_PARSE_VALUE |
     493                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     494                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     495                 :     VARIANT_HC,
     496                 :     nsnull,
     497                 :     offsetof(nsStyleBackground, mBackgroundColor),
     498               0 :     eStyleAnimType_Color)
     499               0 : CSS_PROP_BACKGROUND(
     500                 :     background-image,
     501                 :     background_image,
     502                 :     BackgroundImage,
     503                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     504                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     505                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
     506                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
     507                 :         CSS_PROPERTY_START_IMAGE_LOADS,
     508                 :     VARIANT_IMAGE, // used by list parsing
     509                 :     nsnull,
     510                 :     CSS_PROP_NO_OFFSET,
     511               0 :     eStyleAnimType_None)
     512               0 : CSS_PROP_BACKGROUND(
     513                 :     -moz-background-inline-policy,
     514                 :     _moz_background_inline_policy,
     515                 :     CSS_PROP_DOMPROP_PREFIXED(BackgroundInlinePolicy),
     516                 :     CSS_PROPERTY_PARSE_VALUE |
     517                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
     518                 :     VARIANT_HK,
     519                 :     kBackgroundInlinePolicyKTable,
     520                 :     CSS_PROP_NO_OFFSET,
     521               0 :     eStyleAnimType_None)
     522               0 : CSS_PROP_BACKGROUND(
     523                 :     background-origin,
     524                 :     background_origin,
     525                 :     BackgroundOrigin,
     526                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
     527                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     528                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     529                 :     VARIANT_KEYWORD, // used by list parsing
     530                 :     kBackgroundOriginKTable,
     531                 :     CSS_PROP_NO_OFFSET,
     532               0 :     eStyleAnimType_None)
     533               0 : CSS_PROP_BACKGROUND(
     534                 :     background-position,
     535                 :     background_position,
     536                 :     BackgroundPosition,
     537                 :     CSS_PROPERTY_PARSE_FUNCTION |
     538                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     539                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
     540                 :         CSS_PROPERTY_STORES_CALC,
     541                 :     0,
     542                 :     kBackgroundPositionKTable,
     543                 :     CSS_PROP_NO_OFFSET,
     544               0 :     eStyleAnimType_Custom)
     545               0 : CSS_PROP_BACKGROUND(
     546                 :     background-repeat,
     547                 :     background_repeat,
     548                 :     BackgroundRepeat,
     549                 :     CSS_PROPERTY_PARSE_FUNCTION |
     550                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     551                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
     552                 :     VARIANT_KEYWORD, // used by list parsing
     553                 :     kBackgroundRepeatKTable,
     554                 :     CSS_PROP_NO_OFFSET,
     555               0 :     eStyleAnimType_None)
     556               0 : CSS_PROP_BACKGROUND(
     557                 :     background-size,
     558                 :     background_size,
     559                 :     BackgroundSize,
     560                 :     CSS_PROPERTY_PARSE_FUNCTION |
     561                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
     562                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
     563                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     564                 :         CSS_PROPERTY_STORES_CALC,
     565                 :     0,
     566                 :     kBackgroundSizeKTable,
     567                 :     CSS_PROP_NO_OFFSET,
     568               0 :     eStyleAnimType_Custom)
     569               0 : CSS_PROP_DISPLAY(
     570                 :     -moz-binding,
     571                 :     binding,
     572                 :     CSS_PROP_DOMPROP_PREFIXED(Binding),
     573                 :     CSS_PROPERTY_PARSE_VALUE,
     574                 :     VARIANT_HUO,
     575                 :     nsnull,
     576                 :     CSS_PROP_NO_OFFSET,
     577               0 :     eStyleAnimType_None) // XXX bug 3935
     578               0 : CSS_PROP_SHORTHAND(
     579                 :     border,
     580                 :     border,
     581                 :     Border,
     582                 :     CSS_PROPERTY_PARSE_FUNCTION)
     583               0 : CSS_PROP_SHORTHAND(
     584                 :     border-bottom,
     585                 :     border_bottom,
     586                 :     BorderBottom,
     587                 :     CSS_PROPERTY_PARSE_FUNCTION)
     588               0 : CSS_PROP_BORDER(
     589                 :     border-bottom-color,
     590                 :     border_bottom_color,
     591                 :     BorderBottomColor,
     592                 :     CSS_PROPERTY_PARSE_VALUE |
     593                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     594                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     595                 :     VARIANT_HCK,
     596                 :     kBorderColorKTable,
     597                 :     CSS_PROP_NO_OFFSET,
     598               0 :     eStyleAnimType_Custom)
     599               0 : CSS_PROP_BORDER(
     600                 :     -moz-border-bottom-colors,
     601                 :     border_bottom_colors,
     602                 :     CSS_PROP_DOMPROP_PREFIXED(BorderBottomColors),
     603                 :     CSS_PROPERTY_PARSE_FUNCTION |
     604                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     605                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     606                 :     0,
     607                 :     nsnull,
     608                 :     CSS_PROP_NO_OFFSET,
     609                 :     eStyleAnimType_None)
     610               0 : CSS_PROP_BORDER(
     611                 :     border-bottom-style,
     612                 :     border_bottom_style,
     613                 :     BorderBottomStyle,
     614                 :     CSS_PROPERTY_PARSE_VALUE |
     615                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     616                 :     VARIANT_HK,
     617                 :     kBorderStyleKTable,
     618                 :     CSS_PROP_NO_OFFSET,
     619               0 :     eStyleAnimType_None)  // on/off will need reflow
     620               0 : CSS_PROP_BORDER(
     621                 :     border-bottom-width,
     622                 :     border_bottom_width,
     623                 :     BorderBottomWidth,
     624                 :     CSS_PROPERTY_PARSE_VALUE |
     625                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     626                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     627                 :     VARIANT_HKL | VARIANT_CALC,
     628                 :     kBorderWidthKTable,
     629                 :     CSS_PROP_NO_OFFSET,
     630               0 :     eStyleAnimType_Custom)
     631               0 : CSS_PROP_TABLEBORDER(
     632                 :     border-collapse,
     633                 :     border_collapse,
     634                 :     BorderCollapse,
     635                 :     CSS_PROPERTY_PARSE_VALUE,
     636                 :     VARIANT_HK,
     637                 :     kBorderCollapseKTable,
     638                 :     CSS_PROP_NO_OFFSET,
     639               0 :     eStyleAnimType_None)
     640               0 : CSS_PROP_SHORTHAND(
     641                 :     border-color,
     642                 :     border_color,
     643                 :     BorderColor,
     644                 :     CSS_PROPERTY_PARSE_FUNCTION)
     645               0 : CSS_PROP_SHORTHAND(
     646                 :     -moz-border-end,
     647                 :     border_end,
     648                 :     CSS_PROP_DOMPROP_PREFIXED(BorderEnd),
     649                 :     CSS_PROPERTY_PARSE_FUNCTION)
     650               0 : CSS_PROP_SHORTHAND(
     651                 :     -moz-border-end-color,
     652                 :     border_end_color,
     653                 :     CSS_PROP_DOMPROP_PREFIXED(BorderEndColor),
     654                 :     CSS_PROPERTY_PARSE_FUNCTION)
     655                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     656               0 : CSS_PROP_BORDER(
     657                 :     border-end-color-value,
     658                 :     border_end_color_value,
     659                 :     BorderEndColorValue,
     660                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     661                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     662                 :     VARIANT_HCK, // used only internally
     663                 :     kBorderColorKTable,
     664                 :     CSS_PROP_NO_OFFSET,
     665               0 :     eStyleAnimType_None)
     666                 : #endif
     667               0 : CSS_PROP_SHORTHAND(
     668                 :     -moz-border-end-style,
     669                 :     border_end_style,
     670                 :     CSS_PROP_DOMPROP_PREFIXED(BorderEndStyle),
     671                 :     CSS_PROPERTY_PARSE_FUNCTION)
     672                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     673               0 : CSS_PROP_BORDER(
     674                 :     border-end-style-value,
     675                 :     border_end_style_value,
     676                 :     BorderEndStyleValue,
     677                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     678                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     679                 :     VARIANT_HK, // used only internally
     680                 :     kBorderStyleKTable,
     681                 :     CSS_PROP_NO_OFFSET,
     682               0 :     eStyleAnimType_None)
     683                 : #endif
     684               0 : CSS_PROP_SHORTHAND(
     685                 :     -moz-border-end-width,
     686                 :     border_end_width,
     687                 :     CSS_PROP_DOMPROP_PREFIXED(BorderEndWidth),
     688                 :     CSS_PROPERTY_PARSE_FUNCTION)
     689                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     690               0 : CSS_PROP_BORDER(
     691                 :     border-end-width-value,
     692                 :     border_end_width_value,
     693                 :     BorderEndWidthValue,
     694                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     695                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     696                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
     697                 :     VARIANT_HKL | VARIANT_CALC,
     698                 :     kBorderWidthKTable,
     699                 :     CSS_PROP_NO_OFFSET,
     700               0 :     eStyleAnimType_None)
     701                 : #endif
     702               0 : CSS_PROP_BORDER(
     703                 :     -moz-border-image,
     704                 :     border_image,
     705                 :     CSS_PROP_DOMPROP_PREFIXED(BorderImage),
     706                 :     CSS_PROPERTY_PARSE_FUNCTION |
     707                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     708                 :         CSS_PROPERTY_START_IMAGE_LOADS |
     709                 :         CSS_PROPERTY_IMAGE_IS_IN_ARRAY_0,
     710                 :     0,
     711                 :     kBorderImageKTable,
     712                 :     CSS_PROP_NO_OFFSET,
     713               0 :     eStyleAnimType_None)
     714               0 : CSS_PROP_SHORTHAND(
     715                 :     border-left,
     716                 :     border_left,
     717                 :     BorderLeft,
     718                 :     CSS_PROPERTY_PARSE_FUNCTION)
     719               0 : CSS_PROP_SHORTHAND(
     720                 :     border-left-color,
     721                 :     border_left_color,
     722                 :     BorderLeftColor,
     723                 :     CSS_PROPERTY_PARSE_FUNCTION)
     724                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     725               0 : CSS_PROP_BORDER(
     726                 :     border-left-color-value,
     727                 :     border_left_color_value,
     728                 :     BorderLeftColorValue,
     729                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     730                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     731                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
     732                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     733                 :     VARIANT_HCK, // used only internally
     734                 :     kBorderColorKTable,
     735                 :     CSS_PROP_NO_OFFSET,
     736               0 :     eStyleAnimType_Custom)
     737               0 : CSS_PROP_BORDER(
     738                 :     border-left-color-ltr-source,
     739                 :     border_left_color_ltr_source,
     740                 :     BorderLeftColorLTRSource,
     741                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     742                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     743                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE |
     744                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     745                 :     0,
     746                 :     kBoxPropSourceKTable,
     747                 :     CSS_PROP_NO_OFFSET,
     748               0 :     eStyleAnimType_None)
     749               0 : CSS_PROP_BORDER(
     750                 :     border-left-color-rtl-source,
     751                 :     border_left_color_rtl_source,
     752                 :     BorderLeftColorRTLSource,
     753                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     754                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     755                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE |
     756                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     757                 :     0,
     758                 :     kBoxPropSourceKTable,
     759                 :     CSS_PROP_NO_OFFSET,
     760               0 :     eStyleAnimType_None)
     761                 : #endif
     762               0 : CSS_PROP_BORDER(
     763                 :     -moz-border-left-colors,
     764                 :     border_left_colors,
     765                 :     CSS_PROP_DOMPROP_PREFIXED(BorderLeftColors),
     766                 :     CSS_PROPERTY_PARSE_FUNCTION |
     767                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     768                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     769                 :     0,
     770                 :     nsnull,
     771                 :     CSS_PROP_NO_OFFSET,
     772                 :     eStyleAnimType_None)
     773               0 : CSS_PROP_SHORTHAND(
     774                 :     border-left-style,
     775                 :     border_left_style,
     776                 :     BorderLeftStyle,
     777                 :     CSS_PROPERTY_PARSE_FUNCTION) // on/off will need reflow
     778                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     779               0 : CSS_PROP_BORDER(
     780                 :     border-left-style-value,
     781                 :     border_left_style_value,
     782                 :     BorderLeftStyleValue,
     783                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     784                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     785                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     786                 :     VARIANT_HK, // used only internally
     787                 :     kBorderStyleKTable,
     788                 :     CSS_PROP_NO_OFFSET,
     789               0 :     eStyleAnimType_None)
     790               0 : CSS_PROP_BORDER(
     791                 :     border-left-style-ltr-source,
     792                 :     border_left_style_ltr_source,
     793                 :     BorderLeftStyleLTRSource,
     794                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     795                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     796                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     797                 :     0,
     798                 :     kBoxPropSourceKTable,
     799                 :     CSS_PROP_NO_OFFSET,
     800               0 :     eStyleAnimType_None)
     801               0 : CSS_PROP_BORDER(
     802                 :     border-left-style-rtl-source,
     803                 :     border_left_style_rtl_source,
     804                 :     BorderLeftStyleRTLSource,
     805                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     806                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     807                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     808                 :     0,
     809                 :     kBoxPropSourceKTable,
     810                 :     CSS_PROP_NO_OFFSET,
     811               0 :     eStyleAnimType_None)
     812                 : #endif
     813               0 : CSS_PROP_SHORTHAND(
     814                 :     border-left-width,
     815                 :     border_left_width,
     816                 :     BorderLeftWidth,
     817                 :     CSS_PROPERTY_PARSE_FUNCTION)
     818                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     819               0 : CSS_PROP_BORDER(
     820                 :     border-left-width-value,
     821                 :     border_left_width_value,
     822                 :     BorderLeftWidthValue,
     823                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     824                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     825                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     826                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     827                 :     VARIANT_HKL | VARIANT_CALC,
     828                 :     kBorderWidthKTable,
     829                 :     CSS_PROP_NO_OFFSET,
     830               0 :     eStyleAnimType_Custom)
     831               0 : CSS_PROP_BORDER(
     832                 :     border-left-width-ltr-source,
     833                 :     border_left_width_ltr_source,
     834                 :     BorderLeftWidthLTRSource,
     835                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     836                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     837                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     838                 :     0,
     839                 :     kBoxPropSourceKTable,
     840                 :     CSS_PROP_NO_OFFSET,
     841               0 :     eStyleAnimType_None)
     842               0 : CSS_PROP_BORDER(
     843                 :     border-left-width-rtl-source,
     844                 :     border_left_width_rtl_source,
     845                 :     BorderLeftWidthRTLSource,
     846                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     847                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     848                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     849                 :     0,
     850                 :     kBoxPropSourceKTable,
     851                 :     CSS_PROP_NO_OFFSET,
     852               0 :     eStyleAnimType_None)
     853                 : #endif
     854               0 : CSS_PROP_SHORTHAND(
     855                 :     border-right,
     856                 :     border_right,
     857                 :     BorderRight,
     858                 :     CSS_PROPERTY_PARSE_FUNCTION)
     859               0 : CSS_PROP_SHORTHAND(
     860                 :     border-right-color,
     861                 :     border_right_color,
     862                 :     BorderRightColor,
     863                 :     CSS_PROPERTY_PARSE_FUNCTION)
     864                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     865               0 : CSS_PROP_BORDER(
     866                 :     border-right-color-value,
     867                 :     border_right_color_value,
     868                 :     BorderRightColorValue,
     869                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     870                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     871                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
     872                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     873                 :     VARIANT_HCK, // used only internally
     874                 :     kBorderColorKTable,
     875                 :     CSS_PROP_NO_OFFSET,
     876               0 :     eStyleAnimType_Custom)
     877               0 : CSS_PROP_BORDER(
     878                 :     border-right-color-ltr-source,
     879                 :     border_right_color_ltr_source,
     880                 :     BorderRightColorLTRSource,
     881                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     882                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     883                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE |
     884                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     885                 :     0,
     886                 :     kBoxPropSourceKTable,
     887                 :     CSS_PROP_NO_OFFSET,
     888               0 :     eStyleAnimType_None)
     889               0 : CSS_PROP_BORDER(
     890                 :     border-right-color-rtl-source,
     891                 :     border_right_color_rtl_source,
     892                 :     BorderRightColorRTLSource,
     893                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     894                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     895                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE |
     896                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     897                 :     0,
     898                 :     kBoxPropSourceKTable,
     899                 :     CSS_PROP_NO_OFFSET,
     900               0 :     eStyleAnimType_None)
     901                 : #endif
     902               0 : CSS_PROP_BORDER(
     903                 :     -moz-border-right-colors,
     904                 :     border_right_colors,
     905                 :     CSS_PROP_DOMPROP_PREFIXED(BorderRightColors),
     906                 :     CSS_PROPERTY_PARSE_FUNCTION |
     907                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     908                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
     909                 :     0,
     910                 :     nsnull,
     911                 :     CSS_PROP_NO_OFFSET,
     912                 :     eStyleAnimType_None)
     913               0 : CSS_PROP_SHORTHAND(
     914                 :     border-right-style,
     915                 :     border_right_style,
     916                 :     BorderRightStyle,
     917                 :     CSS_PROPERTY_PARSE_FUNCTION) // on/off will need reflow
     918                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     919               0 : CSS_PROP_BORDER(
     920                 :     border-right-style-value,
     921                 :     border_right_style_value,
     922                 :     BorderRightStyleValue,
     923                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     924                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     925                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     926                 :     VARIANT_HK, // used only internally
     927                 :     kBorderStyleKTable,
     928                 :     CSS_PROP_NO_OFFSET,
     929               0 :     eStyleAnimType_None)
     930               0 : CSS_PROP_BORDER(
     931                 :     border-right-style-ltr-source,
     932                 :     border_right_style_ltr_source,
     933                 :     BorderRightStyleLTRSource,
     934                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     935                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     936                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     937                 :     0,
     938                 :     kBoxPropSourceKTable,
     939                 :     CSS_PROP_NO_OFFSET,
     940               0 :     eStyleAnimType_None)
     941               0 : CSS_PROP_BORDER(
     942                 :     border-right-style-rtl-source,
     943                 :     border_right_style_rtl_source,
     944                 :     BorderRightStyleRTLSource,
     945                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     946                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     947                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     948                 :     0,
     949                 :     kBoxPropSourceKTable,
     950                 :     CSS_PROP_NO_OFFSET,
     951               0 :     eStyleAnimType_None)
     952                 : #endif
     953               0 : CSS_PROP_SHORTHAND(
     954                 :     border-right-width,
     955                 :     border_right_width,
     956                 :     BorderRightWidth,
     957                 :     CSS_PROPERTY_PARSE_FUNCTION)
     958                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
     959               0 : CSS_PROP_BORDER(
     960                 :     border-right-width-value,
     961                 :     border_right_width_value,
     962                 :     BorderRightWidthValue,
     963                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     964                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
     965                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     966                 :         CSS_PROPERTY_REPORT_OTHER_NAME,
     967                 :     VARIANT_HKL | VARIANT_CALC,
     968                 :     kBorderWidthKTable,
     969                 :     CSS_PROP_NO_OFFSET,
     970               0 :     eStyleAnimType_Custom)
     971               0 : CSS_PROP_BORDER(
     972                 :     border-right-width-ltr-source,
     973                 :     border_right_width_ltr_source,
     974                 :     BorderRightWidthLTRSource,
     975                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     976                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     977                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     978                 :     0,
     979                 :     kBoxPropSourceKTable,
     980                 :     CSS_PROP_NO_OFFSET,
     981               0 :     eStyleAnimType_None)
     982               0 : CSS_PROP_BORDER(
     983                 :     border-right-width-rtl-source,
     984                 :     border_right_width_rtl_source,
     985                 :     BorderRightWidthRTLSource,
     986                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
     987                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
     988                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
     989                 :     0,
     990                 :     kBoxPropSourceKTable,
     991                 :     CSS_PROP_NO_OFFSET,
     992               0 :     eStyleAnimType_None)
     993                 : #endif
     994               0 : CSS_PROP_TABLEBORDER(
     995                 :     border-spacing,
     996                 :     border_spacing,
     997                 :     BorderSpacing,
     998                 :     CSS_PROPERTY_PARSE_FUNCTION |
     999                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1000                 :     0,
    1001                 :     nsnull,
    1002                 :     CSS_PROP_NO_OFFSET,
    1003               0 :     eStyleAnimType_Custom) // XXX bug 3935
    1004               0 : CSS_PROP_SHORTHAND(
    1005                 :     -moz-border-start,
    1006                 :     border_start,
    1007                 :     CSS_PROP_DOMPROP_PREFIXED(BorderStart),
    1008                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1009               0 : CSS_PROP_SHORTHAND(
    1010                 :     -moz-border-start-color,
    1011                 :     border_start_color,
    1012                 :     CSS_PROP_DOMPROP_PREFIXED(BorderStartColor),
    1013                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1014                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1015               0 : CSS_PROP_BORDER(
    1016                 :     border-start-color-value,
    1017                 :     border_start_color_value,
    1018                 :     BorderStartColorValue,
    1019                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1020                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1021                 :     VARIANT_HCK, // used only internally
    1022                 :     kBorderColorKTable,
    1023                 :     CSS_PROP_NO_OFFSET,
    1024               0 :     eStyleAnimType_None)
    1025                 : #endif
    1026               0 : CSS_PROP_SHORTHAND(
    1027                 :     -moz-border-start-style,
    1028                 :     border_start_style,
    1029                 :     CSS_PROP_DOMPROP_PREFIXED(BorderStartStyle),
    1030                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1031                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1032               0 : CSS_PROP_BORDER(
    1033                 :     border-start-style-value,
    1034                 :     border_start_style_value,
    1035                 :     BorderStartStyleValue,
    1036                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1037                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1038                 :     VARIANT_HK, // used only internally
    1039                 :     kBorderStyleKTable,
    1040                 :     CSS_PROP_NO_OFFSET,
    1041               0 :     eStyleAnimType_None)
    1042                 : #endif
    1043               0 : CSS_PROP_SHORTHAND(
    1044                 :     -moz-border-start-width,
    1045                 :     border_start_width,
    1046                 :     CSS_PROP_DOMPROP_PREFIXED(BorderStartWidth),
    1047                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1048                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1049               0 : CSS_PROP_BORDER(
    1050                 :     border-start-width-value,
    1051                 :     border_start_width_value,
    1052                 :     BorderStartWidthValue,
    1053                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1054                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1055                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1056                 :     VARIANT_HKL | VARIANT_CALC,
    1057                 :     kBorderWidthKTable,
    1058                 :     CSS_PROP_NO_OFFSET,
    1059               0 :     eStyleAnimType_None)
    1060                 : #endif
    1061               0 : CSS_PROP_SHORTHAND(
    1062                 :     border-style,
    1063                 :     border_style,
    1064                 :     BorderStyle,
    1065                 :     CSS_PROPERTY_PARSE_FUNCTION)  // on/off will need reflow
    1066               0 : CSS_PROP_SHORTHAND(
    1067                 :     border-top,
    1068                 :     border_top,
    1069                 :     BorderTop,
    1070                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1071               0 : CSS_PROP_BORDER(
    1072                 :     border-top-color,
    1073                 :     border_top_color,
    1074                 :     BorderTopColor,
    1075                 :     CSS_PROPERTY_PARSE_VALUE |
    1076                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1077                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1078                 :     VARIANT_HCK,
    1079                 :     kBorderColorKTable,
    1080                 :     CSS_PROP_NO_OFFSET,
    1081               0 :     eStyleAnimType_Custom)
    1082               0 : CSS_PROP_BORDER(
    1083                 :     -moz-border-top-colors,
    1084                 :     border_top_colors,
    1085                 :     CSS_PROP_DOMPROP_PREFIXED(BorderTopColors),
    1086                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1087                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1088                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1089                 :     0,
    1090                 :     nsnull,
    1091                 :     CSS_PROP_NO_OFFSET,
    1092                 :     eStyleAnimType_None)
    1093               0 : CSS_PROP_BORDER(
    1094                 :     border-top-style,
    1095                 :     border_top_style,
    1096                 :     BorderTopStyle,
    1097                 :     CSS_PROPERTY_PARSE_VALUE |
    1098                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1099                 :     VARIANT_HK,
    1100                 :     kBorderStyleKTable,
    1101                 :     CSS_PROP_NO_OFFSET,
    1102               0 :     eStyleAnimType_None)  // on/off will need reflow
    1103               0 : CSS_PROP_BORDER(
    1104                 :     border-top-width,
    1105                 :     border_top_width,
    1106                 :     BorderTopWidth,
    1107                 :     CSS_PROPERTY_PARSE_VALUE |
    1108                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1109                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1110                 :     VARIANT_HKL | VARIANT_CALC,
    1111                 :     kBorderWidthKTable,
    1112                 :     CSS_PROP_NO_OFFSET,
    1113               0 :     eStyleAnimType_Custom)
    1114               0 : CSS_PROP_SHORTHAND(
    1115                 :     border-width,
    1116                 :     border_width,
    1117                 :     BorderWidth,
    1118                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1119               0 : CSS_PROP_SHORTHAND(
    1120                 :     border-radius,
    1121                 :     border_radius,
    1122                 :     BorderRadius,
    1123                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1124               0 : CSS_PROP_BORDER(
    1125                 :     border-top-left-radius,
    1126                 :     border_top_left_radius,
    1127                 :     BorderTopLeftRadius,
    1128                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1129                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1130                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1131                 :         CSS_PROPERTY_STORES_CALC,
    1132                 :     0,
    1133                 :     nsnull,
    1134                 :     offsetof(nsStyleBorder, mBorderRadius),
    1135                 :     eStyleAnimType_Corner_TopLeft)
    1136               0 : CSS_PROP_BORDER(
    1137                 :     border-top-right-radius,
    1138                 :     border_top_right_radius,
    1139                 :     BorderTopRightRadius,
    1140                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1141                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1142                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1143                 :         CSS_PROPERTY_STORES_CALC,
    1144                 :     0,
    1145                 :     nsnull,
    1146                 :     offsetof(nsStyleBorder, mBorderRadius),
    1147                 :     eStyleAnimType_Corner_TopRight)
    1148               0 : CSS_PROP_BORDER(
    1149                 :     border-bottom-right-radius,
    1150                 :     border_bottom_right_radius,
    1151                 :     BorderBottomRightRadius,
    1152                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1153                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1154                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1155                 :         CSS_PROPERTY_STORES_CALC,
    1156                 :     0,
    1157                 :     nsnull,
    1158                 :     offsetof(nsStyleBorder, mBorderRadius),
    1159                 :     eStyleAnimType_Corner_BottomRight)
    1160               0 : CSS_PROP_BORDER(
    1161                 :     border-bottom-left-radius,
    1162                 :     border_bottom_left_radius,
    1163                 :     BorderBottomLeftRadius,
    1164                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1165                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1166                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1167                 :         CSS_PROPERTY_STORES_CALC,
    1168                 :     0,
    1169                 :     nsnull,
    1170                 :     offsetof(nsStyleBorder, mBorderRadius),
    1171                 :     eStyleAnimType_Corner_BottomLeft)
    1172               0 : CSS_PROP_POSITION(
    1173                 :     bottom,
    1174                 :     bottom,
    1175                 :     Bottom,
    1176                 :     CSS_PROPERTY_PARSE_VALUE |
    1177                 :         CSS_PROPERTY_STORES_CALC,
    1178                 :     VARIANT_AHLP | VARIANT_CALC,
    1179                 :     nsnull,
    1180                 :     offsetof(nsStylePosition, mOffset),
    1181                 :     eStyleAnimType_Sides_Bottom)
    1182               0 : CSS_PROP_BORDER(
    1183                 :     box-shadow,
    1184                 :     box_shadow,
    1185                 :     BoxShadow,
    1186                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1187                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1188                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
    1189                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1190                 :         // NOTE: some components must be nonnegative
    1191                 :     0,
    1192                 :     kBoxShadowTypeKTable,
    1193                 :     offsetof(nsStyleBorder, mBoxShadow),
    1194               0 :     eStyleAnimType_Shadow)
    1195               0 : CSS_PROP_POSITION(
    1196                 :     -moz-box-sizing,
    1197                 :     box_sizing,
    1198                 :     CSS_PROP_DOMPROP_PREFIXED(BoxSizing),
    1199                 :     CSS_PROPERTY_PARSE_VALUE,
    1200                 :     VARIANT_HK,
    1201                 :     kBoxSizingKTable,
    1202                 :     CSS_PROP_NO_OFFSET,
    1203               0 :     eStyleAnimType_None) // XXX bug 3935
    1204               0 : CSS_PROP_TABLEBORDER(
    1205                 :     caption-side,
    1206                 :     caption_side,
    1207                 :     CaptionSide,
    1208                 :     CSS_PROPERTY_PARSE_VALUE,
    1209                 :     VARIANT_HK,
    1210                 :     kCaptionSideKTable,
    1211                 :     CSS_PROP_NO_OFFSET,
    1212               0 :     eStyleAnimType_None)
    1213               0 : CSS_PROP_DISPLAY(
    1214                 :     clear,
    1215                 :     clear,
    1216                 :     Clear,
    1217                 :     CSS_PROPERTY_PARSE_VALUE,
    1218                 :     VARIANT_HK,
    1219                 :     kClearKTable,
    1220                 :     CSS_PROP_NO_OFFSET,
    1221               0 :     eStyleAnimType_None)
    1222               0 : CSS_PROP_DISPLAY(
    1223                 :     clip,
    1224                 :     clip,
    1225                 :     Clip,
    1226                 :     CSS_PROPERTY_PARSE_FUNCTION,
    1227                 :     0,
    1228                 :     nsnull,
    1229                 :     offsetof(nsStyleDisplay, mClip),
    1230               0 :     eStyleAnimType_Custom)
    1231               0 : CSS_PROP_COLOR(
    1232                 :     color,
    1233                 :     color,
    1234                 :     Color,
    1235                 :     CSS_PROPERTY_PARSE_VALUE |
    1236                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
    1237                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1238                 :     VARIANT_HC,
    1239                 :     nsnull,
    1240                 :     offsetof(nsStyleColor, mColor),
    1241               0 :     eStyleAnimType_Color)
    1242               0 : CSS_PROP_SHORTHAND(
    1243                 :     -moz-columns,
    1244                 :     _moz_columns,
    1245                 :     CSS_PROP_DOMPROP_PREFIXED(Columns),
    1246                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1247               0 : CSS_PROP_COLUMN(
    1248                 :     -moz-column-count,
    1249                 :     _moz_column_count,
    1250                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnCount),
    1251                 :     CSS_PROPERTY_PARSE_VALUE |
    1252                 :         // Need to reject 0 in addition to negatives.  If we accept 0, we
    1253                 :         // need to change NS_STYLE_COLUMN_COUNT_AUTO to something else.
    1254                 :         CSS_PROPERTY_VALUE_AT_LEAST_ONE,
    1255                 :     VARIANT_AHI,
    1256                 :     nsnull,
    1257                 :     offsetof(nsStyleColumn, mColumnCount),
    1258               0 :     eStyleAnimType_Custom)
    1259               0 : CSS_PROP_COLUMN(
    1260                 :     -moz-column-fill,
    1261                 :     _moz_column_fill,
    1262                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnFill),
    1263                 :     CSS_PROPERTY_PARSE_VALUE,
    1264                 :     VARIANT_HK,
    1265                 :     kColumnFillKTable,
    1266                 :     CSS_PROP_NO_OFFSET,
    1267               0 :     eStyleAnimType_None)
    1268               0 : CSS_PROP_COLUMN(
    1269                 :     -moz-column-width,
    1270                 :     _moz_column_width,
    1271                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnWidth),
    1272                 :     CSS_PROPERTY_PARSE_VALUE |
    1273                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1274                 :     VARIANT_AHL | VARIANT_CALC,
    1275                 :     nsnull,
    1276                 :     offsetof(nsStyleColumn, mColumnWidth),
    1277               0 :     eStyleAnimType_Coord)
    1278               0 : CSS_PROP_COLUMN(
    1279                 :     -moz-column-gap,
    1280                 :     _moz_column_gap,
    1281                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnGap),
    1282                 :     CSS_PROPERTY_PARSE_VALUE |
    1283                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1284                 :     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
    1285                 :     nsnull,
    1286                 :     offsetof(nsStyleColumn, mColumnGap),
    1287               0 :     eStyleAnimType_Coord)
    1288               0 : CSS_PROP_SHORTHAND(
    1289                 :     -moz-column-rule,
    1290                 :     _moz_column_rule,
    1291                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnRule),
    1292                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1293               0 : CSS_PROP_COLUMN(
    1294                 :     -moz-column-rule-color,
    1295                 :     _moz_column_rule_color,
    1296                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnRuleColor),
    1297                 :     CSS_PROPERTY_PARSE_VALUE |
    1298                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1299                 :     VARIANT_HCK,
    1300                 :     kBorderColorKTable,
    1301                 :     CSS_PROP_NO_OFFSET,
    1302               0 :     eStyleAnimType_Custom)
    1303               0 : CSS_PROP_COLUMN(
    1304                 :     -moz-column-rule-style,
    1305                 :     _moz_column_rule_style,
    1306                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnRuleStyle),
    1307                 :     CSS_PROPERTY_PARSE_VALUE,
    1308                 :     VARIANT_HK,
    1309                 :     kBorderStyleKTable,
    1310                 :     CSS_PROP_NO_OFFSET,
    1311               0 :     eStyleAnimType_None)
    1312               0 : CSS_PROP_COLUMN(
    1313                 :     -moz-column-rule-width,
    1314                 :     _moz_column_rule_width,
    1315                 :     CSS_PROP_DOMPROP_PREFIXED(ColumnRuleWidth),
    1316                 :     CSS_PROPERTY_PARSE_VALUE |
    1317                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1318                 :     VARIANT_HKL | VARIANT_CALC,
    1319                 :     kBorderWidthKTable,
    1320                 :     CSS_PROP_NO_OFFSET,
    1321               0 :     eStyleAnimType_Custom)
    1322               0 : CSS_PROP_CONTENT(
    1323                 :     content,
    1324                 :     content,
    1325                 :     Content,
    1326                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1327                 :         CSS_PROPERTY_START_IMAGE_LOADS,
    1328                 :     0,
    1329                 :     kContentKTable,
    1330                 :     CSS_PROP_NO_OFFSET,
    1331               0 :     eStyleAnimType_None)
    1332               0 : CSS_PROP_CONTENT(
    1333                 :     counter-increment,
    1334                 :     counter_increment,
    1335                 :     CounterIncrement,
    1336                 :     CSS_PROPERTY_PARSE_FUNCTION,
    1337                 :     0,
    1338                 :     nsnull,
    1339                 :     CSS_PROP_NO_OFFSET,
    1340               0 :     eStyleAnimType_None) // XXX bug 137285
    1341               0 : CSS_PROP_CONTENT(
    1342                 :     counter-reset,
    1343                 :     counter_reset,
    1344                 :     CounterReset,
    1345                 :     CSS_PROPERTY_PARSE_FUNCTION,
    1346                 :     0,
    1347                 :     nsnull,
    1348                 :     CSS_PROP_NO_OFFSET,
    1349               0 :     eStyleAnimType_None) // XXX bug 137285
    1350               0 : CSS_PROP_USERINTERFACE(
    1351                 :     cursor,
    1352                 :     cursor,
    1353                 :     Cursor,
    1354                 :     CSS_PROPERTY_PARSE_FUNCTION |
    1355                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
    1356                 :         CSS_PROPERTY_START_IMAGE_LOADS |
    1357                 :         CSS_PROPERTY_IMAGE_IS_IN_ARRAY_0,
    1358                 :     0,
    1359                 :     kCursorKTable,
    1360                 :     CSS_PROP_NO_OFFSET,
    1361               0 :     eStyleAnimType_None)
    1362               0 : CSS_PROP_VISIBILITY(
    1363                 :     direction,
    1364                 :     direction,
    1365                 :     Direction,
    1366                 :     CSS_PROPERTY_PARSE_VALUE,
    1367                 :     VARIANT_HK,
    1368                 :     kDirectionKTable,
    1369                 :     CSS_PROP_NO_OFFSET,
    1370               0 :     eStyleAnimType_None)
    1371               0 : CSS_PROP_DISPLAY(
    1372                 :     display,
    1373                 :     display,
    1374                 :     Display,
    1375                 :     CSS_PROPERTY_PARSE_VALUE,
    1376                 :     VARIANT_HK,
    1377                 :     kDisplayKTable,
    1378                 :     offsetof(nsStyleDisplay, mDisplay),
    1379               0 :     eStyleAnimType_EnumU8)
    1380               0 : CSS_PROP_TABLEBORDER(
    1381                 :     empty-cells,
    1382                 :     empty_cells,
    1383                 :     EmptyCells,
    1384                 :     CSS_PROPERTY_PARSE_VALUE,
    1385                 :     VARIANT_HK,
    1386                 :     kEmptyCellsKTable,
    1387                 :     CSS_PROP_NO_OFFSET,
    1388               0 :     eStyleAnimType_None)
    1389               0 : CSS_PROP_DISPLAY(
    1390                 :     float,
    1391                 :     float,
    1392                 :     CssFloat,
    1393                 :     CSS_PROPERTY_PARSE_VALUE |
    1394                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
    1395                 :     VARIANT_HK,
    1396                 :     kFloatKTable,
    1397                 :     CSS_PROP_NO_OFFSET,
    1398               0 :     eStyleAnimType_None)
    1399               0 : CSS_PROP_BORDER(
    1400                 :     -moz-float-edge,
    1401                 :     float_edge,
    1402                 :     CSS_PROP_DOMPROP_PREFIXED(FloatEdge),
    1403                 :     CSS_PROPERTY_PARSE_VALUE,
    1404                 :     VARIANT_HK,
    1405                 :     kFloatEdgeKTable,
    1406                 :     CSS_PROP_NO_OFFSET,
    1407               0 :     eStyleAnimType_None) // XXX bug 3935
    1408               0 : CSS_PROP_SHORTHAND(
    1409                 :     font,
    1410                 :     font,
    1411                 :     Font,
    1412                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1413               0 : CSS_PROP_FONT(
    1414                 :     font-family,
    1415                 :     font_family,
    1416                 :     FontFamily,
    1417                 :     CSS_PROPERTY_PARSE_VALUE |
    1418                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION |
    1419                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1420                 :     0,
    1421                 :     nsnull,
    1422                 :     CSS_PROP_NO_OFFSET,
    1423               0 :     eStyleAnimType_None)
    1424               0 : CSS_PROP_FONT(
    1425                 :     -moz-font-feature-settings,
    1426                 :     font_feature_settings,
    1427                 :     CSS_PROP_DOMPROP_PREFIXED(FontFeatureSettings),
    1428                 :     CSS_PROPERTY_PARSE_VALUE |
    1429                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1430                 :     VARIANT_NORMAL | VARIANT_INHERIT | VARIANT_STRING,
    1431                 :     nsnull,
    1432                 :     CSS_PROP_NO_OFFSET,
    1433               0 :     eStyleAnimType_None)
    1434               0 : CSS_PROP_FONT(
    1435                 :     -moz-font-language-override,
    1436                 :     font_language_override,
    1437                 :     CSS_PROP_DOMPROP_PREFIXED(FontLanguageOverride),
    1438                 :     CSS_PROPERTY_PARSE_VALUE |
    1439                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1440                 :     VARIANT_NORMAL | VARIANT_INHERIT | VARIANT_STRING,
    1441                 :     nsnull,
    1442                 :     CSS_PROP_NO_OFFSET,
    1443               0 :     eStyleAnimType_None)
    1444               0 : CSS_PROP_FONT(
    1445                 :     font-size,
    1446                 :     font_size,
    1447                 :     FontSize,
    1448                 :     CSS_PROPERTY_PARSE_VALUE |
    1449                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1450                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1451                 :     VARIANT_HKLP | VARIANT_SYSFONT | VARIANT_CALC,
    1452                 :     kFontSizeKTable,
    1453                 :     // Note that mSize is the correct place for *reading* the computed value,
    1454                 :     // but setting it requires setting mFont.size as well.
    1455                 :     offsetof(nsStyleFont, mSize),
    1456               0 :     eStyleAnimType_nscoord)
    1457               0 : CSS_PROP_FONT(
    1458                 :     font-size-adjust,
    1459                 :     font_size_adjust,
    1460                 :     FontSizeAdjust,
    1461                 :     CSS_PROPERTY_PARSE_VALUE |
    1462                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1463                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1464                 :     VARIANT_HON | VARIANT_SYSFONT,
    1465                 :     nsnull,
    1466                 :     offsetof(nsStyleFont, mFont.sizeAdjust),
    1467               0 :     eStyleAnimType_float)
    1468               0 : CSS_PROP_FONT(
    1469                 :     font-stretch,
    1470                 :     font_stretch,
    1471                 :     FontStretch,
    1472                 :     CSS_PROPERTY_PARSE_VALUE |
    1473                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1474                 :     VARIANT_HK | VARIANT_SYSFONT,
    1475                 :     kFontStretchKTable,
    1476                 :     offsetof(nsStyleFont, mFont.stretch),
    1477               0 :     eStyleAnimType_Custom)
    1478               0 : CSS_PROP_FONT(
    1479                 :     font-style,
    1480                 :     font_style,
    1481                 :     FontStyle,
    1482                 :     CSS_PROPERTY_PARSE_VALUE |
    1483                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1484                 :     VARIANT_HK | VARIANT_SYSFONT,
    1485                 :     kFontStyleKTable,
    1486                 :     offsetof(nsStyleFont, mFont.style),
    1487               0 :     eStyleAnimType_EnumU8)
    1488               0 : CSS_PROP_FONT(
    1489                 :     font-variant,
    1490                 :     font_variant,
    1491                 :     FontVariant,
    1492                 :     CSS_PROPERTY_PARSE_VALUE |
    1493                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1494                 :     VARIANT_HK | VARIANT_SYSFONT,
    1495                 :     kFontVariantKTable,
    1496                 :     offsetof(nsStyleFont, mFont.variant),
    1497               0 :     eStyleAnimType_EnumU8)
    1498               0 : CSS_PROP_FONT(
    1499                 :     font-weight,
    1500                 :     font_weight,
    1501                 :     FontWeight,
    1502                 :     CSS_PROPERTY_PARSE_VALUE |
    1503                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION |
    1504                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1505                 :         // NOTE: This property has range restrictions on interpolation!
    1506                 :     0,
    1507                 :     kFontWeightKTable,
    1508                 :     offsetof(nsStyleFont, mFont.weight),
    1509               0 :     eStyleAnimType_Custom)
    1510               0 : CSS_PROP_UIRESET(
    1511                 :     -moz-force-broken-image-icon,
    1512                 :     force_broken_image_icon,
    1513                 :     CSS_PROP_DOMPROP_PREFIXED(ForceBrokenImageIcon),
    1514                 :     CSS_PROPERTY_PARSE_VALUE |
    1515                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1516                 :     VARIANT_HI,
    1517                 :     nsnull,
    1518                 :     CSS_PROP_NO_OFFSET,
    1519               0 :     eStyleAnimType_None) // bug 58646
    1520               0 : CSS_PROP_POSITION(
    1521                 :     height,
    1522                 :     height,
    1523                 :     Height,
    1524                 :     CSS_PROPERTY_PARSE_VALUE |
    1525                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1526                 :         CSS_PROPERTY_STORES_CALC,
    1527                 :     VARIANT_AHLP | VARIANT_CALC,
    1528                 :     nsnull,
    1529                 :     offsetof(nsStylePosition, mHeight),
    1530               0 :     eStyleAnimType_Coord)
    1531               0 : CSS_PROP_LIST(
    1532                 :     -moz-image-region,
    1533                 :     image_region,
    1534                 :     CSS_PROP_DOMPROP_PREFIXED(ImageRegion),
    1535                 :     CSS_PROPERTY_PARSE_FUNCTION,
    1536                 :     0,
    1537                 :     nsnull,
    1538                 :     offsetof(nsStyleList, mImageRegion),
    1539               0 :     eStyleAnimType_Custom)
    1540               0 : CSS_PROP_UIRESET(
    1541                 :     ime-mode,
    1542                 :     ime_mode,
    1543                 :     ImeMode,
    1544                 :     CSS_PROPERTY_PARSE_VALUE,
    1545                 :     VARIANT_HK,
    1546                 :     kIMEModeKTable,
    1547                 :     CSS_PROP_NO_OFFSET,
    1548               0 :     eStyleAnimType_None)
    1549               0 : CSS_PROP_POSITION(
    1550                 :     left,
    1551                 :     left,
    1552                 :     Left,
    1553                 :     CSS_PROPERTY_PARSE_VALUE |
    1554                 :         CSS_PROPERTY_STORES_CALC,
    1555                 :     VARIANT_AHLP | VARIANT_CALC,
    1556                 :     nsnull,
    1557                 :     offsetof(nsStylePosition, mOffset),
    1558                 :     eStyleAnimType_Sides_Left)
    1559               0 : CSS_PROP_TEXT(
    1560                 :     letter-spacing,
    1561                 :     letter_spacing,
    1562                 :     LetterSpacing,
    1563                 :     CSS_PROPERTY_PARSE_VALUE |
    1564                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1565                 :     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
    1566                 :     nsnull,
    1567                 :     offsetof(nsStyleText, mLetterSpacing),
    1568               0 :     eStyleAnimType_Coord)
    1569               0 : CSS_PROP_TEXT(
    1570                 :     line-height,
    1571                 :     line_height,
    1572                 :     LineHeight,
    1573                 :     CSS_PROPERTY_PARSE_VALUE |
    1574                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1575                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    1576                 :     VARIANT_HLPN | VARIANT_KEYWORD | VARIANT_NORMAL | VARIANT_SYSFONT,
    1577                 :     kLineHeightKTable,
    1578                 :     offsetof(nsStyleText, mLineHeight),
    1579               0 :     eStyleAnimType_Coord)
    1580               0 : CSS_PROP_SHORTHAND(
    1581                 :     list-style,
    1582                 :     list_style,
    1583                 :     ListStyle,
    1584                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1585               0 : CSS_PROP_LIST(
    1586                 :     list-style-image,
    1587                 :     list_style_image,
    1588                 :     ListStyleImage,
    1589                 :     CSS_PROPERTY_PARSE_VALUE |
    1590                 :         CSS_PROPERTY_START_IMAGE_LOADS,
    1591                 :     VARIANT_HUO,
    1592                 :     nsnull,
    1593                 :     CSS_PROP_NO_OFFSET,
    1594               0 :     eStyleAnimType_None)
    1595               0 : CSS_PROP_LIST(
    1596                 :     list-style-position,
    1597                 :     list_style_position,
    1598                 :     ListStylePosition,
    1599                 :     CSS_PROPERTY_PARSE_VALUE,
    1600                 :     VARIANT_HK,
    1601                 :     kListStylePositionKTable,
    1602                 :     CSS_PROP_NO_OFFSET,
    1603               0 :     eStyleAnimType_None)
    1604               0 : CSS_PROP_LIST(
    1605                 :     list-style-type,
    1606                 :     list_style_type,
    1607                 :     ListStyleType,
    1608                 :     CSS_PROPERTY_PARSE_VALUE,
    1609                 :     VARIANT_HK,
    1610                 :     kListStyleKTable,
    1611                 :     CSS_PROP_NO_OFFSET,
    1612               0 :     eStyleAnimType_None)
    1613               0 : CSS_PROP_SHORTHAND(
    1614                 :     margin,
    1615                 :     margin,
    1616                 :     Margin,
    1617                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1618               0 : CSS_PROP_MARGIN(
    1619                 :     margin-bottom,
    1620                 :     margin_bottom,
    1621                 :     MarginBottom,
    1622                 :     CSS_PROPERTY_PARSE_VALUE |
    1623                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1624                 :         CSS_PROPERTY_STORES_CALC,
    1625                 :     VARIANT_AHLP | VARIANT_CALC,
    1626                 :     nsnull,
    1627                 :     offsetof(nsStyleMargin, mMargin),
    1628               0 :     eStyleAnimType_Sides_Bottom)
    1629               0 : CSS_PROP_SHORTHAND(
    1630                 :     -moz-margin-end,
    1631                 :     margin_end,
    1632                 :     CSS_PROP_DOMPROP_PREFIXED(MarginEnd),
    1633                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1634                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1635               0 : CSS_PROP_MARGIN(
    1636                 :     margin-end-value,
    1637                 :     margin_end_value,
    1638                 :     MarginEndValue,
    1639                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1640                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1641                 :         CSS_PROPERTY_STORES_CALC,
    1642                 :     VARIANT_AHLP | VARIANT_CALC, // for internal use
    1643                 :     nsnull,
    1644                 :     CSS_PROP_NO_OFFSET,
    1645               0 :     eStyleAnimType_None)
    1646                 : #endif
    1647               0 : CSS_PROP_SHORTHAND(
    1648                 :     margin-left,
    1649                 :     margin_left,
    1650                 :     MarginLeft,
    1651                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1652                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1653               0 : CSS_PROP_MARGIN(
    1654                 :     margin-left-value,
    1655                 :     margin_left_value,
    1656                 :     MarginLeftValue,
    1657                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1658                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1659                 :         CSS_PROPERTY_REPORT_OTHER_NAME |
    1660                 :         CSS_PROPERTY_STORES_CALC,
    1661                 :     VARIANT_AHLP | VARIANT_CALC, // for internal use
    1662                 :     nsnull,
    1663                 :     offsetof(nsStyleMargin, mMargin),
    1664               0 :     eStyleAnimType_Sides_Left)
    1665               0 : CSS_PROP_MARGIN(
    1666                 :     margin-left-ltr-source,
    1667                 :     margin_left_ltr_source,
    1668                 :     MarginLeftLTRSource,
    1669                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1670                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1671                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1672                 :     0,
    1673                 :     kBoxPropSourceKTable,
    1674                 :     CSS_PROP_NO_OFFSET,
    1675               0 :     eStyleAnimType_None)
    1676               0 : CSS_PROP_MARGIN(
    1677                 :     margin-left-rtl-source,
    1678                 :     margin_left_rtl_source,
    1679                 :     MarginLeftRTLSource,
    1680                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1681                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1682                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1683                 :     0,
    1684                 :     kBoxPropSourceKTable,
    1685                 :     CSS_PROP_NO_OFFSET,
    1686               0 :     eStyleAnimType_None)
    1687                 : #endif
    1688               0 : CSS_PROP_SHORTHAND(
    1689                 :     margin-right,
    1690                 :     margin_right,
    1691                 :     MarginRight,
    1692                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1693                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1694               0 : CSS_PROP_MARGIN(
    1695                 :     margin-right-value,
    1696                 :     margin_right_value,
    1697                 :     MarginRightValue,
    1698                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1699                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1700                 :         CSS_PROPERTY_REPORT_OTHER_NAME |
    1701                 :         CSS_PROPERTY_STORES_CALC,
    1702                 :     VARIANT_AHLP | VARIANT_CALC, // for internal use
    1703                 :     nsnull,
    1704                 :     offsetof(nsStyleMargin, mMargin),
    1705               0 :     eStyleAnimType_Sides_Right)
    1706               0 : CSS_PROP_MARGIN(
    1707                 :     margin-right-ltr-source,
    1708                 :     margin_right_ltr_source,
    1709                 :     MarginRightLTRSource,
    1710                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1711                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1712                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1713                 :     0,
    1714                 :     kBoxPropSourceKTable,
    1715                 :     CSS_PROP_NO_OFFSET,
    1716               0 :     eStyleAnimType_None)
    1717               0 : CSS_PROP_MARGIN(
    1718                 :     margin-right-rtl-source,
    1719                 :     margin_right_rtl_source,
    1720                 :     MarginRightRTLSource,
    1721                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1722                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1723                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1724                 :     0,
    1725                 :     kBoxPropSourceKTable,
    1726                 :     CSS_PROP_NO_OFFSET,
    1727               0 :     eStyleAnimType_None)
    1728                 : #endif
    1729               0 : CSS_PROP_SHORTHAND(
    1730                 :     -moz-margin-start,
    1731                 :     margin_start,
    1732                 :     CSS_PROP_DOMPROP_PREFIXED(MarginStart),
    1733                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1734                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1735               0 : CSS_PROP_MARGIN(
    1736                 :     margin-start-value,
    1737                 :     margin_start_value,
    1738                 :     MarginStartValue,
    1739                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1740                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1741                 :         CSS_PROPERTY_STORES_CALC,
    1742                 :     VARIANT_AHLP | VARIANT_CALC, // for internal use
    1743                 :     nsnull,
    1744                 :     CSS_PROP_NO_OFFSET,
    1745               0 :     eStyleAnimType_None)
    1746                 : #endif
    1747               0 : CSS_PROP_MARGIN(
    1748                 :     margin-top,
    1749                 :     margin_top,
    1750                 :     MarginTop,
    1751                 :     CSS_PROPERTY_PARSE_VALUE |
    1752                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1753                 :         CSS_PROPERTY_STORES_CALC,
    1754                 :     VARIANT_AHLP | VARIANT_CALC,
    1755                 :     nsnull,
    1756                 :     offsetof(nsStyleMargin, mMargin),
    1757               0 :     eStyleAnimType_Sides_Top)
    1758               0 : CSS_PROP_CONTENT(
    1759                 :     marker-offset,
    1760                 :     marker_offset,
    1761                 :     MarkerOffset,
    1762                 :     CSS_PROPERTY_PARSE_VALUE,
    1763                 :     VARIANT_AHL | VARIANT_CALC,
    1764                 :     nsnull,
    1765                 :     offsetof(nsStyleContent, mMarkerOffset),
    1766               0 :     eStyleAnimType_Coord)
    1767               0 : CSS_PROP_BACKENDONLY(
    1768                 :     marks,
    1769                 :     marks,
    1770                 :     Marks,
    1771                 :     CSS_PROPERTY_PARSE_VALUE |
    1772                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
    1773                 :     0,
    1774                 :     kPageMarksKTable)
    1775               0 : CSS_PROP_POSITION(
    1776                 :     max-height,
    1777                 :     max_height,
    1778                 :     MaxHeight,
    1779                 :     CSS_PROPERTY_PARSE_VALUE |
    1780                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1781                 :         CSS_PROPERTY_STORES_CALC,
    1782                 :     VARIANT_HLPO | VARIANT_CALC,
    1783                 :     nsnull,
    1784                 :     offsetof(nsStylePosition, mMaxHeight),
    1785               0 :     eStyleAnimType_Coord)
    1786               0 : CSS_PROP_POSITION(
    1787                 :     max-width,
    1788                 :     max_width,
    1789                 :     MaxWidth,
    1790                 :     CSS_PROPERTY_PARSE_VALUE |
    1791                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1792                 :         CSS_PROPERTY_STORES_CALC,
    1793                 :     VARIANT_HKLPO | VARIANT_CALC,
    1794                 :     kWidthKTable,
    1795                 :     offsetof(nsStylePosition, mMaxWidth),
    1796               0 :     eStyleAnimType_Coord)
    1797               0 : CSS_PROP_POSITION(
    1798                 :     min-height,
    1799                 :     min_height,
    1800                 :     MinHeight,
    1801                 :     CSS_PROPERTY_PARSE_VALUE |
    1802                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1803                 :         CSS_PROPERTY_STORES_CALC,
    1804                 :     VARIANT_HLP | VARIANT_CALC,
    1805                 :     nsnull,
    1806                 :     offsetof(nsStylePosition, mMinHeight),
    1807               0 :     eStyleAnimType_Coord)
    1808               0 : CSS_PROP_POSITION(
    1809                 :     min-width,
    1810                 :     min_width,
    1811                 :     MinWidth,
    1812                 :     CSS_PROPERTY_PARSE_VALUE |
    1813                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1814                 :         CSS_PROPERTY_STORES_CALC,
    1815                 :     VARIANT_HKLP | VARIANT_CALC,
    1816                 :     kWidthKTable,
    1817                 :     offsetof(nsStylePosition, mMinWidth),
    1818               0 :     eStyleAnimType_Coord)
    1819               0 : CSS_PROP_DISPLAY(
    1820                 :     opacity,
    1821                 :     opacity,
    1822                 :     Opacity,
    1823                 :     CSS_PROPERTY_PARSE_VALUE,
    1824                 :     VARIANT_HN,
    1825                 :     nsnull,
    1826                 :     offsetof(nsStyleDisplay, mOpacity),
    1827               0 :     eStyleAnimType_float) // XXX bug 3935
    1828               0 : CSS_PROP_DISPLAY(
    1829                 :     -moz-orient,
    1830                 :     orient,
    1831                 :     CSS_PROP_DOMPROP_PREFIXED(Orient),
    1832                 :     CSS_PROPERTY_PARSE_VALUE,
    1833                 :     VARIANT_HK,
    1834                 :     kOrientKTable,
    1835                 :     CSS_PROP_NO_OFFSET,
    1836               0 :     eStyleAnimType_None)
    1837               0 : CSS_PROP_BACKENDONLY(
    1838                 :     orphans,
    1839                 :     orphans,
    1840                 :     Orphans,
    1841                 :     CSS_PROPERTY_PARSE_VALUE |
    1842                 :         CSS_PROPERTY_VALUE_AT_LEAST_ONE,
    1843                 :     VARIANT_HI,
    1844                 :     nsnull)
    1845               0 : CSS_PROP_SHORTHAND(
    1846                 :     outline,
    1847                 :     outline,
    1848                 :     Outline,
    1849                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1850               0 : CSS_PROP_OUTLINE(
    1851                 :     outline-color,
    1852                 :     outline_color,
    1853                 :     OutlineColor,
    1854                 :     CSS_PROPERTY_PARSE_VALUE |
    1855                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    1856                 :     VARIANT_HCK,
    1857                 :     kOutlineColorKTable,
    1858                 :     CSS_PROP_NO_OFFSET,
    1859               0 :     eStyleAnimType_Custom)
    1860               0 : CSS_PROP_OUTLINE(
    1861                 :     outline-style,
    1862                 :     outline_style,
    1863                 :     OutlineStyle,
    1864                 :     CSS_PROPERTY_PARSE_VALUE,
    1865                 :     VARIANT_HK,
    1866                 :     kOutlineStyleKTable,
    1867                 :     CSS_PROP_NO_OFFSET,
    1868               0 :     eStyleAnimType_None)
    1869               0 : CSS_PROP_OUTLINE(
    1870                 :     outline-width,
    1871                 :     outline_width,
    1872                 :     OutlineWidth,
    1873                 :     CSS_PROPERTY_PARSE_VALUE |
    1874                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    1875                 :     VARIANT_HKL | VARIANT_CALC,
    1876                 :     kBorderWidthKTable,
    1877                 :     offsetof(nsStyleOutline, mOutlineWidth),
    1878               0 :     eStyleAnimType_Coord)
    1879               0 : CSS_PROP_OUTLINE(
    1880                 :     outline-offset,
    1881                 :     outline_offset,
    1882                 :     OutlineOffset,
    1883                 :     CSS_PROPERTY_PARSE_VALUE,
    1884                 :     VARIANT_HL | VARIANT_CALC,
    1885                 :     nsnull,
    1886                 :     offsetof(nsStyleOutline, mOutlineOffset),
    1887               0 :     eStyleAnimType_nscoord)
    1888               0 : CSS_PROP_SHORTHAND(
    1889                 :     overflow,
    1890                 :     overflow,
    1891                 :     Overflow,
    1892                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1893               0 : CSS_PROP_DISPLAY(
    1894                 :     overflow-x,
    1895                 :     overflow_x,
    1896                 :     OverflowX,
    1897                 :     CSS_PROPERTY_PARSE_VALUE,
    1898                 :     VARIANT_HK,
    1899                 :     kOverflowSubKTable,
    1900                 :     CSS_PROP_NO_OFFSET,
    1901               0 :     eStyleAnimType_None)
    1902               0 : CSS_PROP_DISPLAY(
    1903                 :     overflow-y,
    1904                 :     overflow_y,
    1905                 :     OverflowY,
    1906                 :     CSS_PROPERTY_PARSE_VALUE,
    1907                 :     VARIANT_HK,
    1908                 :     kOverflowSubKTable,
    1909                 :     CSS_PROP_NO_OFFSET,
    1910               0 :     eStyleAnimType_None)
    1911               0 : CSS_PROP_SHORTHAND(
    1912                 :     padding,
    1913                 :     padding,
    1914                 :     Padding,
    1915                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1916               0 : CSS_PROP_PADDING(
    1917                 :     padding-bottom,
    1918                 :     padding_bottom,
    1919                 :     PaddingBottom,
    1920                 :     CSS_PROPERTY_PARSE_VALUE |
    1921                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1922                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1923                 :         CSS_PROPERTY_STORES_CALC,
    1924                 :     VARIANT_HLP | VARIANT_CALC,
    1925                 :     nsnull,
    1926                 :     offsetof(nsStylePadding, mPadding),
    1927               0 :     eStyleAnimType_Sides_Bottom)
    1928               0 : CSS_PROP_SHORTHAND(
    1929                 :     -moz-padding-end,
    1930                 :     padding_end,
    1931                 :     CSS_PROP_DOMPROP_PREFIXED(PaddingEnd),
    1932                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1933                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1934               0 : CSS_PROP_PADDING(
    1935                 :     padding-end-value,
    1936                 :     padding_end_value,
    1937                 :     PaddingEndValue,
    1938                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1939                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1940                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1941                 :         CSS_PROPERTY_STORES_CALC,
    1942                 :     VARIANT_HLP | VARIANT_CALC, // for internal use
    1943                 :     nsnull,
    1944                 :     CSS_PROP_NO_OFFSET,
    1945               0 :     eStyleAnimType_None)
    1946                 : #endif
    1947               0 : CSS_PROP_SHORTHAND(
    1948                 :     padding-left,
    1949                 :     padding_left,
    1950                 :     PaddingLeft,
    1951                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1952                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1953               0 : CSS_PROP_PADDING(
    1954                 :     padding-left-value,
    1955                 :     padding_left_value,
    1956                 :     PaddingLeftValue,
    1957                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1958                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    1959                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1960                 :         CSS_PROPERTY_REPORT_OTHER_NAME |
    1961                 :         CSS_PROPERTY_STORES_CALC,
    1962                 :     VARIANT_HLP | VARIANT_CALC, // for internal use
    1963                 :     nsnull,
    1964                 :     offsetof(nsStylePadding, mPadding),
    1965               0 :     eStyleAnimType_Sides_Left)
    1966               0 : CSS_PROP_PADDING(
    1967                 :     padding-left-ltr-source,
    1968                 :     padding_left_ltr_source,
    1969                 :     PaddingLeftLTRSource,
    1970                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1971                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1972                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1973                 :     0,
    1974                 :     kBoxPropSourceKTable,
    1975                 :     CSS_PROP_NO_OFFSET,
    1976               0 :     eStyleAnimType_None)
    1977               0 : CSS_PROP_PADDING(
    1978                 :     padding-left-rtl-source,
    1979                 :     padding_left_rtl_source,
    1980                 :     PaddingLeftRTLSource,
    1981                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    1982                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    1983                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    1984                 :     0,
    1985                 :     kBoxPropSourceKTable,
    1986                 :     CSS_PROP_NO_OFFSET,
    1987               0 :     eStyleAnimType_None)
    1988                 : #endif
    1989               0 : CSS_PROP_SHORTHAND(
    1990                 :     padding-right,
    1991                 :     padding_right,
    1992                 :     PaddingRight,
    1993                 :     CSS_PROPERTY_PARSE_FUNCTION)
    1994                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    1995               0 : CSS_PROP_PADDING(
    1996                 :     padding-right-value,
    1997                 :     padding_right_value,
    1998                 :     PaddingRightValue,
    1999                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    2000                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    2001                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    2002                 :         CSS_PROPERTY_REPORT_OTHER_NAME |
    2003                 :         CSS_PROPERTY_STORES_CALC,
    2004                 :     VARIANT_HLP | VARIANT_CALC, // for internal use
    2005                 :     nsnull,
    2006                 :     offsetof(nsStylePadding, mPadding),
    2007               0 :     eStyleAnimType_Sides_Right)
    2008               0 : CSS_PROP_PADDING(
    2009                 :     padding-right-ltr-source,
    2010                 :     padding_right_ltr_source,
    2011                 :     PaddingRightLTRSource,
    2012                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    2013                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    2014                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    2015                 :     0,
    2016                 :     kBoxPropSourceKTable,
    2017                 :     CSS_PROP_NO_OFFSET,
    2018               0 :     eStyleAnimType_None)
    2019               0 : CSS_PROP_PADDING(
    2020                 :     padding-right-rtl-source,
    2021                 :     padding_right_rtl_source,
    2022                 :     PaddingRightRTLSource,
    2023                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    2024                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    2025                 :         CSS_PROPERTY_DIRECTIONAL_SOURCE,
    2026                 :     0,
    2027                 :     kBoxPropSourceKTable,
    2028                 :     CSS_PROP_NO_OFFSET,
    2029               0 :     eStyleAnimType_None)
    2030                 : #endif
    2031               0 : CSS_PROP_SHORTHAND(
    2032                 :     -moz-padding-start,
    2033                 :     padding_start,
    2034                 :     CSS_PROP_DOMPROP_PREFIXED(PaddingStart),
    2035                 :     CSS_PROPERTY_PARSE_FUNCTION)
    2036                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    2037               0 : CSS_PROP_PADDING(
    2038                 :     padding-start-value,
    2039                 :     padding_start_value,
    2040                 :     PaddingStartValue,
    2041                 :     CSS_PROPERTY_PARSE_INACCESSIBLE |
    2042                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    2043                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    2044                 :         CSS_PROPERTY_STORES_CALC,
    2045                 :     VARIANT_HLP | VARIANT_CALC, // for internal use
    2046                 :     nsnull,
    2047                 :     CSS_PROP_NO_OFFSET,
    2048               0 :     eStyleAnimType_None)
    2049                 : #endif
    2050               0 : CSS_PROP_PADDING(
    2051                 :     padding-top,
    2052                 :     padding_top,
    2053                 :     PaddingTop,
    2054                 :     CSS_PROPERTY_PARSE_VALUE |
    2055                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    2056                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
    2057                 :         CSS_PROPERTY_STORES_CALC,
    2058                 :     VARIANT_HLP | VARIANT_CALC,
    2059                 :     nsnull,
    2060                 :     offsetof(nsStylePadding, mPadding),
    2061               0 :     eStyleAnimType_Sides_Top)
    2062               0 : CSS_PROP_BACKENDONLY(
    2063                 :     page,
    2064                 :     page,
    2065                 :     Page,
    2066                 :     CSS_PROPERTY_PARSE_VALUE,
    2067                 :     VARIANT_AUTO | VARIANT_IDENTIFIER,
    2068                 :     nsnull)
    2069               0 : CSS_PROP_DISPLAY(
    2070                 :     page-break-after,
    2071                 :     page_break_after,
    2072                 :     PageBreakAfter,
    2073                 :     CSS_PROPERTY_PARSE_VALUE,
    2074                 :     VARIANT_HK,
    2075                 :     kPageBreakKTable,
    2076                 :     CSS_PROP_NO_OFFSET,
    2077               0 :     eStyleAnimType_None) // temp fix for bug 24000
    2078               0 : CSS_PROP_DISPLAY(
    2079                 :     page-break-before,
    2080                 :     page_break_before,
    2081                 :     PageBreakBefore,
    2082                 :     CSS_PROPERTY_PARSE_VALUE,
    2083                 :     VARIANT_HK,
    2084                 :     kPageBreakKTable,
    2085                 :     CSS_PROP_NO_OFFSET,
    2086               0 :     eStyleAnimType_None) // temp fix for bug 24000
    2087               0 : CSS_PROP_BACKENDONLY(
    2088                 :     page-break-inside,
    2089                 :     page_break_inside,
    2090                 :     PageBreakInside,
    2091                 :     CSS_PROPERTY_PARSE_VALUE,
    2092                 :     VARIANT_HK,
    2093                 :     kPageBreakInsideKTable)
    2094               0 : CSS_PROP_VISIBILITY(
    2095                 :     pointer-events,
    2096                 :     pointer_events,
    2097                 :     PointerEvents,
    2098                 :     CSS_PROPERTY_PARSE_VALUE,
    2099                 :     VARIANT_HK,
    2100                 :     kPointerEventsKTable,
    2101                 :     offsetof(nsStyleVisibility, mPointerEvents),
    2102               0 :     eStyleAnimType_EnumU8)
    2103               0 : CSS_PROP_DISPLAY(
    2104                 :     position,
    2105                 :     position,
    2106                 :     Position,
    2107                 :     CSS_PROPERTY_PARSE_VALUE,
    2108                 :     VARIANT_HK,
    2109                 :     kPositionKTable,
    2110                 :     CSS_PROP_NO_OFFSET,
    2111               0 :     eStyleAnimType_None)
    2112               0 : CSS_PROP_QUOTES(
    2113                 :     quotes,
    2114                 :     quotes,
    2115                 :     Quotes,
    2116                 :     CSS_PROPERTY_PARSE_FUNCTION,
    2117                 :     0,
    2118                 :     nsnull,
    2119                 :     CSS_PROP_NO_OFFSET,
    2120               0 :     eStyleAnimType_None)
    2121               0 : CSS_PROP_DISPLAY(
    2122                 :     resize,
    2123                 :     resize,
    2124                 :     Resize,
    2125                 :     CSS_PROPERTY_PARSE_VALUE,
    2126                 :     VARIANT_HK,
    2127                 :     kResizeKTable,
    2128                 :     CSS_PROP_NO_OFFSET,
    2129               0 :     eStyleAnimType_None)
    2130               0 : CSS_PROP_POSITION(
    2131                 :     right,
    2132                 :     right,
    2133                 :     Right,
    2134                 :     CSS_PROPERTY_PARSE_VALUE |
    2135                 :         CSS_PROPERTY_STORES_CALC,
    2136                 :     VARIANT_AHLP | VARIANT_CALC,
    2137                 :     nsnull,
    2138                 :     offsetof(nsStylePosition, mOffset),
    2139                 :     eStyleAnimType_Sides_Right)
    2140               0 : CSS_PROP_BACKENDONLY(
    2141                 :     size,
    2142                 :     size,
    2143                 :     Size,
    2144                 :     CSS_PROPERTY_PARSE_FUNCTION,
    2145                 :     0,
    2146                 :     kPageSizeKTable)
    2147               0 : CSS_PROP_TABLE(
    2148                 :     table-layout,
    2149                 :     table_layout,
    2150                 :     TableLayout,
    2151                 :     CSS_PROPERTY_PARSE_VALUE,
    2152                 :     VARIANT_HK,
    2153                 :     kTableLayoutKTable,
    2154                 :     CSS_PROP_NO_OFFSET,
    2155               0 :     eStyleAnimType_None)
    2156               0 : CSS_PROP_TEXT(
    2157                 :     text-align,
    2158                 :     text_align,
    2159                 :     TextAlign,
    2160                 :     CSS_PROPERTY_PARSE_VALUE,
    2161                 :     // When we support aligning on a string, we can parse text-align
    2162                 :     // as a string....
    2163                 :     VARIANT_HK /* | VARIANT_STRING */,
    2164                 :     kTextAlignKTable,
    2165                 :     CSS_PROP_NO_OFFSET,
    2166               0 :     eStyleAnimType_None)
    2167               0 : CSS_PROP_TEXT(
    2168                 :     -moz-text-align-last,
    2169                 :     text_align_last,
    2170                 :     CSS_PROP_DOMPROP_PREFIXED(TextAlignLast),
    2171                 :     CSS_PROPERTY_PARSE_VALUE,
    2172                 :     VARIANT_HK,
    2173                 :     kTextAlignLastKTable,
    2174                 :     offsetof(nsStyleText, mTextAlignLast),
    2175               0 :     eStyleAnimType_None)
    2176               0 : CSS_PROP_SHORTHAND(
    2177                 :     text-decoration,
    2178                 :     text_decoration,
    2179                 :     TextDecoration,
    2180                 :     CSS_PROPERTY_PARSE_FUNCTION)
    2181               0 : CSS_PROP_TEXTRESET(
    2182                 :     -moz-text-blink,
    2183                 :     text_blink,
    2184                 :     CSS_PROP_DOMPROP_PREFIXED(TextBlink),
    2185                 :     CSS_PROPERTY_PARSE_VALUE |
    2186                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    2187                 :     VARIANT_HK,
    2188                 :     kTextBlinkKTable,
    2189                 :     offsetof(nsStyleTextReset, mTextBlink),
    2190               0 :     eStyleAnimType_EnumU8)
    2191               0 : CSS_PROP_TEXTRESET(
    2192                 :     -moz-text-decoration-color,
    2193                 :     text_decoration_color,
    2194                 :     CSS_PROP_DOMPROP_PREFIXED(TextDecorationColor),
    2195                 :     CSS_PROPERTY_PARSE_VALUE |
    2196                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
    2197                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    2198                 :     VARIANT_HCK,
    2199                 :     kBorderColorKTable,
    2200                 :     CSS_PROP_NO_OFFSET,
    2201               0 :     eStyleAnimType_Custom)
    2202               0 : CSS_PROP_TEXTRESET(
    2203                 :     -moz-text-decoration-line,
    2204                 :     text_decoration_line,
    2205                 :     CSS_PROP_DOMPROP_PREFIXED(TextDecorationLine),
    2206                 :     CSS_PROPERTY_PARSE_VALUE |
    2207                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION |
    2208                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    2209                 :     0,
    2210                 :     kTextDecorationLineKTable,
    2211                 :     offsetof(nsStyleTextReset, mTextDecorationLine),
    2212               0 :     eStyleAnimType_EnumU8)
    2213               0 : CSS_PROP_TEXTRESET(
    2214                 :     -moz-text-decoration-style,
    2215                 :     text_decoration_style,
    2216                 :     CSS_PROP_DOMPROP_PREFIXED(TextDecorationStyle),
    2217                 :     CSS_PROPERTY_PARSE_VALUE |
    2218                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    2219                 :     VARIANT_HK,
    2220                 :     kTextDecorationStyleKTable,
    2221                 :     CSS_PROP_NO_OFFSET,
    2222               0 :     eStyleAnimType_Custom)
    2223               0 : CSS_PROP_TEXT(
    2224                 :     text-indent,
    2225                 :     text_indent,
    2226                 :     TextIndent,
    2227                 :     CSS_PROPERTY_PARSE_VALUE |
    2228                 :         CSS_PROPERTY_STORES_CALC,
    2229                 :     VARIANT_HLP | VARIANT_CALC,
    2230                 :     nsnull,
    2231                 :     offsetof(nsStyleText, mTextIndent),
    2232               0 :     eStyleAnimType_Coord)
    2233               0 : CSS_PROP_TEXTRESET(
    2234                 :     text-overflow,
    2235                 :     text_overflow,
    2236                 :     TextOverflow,
    2237                 :     CSS_PROPERTY_PARSE_VALUE |
    2238                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
    2239                 :     0,
    2240                 :     kTextOverflowKTable,
    2241                 :     offsetof(nsStyleTextReset, mTextOverflow),
    2242               0 :     eStyleAnimType_None)
    2243               0 : CSS_PROP_TEXT(
    2244                 :     text-shadow,
    2245                 :     text_shadow,
    2246                 :     TextShadow,
    2247                 :     CSS_PROPERTY_PARSE_FUNCTION |
    2248                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
    2249                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
    2250                 :         CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
    2251                 :         // NOTE: some components must be nonnegative
    2252                 :     0,
    2253                 :     nsnull,
    2254                 :     offsetof(nsStyleText, mTextShadow),
    2255               0 :     eStyleAnimType_Shadow)
    2256               0 : CSS_PROP_TEXT(
    2257                 :     -moz-text-size-adjust,
    2258                 :     text_size_adjust,
    2259                 :     CSS_PROP_DOMPROP_PREFIXED(TextSizeAdjust),
    2260                 :     CSS_PROPERTY_PARSE_VALUE,
    2261                 :     VARIANT_AUTO | VARIANT_NONE | VARIANT_INHERIT,
    2262                 :     nsnull,
    2263                 :     CSS_PROP_NO_OFFSET,
    2264               0 :     eStyleAnimType_None)
    2265               0 : CSS_PROP_TEXT(
    2266                 :     text-transform,
    2267                 :     text_transform,
    2268                 :     TextTransform,
    2269                 :     CSS_PROPERTY_PARSE_VALUE |
    2270                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    2271                 :     VARIANT_HK,
    2272                 :     kTextTransformKTable,
    2273                 :     CSS_PROP_NO_OFFSET,
    2274               0 :     eStyleAnimType_None)
    2275               0 : CSS_PROP_DISPLAY(
    2276                 :     -moz-transform,
    2277                 :     _moz_transform,
    2278                 :     CSS_PROP_DOMPROP_PREFIXED(Transform),
    2279                 :     CSS_PROPERTY_PARSE_FUNCTION,
    2280                 :     0,
    2281                 :     kDisplayKTable,
    2282                 :     offsetof(nsStyleDisplay, mSpecifiedTransform),
    2283               0 :     eStyleAnimType_Custom)
    2284               0 : CSS_PROP_DISPLAY(
    2285                 :     -moz-transform-origin,
    2286                 :     _moz_transform_origin,
    2287                 :     CSS_PROP_DOMPROP_PREFIXED(TransformOrigin),
    2288                 :     CSS_PROPERTY_PARSE_FUNCTION |
    2289                 :         CSS_PROPERTY_STORES_CALC,
    2290                 :     0,
    2291                 :     kBackgroundPositionKTable,
    2292                 :     CSS_PROP_NO_OFFSET,
    2293               0 :     eStyleAnimType_Custom)
    2294               0 : CSS_PROP_DISPLAY(
    2295                 :     -moz-perspective-origin,
    2296                 :     perspective_origin,
    2297                 :     CSS_PROP_DOMPROP_PREFIXED(PerspectiveOrigin),
    2298                 :     CSS_PROPERTY_PARSE_FUNCTION |
    2299                 :         CSS_PROPERTY_STORES_CALC,
    2300                 :     0,
    2301                 :     kBackgroundPositionKTable,
    2302                 :     CSS_PROP_NO_OFFSET,
    2303               0 :     eStyleAnimType_Custom)
    2304               0 : CSS_PROP_DISPLAY(
    2305                 :     -moz-perspective,
    2306                 :     perspective,
    2307                 :     CSS_PROP_DOMPROP_PREFIXED(Perspective),
    2308                 :     CSS_PROPERTY_PARSE_VALUE,
    2309                 :     VARIANT_NONE | VARIANT_INHERIT | VARIANT_LENGTH | VARIANT_POSITIVE_LENGTH,
    2310                 :     nsnull,
    2311                 :     offsetof(nsStyleDisplay, mChildPerspective),
    2312               0 :     eStyleAnimType_Coord)
    2313               0 : CSS_PROP_DISPLAY(
    2314                 :     -moz-transform-style,
    2315                 :     transform_style,
    2316                 :     CSS_PROP_DOMPROP_PREFIXED(TransformStyle),
    2317                 :     CSS_PROPERTY_PARSE_VALUE,
    2318                 :     VARIANT_HK,
    2319                 :     kTransformStyleKTable,
    2320                 :     CSS_PROP_NO_OFFSET,
    2321               0 :     eStyleAnimType_None)
    2322               0 : CSS_PROP_DISPLAY(
    2323                 :     -moz-backface-visibility,
    2324                 :     backface_visibility,
    2325                 :     CSS_PROP_DOMPROP_PREFIXED(BackfaceVisibility),
    2326                 :     CSS_PROPERTY_PARSE_VALUE,
    2327                 :     VARIANT_HK,
    2328                 :     kBackfaceVisibilityKTable,
    2329                 :     offsetof(nsStyleDisplay, mBackfaceVisibility),
    2330               0 :     eStyleAnimType_None)
    2331               0 : CSS_PROP_POSITION(
    2332                 :     top,
    2333                 :     top,
    2334                 :     Top,
    2335                 :     CSS_PROPERTY_PARSE_VALUE |
    2336                 :         CSS_PROPERTY_STORES_CALC,
    2337                 :     VARIANT_AHLP | VARIANT_CALC,
    2338                 :     nsnull,
    2339                 :     offsetof(nsStylePosition, mOffset),
    2340                 :     eStyleAnimType_Sides_Top)
    2341               0 : CSS_PROP_SHORTHAND(
    2342                 :     -moz-transition,
    2343                 :     transition,
    2344                 :     CSS_PROP_DOMPROP_PREFIXED(Transition),
    2345                 :     CSS_PROPERTY_PARSE_FUNCTION)
    2346               0 : CSS_PROP_DISPLAY(
    2347                 :     -moz-transition-delay,
    2348                 :     transition_delay,
    2349                 :     CSS_PROP_DOMPROP_PREFIXED(TransitionDelay),
    2350                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
    2351                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
    2352                 :     VARIANT_TIME, // used by list parsing
    2353                 :     nsnull,
    2354                 :     CSS_PROP_NO_OFFSET,
    2355                 :     eStyleAnimType_None)
    2356               0 : CSS_PROP_DISPLAY(
    2357                 :     -moz-transition-duration,
    2358                 :     transition_duration,
    2359                 :     CSS_PROP_DOMPROP_PREFIXED(TransitionDuration),
    2360                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
    2361                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
    2362                 :     VARIANT_TIME, // used by list parsing
    2363                 :     nsnull,
    2364                 :     CSS_PROP_NO_OFFSET,
    2365                 :     eStyleAnimType_None)
    2366               0 : CSS_PROP_DISPLAY(
    2367                 :     -moz-transition-property,
    2368                 :     transition_property,
    2369                 :     CSS_PROP_DOMPROP_PREFIXED(TransitionProperty),
    2370                 :     CSS_PROPERTY_PARSE_FUNCTION |
    2371                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
    2372                 :     VARIANT_IDENTIFIER | VARIANT_NONE | VARIANT_ALL, // used only in shorthand
    2373                 :     nsnull,
    2374                 :     CSS_PROP_NO_OFFSET,
    2375                 :     eStyleAnimType_None)
    2376               0 : CSS_PROP_DISPLAY(
    2377                 :     -moz-transition-timing-function,
    2378                 :     transition_timing_function,
    2379                 :     CSS_PROP_DOMPROP_PREFIXED(TransitionTimingFunction),
    2380                 :     CSS_PROPERTY_PARSE_VALUE_LIST |
    2381                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
    2382                 :     VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
    2383                 :     kTransitionTimingFunctionKTable,
    2384                 :     CSS_PROP_NO_OFFSET,
    2385                 :     eStyleAnimType_None)
    2386               0 : CSS_PROP_TEXTRESET(
    2387                 :     unicode-bidi,
    2388                 :     unicode_bidi,
    2389                 :     UnicodeBidi,
    2390                 :     CSS_PROPERTY_PARSE_VALUE |
    2391                 :         CSS_PROPERTY_VALUE_PARSER_FUNCTION,
    2392                 :     0,
    2393                 :     kUnicodeBidiKTable,
    2394                 :     CSS_PROP_NO_OFFSET,
    2395               0 :     eStyleAnimType_None)
    2396               0 : CSS_PROP_USERINTERFACE(
    2397                 :     -moz-user-focus,
    2398                 :     user_focus,
    2399                 :     CSS_PROP_DOMPROP_PREFIXED(UserFocus),
    2400                 :     CSS_PROPERTY_PARSE_VALUE,
    2401                 :     VARIANT_HK,
    2402                 :     kUserFocusKTable,
    2403                 :     CSS_PROP_NO_OFFSET,
    2404               0 :     eStyleAnimType_None) // XXX bug 3935
    2405               0 : CSS_PROP_USERINTERFACE(
    2406                 :     -moz-user-input,
    2407                 :     user_input,
    2408                 :     CSS_PROP_DOMPROP_PREFIXED(UserInput),
    2409                 :     CSS_PROPERTY_PARSE_VALUE,
    2410                 :     VARIANT_HK,
    2411                 :     kUserInputKTable,
    2412                 :     CSS_PROP_NO_OFFSET,
    2413               0 :     eStyleAnimType_None) // XXX ??? // XXX bug 3935
    2414               0 : CSS_PROP_USERINTERFACE(
    2415                 :     -moz-user-modify,
    2416                 :     user_modify,
    2417                 :     CSS_PROP_DOMPROP_PREFIXED(UserModify),
    2418                 :     CSS_PROPERTY_PARSE_VALUE,
    2419                 :     VARIANT_HK,
    2420                 :     kUserModifyKTable,
    2421                 :     CSS_PROP_NO_OFFSET,
    2422               0 :     eStyleAnimType_None) // XXX bug 3935
    2423               0 : CSS_PROP_UIRESET(
    2424                 :     -moz-user-select,
    2425                 :     user_select,
    2426                 :     CSS_PROP_DOMPROP_PREFIXED(UserSelect),
    2427                 :     CSS_PROPERTY_PARSE_VALUE,
    2428                 :     VARIANT_HK,
    2429                 :     kUserSelectKTable,
    2430                 :     CSS_PROP_NO_OFFSET,
    2431               0 :     eStyleAnimType_None) // XXX bug 3935
    2432                 : // NOTE: vertical-align is only supposed to apply to :first-letter when
    2433                 : // 'float' is 'none', but we don't worry about that since it has no
    2434                 : // effect otherwise
    2435               0 : CSS_PROP_TEXTRESET(
    2436                 :     vertical-align,
    2437                 :     vertical_align,
    2438                 :     VerticalAlign,
    2439                 :     CSS_PROPERTY_PARSE_VALUE |
    2440                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
    2441                 :         CSS_PROPERTY_STORES_CALC,
    2442                 :     VARIANT_HKLP | VARIANT_CALC,
    2443                 :     kVerticalAlignKTable,
    2444                 :     offsetof(nsStyleTextReset, mVerticalAlign),
    2445               0 :     eStyleAnimType_Coord)
    2446               0 : CSS_PROP_VISIBILITY(
    2447                 :     visibility,
    2448                 :     visibility,
    2449                 :     Visibility,
    2450                 :     CSS_PROPERTY_PARSE_VALUE,
    2451                 :     VARIANT_HK,
    2452                 :     kVisibilityKTable,
    2453                 :     offsetof(nsStyleVisibility, mVisible),
    2454               0 :     eStyleAnimType_EnumU8)  // reflow for collapse
    2455               0 : CSS_PROP_TEXT(
    2456                 :     white-space,
    2457                 :     white_space,
    2458                 :     WhiteSpace,
    2459                 :     CSS_PROPERTY_PARSE_VALUE,
    2460                 :     VARIANT_HK,
    2461                 :     kWhitespaceKTable,
    2462                 :     CSS_PROP_NO_OFFSET,
    2463               0 :     eStyleAnimType_None)
    2464               0 : CSS_PROP_BACKENDONLY(
    2465                 :     widows,
    2466                 :     widows,
    2467                 :     Widows,
    2468                 :     CSS_PROPERTY_PARSE_VALUE |
    2469                 :         CSS_PROPERTY_VALUE_AT_LEAST_ONE,
    2470                 :     VARIANT_HI,
    2471                 :     nsnull)
    2472               0 : CSS_PROP_POSITION(
    2473                 :     width,
    2474                 :     width,
    2475                 :     Width,
    2476                 :     CSS_PROPERTY_PARSE_VALUE |
    2477                 :         CSS_PROPERTY_VALUE_NONNEGATIVE |
    2478                 :         CSS_PROPERTY_STORES_CALC,
    2479                 :     VARIANT_AHKLP | VARIANT_CALC,
    2480                 :     kWidthKTable,
    2481                 :     offsetof(nsStylePosition, mWidth),
    2482               0 :     eStyleAnimType_Coord)
    2483               0 : CSS_PROP_UIRESET(
    2484                 :     -moz-window-shadow,
    2485                 :     _moz_window_shadow,
    2486                 :     CSS_PROP_DOMPROP_PREFIXED(WindowShadow),
    2487                 :     CSS_PROPERTY_PARSE_VALUE,
    2488                 :     VARIANT_HK,
    2489                 :     kWindowShadowKTable,
    2490                 :     CSS_PROP_NO_OFFSET,
    2491               0 :     eStyleAnimType_None)
    2492               0 : CSS_PROP_TEXT(
    2493                 :     word-spacing,
    2494                 :     word_spacing,
    2495                 :     WordSpacing,
    2496                 :     CSS_PROPERTY_PARSE_VALUE |
    2497                 :         CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE,
    2498                 :     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
    2499                 :     nsnull,
    2500                 :     offsetof(nsStyleText, mWordSpacing),
    2501               0 :     eStyleAnimType_nscoord)
    2502               0 : CSS_PROP_TEXT(
    2503                 :     word-wrap,
    2504                 :     word_wrap,
    2505                 :     WordWrap,
    2506                 :     CSS_PROPERTY_PARSE_VALUE,
    2507                 :     VARIANT_HK,
    2508                 :     kWordwrapKTable,
    2509                 :     CSS_PROP_NO_OFFSET,
    2510               0 :     eStyleAnimType_None)
    2511               0 : CSS_PROP_TEXT(
    2512                 :     -moz-hyphens,
    2513                 :     hyphens,
    2514                 :     CSS_PROP_DOMPROP_PREFIXED(Hyphens),
    2515                 :     CSS_PROPERTY_PARSE_VALUE,
    2516                 :     VARIANT_HK,
    2517                 :     kHyphensKTable,
    2518                 :     CSS_PROP_NO_OFFSET,
    2519               0 :     eStyleAnimType_None)
    2520               0 : CSS_PROP_POSITION(
    2521                 :     z-index,
    2522                 :     z_index,
    2523                 :     ZIndex,
    2524                 :     CSS_PROPERTY_PARSE_VALUE,
    2525                 :     VARIANT_AHI,
    2526                 :     nsnull,
    2527                 :     offsetof(nsStylePosition, mZIndex),
    2528               0 :     eStyleAnimType_Coord)
    2529               0 : CSS_PROP_XUL(
    2530                 :     -moz-box-align,
    2531                 :     box_align,
    2532                 :     CSS_PROP_DOMPROP_PREFIXED(BoxAlign),
    2533                 :     CSS_PROPERTY_PARSE_VALUE,
    2534                 :     VARIANT_HK,
    2535                 :     kBoxAlignKTable,
    2536                 :     CSS_PROP_NO_OFFSET,
    2537               0 :     eStyleAnimType_None) // XXX bug 3935
    2538               0 : CSS_PROP_XUL(
    2539                 :     -moz-box-direction,
    2540                 :     box_direction,
    2541                 :     CSS_PROP_DOMPROP_PREFIXED(BoxDirection),
    2542                 :     CSS_PROPERTY_PARSE_VALUE,
    2543                 :     VARIANT_HK,
    2544                 :     kBoxDirectionKTable,
    2545                 :     CSS_PROP_NO_OFFSET,
    2546               0 :     eStyleAnimType_None) // XXX bug 3935
    2547               0 : CSS_PROP_XUL(
    2548                 :     -moz-box-flex,
    2549                 :     box_flex,
    2550                 :     CSS_PROP_DOMPROP_PREFIXED(BoxFlex),
    2551                 :     CSS_PROPERTY_PARSE_VALUE |
    2552                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    2553                 :     VARIANT_HN,
    2554                 :     nsnull,
    2555                 :     offsetof(nsStyleXUL, mBoxFlex),
    2556               0 :     eStyleAnimType_float) // XXX bug 3935
    2557               0 : CSS_PROP_XUL(
    2558                 :     -moz-box-orient,
    2559                 :     box_orient,
    2560                 :     CSS_PROP_DOMPROP_PREFIXED(BoxOrient),
    2561                 :     CSS_PROPERTY_PARSE_VALUE,
    2562                 :     VARIANT_HK,
    2563                 :     kBoxOrientKTable,
    2564                 :     CSS_PROP_NO_OFFSET,
    2565               0 :     eStyleAnimType_None) // XXX bug 3935
    2566               0 : CSS_PROP_XUL(
    2567                 :     -moz-box-pack,
    2568                 :     box_pack,
    2569                 :     CSS_PROP_DOMPROP_PREFIXED(BoxPack),
    2570                 :     CSS_PROPERTY_PARSE_VALUE,
    2571                 :     VARIANT_HK,
    2572                 :     kBoxPackKTable,
    2573                 :     CSS_PROP_NO_OFFSET,
    2574               0 :     eStyleAnimType_None) // XXX bug 3935
    2575               0 : CSS_PROP_XUL(
    2576                 :     -moz-box-ordinal-group,
    2577                 :     box_ordinal_group,
    2578                 :     CSS_PROP_DOMPROP_PREFIXED(BoxOrdinalGroup),
    2579                 :     CSS_PROPERTY_PARSE_VALUE |
    2580                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    2581                 :     VARIANT_HI,
    2582                 :     nsnull,
    2583                 :     CSS_PROP_NO_OFFSET,
    2584               0 :     eStyleAnimType_None)
    2585               0 : CSS_PROP_XUL(
    2586                 :     -moz-stack-sizing,
    2587                 :     stack_sizing,
    2588                 :     CSS_PROP_DOMPROP_PREFIXED(StackSizing),
    2589                 :     CSS_PROPERTY_PARSE_VALUE,
    2590                 :     VARIANT_HK,
    2591                 :     kStackSizingKTable,
    2592                 :     CSS_PROP_NO_OFFSET,
    2593               0 :     eStyleAnimType_None)
    2594                 : 
    2595                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    2596               0 : CSS_PROP_FONT(
    2597                 :     -moz-script-level,
    2598                 :     script_level,
    2599                 :     ScriptLevel,
    2600                 :     // REVIEW: no range restriction?
    2601                 :     // NOTE: CSSParserImpl::ParseSingleValueProperty only accepts this
    2602                 :     // property when mUnsafeRulesEnabled is set.
    2603                 :     CSS_PROPERTY_PARSE_VALUE,
    2604                 :     // script-level can take Integer or Number values, but only Integer
    2605                 :     // ("relative") values can be specified in a style sheet.
    2606                 :     VARIANT_HI,
    2607                 :     nsnull,
    2608                 :     CSS_PROP_NO_OFFSET,
    2609               0 :     eStyleAnimType_None)
    2610               0 : CSS_PROP_FONT(
    2611                 :     -moz-script-size-multiplier,
    2612                 :     script_size_multiplier,
    2613                 :     ScriptSizeMultiplier,
    2614                 :     // REVIEW: no range restriction?
    2615                 :     CSS_PROPERTY_PARSE_INACCESSIBLE,
    2616                 :     0,
    2617                 :     nsnull,
    2618                 :     CSS_PROP_NO_OFFSET,
    2619               0 :     eStyleAnimType_None)
    2620               0 : CSS_PROP_FONT(
    2621                 :     -moz-script-min-size,
    2622                 :     script_min_size,
    2623                 :     ScriptMinSize,
    2624                 :     // REVIEW: no range restriction?
    2625                 :     CSS_PROPERTY_PARSE_INACCESSIBLE,
    2626                 :     0,
    2627                 :     nsnull,
    2628                 :     CSS_PROP_NO_OFFSET,
    2629               0 :     eStyleAnimType_None)
    2630                 : #endif
    2631                 : 
    2632               0 : CSS_PROP_SVGRESET(
    2633                 :     clip-path,
    2634                 :     clip_path,
    2635                 :     ClipPath,
    2636                 :     CSS_PROPERTY_PARSE_VALUE,
    2637                 :     VARIANT_HUO,
    2638                 :     nsnull,
    2639                 :     CSS_PROP_NO_OFFSET,
    2640               0 :     eStyleAnimType_None)
    2641               0 : CSS_PROP_SVG(
    2642                 :     clip-rule,
    2643                 :     clip_rule,
    2644                 :     ClipRule,
    2645                 :     CSS_PROPERTY_PARSE_VALUE,
    2646                 :     VARIANT_HK,
    2647                 :     kFillRuleKTable,
    2648                 :     offsetof(nsStyleSVG, mClipRule),
    2649               0 :     eStyleAnimType_EnumU8)
    2650               0 : CSS_PROP_SVG(
    2651                 :     color-interpolation,
    2652                 :     color_interpolation,
    2653                 :     ColorInterpolation,
    2654                 :     CSS_PROPERTY_PARSE_VALUE,
    2655                 :     VARIANT_HK,
    2656                 :     kColorInterpolationKTable,
    2657                 :     offsetof(nsStyleSVG, mColorInterpolation),
    2658               0 :     eStyleAnimType_EnumU8)
    2659               0 : CSS_PROP_SVG(
    2660                 :     color-interpolation-filters,
    2661                 :     color_interpolation_filters,
    2662                 :     ColorInterpolationFilters,
    2663                 :     CSS_PROPERTY_PARSE_VALUE,
    2664                 :     VARIANT_HK,
    2665                 :     kColorInterpolationKTable,
    2666                 :     offsetof(nsStyleSVG, mColorInterpolationFilters),
    2667               0 :     eStyleAnimType_EnumU8)
    2668               0 : CSS_PROP_SVGRESET(
    2669                 :     dominant-baseline,
    2670                 :     dominant_baseline,
    2671                 :     DominantBaseline,
    2672                 :     CSS_PROPERTY_PARSE_VALUE,
    2673                 :     VARIANT_HK,
    2674                 :     kDominantBaselineKTable,
    2675                 :     offsetof(nsStyleSVGReset, mDominantBaseline),
    2676               0 :     eStyleAnimType_EnumU8)
    2677               0 : CSS_PROP_SVG(
    2678                 :     fill,
    2679                 :     fill,
    2680                 :     Fill,
    2681                 :     CSS_PROPERTY_PARSE_FUNCTION,
    2682                 :     0,
    2683                 :     nsnull,
    2684                 :     offsetof(nsStyleSVG, mFill),
    2685               0 :     eStyleAnimType_PaintServer)
    2686               0 : CSS_PROP_SVG(
    2687                 :     fill-opacity,
    2688                 :     fill_opacity,
    2689                 :     FillOpacity,
    2690                 :     CSS_PROPERTY_PARSE_VALUE,
    2691                 :     VARIANT_HN,
    2692                 :     nsnull,
    2693                 :     offsetof(nsStyleSVG, mFillOpacity),
    2694               0 :     eStyleAnimType_float)
    2695               0 : CSS_PROP_SVG(
    2696                 :     fill-rule,
    2697                 :     fill_rule,
    2698                 :     FillRule,
    2699                 :     CSS_PROPERTY_PARSE_VALUE,
    2700                 :     VARIANT_HK,
    2701                 :     kFillRuleKTable,
    2702                 :     offsetof(nsStyleSVG, mFillRule),
    2703               0 :     eStyleAnimType_EnumU8)
    2704               0 : CSS_PROP_SVGRESET(
    2705                 :     filter,
    2706                 :     filter,
    2707                 :     Filter,
    2708                 :     CSS_PROPERTY_PARSE_VALUE,
    2709                 :     VARIANT_HUO,
    2710                 :     nsnull,
    2711                 :     CSS_PROP_NO_OFFSET,
    2712               0 :     eStyleAnimType_None)
    2713               0 : CSS_PROP_SVGRESET(
    2714                 :     flood-color,
    2715                 :     flood_color,
    2716                 :     FloodColor,
    2717                 :     CSS_PROPERTY_PARSE_VALUE,
    2718                 :     VARIANT_HC,
    2719                 :     nsnull,
    2720                 :     offsetof(nsStyleSVGReset, mFloodColor),
    2721               0 :     eStyleAnimType_Color)
    2722               0 : CSS_PROP_SVGRESET(
    2723                 :     flood-opacity,
    2724                 :     flood_opacity,
    2725                 :     FloodOpacity,
    2726                 :     CSS_PROPERTY_PARSE_VALUE,
    2727                 :     VARIANT_HN,
    2728                 :     nsnull,
    2729                 :     offsetof(nsStyleSVGReset, mFloodOpacity),
    2730               0 :     eStyleAnimType_float)
    2731               0 : CSS_PROP_SVG(
    2732                 :     image-rendering,
    2733                 :     image_rendering,
    2734                 :     ImageRendering,
    2735                 :     CSS_PROPERTY_PARSE_VALUE,
    2736                 :     VARIANT_HK,
    2737                 :     kImageRenderingKTable,
    2738                 :     offsetof(nsStyleSVG, mImageRendering),
    2739               0 :     eStyleAnimType_EnumU8)
    2740               0 : CSS_PROP_SVGRESET(
    2741                 :     lighting-color,
    2742                 :     lighting_color,
    2743                 :     LightingColor,
    2744                 :     CSS_PROPERTY_PARSE_VALUE,
    2745                 :     VARIANT_HC,
    2746                 :     nsnull,
    2747                 :     offsetof(nsStyleSVGReset, mLightingColor),
    2748               0 :     eStyleAnimType_Color)
    2749               0 : CSS_PROP_SHORTHAND(
    2750                 :     marker,
    2751                 :     marker,
    2752                 :     Marker,
    2753                 :     CSS_PROPERTY_PARSE_FUNCTION)
    2754               0 : CSS_PROP_SVG(
    2755                 :     marker-end,
    2756                 :     marker_end,
    2757                 :     MarkerEnd,
    2758                 :     CSS_PROPERTY_PARSE_VALUE,
    2759                 :     VARIANT_HUO,
    2760                 :     nsnull,
    2761                 :     CSS_PROP_NO_OFFSET,
    2762               0 :     eStyleAnimType_None)
    2763               0 : CSS_PROP_SVG(
    2764                 :     marker-mid,
    2765                 :     marker_mid,
    2766                 :     MarkerMid,
    2767                 :     CSS_PROPERTY_PARSE_VALUE,
    2768                 :     VARIANT_HUO,
    2769                 :     nsnull,
    2770                 :     CSS_PROP_NO_OFFSET,
    2771               0 :     eStyleAnimType_None)
    2772               0 : CSS_PROP_SVG(
    2773                 :     marker-start,
    2774                 :     marker_start,
    2775                 :     MarkerStart,
    2776                 :     CSS_PROPERTY_PARSE_VALUE,
    2777                 :     VARIANT_HUO,
    2778                 :     nsnull,
    2779                 :     CSS_PROP_NO_OFFSET,
    2780               0 :     eStyleAnimType_None)
    2781               0 : CSS_PROP_SVGRESET(
    2782                 :     mask,
    2783                 :     mask,
    2784                 :     Mask,
    2785                 :     CSS_PROPERTY_PARSE_VALUE,
    2786                 :     VARIANT_HUO,
    2787                 :     nsnull,
    2788                 :     CSS_PROP_NO_OFFSET,
    2789               0 :     eStyleAnimType_None)
    2790               0 : CSS_PROP_SVG(
    2791                 :     shape-rendering,
    2792                 :     shape_rendering,
    2793                 :     ShapeRendering,
    2794                 :     CSS_PROPERTY_PARSE_VALUE,
    2795                 :     VARIANT_HK,
    2796                 :     kShapeRenderingKTable,
    2797                 :     offsetof(nsStyleSVG, mShapeRendering),
    2798               0 :     eStyleAnimType_EnumU8)
    2799               0 : CSS_PROP_SVGRESET(
    2800                 :     stop-color,
    2801                 :     stop_color,
    2802                 :     StopColor,
    2803                 :     CSS_PROPERTY_PARSE_VALUE,
    2804                 :     VARIANT_HC,
    2805                 :     nsnull,
    2806                 :     offsetof(nsStyleSVGReset, mStopColor),
    2807               0 :     eStyleAnimType_Color)
    2808               0 : CSS_PROP_SVGRESET(
    2809                 :     stop-opacity,
    2810                 :     stop_opacity,
    2811                 :     StopOpacity,
    2812                 :     CSS_PROPERTY_PARSE_VALUE,
    2813                 :     VARIANT_HN,
    2814                 :     nsnull,
    2815                 :     offsetof(nsStyleSVGReset, mStopOpacity),
    2816               0 :     eStyleAnimType_float)
    2817               0 : CSS_PROP_SVG(
    2818                 :     stroke,
    2819                 :     stroke,
    2820                 :     Stroke,
    2821                 :     CSS_PROPERTY_PARSE_FUNCTION,
    2822                 :     0,
    2823                 :     nsnull,
    2824                 :     offsetof(nsStyleSVG, mStroke),
    2825               0 :     eStyleAnimType_PaintServer)
    2826               0 : CSS_PROP_SVG(
    2827                 :     stroke-dasharray,
    2828                 :     stroke_dasharray,
    2829                 :     StrokeDasharray,
    2830                 :     CSS_PROPERTY_PARSE_FUNCTION |
    2831                 :         CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
    2832                 :         // NOTE: Internal values have range restrictions.
    2833                 :     0,
    2834                 :     nsnull,
    2835                 :     CSS_PROP_NO_OFFSET, /* property stored in 2 separate members */
    2836               0 :     eStyleAnimType_Custom)
    2837               0 : CSS_PROP_SVG(
    2838                 :     stroke-dashoffset,
    2839                 :     stroke_dashoffset,
    2840                 :     StrokeDashoffset,
    2841                 :     CSS_PROPERTY_PARSE_VALUE,
    2842                 :     VARIANT_HLPN,
    2843                 :     nsnull,
    2844                 :     offsetof(nsStyleSVG, mStrokeDashoffset),
    2845               0 :     eStyleAnimType_Coord)
    2846               0 : CSS_PROP_SVG(
    2847                 :     stroke-linecap,
    2848                 :     stroke_linecap,
    2849                 :     StrokeLinecap,
    2850                 :     CSS_PROPERTY_PARSE_VALUE,
    2851                 :     VARIANT_HK,
    2852                 :     kStrokeLinecapKTable,
    2853                 :     offsetof(nsStyleSVG, mStrokeLinecap),
    2854               0 :     eStyleAnimType_EnumU8)
    2855               0 : CSS_PROP_SVG(
    2856                 :     stroke-linejoin,
    2857                 :     stroke_linejoin,
    2858                 :     StrokeLinejoin,
    2859                 :     CSS_PROPERTY_PARSE_VALUE,
    2860                 :     VARIANT_HK,
    2861                 :     kStrokeLinejoinKTable,
    2862                 :     offsetof(nsStyleSVG, mStrokeLinejoin),
    2863               0 :     eStyleAnimType_EnumU8)
    2864               0 : CSS_PROP_SVG(
    2865                 :     stroke-miterlimit,
    2866                 :     stroke_miterlimit,
    2867                 :     StrokeMiterlimit,
    2868                 :     CSS_PROPERTY_PARSE_VALUE |
    2869                 :         CSS_PROPERTY_VALUE_AT_LEAST_ONE,
    2870                 :     VARIANT_HN,
    2871                 :     nsnull,
    2872                 :     offsetof(nsStyleSVG, mStrokeMiterlimit),
    2873               0 :     eStyleAnimType_float)
    2874               0 : CSS_PROP_SVG(
    2875                 :     stroke-opacity,
    2876                 :     stroke_opacity,
    2877                 :     StrokeOpacity,
    2878                 :     CSS_PROPERTY_PARSE_VALUE,
    2879                 :     VARIANT_HN,
    2880                 :     nsnull,
    2881                 :     offsetof(nsStyleSVG, mStrokeOpacity),
    2882               0 :     eStyleAnimType_float)
    2883               0 : CSS_PROP_SVG(
    2884                 :     stroke-width,
    2885                 :     stroke_width,
    2886                 :     StrokeWidth,
    2887                 :     CSS_PROPERTY_PARSE_VALUE |
    2888                 :         CSS_PROPERTY_VALUE_NONNEGATIVE,
    2889                 :     VARIANT_HLPN,
    2890                 :     nsnull,
    2891                 :     offsetof(nsStyleSVG, mStrokeWidth),
    2892               0 :     eStyleAnimType_Coord)
    2893               0 : CSS_PROP_SVG(
    2894                 :     text-anchor,
    2895                 :     text_anchor,
    2896                 :     TextAnchor,
    2897                 :     CSS_PROPERTY_PARSE_VALUE,
    2898                 :     VARIANT_HK,
    2899                 :     kTextAnchorKTable,
    2900                 :     offsetof(nsStyleSVG, mTextAnchor),
    2901               0 :     eStyleAnimType_EnumU8)
    2902               0 : CSS_PROP_SVG(
    2903                 :     text-rendering,
    2904                 :     text_rendering,
    2905                 :     TextRendering,
    2906                 :     CSS_PROPERTY_PARSE_VALUE,
    2907                 :     VARIANT_HK,
    2908                 :     kTextRenderingKTable,
    2909                 :     offsetof(nsStyleSVG, mTextRendering),
    2910               0 :     eStyleAnimType_EnumU8)
    2911                 : 
    2912                 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
    2913                 : // We have a few properties that are in style structs but are not stored
    2914                 : // in style sheets (or nsCSS* structs).  Some fields in these property
    2915                 : // definitions are bogus (e.g., they work for nsRuleData* offsets but
    2916                 : // not nsCSS* offsets).  Callers that care about these bogus fields can
    2917                 : // define CSS_PROP_STUB_NOT_CSS to define a replacement for these
    2918                 : // entries.
    2919                 : #ifdef CSS_PROP_STUB_NOT_CSS
    2920                 : CSS_PROP_STUB_NOT_CSS
    2921                 : CSS_PROP_STUB_NOT_CSS
    2922                 : CSS_PROP_STUB_NOT_CSS
    2923                 : #else
    2924               0 : CSS_PROP_FONT(
    2925                 :     -x-lang,
    2926                 :     _x_lang,
    2927                 :     Lang,
    2928                 :     CSS_PROPERTY_PARSE_INACCESSIBLE,
    2929                 :     0,
    2930                 :     nsnull,
    2931                 :     CSS_PROP_NO_OFFSET,
    2932               0 :     eStyleAnimType_None)
    2933               0 : CSS_PROP_TABLE(
    2934                 :     -x-cols,
    2935                 :     _x_cols,
    2936                 :     Cols,
    2937                 :     CSS_PROPERTY_PARSE_INACCESSIBLE,
    2938                 :     0,
    2939                 :     nsnull,
    2940                 :     CSS_PROP_NO_OFFSET,
    2941               0 :     eStyleAnimType_None)
    2942               0 : CSS_PROP_TABLE(
    2943                 :     -x-span,
    2944                 :     _x_span,
    2945                 :     Span,
    2946                 :     CSS_PROPERTY_PARSE_INACCESSIBLE,
    2947                 :     0,
    2948                 :     nsnull,
    2949                 :     CSS_PROP_NO_OFFSET,
    2950               0 :     eStyleAnimType_None)
    2951                 : #endif /* !defined(CSS_PROP_STUB_NOT_CSS) */
    2952                 : #endif /* !defined(CSS_PROP_EXCLUDE_INTERNAL) */
    2953                 : 
    2954                 : #ifdef USED_CSS_PROP
    2955                 : 
    2956                 : #undef USED_CSS_PROP
    2957                 : #undef CSS_PROP_FONT
    2958                 : #undef CSS_PROP_COLOR
    2959                 : #undef CSS_PROP_BACKGROUND
    2960                 : #undef CSS_PROP_LIST
    2961                 : #undef CSS_PROP_POSITION
    2962                 : #undef CSS_PROP_TEXT
    2963                 : #undef CSS_PROP_TEXTRESET
    2964                 : #undef CSS_PROP_DISPLAY
    2965                 : #undef CSS_PROP_VISIBILITY
    2966                 : #undef CSS_PROP_CONTENT
    2967                 : #undef CSS_PROP_QUOTES
    2968                 : #undef CSS_PROP_USERINTERFACE
    2969                 : #undef CSS_PROP_UIRESET
    2970                 : #undef CSS_PROP_TABLE
    2971                 : #undef CSS_PROP_TABLEBORDER
    2972                 : #undef CSS_PROP_MARGIN
    2973                 : #undef CSS_PROP_PADDING
    2974                 : #undef CSS_PROP_BORDER
    2975                 : #undef CSS_PROP_OUTLINE
    2976                 : #undef CSS_PROP_XUL
    2977                 : #undef CSS_PROP_COLUMN
    2978                 : #undef CSS_PROP_SVG
    2979                 : #undef CSS_PROP_SVGRESET
    2980                 : #ifdef DEFINED_CSS_PROP_BACKENDONLY
    2981                 : #undef CSS_PROP_BACKENDONLY
    2982                 : #undef DEFINED_CSS_PROP_BACKENDONLY
    2983                 : #endif
    2984                 : 
    2985                 : #else /* !defined(USED_CSS_PROP) */
    2986                 : 
    2987                 : #ifdef DEFINED_CSS_PROP_FONT
    2988                 : #undef CSS_PROP_FONT
    2989                 : #undef DEFINED_CSS_PROP_FONT
    2990                 : #endif
    2991                 : #ifdef DEFINED_CSS_PROP_COLOR
    2992                 : #undef CSS_PROP_COLOR
    2993                 : #undef DEFINED_CSS_PROP_COLOR
    2994                 : #endif
    2995                 : #ifdef DEFINED_CSS_PROP_BACKGROUND
    2996                 : #undef CSS_PROP_BACKGROUND
    2997                 : #undef DEFINED_CSS_PROP_BACKGROUND
    2998                 : #endif
    2999                 : #ifdef DEFINED_CSS_PROP_LIST
    3000                 : #undef CSS_PROP_LIST
    3001                 : #undef DEFINED_CSS_PROP_LIST
    3002                 : #endif
    3003                 : #ifdef DEFINED_CSS_PROP_POSITION
    3004                 : #undef CSS_PROP_POSITION
    3005                 : #undef DEFINED_CSS_PROP_POSITION
    3006                 : #endif
    3007                 : #ifdef DEFINED_CSS_PROP_TEXT
    3008                 : #undef CSS_PROP_TEXT
    3009                 : #undef DEFINED_CSS_PROP_TETEXTRESETT
    3010                 : #endif
    3011                 : #ifdef DEFINED_CSS_PROP_TEXTRESET
    3012                 : #undef CSS_PROP_TEXTRESET
    3013                 : #undef DEFINED_CSS_PROP_TEDISPLAYTRESET
    3014                 : #endif
    3015                 : #ifdef DEFINED_CSS_PROP_DISPLAY
    3016                 : #undef CSS_PROP_DISPLAY
    3017                 : #undef DEFINED_CSS_PROP_DISPLAY
    3018                 : #endif
    3019                 : #ifdef DEFINED_CSS_PROP_VISIBILITY
    3020                 : #undef CSS_PROP_VISIBILITY
    3021                 : #undef DEFINED_CSS_PROP_VISIBILITY
    3022                 : #endif
    3023                 : #ifdef DEFINED_CSS_PROP_CONTENT
    3024                 : #undef CSS_PROP_CONTENT
    3025                 : #undef DEFINED_CSS_PROP_CONTENT
    3026                 : #endif
    3027                 : #ifdef DEFINED_CSS_PROP_QUOTES
    3028                 : #undef CSS_PROP_QUOTES
    3029                 : #undef DEFINED_CSS_PROP_QUOTES
    3030                 : #endif
    3031                 : #ifdef DEFINED_CSS_PROP_USERINTERFACE
    3032                 : #undef CSS_PROP_USERINTERFACE
    3033                 : #undef DEFINED_CSS_PROP_USERINTERFACE
    3034                 : #endif
    3035                 : #ifdef DEFINED_CSS_PROP_UIRESET
    3036                 : #undef CSS_PROP_UIRESET
    3037                 : #undef DEFINED_CSS_PROP_UIRESET
    3038                 : #endif
    3039                 : #ifdef DEFINED_CSS_PROP_TABLE
    3040                 : #undef CSS_PROP_TABLE
    3041                 : #undef DEFINED_CSS_PROP_TABLE
    3042                 : #endif
    3043                 : #ifdef DEFINED_CSS_PROP_TABLEBORDER
    3044                 : #undef CSS_PROP_TABLEBORDER
    3045                 : #undef DEFINED_CSS_PROP_TABLEBORDER
    3046                 : #endif
    3047                 : #ifdef DEFINED_CSS_PROP_MARGIN
    3048                 : #undef CSS_PROP_MARGIN
    3049                 : #undef DEFINED_CSS_PROP_MARGIN
    3050                 : #endif
    3051                 : #ifdef DEFINED_CSS_PROP_PADDING
    3052                 : #undef CSS_PROP_PADDING
    3053                 : #undef DEFINED_CSS_PROP_PADDING
    3054                 : #endif
    3055                 : #ifdef DEFINED_CSS_PROP_BORDER
    3056                 : #undef CSS_PROP_BORDER
    3057                 : #undef DEFINED_CSS_PROP_BORDER
    3058                 : #endif
    3059                 : #ifdef DEFINED_CSS_PROP_OUTLINE
    3060                 : #undef CSS_PROP_OUTLINE
    3061                 : #undef DEFINED_CSS_PROP_OUTLINE
    3062                 : #endif
    3063                 : #ifdef DEFINED_CSS_PROP_XUL
    3064                 : #undef CSS_PROP_XUL
    3065                 : #undef DEFINED_CSS_PROP_XUL
    3066                 : #endif
    3067                 : #ifdef DEFINED_CSS_PROP_COLUMN
    3068                 : #undef CSS_PROP_COLUMN
    3069                 : #undef DEFINED_CSS_PROP_COLUMN
    3070                 : #endif
    3071                 : #ifdef DEFINED_CSS_PROP_SVG
    3072                 : #undef CSS_PROP_SVG
    3073                 : #undef DEFINED_CSS_PROP_SVG
    3074                 : #endif
    3075                 : #ifdef DEFINED_CSS_PROP_SVGRESET
    3076                 : #undef CSS_PROP_SVGRESET
    3077                 : #undef DEFINED_CSS_PROP_SVGRESET
    3078                 : #endif
    3079                 : #ifdef DEFINED_CSS_PROP_BACKENDONLY
    3080                 : #undef CSS_PROP_BACKENDONLY
    3081                 : #undef DEFINED_CSS_PROP_BACKENDONLY
    3082                 : #endif
    3083                 : 
    3084                 : #endif /* !defined(USED_CSS_PROP) */
    3085                 : 
    3086                 : #ifdef DEFINED_CSS_PROP_SHORTHAND
    3087                 : #undef CSS_PROP_SHORTHAND
    3088                 : #undef DEFINED_CSS_PROP_SHORTHAND
    3089                 : #endif

Generated by: LCOV version 1.7