Line data Source code
1 : /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 : /* This Source Code Form is subject to the terms of the Mozilla Public
3 : * License, v. 2.0. If a copy of the MPL was not distributed with this
4 : * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 :
6 : /*
7 : * a list of all CSS properties with considerable data about them, for
8 : * preprocessing
9 : */
10 :
11 : /******
12 :
13 : This file contains the list of all parsed CSS properties. It is
14 : designed to be used as inline input through the magic of C
15 : preprocessing. All entries must be enclosed in the appropriate
16 : CSS_PROP_* macro which will have cruel and unusual things done to it.
17 : It is recommended (but not strictly necessary) to keep all entries in
18 : alphabetical order.
19 :
20 : The arguments to CSS_PROP, CSS_PROP_LOGICAL and CSS_PROP_* are:
21 :
22 : -. 'name' entries represent a CSS property name and *must* use only
23 : lowercase characters.
24 :
25 : -. 'id' should be the same as 'name' except that all hyphens ('-')
26 : in 'name' are converted to underscores ('_') in 'id'. For properties
27 : on a standards track, any '-moz-' prefix is removed in 'id'. This
28 : lets us do nice things with the macros without having to copy/convert
29 : strings at runtime. These are the names used for the enum values of
30 : the nsCSSPropertyID enumeration defined in nsCSSProps.h.
31 :
32 : -. 'method' is designed to be as input for CSS2Properties and similar
33 : callers. It must always be the same as 'name' except it must use
34 : InterCaps and all hyphens ('-') must be removed. Callers using this
35 : parameter must also define the CSS_PROP_PUBLIC_OR_PRIVATE(publicname_,
36 : privatename_) macro to yield either publicname_ or privatename_.
37 : The names differ in that publicname_ has Moz prefixes where they are
38 : used, and also in CssFloat vs. Float. The caller's choice depends on
39 : whether the use is for internal use such as eCSSProperty_* or
40 : nsRuleData::ValueFor* or external use such as exposing DOM properties.
41 :
42 : -. 'flags', a bitfield containing CSS_PROPERTY_* flags.
43 :
44 : -. 'pref' is the name of a pref that controls whether the property
45 : is enabled. The property is enabled if 'pref' is an empty string,
46 : or if the boolean property whose name is 'pref' is set to true.
47 :
48 : -. 'parsevariant', to be passed to ParseVariant in the parser.
49 :
50 : -. 'kwtable', which is either nullptr or the name of the appropriate
51 : keyword table member of class nsCSSProps, for use in
52 : nsCSSProps::LookupPropertyValue.
53 :
54 : -. 'group_' [used only for CSS_PROP_LOGICAL] is the name of
55 : the logical property group that contains the physical properties
56 : that can be set by this logical property. The name must be one
57 : from nsCSSPropLogicalGroupList.h. For example, this would be
58 : 'BorderColor' for 'border-block-start-color'.
59 :
60 : -. 'stylestruct_' [used only for CSS_PROP and CSS_PROP_LOGICAL, not
61 : CSS_PROP_*] gives the name of the style struct. Can be used to make
62 : nsStyle##stylestruct_ and eStyleStruct_##stylestruct_
63 :
64 : -. 'stylestructoffset_' gives the result of offsetof(nsStyle*,
65 : member). Ignored (and generally CSS_PROP_NO_OFFSET, or -1) for
66 : properties whose animtype_ is eStyleAnimType_None.
67 :
68 : -. 'animtype_' gives the animation type (see nsStyleAnimType) of this
69 : property.
70 :
71 : CSS_PROP_SHORTHAND only takes 1-5.
72 :
73 : CSS_PROP_LOGICAL should be used instead of CSS_PROP_struct when
74 : defining logical properties (which also must be defined with the
75 : CSS_PROPERTY_LOGICAL flag). Logical shorthand properties should still
76 : be defined with CSS_PROP_SHORTHAND.
77 :
78 : ******/
79 :
80 :
81 : /*************************************************************************/
82 :
83 :
84 : // All includers must explicitly define CSS_PROP_SHORTHAND if they
85 : // want it.
86 : #ifndef CSS_PROP_SHORTHAND
87 : #define CSS_PROP_SHORTHAND(name_, id_, method_, flags_, pref_) /* nothing */
88 : #define DEFINED_CSS_PROP_SHORTHAND
89 : #endif
90 :
91 : #define CSS_PROP_DOMPROP_PREFIXED(name_) \
92 : CSS_PROP_PUBLIC_OR_PRIVATE(Moz ## name_, name_)
93 :
94 : #define CSS_PROP_NO_OFFSET (-1)
95 :
96 : // Callers may define CSS_PROP_LIST_EXCLUDE_INTERNAL if they want to
97 : // exclude internal properties that are not represented in the DOM (only
98 : // the DOM style code defines this). All properties defined in an
99 : // #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL section must have the
100 : // CSS_PROPERTY_INTERNAL flag set.
101 :
102 : // When capturing all properties by defining CSS_PROP, callers must also
103 : // define one of the following three macros:
104 : //
105 : // CSS_PROP_LIST_EXCLUDE_LOGICAL
106 : // Does not include logical properties (defined with CSS_PROP_LOGICAL,
107 : // such as margin-inline-start) when capturing properties to CSS_PROP.
108 : //
109 : // CSS_PROP_LIST_INCLUDE_LOGICAL
110 : // Does include logical properties when capturing properties to
111 : // CSS_PROP.
112 : //
113 : // CSS_PROP_LOGICAL
114 : // Captures logical properties separately to CSS_PROP_LOGICAL.
115 : //
116 : // (CSS_PROP_LIST_EXCLUDE_LOGICAL is used for example to ensure
117 : // gPropertyCountInStruct and gPropertyIndexInStruct do not allocate any
118 : // storage to logical properties, since the result of the cascade, stored
119 : // in an nsRuleData, does not need to store both logical and physical
120 : // property values.)
121 :
122 : // Callers may also define CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
123 : // to exclude properties that are not considered to be components of the 'all'
124 : // shorthand property. Currently this excludes 'direction' and 'unicode-bidi',
125 : // as required by the CSS Cascading and Inheritance specification, and any
126 : // internal properties that cannot be changed by using CSS syntax. For example,
127 : // the internal '-moz-system-font' property is not excluded, as it is set by the
128 : // 'font' shorthand, while '-x-lang' is excluded as there is no way to set this
129 : // internal property from a style sheet.
130 :
131 : // A caller who wants all the properties can define the |CSS_PROP|
132 : // macro.
133 : #ifdef CSS_PROP
134 :
135 : #define USED_CSS_PROP
136 : #define CSS_PROP_FONT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Font, stylestructoffset_, animtype_)
137 : #define CSS_PROP_COLOR(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Color, stylestructoffset_, animtype_)
138 : #define CSS_PROP_BACKGROUND(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Background, stylestructoffset_, animtype_)
139 : #define CSS_PROP_LIST(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, List, stylestructoffset_, animtype_)
140 : #define CSS_PROP_POSITION(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Position, stylestructoffset_, animtype_)
141 : #define CSS_PROP_TEXT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Text, stylestructoffset_, animtype_)
142 : #define CSS_PROP_TEXTRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, TextReset, stylestructoffset_, animtype_)
143 : #define CSS_PROP_DISPLAY(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Display, stylestructoffset_, animtype_)
144 : #define CSS_PROP_VISIBILITY(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Visibility, stylestructoffset_, animtype_)
145 : #define CSS_PROP_CONTENT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Content, stylestructoffset_, animtype_)
146 : #define CSS_PROP_USERINTERFACE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, UserInterface, stylestructoffset_, animtype_)
147 : #define CSS_PROP_UIRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, UIReset, stylestructoffset_, animtype_)
148 : #define CSS_PROP_TABLE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Table, stylestructoffset_, animtype_)
149 : #define CSS_PROP_TABLEBORDER(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, TableBorder, stylestructoffset_, animtype_)
150 : #define CSS_PROP_MARGIN(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Margin, stylestructoffset_, animtype_)
151 : #define CSS_PROP_PADDING(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Padding, stylestructoffset_, animtype_)
152 : #define CSS_PROP_BORDER(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Border, stylestructoffset_, animtype_)
153 : #define CSS_PROP_OUTLINE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Outline, stylestructoffset_, animtype_)
154 : #define CSS_PROP_XUL(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, XUL, stylestructoffset_, animtype_)
155 : #define CSS_PROP_COLUMN(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Column, stylestructoffset_, animtype_)
156 : #define CSS_PROP_SVG(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, SVG, stylestructoffset_, animtype_)
157 : #define CSS_PROP_SVGRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, SVGReset, stylestructoffset_, animtype_)
158 : #define CSS_PROP_VARIABLES(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Variables, stylestructoffset_, animtype_)
159 : #define CSS_PROP_EFFECTS(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, Effects, stylestructoffset_, animtype_)
160 :
161 : // And similarly for logical properties. An includer can define
162 : // CSS_PROP_LOGICAL to capture all logical properties, but otherwise they
163 : // are included in CSS_PROP (as long as CSS_PROP_LIST_INCLUDE_LOGICAL is
164 : // defined).
165 : #if defined(CSS_PROP_LOGICAL) && defined(CSS_PROP_LIST_EXCLUDE_LOGICAL) || defined(CSS_PROP_LOGICAL) && defined(CSS_PROP_LIST_INCLUDE_LOGICAL) || defined(CSS_PROP_LIST_EXCLUDE_LOGICAL) && defined(CSS_PROP_LIST_INCLUDE_LOGICAL)
166 : #error Do not define more than one of CSS_PROP_LOGICAL, CSS_PROP_LIST_EXCLUDE_LOGICAL and CSS_PROP_LIST_INCLUDE_LOGICAL when capturing properties using CSS_PROP.
167 : #endif
168 :
169 : #ifndef CSS_PROP_LOGICAL
170 : #ifdef CSS_PROP_LIST_INCLUDE_LOGICAL
171 : #define CSS_PROP_LOGICAL(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, group_, struct_, stylestructoffset_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, struct_, stylestructoffset_, animtype_)
172 : #else
173 : #ifndef CSS_PROP_LIST_EXCLUDE_LOGICAL
174 : #error Must define exactly one of CSS_PROP_LOGICAL, CSS_PROP_LIST_EXCLUDE_LOGICAL and CSS_PROP_LIST_INCLUDE_LOGICAL when capturing properties using CSS_PROP.
175 : #endif
176 : #define CSS_PROP_LOGICAL(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, group_, struct_, stylestructoffset_, animtype_) /* nothing */
177 : #endif
178 : #define DEFINED_CSS_PROP_LOGICAL
179 : #endif
180 :
181 : #else /* !defined(CSS_PROP) */
182 :
183 : // An includer who does not define CSS_PROP can define any or all of the
184 : // per-struct macros that are equivalent to it, and the rest will be
185 : // ignored.
186 :
187 : #if defined(CSS_PROP_LIST_EXCLUDE_LOGICAL) || defined(CSS_PROP_LIST_INCLUDE_LOGICAL)
188 : #error Do not define CSS_PROP_LIST_EXCLUDE_LOGICAL or CSS_PROP_LIST_INCLUDE_LOGICAL when not capturing properties using CSS_PROP.
189 : #endif
190 :
191 : #ifndef CSS_PROP_FONT
192 : #define CSS_PROP_FONT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
193 : #define DEFINED_CSS_PROP_FONT
194 : #endif
195 : #ifndef CSS_PROP_COLOR
196 : #define CSS_PROP_COLOR(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
197 : #define DEFINED_CSS_PROP_COLOR
198 : #endif
199 : #ifndef CSS_PROP_BACKGROUND
200 : #define CSS_PROP_BACKGROUND(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
201 : #define DEFINED_CSS_PROP_BACKGROUND
202 : #endif
203 : #ifndef CSS_PROP_LIST
204 : #define CSS_PROP_LIST(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
205 : #define DEFINED_CSS_PROP_LIST
206 : #endif
207 : #ifndef CSS_PROP_POSITION
208 : #define CSS_PROP_POSITION(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
209 : #define DEFINED_CSS_PROP_POSITION
210 : #endif
211 : #ifndef CSS_PROP_TEXT
212 : #define CSS_PROP_TEXT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
213 : #define DEFINED_CSS_PROP_TEXT
214 : #endif
215 : #ifndef CSS_PROP_TEXTRESET
216 : #define CSS_PROP_TEXTRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
217 : #define DEFINED_CSS_PROP_TEXTRESET
218 : #endif
219 : #ifndef CSS_PROP_DISPLAY
220 : #define CSS_PROP_DISPLAY(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
221 : #define DEFINED_CSS_PROP_DISPLAY
222 : #endif
223 : #ifndef CSS_PROP_VISIBILITY
224 : #define CSS_PROP_VISIBILITY(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
225 : #define DEFINED_CSS_PROP_VISIBILITY
226 : #endif
227 : #ifndef CSS_PROP_CONTENT
228 : #define CSS_PROP_CONTENT(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
229 : #define DEFINED_CSS_PROP_CONTENT
230 : #endif
231 : #ifndef CSS_PROP_USERINTERFACE
232 : #define CSS_PROP_USERINTERFACE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
233 : #define DEFINED_CSS_PROP_USERINTERFACE
234 : #endif
235 : #ifndef CSS_PROP_UIRESET
236 : #define CSS_PROP_UIRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
237 : #define DEFINED_CSS_PROP_UIRESET
238 : #endif
239 : #ifndef CSS_PROP_TABLE
240 : #define CSS_PROP_TABLE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
241 : #define DEFINED_CSS_PROP_TABLE
242 : #endif
243 : #ifndef CSS_PROP_TABLEBORDER
244 : #define CSS_PROP_TABLEBORDER(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
245 : #define DEFINED_CSS_PROP_TABLEBORDER
246 : #endif
247 : #ifndef CSS_PROP_MARGIN
248 : #define CSS_PROP_MARGIN(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
249 : #define DEFINED_CSS_PROP_MARGIN
250 : #endif
251 : #ifndef CSS_PROP_PADDING
252 : #define CSS_PROP_PADDING(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
253 : #define DEFINED_CSS_PROP_PADDING
254 : #endif
255 : #ifndef CSS_PROP_BORDER
256 : #define CSS_PROP_BORDER(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
257 : #define DEFINED_CSS_PROP_BORDER
258 : #endif
259 : #ifndef CSS_PROP_OUTLINE
260 : #define CSS_PROP_OUTLINE(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
261 : #define DEFINED_CSS_PROP_OUTLINE
262 : #endif
263 : #ifndef CSS_PROP_XUL
264 : #define CSS_PROP_XUL(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
265 : #define DEFINED_CSS_PROP_XUL
266 : #endif
267 : #ifndef CSS_PROP_COLUMN
268 : #define CSS_PROP_COLUMN(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
269 : #define DEFINED_CSS_PROP_COLUMN
270 : #endif
271 : #ifndef CSS_PROP_SVG
272 : #define CSS_PROP_SVG(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
273 : #define DEFINED_CSS_PROP_SVG
274 : #endif
275 : #ifndef CSS_PROP_SVGRESET
276 : #define CSS_PROP_SVGRESET(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
277 : #define DEFINED_CSS_PROP_SVGRESET
278 : #endif
279 : #ifndef CSS_PROP_VARIABLES
280 : #define CSS_PROP_VARIABLES(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
281 : #define DEFINED_CSS_PROP_VARIABLES
282 : #endif
283 : #ifndef CSS_PROP_EFFECTS
284 : #define CSS_PROP_EFFECTS(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, stylestructoffset_, animtype_) /* nothing */
285 : #define DEFINED_CSS_PROP_EFFECTS
286 : #endif
287 :
288 : #ifndef CSS_PROP_LOGICAL
289 : #define CSS_PROP_LOGICAL(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, group_, struct_, stylestructoffset_, animtype_) /* nothing */
290 : #define DEFINED_CSS_PROP_LOGICAL
291 : #endif
292 :
293 : #endif /* !defined(CSS_PROP) */
294 :
295 : /*************************************************************************/
296 :
297 : // For notes XXX bug 3935 below, the names being parsed do not correspond
298 : // to the constants used internally. It would be nice to bring the
299 : // constants into line sometime.
300 :
301 : // The parser will refuse to parse properties marked with -x-.
302 :
303 : // Those marked XXX bug 48973 are CSS2 properties that we support
304 : // differently from the spec for UI requirements. If we ever
305 : // support them correctly the old constants need to be renamed and
306 : // new ones should be entered.
307 :
308 : // CSS2.1 section 5.12.1 says that the properties that apply to
309 : // :first-line are: font properties, color properties, background
310 : // properties, 'word-spacing', 'letter-spacing', 'text-decoration',
311 : // 'vertical-align', 'text-transform', and 'line-height'.
312 : //
313 : // We also allow 'text-shadow', which was listed in CSS2 (where the
314 : // property existed).
315 :
316 : // CSS2.1 section 5.12.2 says that the properties that apply to
317 : // :first-letter are: font properties, 'text-decoration',
318 : // 'text-transform', 'letter-spacing', 'word-spacing' (when
319 : // appropriate), 'line-height', 'float', 'vertical-align' (only if
320 : // 'float' is 'none'), margin properties, padding properties, border
321 : // properties, 'color', and background properties. We also allow
322 : // 'text-shadow' (see above) and 'box-shadow' (which is like the
323 : // border properties).
324 :
325 : // Please keep these sorted by property name, ignoring any "-moz-",
326 : // "-webkit-" or "-x-" prefix.
327 :
328 568 : CSS_PROP_POSITION(
329 : align-content,
330 : align_content,
331 : AlignContent,
332 : CSS_PROPERTY_PARSE_FUNCTION,
333 : "",
334 : VARIANT_HK,
335 : kAutoCompletionAlignJustifyContent,
336 : CSS_PROP_NO_OFFSET,
337 : eStyleAnimType_Discrete)
338 568 : CSS_PROP_POSITION(
339 : align-items,
340 : align_items,
341 : AlignItems,
342 : CSS_PROPERTY_PARSE_FUNCTION,
343 : "",
344 : VARIANT_HK,
345 : kAutoCompletionAlignItems,
346 : CSS_PROP_NO_OFFSET,
347 : eStyleAnimType_Discrete)
348 568 : CSS_PROP_POSITION(
349 : align-self,
350 : align_self,
351 : AlignSelf,
352 : CSS_PROPERTY_PARSE_FUNCTION,
353 : "",
354 : VARIANT_HK,
355 : kAutoCompletionAlignJustifySelf,
356 : CSS_PROP_NO_OFFSET,
357 : eStyleAnimType_Discrete)
358 3 : CSS_PROP_SHORTHAND(
359 : all,
360 : all,
361 : All,
362 : CSS_PROPERTY_PARSE_FUNCTION,
363 : "layout.css.all-shorthand.enabled")
364 3 : CSS_PROP_SHORTHAND(
365 : animation,
366 : animation,
367 : Animation,
368 : CSS_PROPERTY_PARSE_FUNCTION,
369 : "")
370 6 : CSS_PROP_DISPLAY(
371 : animation-delay,
372 : animation_delay,
373 : AnimationDelay,
374 : CSS_PROPERTY_PARSE_VALUE_LIST |
375 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
376 : "",
377 : VARIANT_TIME, // used by list parsing
378 : nullptr,
379 : CSS_PROP_NO_OFFSET,
380 : eStyleAnimType_None)
381 6 : CSS_PROP_DISPLAY(
382 : animation-direction,
383 : animation_direction,
384 : AnimationDirection,
385 : CSS_PROPERTY_PARSE_VALUE_LIST |
386 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
387 : "",
388 : VARIANT_KEYWORD, // used by list parsing
389 : kAnimationDirectionKTable,
390 : CSS_PROP_NO_OFFSET,
391 : eStyleAnimType_None)
392 6 : CSS_PROP_DISPLAY(
393 : animation-duration,
394 : animation_duration,
395 : AnimationDuration,
396 : CSS_PROPERTY_PARSE_VALUE_LIST |
397 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
398 : "",
399 : VARIANT_TIME | VARIANT_NONNEGATIVE_DIMENSION, // used by list parsing
400 : nullptr,
401 : CSS_PROP_NO_OFFSET,
402 : eStyleAnimType_None)
403 6 : CSS_PROP_DISPLAY(
404 : animation-fill-mode,
405 : animation_fill_mode,
406 : AnimationFillMode,
407 : CSS_PROPERTY_PARSE_VALUE_LIST |
408 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
409 : "",
410 : VARIANT_KEYWORD, // used by list parsing
411 : kAnimationFillModeKTable,
412 : CSS_PROP_NO_OFFSET,
413 : eStyleAnimType_None)
414 6 : CSS_PROP_DISPLAY(
415 : animation-iteration-count,
416 : animation_iteration_count,
417 : AnimationIterationCount,
418 : CSS_PROPERTY_PARSE_VALUE_LIST |
419 : // nonnegative per
420 : // http://lists.w3.org/Archives/Public/www-style/2011Mar/0355.html
421 : CSS_PROPERTY_VALUE_NONNEGATIVE |
422 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
423 : "",
424 : VARIANT_KEYWORD | VARIANT_NUMBER, // used by list parsing
425 : kAnimationIterationCountKTable,
426 : CSS_PROP_NO_OFFSET,
427 : eStyleAnimType_None)
428 6 : CSS_PROP_DISPLAY(
429 : animation-name,
430 : animation_name,
431 : AnimationName,
432 : CSS_PROPERTY_PARSE_VALUE_LIST |
433 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
434 : "",
435 : // FIXME: The spec should say something about 'inherit' and 'initial'
436 : // not being allowed.
437 : VARIANT_NONE | VARIANT_IDENTIFIER_NO_INHERIT | VARIANT_STRING, // used by list parsing
438 : nullptr,
439 : CSS_PROP_NO_OFFSET,
440 : eStyleAnimType_None)
441 6 : CSS_PROP_DISPLAY(
442 : animation-play-state,
443 : animation_play_state,
444 : AnimationPlayState,
445 : CSS_PROPERTY_PARSE_VALUE_LIST |
446 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
447 : "",
448 : VARIANT_KEYWORD, // used by list parsing
449 : kAnimationPlayStateKTable,
450 : CSS_PROP_NO_OFFSET,
451 : eStyleAnimType_None)
452 6 : CSS_PROP_DISPLAY(
453 : animation-timing-function,
454 : animation_timing_function,
455 : AnimationTimingFunction,
456 : CSS_PROPERTY_PARSE_VALUE_LIST |
457 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
458 : "",
459 : VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
460 : kTransitionTimingFunctionKTable,
461 : CSS_PROP_NO_OFFSET,
462 : eStyleAnimType_None)
463 1348 : CSS_PROP_DISPLAY(
464 : -moz-appearance,
465 : _moz_appearance,
466 : CSS_PROP_DOMPROP_PREFIXED(Appearance),
467 : CSS_PROPERTY_PARSE_VALUE,
468 : "",
469 : VARIANT_HK,
470 : kAppearanceKTable,
471 : CSS_PROP_NO_OFFSET,
472 : eStyleAnimType_Discrete)
473 1348 : CSS_PROP_DISPLAY(
474 : backface-visibility,
475 : backface_visibility,
476 : BackfaceVisibility,
477 : CSS_PROPERTY_PARSE_VALUE,
478 : "",
479 : VARIANT_HK,
480 : kBackfaceVisibilityKTable,
481 : offsetof(nsStyleDisplay, mBackfaceVisibility),
482 : eStyleAnimType_Discrete)
483 3 : CSS_PROP_SHORTHAND(
484 : background,
485 : background,
486 : Background,
487 : CSS_PROPERTY_PARSE_FUNCTION,
488 : "")
489 402 : CSS_PROP_BACKGROUND(
490 : background-attachment,
491 : background_attachment,
492 : BackgroundAttachment,
493 : CSS_PROPERTY_PARSE_VALUE_LIST |
494 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
495 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
496 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
497 : "",
498 : VARIANT_KEYWORD, // used by list parsing
499 : kImageLayerAttachmentKTable,
500 : CSS_PROP_NO_OFFSET,
501 : eStyleAnimType_Discrete)
502 402 : CSS_PROP_BACKGROUND(
503 : background-blend-mode,
504 : background_blend_mode,
505 : BackgroundBlendMode,
506 : CSS_PROPERTY_PARSE_VALUE_LIST |
507 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
508 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
509 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
510 : "layout.css.background-blend-mode.enabled",
511 : VARIANT_KEYWORD, // used by list parsing
512 : kBlendModeKTable,
513 : CSS_PROP_NO_OFFSET,
514 : eStyleAnimType_Discrete)
515 402 : CSS_PROP_BACKGROUND(
516 : background-clip,
517 : background_clip,
518 : BackgroundClip,
519 : CSS_PROPERTY_PARSE_VALUE_LIST |
520 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
521 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
522 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
523 : "",
524 : VARIANT_KEYWORD, // used by list parsing
525 : kBackgroundClipKTable,
526 : CSS_PROP_NO_OFFSET,
527 : eStyleAnimType_Discrete)
528 403 : CSS_PROP_BACKGROUND(
529 : background-color,
530 : background_color,
531 : BackgroundColor,
532 : CSS_PROPERTY_PARSE_VALUE |
533 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
534 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
535 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
536 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK,
537 : "",
538 : VARIANT_HC,
539 : nullptr,
540 : offsetof(nsStyleBackground, mBackgroundColor),
541 : eStyleAnimType_ComplexColor)
542 402 : CSS_PROP_BACKGROUND(
543 : background-image,
544 : background_image,
545 : BackgroundImage,
546 : CSS_PROPERTY_PARSE_VALUE_LIST |
547 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
548 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
549 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
550 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
551 : CSS_PROPERTY_START_IMAGE_LOADS,
552 : "",
553 : VARIANT_IMAGE, // used by list parsing
554 : nullptr,
555 : CSS_PROP_NO_OFFSET,
556 : eStyleAnimType_Discrete)
557 402 : CSS_PROP_BACKGROUND(
558 : background-origin,
559 : background_origin,
560 : BackgroundOrigin,
561 : CSS_PROPERTY_PARSE_VALUE_LIST |
562 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
563 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
564 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
565 : "",
566 : VARIANT_KEYWORD, // used by list parsing
567 : kBackgroundOriginKTable,
568 : CSS_PROP_NO_OFFSET,
569 : eStyleAnimType_Discrete)
570 3 : CSS_PROP_SHORTHAND(
571 : background-position,
572 : background_position,
573 : BackgroundPosition,
574 : CSS_PROPERTY_PARSE_FUNCTION |
575 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
576 : "")
577 402 : CSS_PROP_BACKGROUND(
578 : background-position-x,
579 : background_position_x,
580 : BackgroundPositionX,
581 : CSS_PROPERTY_PARSE_FUNCTION |
582 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
583 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
584 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
585 : CSS_PROPERTY_STORES_CALC,
586 : "",
587 : 0,
588 : kImageLayerPositionKTable,
589 : CSS_PROP_NO_OFFSET,
590 : eStyleAnimType_Custom)
591 402 : CSS_PROP_BACKGROUND(
592 : background-position-y,
593 : background_position_y,
594 : BackgroundPositionY,
595 : CSS_PROPERTY_PARSE_FUNCTION |
596 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
597 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
598 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
599 : CSS_PROPERTY_STORES_CALC,
600 : "",
601 : 0,
602 : kImageLayerPositionKTable,
603 : CSS_PROP_NO_OFFSET,
604 : eStyleAnimType_Custom)
605 402 : CSS_PROP_BACKGROUND(
606 : background-repeat,
607 : background_repeat,
608 : BackgroundRepeat,
609 : CSS_PROPERTY_PARSE_FUNCTION |
610 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
611 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
612 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
613 : "",
614 : VARIANT_KEYWORD, // used by list parsing
615 : kImageLayerRepeatKTable,
616 : CSS_PROP_NO_OFFSET,
617 : eStyleAnimType_Discrete)
618 402 : CSS_PROP_BACKGROUND(
619 : background-size,
620 : background_size,
621 : BackgroundSize,
622 : CSS_PROPERTY_PARSE_FUNCTION |
623 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
624 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
625 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
626 : CSS_PROPERTY_VALUE_NONNEGATIVE |
627 : CSS_PROPERTY_STORES_CALC,
628 : "",
629 : 0,
630 : kImageLayerSizeKTable,
631 : CSS_PROP_NO_OFFSET,
632 : eStyleAnimType_Custom)
633 1348 : CSS_PROP_DISPLAY(
634 : -moz-binding,
635 : _moz_binding,
636 : CSS_PROP_DOMPROP_PREFIXED(Binding),
637 : CSS_PROPERTY_PARSE_VALUE,
638 : "",
639 : VARIANT_HUO,
640 : nullptr,
641 : CSS_PROP_NO_OFFSET,
642 : eStyleAnimType_None) // XXX bug 3935
643 6 : CSS_PROP_LOGICAL(
644 : block-size,
645 : block_size,
646 : BlockSize,
647 : CSS_PROPERTY_PARSE_VALUE |
648 : CSS_PROPERTY_VALUE_NONNEGATIVE |
649 : CSS_PROPERTY_STORES_CALC |
650 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
651 : CSS_PROPERTY_LOGICAL |
652 : CSS_PROPERTY_LOGICAL_AXIS |
653 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
654 : "",
655 : VARIANT_AHLP | VARIANT_CALC,
656 : nullptr,
657 : Size,
658 : Position,
659 : CSS_PROP_NO_OFFSET,
660 : eStyleAnimType_None)
661 3 : CSS_PROP_SHORTHAND(
662 : border,
663 : border,
664 : Border,
665 : CSS_PROPERTY_PARSE_FUNCTION,
666 : "")
667 3 : CSS_PROP_SHORTHAND(
668 : border-block-end,
669 : border_block_end,
670 : BorderBlockEnd,
671 : CSS_PROPERTY_PARSE_FUNCTION,
672 : "")
673 6 : CSS_PROP_LOGICAL(
674 : border-block-end-color,
675 : border_block_end_color,
676 : BorderBlockEndColor,
677 : CSS_PROPERTY_PARSE_VALUE |
678 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
679 : CSS_PROPERTY_LOGICAL |
680 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
681 : CSS_PROPERTY_LOGICAL_END_EDGE,
682 : "",
683 : VARIANT_HC,
684 : nullptr,
685 : BorderColor,
686 : Border,
687 : CSS_PROP_NO_OFFSET,
688 : eStyleAnimType_None)
689 6 : CSS_PROP_LOGICAL(
690 : border-block-end-style,
691 : border_block_end_style,
692 : BorderBlockEndStyle,
693 : CSS_PROPERTY_PARSE_VALUE |
694 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
695 : CSS_PROPERTY_LOGICAL |
696 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
697 : CSS_PROPERTY_LOGICAL_END_EDGE,
698 : "",
699 : VARIANT_HK,
700 : kBorderStyleKTable,
701 : BorderStyle,
702 : Border,
703 : CSS_PROP_NO_OFFSET,
704 : eStyleAnimType_None)
705 6 : CSS_PROP_LOGICAL(
706 : border-block-end-width,
707 : border_block_end_width,
708 : BorderBlockEndWidth,
709 : CSS_PROPERTY_PARSE_VALUE |
710 : CSS_PROPERTY_VALUE_NONNEGATIVE |
711 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
712 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
713 : CSS_PROPERTY_LOGICAL |
714 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
715 : CSS_PROPERTY_LOGICAL_END_EDGE,
716 : "",
717 : VARIANT_HKL | VARIANT_CALC,
718 : kBorderWidthKTable,
719 : BorderWidth,
720 : Border,
721 : CSS_PROP_NO_OFFSET,
722 : eStyleAnimType_None)
723 3 : CSS_PROP_SHORTHAND(
724 : border-block-start,
725 : border_block_start,
726 : BorderBlockStart,
727 : CSS_PROPERTY_PARSE_FUNCTION,
728 : "")
729 6 : CSS_PROP_LOGICAL(
730 : border-block-start-color,
731 : border_block_start_color,
732 : BorderBlockStartColor,
733 : CSS_PROPERTY_PARSE_VALUE |
734 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
735 : CSS_PROPERTY_LOGICAL |
736 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
737 : "",
738 : VARIANT_HC,
739 : nullptr,
740 : BorderColor,
741 : Border,
742 : CSS_PROP_NO_OFFSET,
743 : eStyleAnimType_None)
744 6 : CSS_PROP_LOGICAL(
745 : border-block-start-style,
746 : border_block_start_style,
747 : BorderBlockStartStyle,
748 : CSS_PROPERTY_PARSE_VALUE |
749 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
750 : CSS_PROPERTY_LOGICAL |
751 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
752 : "",
753 : VARIANT_HK,
754 : kBorderStyleKTable,
755 : BorderStyle,
756 : Border,
757 : CSS_PROP_NO_OFFSET,
758 : eStyleAnimType_None)
759 6 : CSS_PROP_LOGICAL(
760 : border-block-start-width,
761 : border_block_start_width,
762 : BorderBlockStartWidth,
763 : CSS_PROPERTY_PARSE_VALUE |
764 : CSS_PROPERTY_VALUE_NONNEGATIVE |
765 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
766 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
767 : CSS_PROPERTY_LOGICAL |
768 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
769 : "",
770 : VARIANT_HKL | VARIANT_CALC,
771 : kBorderWidthKTable,
772 : BorderWidth,
773 : Border,
774 : CSS_PROP_NO_OFFSET,
775 : eStyleAnimType_None)
776 3 : CSS_PROP_SHORTHAND(
777 : border-bottom,
778 : border_bottom,
779 : BorderBottom,
780 : CSS_PROPERTY_PARSE_FUNCTION,
781 : "")
782 6 : CSS_PROP_BORDER(
783 : border-bottom-color,
784 : border_bottom_color,
785 : BorderBottomColor,
786 : CSS_PROPERTY_PARSE_VALUE |
787 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
788 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
789 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK,
790 : "",
791 : VARIANT_HC,
792 : nullptr,
793 : offsetof(nsStyleBorder, mBorderBottomColor),
794 : eStyleAnimType_ComplexColor)
795 6 : CSS_PROP_BORDER(
796 : -moz-border-bottom-colors,
797 : _moz_border_bottom_colors,
798 : CSS_PROP_DOMPROP_PREFIXED(BorderBottomColors),
799 : CSS_PROPERTY_PARSE_FUNCTION |
800 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
801 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
802 : "",
803 : 0,
804 : nullptr,
805 : CSS_PROP_NO_OFFSET,
806 : eStyleAnimType_Discrete)
807 6 : CSS_PROP_BORDER(
808 : border-bottom-left-radius,
809 : border_bottom_left_radius,
810 : BorderBottomLeftRadius,
811 : CSS_PROPERTY_PARSE_FUNCTION |
812 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
813 : CSS_PROPERTY_VALUE_NONNEGATIVE |
814 : CSS_PROPERTY_STORES_CALC,
815 : "",
816 : 0,
817 : nullptr,
818 : offsetof(nsStyleBorder, mBorderRadius),
819 : eStyleAnimType_Corner_BottomLeft)
820 6 : CSS_PROP_BORDER(
821 : border-bottom-right-radius,
822 : border_bottom_right_radius,
823 : BorderBottomRightRadius,
824 : CSS_PROPERTY_PARSE_FUNCTION |
825 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
826 : CSS_PROPERTY_VALUE_NONNEGATIVE |
827 : CSS_PROPERTY_STORES_CALC,
828 : "",
829 : 0,
830 : nullptr,
831 : offsetof(nsStyleBorder, mBorderRadius),
832 : eStyleAnimType_Corner_BottomRight)
833 6 : CSS_PROP_BORDER(
834 : border-bottom-style,
835 : border_bottom_style,
836 : BorderBottomStyle,
837 : CSS_PROPERTY_PARSE_VALUE |
838 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
839 : "",
840 : VARIANT_HK,
841 : kBorderStyleKTable,
842 : CSS_PROP_NO_OFFSET,
843 : eStyleAnimType_Discrete) // on/off will need reflow
844 6 : CSS_PROP_BORDER(
845 : border-bottom-width,
846 : border_bottom_width,
847 : BorderBottomWidth,
848 : CSS_PROPERTY_PARSE_VALUE |
849 : CSS_PROPERTY_VALUE_NONNEGATIVE |
850 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
851 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
852 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
853 : "",
854 : VARIANT_HKL | VARIANT_CALC,
855 : kBorderWidthKTable,
856 : CSS_PROP_NO_OFFSET,
857 : eStyleAnimType_Custom)
858 6 : CSS_PROP_TABLEBORDER(
859 : border-collapse,
860 : border_collapse,
861 : BorderCollapse,
862 : CSS_PROPERTY_PARSE_VALUE,
863 : "",
864 : VARIANT_HK,
865 : kBorderCollapseKTable,
866 : CSS_PROP_NO_OFFSET,
867 : eStyleAnimType_Discrete)
868 3 : CSS_PROP_SHORTHAND(
869 : border-color,
870 : border_color,
871 : BorderColor,
872 : CSS_PROPERTY_PARSE_FUNCTION |
873 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK,
874 : "")
875 3 : CSS_PROP_SHORTHAND(
876 : border-image,
877 : border_image,
878 : BorderImage,
879 : CSS_PROPERTY_PARSE_FUNCTION,
880 : "")
881 328 : CSS_PROP_BORDER(
882 : border-image-outset,
883 : border_image_outset,
884 : BorderImageOutset,
885 : CSS_PROPERTY_PARSE_FUNCTION |
886 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
887 : "",
888 : 0,
889 : nullptr,
890 : CSS_PROP_NO_OFFSET,
891 : eStyleAnimType_Discrete)
892 328 : CSS_PROP_BORDER(
893 : border-image-repeat,
894 : border_image_repeat,
895 : BorderImageRepeat,
896 : CSS_PROPERTY_PARSE_FUNCTION |
897 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
898 : "",
899 : 0,
900 : kBorderImageRepeatKTable,
901 : CSS_PROP_NO_OFFSET,
902 : eStyleAnimType_Discrete)
903 328 : CSS_PROP_BORDER(
904 : border-image-slice,
905 : border_image_slice,
906 : BorderImageSlice,
907 : CSS_PROPERTY_PARSE_FUNCTION |
908 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
909 : "",
910 : 0,
911 : kBorderImageSliceKTable,
912 : CSS_PROP_NO_OFFSET,
913 : eStyleAnimType_Discrete)
914 328 : CSS_PROP_BORDER(
915 : border-image-source,
916 : border_image_source,
917 : BorderImageSource,
918 : CSS_PROPERTY_PARSE_VALUE |
919 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
920 : CSS_PROPERTY_START_IMAGE_LOADS,
921 : "",
922 : VARIANT_IMAGE | VARIANT_INHERIT,
923 : nullptr,
924 : CSS_PROP_NO_OFFSET,
925 : eStyleAnimType_Discrete)
926 328 : CSS_PROP_BORDER(
927 : border-image-width,
928 : border_image_width,
929 : BorderImageWidth,
930 : CSS_PROPERTY_PARSE_FUNCTION |
931 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
932 : "",
933 : 0,
934 : nullptr,
935 : CSS_PROP_NO_OFFSET,
936 : eStyleAnimType_Discrete)
937 3 : CSS_PROP_SHORTHAND(
938 : border-inline-end,
939 : border_inline_end,
940 : BorderInlineEnd,
941 : CSS_PROPERTY_PARSE_FUNCTION,
942 : "")
943 6 : CSS_PROP_LOGICAL(
944 : border-inline-end-color,
945 : border_inline_end_color,
946 : BorderInlineEndColor,
947 : CSS_PROPERTY_PARSE_VALUE |
948 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
949 : CSS_PROPERTY_LOGICAL |
950 : CSS_PROPERTY_LOGICAL_END_EDGE,
951 : "",
952 : VARIANT_HC,
953 : nullptr,
954 : BorderColor,
955 : Border,
956 : CSS_PROP_NO_OFFSET,
957 : eStyleAnimType_None)
958 6 : CSS_PROP_LOGICAL(
959 : border-inline-end-style,
960 : border_inline_end_style,
961 : BorderInlineEndStyle,
962 : CSS_PROPERTY_PARSE_VALUE |
963 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
964 : CSS_PROPERTY_LOGICAL |
965 : CSS_PROPERTY_LOGICAL_END_EDGE,
966 : "",
967 : VARIANT_HK,
968 : kBorderStyleKTable,
969 : BorderStyle,
970 : Border,
971 : CSS_PROP_NO_OFFSET,
972 : eStyleAnimType_None)
973 6 : CSS_PROP_LOGICAL(
974 : border-inline-end-width,
975 : border_inline_end_width,
976 : BorderInlineEndWidth,
977 : CSS_PROPERTY_PARSE_VALUE |
978 : CSS_PROPERTY_VALUE_NONNEGATIVE |
979 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
980 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
981 : CSS_PROPERTY_LOGICAL |
982 : CSS_PROPERTY_LOGICAL_END_EDGE,
983 : "",
984 : VARIANT_HKL | VARIANT_CALC,
985 : kBorderWidthKTable,
986 : BorderWidth,
987 : Border,
988 : CSS_PROP_NO_OFFSET,
989 : eStyleAnimType_None)
990 3 : CSS_PROP_SHORTHAND(
991 : border-inline-start,
992 : border_inline_start,
993 : BorderInlineStart,
994 : CSS_PROPERTY_PARSE_FUNCTION,
995 : "")
996 6 : CSS_PROP_LOGICAL(
997 : border-inline-start-color,
998 : border_inline_start_color,
999 : BorderInlineStartColor,
1000 : CSS_PROPERTY_PARSE_VALUE |
1001 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1002 : CSS_PROPERTY_LOGICAL,
1003 : "",
1004 : VARIANT_HC,
1005 : nullptr,
1006 : BorderColor,
1007 : Border,
1008 : CSS_PROP_NO_OFFSET,
1009 : eStyleAnimType_None)
1010 6 : CSS_PROP_LOGICAL(
1011 : border-inline-start-style,
1012 : border_inline_start_style,
1013 : BorderInlineStartStyle,
1014 : CSS_PROPERTY_PARSE_VALUE |
1015 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1016 : CSS_PROPERTY_LOGICAL,
1017 : "",
1018 : VARIANT_HK,
1019 : kBorderStyleKTable,
1020 : BorderStyle,
1021 : Border,
1022 : CSS_PROP_NO_OFFSET,
1023 : eStyleAnimType_None)
1024 6 : CSS_PROP_LOGICAL(
1025 : border-inline-start-width,
1026 : border_inline_start_width,
1027 : BorderInlineStartWidth,
1028 : CSS_PROPERTY_PARSE_VALUE |
1029 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1030 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
1031 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1032 : CSS_PROPERTY_LOGICAL,
1033 : "",
1034 : VARIANT_HKL | VARIANT_CALC,
1035 : kBorderWidthKTable,
1036 : BorderWidth,
1037 : Border,
1038 : CSS_PROP_NO_OFFSET,
1039 : eStyleAnimType_None)
1040 3 : CSS_PROP_SHORTHAND(
1041 : border-left,
1042 : border_left,
1043 : BorderLeft,
1044 : CSS_PROPERTY_PARSE_FUNCTION,
1045 : "")
1046 6 : CSS_PROP_BORDER(
1047 : border-left-color,
1048 : border_left_color,
1049 : BorderLeftColor,
1050 : CSS_PROPERTY_PARSE_VALUE |
1051 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK |
1052 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1053 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1054 : "",
1055 : VARIANT_HC,
1056 : nullptr,
1057 : offsetof(nsStyleBorder, mBorderLeftColor),
1058 : eStyleAnimType_ComplexColor)
1059 6 : CSS_PROP_BORDER(
1060 : -moz-border-left-colors,
1061 : _moz_border_left_colors,
1062 : CSS_PROP_DOMPROP_PREFIXED(BorderLeftColors),
1063 : CSS_PROPERTY_PARSE_FUNCTION |
1064 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1065 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1066 : "",
1067 : 0,
1068 : nullptr,
1069 : CSS_PROP_NO_OFFSET,
1070 : eStyleAnimType_Discrete)
1071 6 : CSS_PROP_BORDER(
1072 : border-left-style,
1073 : border_left_style,
1074 : BorderLeftStyle,
1075 : CSS_PROPERTY_PARSE_VALUE |
1076 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1077 : "",
1078 : VARIANT_HK,
1079 : kBorderStyleKTable,
1080 : CSS_PROP_NO_OFFSET,
1081 : eStyleAnimType_Discrete)
1082 6 : CSS_PROP_BORDER(
1083 : border-left-width,
1084 : border_left_width,
1085 : BorderLeftWidth,
1086 : CSS_PROPERTY_PARSE_VALUE |
1087 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
1088 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1089 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
1090 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1091 : "",
1092 : VARIANT_HKL | VARIANT_CALC,
1093 : kBorderWidthKTable,
1094 : CSS_PROP_NO_OFFSET,
1095 : eStyleAnimType_Custom)
1096 3 : CSS_PROP_SHORTHAND(
1097 : border-radius,
1098 : border_radius,
1099 : BorderRadius,
1100 : CSS_PROPERTY_PARSE_FUNCTION,
1101 : "")
1102 3 : CSS_PROP_SHORTHAND(
1103 : border-right,
1104 : border_right,
1105 : BorderRight,
1106 : CSS_PROPERTY_PARSE_FUNCTION,
1107 : "")
1108 6 : CSS_PROP_BORDER(
1109 : border-right-color,
1110 : border_right_color,
1111 : BorderRightColor,
1112 : CSS_PROPERTY_PARSE_VALUE |
1113 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK |
1114 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1115 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1116 : "",
1117 : VARIANT_HC,
1118 : nullptr,
1119 : offsetof(nsStyleBorder, mBorderRightColor),
1120 : eStyleAnimType_ComplexColor)
1121 6 : CSS_PROP_BORDER(
1122 : -moz-border-right-colors,
1123 : _moz_border_right_colors,
1124 : CSS_PROP_DOMPROP_PREFIXED(BorderRightColors),
1125 : CSS_PROPERTY_PARSE_FUNCTION |
1126 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1127 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1128 : "",
1129 : 0,
1130 : nullptr,
1131 : CSS_PROP_NO_OFFSET,
1132 : eStyleAnimType_Discrete)
1133 6 : CSS_PROP_BORDER(
1134 : border-right-style,
1135 : border_right_style,
1136 : BorderRightStyle,
1137 : CSS_PROPERTY_PARSE_VALUE |
1138 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1139 : "",
1140 : VARIANT_HK,
1141 : kBorderStyleKTable,
1142 : CSS_PROP_NO_OFFSET,
1143 : eStyleAnimType_Discrete)
1144 6 : CSS_PROP_BORDER(
1145 : border-right-width,
1146 : border_right_width,
1147 : BorderRightWidth,
1148 : CSS_PROPERTY_PARSE_VALUE |
1149 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1150 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
1151 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
1152 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1153 : "",
1154 : VARIANT_HKL | VARIANT_CALC,
1155 : kBorderWidthKTable,
1156 : CSS_PROP_NO_OFFSET,
1157 : eStyleAnimType_Custom)
1158 6 : CSS_PROP_TABLEBORDER(
1159 : border-spacing,
1160 : border_spacing,
1161 : BorderSpacing,
1162 : CSS_PROPERTY_PARSE_FUNCTION |
1163 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
1164 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1165 : "",
1166 : 0,
1167 : nullptr,
1168 : CSS_PROP_NO_OFFSET,
1169 : eStyleAnimType_Custom)
1170 3 : CSS_PROP_SHORTHAND(
1171 : border-style,
1172 : border_style,
1173 : BorderStyle,
1174 : CSS_PROPERTY_PARSE_FUNCTION,
1175 : "") // on/off will need reflow
1176 3 : CSS_PROP_SHORTHAND(
1177 : border-top,
1178 : border_top,
1179 : BorderTop,
1180 : CSS_PROPERTY_PARSE_FUNCTION,
1181 : "")
1182 6 : CSS_PROP_BORDER(
1183 : border-top-color,
1184 : border_top_color,
1185 : BorderTopColor,
1186 : CSS_PROPERTY_PARSE_VALUE |
1187 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1188 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
1189 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK,
1190 : "",
1191 : VARIANT_HC,
1192 : nullptr,
1193 : offsetof(nsStyleBorder, mBorderTopColor),
1194 : eStyleAnimType_ComplexColor)
1195 6 : CSS_PROP_BORDER(
1196 : -moz-border-top-colors,
1197 : _moz_border_top_colors,
1198 : CSS_PROP_DOMPROP_PREFIXED(BorderTopColors),
1199 : CSS_PROPERTY_PARSE_FUNCTION |
1200 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1201 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1202 : "",
1203 : 0,
1204 : nullptr,
1205 : CSS_PROP_NO_OFFSET,
1206 : eStyleAnimType_Discrete)
1207 6 : CSS_PROP_BORDER(
1208 : border-top-left-radius,
1209 : border_top_left_radius,
1210 : BorderTopLeftRadius,
1211 : CSS_PROPERTY_PARSE_FUNCTION |
1212 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1213 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1214 : CSS_PROPERTY_STORES_CALC,
1215 : "",
1216 : 0,
1217 : nullptr,
1218 : offsetof(nsStyleBorder, mBorderRadius),
1219 : eStyleAnimType_Corner_TopLeft)
1220 6 : CSS_PROP_BORDER(
1221 : border-top-right-radius,
1222 : border_top_right_radius,
1223 : BorderTopRightRadius,
1224 : CSS_PROPERTY_PARSE_FUNCTION |
1225 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1226 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1227 : CSS_PROPERTY_STORES_CALC,
1228 : "",
1229 : 0,
1230 : nullptr,
1231 : offsetof(nsStyleBorder, mBorderRadius),
1232 : eStyleAnimType_Corner_TopRight)
1233 6 : CSS_PROP_BORDER(
1234 : border-top-style,
1235 : border_top_style,
1236 : BorderTopStyle,
1237 : CSS_PROPERTY_PARSE_VALUE |
1238 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1239 : "",
1240 : VARIANT_HK,
1241 : kBorderStyleKTable,
1242 : CSS_PROP_NO_OFFSET,
1243 : eStyleAnimType_Discrete) // on/off will need reflow
1244 6 : CSS_PROP_BORDER(
1245 : border-top-width,
1246 : border_top_width,
1247 : BorderTopWidth,
1248 : CSS_PROPERTY_PARSE_VALUE |
1249 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1250 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1251 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
1252 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
1253 : "",
1254 : VARIANT_HKL | VARIANT_CALC,
1255 : kBorderWidthKTable,
1256 : CSS_PROP_NO_OFFSET,
1257 : eStyleAnimType_Custom)
1258 3 : CSS_PROP_SHORTHAND(
1259 : border-width,
1260 : border_width,
1261 : BorderWidth,
1262 : CSS_PROPERTY_PARSE_FUNCTION |
1263 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
1264 : "")
1265 6 : CSS_PROP_POSITION(
1266 : bottom,
1267 : bottom,
1268 : Bottom,
1269 : CSS_PROPERTY_PARSE_VALUE |
1270 : CSS_PROPERTY_STORES_CALC |
1271 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
1272 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
1273 : "",
1274 : VARIANT_AHLP | VARIANT_CALC,
1275 : nullptr,
1276 : offsetof(nsStylePosition, mOffset),
1277 : eStyleAnimType_Sides_Bottom)
1278 322 : CSS_PROP_XUL(
1279 : -moz-box-align,
1280 : _moz_box_align,
1281 : CSS_PROP_DOMPROP_PREFIXED(BoxAlign),
1282 : CSS_PROPERTY_PARSE_VALUE,
1283 : "",
1284 : VARIANT_HK,
1285 : kBoxAlignKTable,
1286 : CSS_PROP_NO_OFFSET,
1287 : eStyleAnimType_Discrete) // XXX bug 3935
1288 328 : CSS_PROP_BORDER(
1289 : box-decoration-break,
1290 : box_decoration_break,
1291 : BoxDecorationBreak,
1292 : CSS_PROPERTY_PARSE_VALUE,
1293 : "layout.css.box-decoration-break.enabled",
1294 : VARIANT_HK,
1295 : kBoxDecorationBreakKTable,
1296 : CSS_PROP_NO_OFFSET,
1297 : eStyleAnimType_Discrete)
1298 322 : CSS_PROP_XUL(
1299 : -moz-box-direction,
1300 : _moz_box_direction,
1301 : CSS_PROP_DOMPROP_PREFIXED(BoxDirection),
1302 : CSS_PROPERTY_PARSE_VALUE,
1303 : "",
1304 : VARIANT_HK,
1305 : kBoxDirectionKTable,
1306 : CSS_PROP_NO_OFFSET,
1307 : eStyleAnimType_Discrete) // XXX bug 3935
1308 322 : CSS_PROP_XUL(
1309 : -moz-box-flex,
1310 : _moz_box_flex,
1311 : CSS_PROP_DOMPROP_PREFIXED(BoxFlex),
1312 : CSS_PROPERTY_PARSE_VALUE |
1313 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1314 : "",
1315 : VARIANT_HN,
1316 : nullptr,
1317 : offsetof(nsStyleXUL, mBoxFlex),
1318 : eStyleAnimType_float) // XXX bug 3935
1319 322 : CSS_PROP_XUL(
1320 : -moz-box-ordinal-group,
1321 : _moz_box_ordinal_group,
1322 : CSS_PROP_DOMPROP_PREFIXED(BoxOrdinalGroup),
1323 : CSS_PROPERTY_PARSE_VALUE |
1324 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1325 : "",
1326 : VARIANT_HI,
1327 : nullptr,
1328 : CSS_PROP_NO_OFFSET,
1329 : eStyleAnimType_Discrete)
1330 322 : CSS_PROP_XUL(
1331 : -moz-box-orient,
1332 : _moz_box_orient,
1333 : CSS_PROP_DOMPROP_PREFIXED(BoxOrient),
1334 : CSS_PROPERTY_PARSE_VALUE,
1335 : "",
1336 : VARIANT_HK,
1337 : kBoxOrientKTable,
1338 : CSS_PROP_NO_OFFSET,
1339 : eStyleAnimType_Discrete) // XXX bug 3935
1340 322 : CSS_PROP_XUL(
1341 : -moz-box-pack,
1342 : _moz_box_pack,
1343 : CSS_PROP_DOMPROP_PREFIXED(BoxPack),
1344 : CSS_PROPERTY_PARSE_VALUE,
1345 : "",
1346 : VARIANT_HK,
1347 : kBoxPackKTable,
1348 : CSS_PROP_NO_OFFSET,
1349 : eStyleAnimType_Discrete) // XXX bug 3935
1350 180 : CSS_PROP_EFFECTS(
1351 : box-shadow,
1352 : box_shadow,
1353 : BoxShadow,
1354 : CSS_PROPERTY_PARSE_FUNCTION |
1355 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
1356 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
1357 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1358 : // NOTE: some components must be nonnegative
1359 : "",
1360 : 0,
1361 : kBoxShadowTypeKTable,
1362 : offsetof(nsStyleEffects, mBoxShadow),
1363 : eStyleAnimType_Shadow)
1364 568 : CSS_PROP_POSITION(
1365 : box-sizing,
1366 : box_sizing,
1367 : BoxSizing,
1368 : CSS_PROPERTY_PARSE_VALUE,
1369 : "",
1370 : VARIANT_HK,
1371 : kBoxSizingKTable,
1372 : CSS_PROP_NO_OFFSET,
1373 : eStyleAnimType_Discrete)
1374 6 : CSS_PROP_TABLEBORDER(
1375 : caption-side,
1376 : caption_side,
1377 : CaptionSide,
1378 : CSS_PROPERTY_PARSE_VALUE,
1379 : "",
1380 : VARIANT_HK,
1381 : kCaptionSideKTable,
1382 : CSS_PROP_NO_OFFSET,
1383 : eStyleAnimType_Discrete)
1384 2986 : CSS_PROP_USERINTERFACE(
1385 : caret-color,
1386 : caret_color,
1387 : CaretColor,
1388 : CSS_PROPERTY_PARSE_VALUE |
1389 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1390 : "",
1391 : VARIANT_AUTO | VARIANT_HC,
1392 : nullptr,
1393 : offsetof(nsStyleUserInterface, mCaretColor),
1394 : eStyleAnimType_ComplexColor)
1395 1348 : CSS_PROP_DISPLAY(
1396 : clear,
1397 : clear,
1398 : Clear,
1399 : CSS_PROPERTY_PARSE_VALUE,
1400 : "",
1401 : VARIANT_HK,
1402 : kClearKTable,
1403 : CSS_PROP_NO_OFFSET,
1404 : eStyleAnimType_Discrete)
1405 180 : CSS_PROP_EFFECTS(
1406 : clip,
1407 : clip,
1408 : Clip,
1409 : CSS_PROPERTY_PARSE_FUNCTION |
1410 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
1411 : "",
1412 : 0,
1413 : nullptr,
1414 : offsetof(nsStyleEffects, mClip),
1415 : eStyleAnimType_Custom)
1416 66 : CSS_PROP_SVGRESET(
1417 : clip-path,
1418 : clip_path,
1419 : ClipPath,
1420 : CSS_PROPERTY_PARSE_VALUE |
1421 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
1422 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
1423 : CSS_PROPERTY_STORES_CALC,
1424 : "",
1425 : 0,
1426 : nullptr,
1427 : CSS_PROP_NO_OFFSET,
1428 : eStyleAnimType_Custom)
1429 138 : CSS_PROP_SVG(
1430 : clip-rule,
1431 : clip_rule,
1432 : ClipRule,
1433 : CSS_PROPERTY_PARSE_VALUE,
1434 : "",
1435 : VARIANT_HK,
1436 : kFillRuleKTable,
1437 : CSS_PROP_NO_OFFSET,
1438 : eStyleAnimType_Discrete)
1439 587 : CSS_PROP_COLOR(
1440 : color,
1441 : color,
1442 : Color,
1443 : CSS_PROPERTY_PARSE_VALUE |
1444 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1445 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
1446 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED |
1447 : CSS_PROPERTY_HASHLESS_COLOR_QUIRK,
1448 : "",
1449 : VARIANT_HC,
1450 : nullptr,
1451 : offsetof(nsStyleColor, mColor),
1452 : eStyleAnimType_Color)
1453 290 : CSS_PROP_VISIBILITY(
1454 : color-adjust,
1455 : color_adjust,
1456 : ColorAdjust,
1457 : CSS_PROPERTY_PARSE_VALUE,
1458 : "layout.css.color-adjust.enabled",
1459 : VARIANT_HK,
1460 : kColorAdjustKTable,
1461 : CSS_PROP_NO_OFFSET,
1462 : eStyleAnimType_Discrete)
1463 138 : CSS_PROP_SVG(
1464 : color-interpolation,
1465 : color_interpolation,
1466 : ColorInterpolation,
1467 : CSS_PROPERTY_PARSE_VALUE,
1468 : "",
1469 : VARIANT_HK,
1470 : kColorInterpolationKTable,
1471 : CSS_PROP_NO_OFFSET,
1472 : eStyleAnimType_Discrete)
1473 138 : CSS_PROP_SVG(
1474 : color-interpolation-filters,
1475 : color_interpolation_filters,
1476 : ColorInterpolationFilters,
1477 : CSS_PROPERTY_PARSE_VALUE,
1478 : "",
1479 : VARIANT_HK,
1480 : kColorInterpolationKTable,
1481 : CSS_PROP_NO_OFFSET,
1482 : eStyleAnimType_Discrete)
1483 70 : CSS_PROP_COLUMN(
1484 : column-count,
1485 : column_count,
1486 : ColumnCount,
1487 : CSS_PROPERTY_PARSE_VALUE |
1488 : // Need to reject 0 in addition to negatives. If we accept 0, we
1489 : // need to change NS_STYLE_COLUMN_COUNT_AUTO to something else.
1490 : CSS_PROPERTY_VALUE_AT_LEAST_ONE,
1491 : "",
1492 : VARIANT_AHI,
1493 : nullptr,
1494 : offsetof(nsStyleColumn, mColumnCount),
1495 : eStyleAnimType_Custom)
1496 70 : CSS_PROP_COLUMN(
1497 : column-fill,
1498 : column_fill,
1499 : ColumnFill,
1500 : CSS_PROPERTY_PARSE_VALUE,
1501 : "",
1502 : VARIANT_HK,
1503 : kColumnFillKTable,
1504 : CSS_PROP_NO_OFFSET,
1505 : eStyleAnimType_Discrete)
1506 70 : CSS_PROP_COLUMN(
1507 : column-gap,
1508 : column_gap,
1509 : ColumnGap,
1510 : CSS_PROPERTY_PARSE_VALUE |
1511 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1512 : "",
1513 : VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
1514 : nullptr,
1515 : offsetof(nsStyleColumn, mColumnGap),
1516 : eStyleAnimType_Coord)
1517 3 : CSS_PROP_SHORTHAND(
1518 : column-rule,
1519 : column_rule,
1520 : ColumnRule,
1521 : CSS_PROPERTY_PARSE_FUNCTION,
1522 : "")
1523 70 : CSS_PROP_COLUMN(
1524 : column-rule-color,
1525 : column_rule_color,
1526 : ColumnRuleColor,
1527 : CSS_PROPERTY_PARSE_VALUE |
1528 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
1529 : "",
1530 : VARIANT_HC,
1531 : nullptr,
1532 : offsetof(nsStyleColumn, mColumnRuleColor),
1533 : eStyleAnimType_ComplexColor)
1534 70 : CSS_PROP_COLUMN(
1535 : column-rule-style,
1536 : column_rule_style,
1537 : ColumnRuleStyle,
1538 : CSS_PROPERTY_PARSE_VALUE,
1539 : "",
1540 : VARIANT_HK,
1541 : kBorderStyleKTable,
1542 : CSS_PROP_NO_OFFSET,
1543 : eStyleAnimType_Discrete)
1544 70 : CSS_PROP_COLUMN(
1545 : column-rule-width,
1546 : column_rule_width,
1547 : ColumnRuleWidth,
1548 : CSS_PROPERTY_PARSE_VALUE |
1549 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1550 : "",
1551 : VARIANT_HKL | VARIANT_CALC,
1552 : kBorderWidthKTable,
1553 : CSS_PROP_NO_OFFSET,
1554 : eStyleAnimType_Custom)
1555 70 : CSS_PROP_COLUMN(
1556 : column-span,
1557 : column_span,
1558 : ColumnSpan,
1559 : CSS_PROPERTY_PARSE_VALUE,
1560 : "layout.css.column-span.enabled",
1561 : VARIANT_HK,
1562 : kColumnSpanKTable,
1563 : CSS_PROP_NO_OFFSET,
1564 : eStyleAnimType_Discrete)
1565 70 : CSS_PROP_COLUMN(
1566 : column-width,
1567 : column_width,
1568 : ColumnWidth,
1569 : CSS_PROPERTY_PARSE_VALUE |
1570 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1571 : "",
1572 : VARIANT_AHL | VARIANT_CALC,
1573 : nullptr,
1574 : offsetof(nsStyleColumn, mColumnWidth),
1575 : eStyleAnimType_Coord)
1576 3 : CSS_PROP_SHORTHAND(
1577 : columns,
1578 : columns,
1579 : Columns,
1580 : CSS_PROPERTY_PARSE_FUNCTION,
1581 : "")
1582 1348 : CSS_PROP_DISPLAY(
1583 : contain,
1584 : contain,
1585 : Contain,
1586 : CSS_PROPERTY_PARSE_VALUE |
1587 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
1588 : CSS_PROPERTY_FIXPOS_CB,
1589 : "layout.css.contain.enabled",
1590 : // Does not affect parsing, but is needed for tab completion in devtools:
1591 : VARIANT_HK | VARIANT_NONE,
1592 : kContainKTable,
1593 : CSS_PROP_NO_OFFSET,
1594 : eStyleAnimType_Discrete)
1595 74 : CSS_PROP_CONTENT(
1596 : content,
1597 : content,
1598 : Content,
1599 : CSS_PROPERTY_PARSE_FUNCTION |
1600 : CSS_PROPERTY_START_IMAGE_LOADS,
1601 : "",
1602 : 0,
1603 : kContentKTable,
1604 : CSS_PROP_NO_OFFSET,
1605 : eStyleAnimType_Discrete)
1606 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
1607 138 : CSS_PROP_SVG(
1608 : // Only intended to be used internally by Mozilla, so prefixed.
1609 : -moz-context-properties,
1610 : _moz_context_properties,
1611 : CSS_PROP_DOMPROP_PREFIXED(ContextProperties),
1612 : CSS_PROPERTY_PARSE_FUNCTION |
1613 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
1614 : CSS_PROPERTY_INTERNAL,
1615 : "",
1616 : 0,
1617 : nullptr,
1618 : CSS_PROP_NO_OFFSET,
1619 : eStyleAnimType_None)
1620 98 : CSS_PROP_TEXT(
1621 : -moz-control-character-visibility,
1622 : _moz_control_character_visibility,
1623 : CSS_PROP_DOMPROP_PREFIXED(ControlCharacterVisibility),
1624 : CSS_PROPERTY_INTERNAL |
1625 : CSS_PROPERTY_PARSE_VALUE,
1626 : "",
1627 : VARIANT_HK,
1628 : kControlCharacterVisibilityKTable,
1629 : CSS_PROP_NO_OFFSET,
1630 : eStyleAnimType_None)
1631 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
1632 74 : CSS_PROP_CONTENT(
1633 : counter-increment,
1634 : counter_increment,
1635 : CounterIncrement,
1636 : CSS_PROPERTY_PARSE_FUNCTION,
1637 : "",
1638 : 0,
1639 : nullptr,
1640 : CSS_PROP_NO_OFFSET,
1641 : eStyleAnimType_Discrete) // XXX bug 137285
1642 74 : CSS_PROP_CONTENT(
1643 : counter-reset,
1644 : counter_reset,
1645 : CounterReset,
1646 : CSS_PROPERTY_PARSE_FUNCTION,
1647 : "",
1648 : 0,
1649 : nullptr,
1650 : CSS_PROP_NO_OFFSET,
1651 : eStyleAnimType_Discrete) // XXX bug 137285
1652 2986 : CSS_PROP_USERINTERFACE(
1653 : cursor,
1654 : cursor,
1655 : Cursor,
1656 : CSS_PROPERTY_PARSE_FUNCTION |
1657 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
1658 : CSS_PROPERTY_START_IMAGE_LOADS |
1659 : CSS_PROPERTY_IMAGE_IS_IN_ARRAY_0,
1660 : "",
1661 : 0,
1662 : kCursorKTable,
1663 : CSS_PROP_NO_OFFSET,
1664 : eStyleAnimType_Discrete)
1665 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
1666 295 : CSS_PROP_VISIBILITY(
1667 : direction,
1668 : direction,
1669 : Direction,
1670 : CSS_PROPERTY_PARSE_VALUE,
1671 : "",
1672 : VARIANT_HK,
1673 : kDirectionKTable,
1674 : CSS_PROP_NO_OFFSET,
1675 : eStyleAnimType_Discrete)
1676 : #endif // !defined(CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND)
1677 1348 : CSS_PROP_DISPLAY(
1678 : display,
1679 : display,
1680 : Display,
1681 : CSS_PROPERTY_PARSE_VALUE |
1682 : // This is allowed because we need to make the placeholder
1683 : // pseudo-element an inline-block in the UA stylesheet. It is a block
1684 : // by default.
1685 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1686 : "",
1687 : VARIANT_HK,
1688 : kDisplayKTable,
1689 : offsetof(nsStyleDisplay, mDisplay),
1690 : eStyleAnimType_None)
1691 66 : CSS_PROP_SVGRESET(
1692 : dominant-baseline,
1693 : dominant_baseline,
1694 : DominantBaseline,
1695 : CSS_PROPERTY_PARSE_VALUE,
1696 : "",
1697 : VARIANT_HK,
1698 : kDominantBaselineKTable,
1699 : CSS_PROP_NO_OFFSET,
1700 : eStyleAnimType_Discrete)
1701 6 : CSS_PROP_TABLEBORDER(
1702 : empty-cells,
1703 : empty_cells,
1704 : EmptyCells,
1705 : CSS_PROPERTY_PARSE_VALUE,
1706 : "",
1707 : VARIANT_HK,
1708 : kEmptyCellsKTable,
1709 : CSS_PROP_NO_OFFSET,
1710 : eStyleAnimType_Discrete)
1711 138 : CSS_PROP_SVG(
1712 : fill,
1713 : fill,
1714 : Fill,
1715 : CSS_PROPERTY_PARSE_FUNCTION,
1716 : "",
1717 : 0,
1718 : kContextPatternKTable,
1719 : offsetof(nsStyleSVG, mFill),
1720 : eStyleAnimType_PaintServer)
1721 138 : CSS_PROP_SVG(
1722 : fill-opacity,
1723 : fill_opacity,
1724 : FillOpacity,
1725 : CSS_PROPERTY_PARSE_VALUE,
1726 : "",
1727 : VARIANT_HN | VARIANT_KEYWORD,
1728 : kContextOpacityKTable,
1729 : offsetof(nsStyleSVG, mFillOpacity),
1730 : eStyleAnimType_float)
1731 138 : CSS_PROP_SVG(
1732 : fill-rule,
1733 : fill_rule,
1734 : FillRule,
1735 : CSS_PROPERTY_PARSE_VALUE,
1736 : "",
1737 : VARIANT_HK,
1738 : kFillRuleKTable,
1739 : CSS_PROP_NO_OFFSET,
1740 : eStyleAnimType_Discrete)
1741 180 : CSS_PROP_EFFECTS(
1742 : filter,
1743 : filter,
1744 : Filter,
1745 : CSS_PROPERTY_PARSE_FUNCTION |
1746 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
1747 : CSS_PROPERTY_FIXPOS_CB,
1748 : "",
1749 : 0,
1750 : nullptr,
1751 : CSS_PROP_NO_OFFSET,
1752 : eStyleAnimType_Custom)
1753 3 : CSS_PROP_SHORTHAND(
1754 : flex,
1755 : flex,
1756 : Flex,
1757 : CSS_PROPERTY_PARSE_FUNCTION,
1758 : "")
1759 568 : CSS_PROP_POSITION(
1760 : flex-basis,
1761 : flex_basis,
1762 : FlexBasis,
1763 : CSS_PROPERTY_PARSE_VALUE |
1764 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1765 : CSS_PROPERTY_STORES_CALC,
1766 : "",
1767 : // NOTE: The parsing implementation for the 'flex' shorthand property has
1768 : // its own code to parse each subproperty. It does not depend on the
1769 : // longhand parsing defined here.
1770 : VARIANT_AHKLP | VARIANT_CALC,
1771 : kWidthKTable,
1772 : offsetof(nsStylePosition, mFlexBasis),
1773 : eStyleAnimType_Coord)
1774 568 : CSS_PROP_POSITION(
1775 : flex-direction,
1776 : flex_direction,
1777 : FlexDirection,
1778 : CSS_PROPERTY_PARSE_VALUE,
1779 : "",
1780 : VARIANT_HK,
1781 : kFlexDirectionKTable,
1782 : CSS_PROP_NO_OFFSET,
1783 : eStyleAnimType_Discrete)
1784 3 : CSS_PROP_SHORTHAND(
1785 : flex-flow,
1786 : flex_flow,
1787 : FlexFlow,
1788 : CSS_PROPERTY_PARSE_FUNCTION,
1789 : "")
1790 568 : CSS_PROP_POSITION(
1791 : flex-grow,
1792 : flex_grow,
1793 : FlexGrow,
1794 : CSS_PROPERTY_PARSE_VALUE |
1795 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1796 : "",
1797 : // NOTE: The parsing implementation for the 'flex' shorthand property has
1798 : // its own code to parse each subproperty. It does not depend on the
1799 : // longhand parsing defined here.
1800 : VARIANT_HN,
1801 : nullptr,
1802 : offsetof(nsStylePosition, mFlexGrow),
1803 : eStyleAnimType_float)
1804 568 : CSS_PROP_POSITION(
1805 : flex-shrink,
1806 : flex_shrink,
1807 : FlexShrink,
1808 : CSS_PROPERTY_PARSE_VALUE |
1809 : CSS_PROPERTY_VALUE_NONNEGATIVE,
1810 : "",
1811 : // NOTE: The parsing implementation for the 'flex' shorthand property has
1812 : // its own code to parse each subproperty. It does not depend on the
1813 : // longhand parsing defined here.
1814 : VARIANT_HN,
1815 : nullptr,
1816 : offsetof(nsStylePosition, mFlexShrink),
1817 : eStyleAnimType_float)
1818 568 : CSS_PROP_POSITION(
1819 : flex-wrap,
1820 : flex_wrap,
1821 : FlexWrap,
1822 : CSS_PROPERTY_PARSE_VALUE,
1823 : "",
1824 : VARIANT_HK,
1825 : kFlexWrapKTable,
1826 : CSS_PROP_NO_OFFSET,
1827 : eStyleAnimType_Discrete)
1828 1348 : CSS_PROP_DISPLAY(
1829 : float,
1830 : float_,
1831 : CSS_PROP_PUBLIC_OR_PRIVATE(CssFloat, Float),
1832 : CSS_PROPERTY_PARSE_VALUE |
1833 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
1834 : "",
1835 : VARIANT_HK,
1836 : kFloatKTable,
1837 : CSS_PROP_NO_OFFSET,
1838 : eStyleAnimType_Discrete)
1839 328 : CSS_PROP_BORDER(
1840 : -moz-float-edge,
1841 : _moz_float_edge,
1842 : CSS_PROP_DOMPROP_PREFIXED(FloatEdge),
1843 : CSS_PROPERTY_PARSE_VALUE,
1844 : "",
1845 : VARIANT_HK,
1846 : kFloatEdgeKTable,
1847 : CSS_PROP_NO_OFFSET,
1848 : eStyleAnimType_Discrete) // XXX bug 3935
1849 66 : CSS_PROP_SVGRESET(
1850 : flood-color,
1851 : flood_color,
1852 : FloodColor,
1853 : CSS_PROPERTY_PARSE_VALUE,
1854 : "",
1855 : VARIANT_HC,
1856 : nullptr,
1857 : offsetof(nsStyleSVGReset, mFloodColor),
1858 : eStyleAnimType_Color)
1859 66 : CSS_PROP_SVGRESET(
1860 : flood-opacity,
1861 : flood_opacity,
1862 : FloodOpacity,
1863 : CSS_PROPERTY_PARSE_VALUE,
1864 : "",
1865 : VARIANT_HN,
1866 : nullptr,
1867 : offsetof(nsStyleSVGReset, mFloodOpacity),
1868 : eStyleAnimType_float)
1869 3 : CSS_PROP_SHORTHAND(
1870 : font,
1871 : font,
1872 : Font,
1873 : CSS_PROPERTY_PARSE_FUNCTION,
1874 : "")
1875 54 : CSS_PROP_FONT(
1876 : font-family,
1877 : font_family,
1878 : FontFamily,
1879 : CSS_PROPERTY_PARSE_VALUE |
1880 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
1881 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1882 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1883 : "",
1884 : 0,
1885 : nullptr,
1886 : CSS_PROP_NO_OFFSET,
1887 : eStyleAnimType_Discrete)
1888 30 : CSS_PROP_FONT(
1889 : font-feature-settings,
1890 : font_feature_settings,
1891 : FontFeatureSettings,
1892 : CSS_PROPERTY_PARSE_VALUE |
1893 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
1894 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1895 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1896 : "",
1897 : 0,
1898 : nullptr,
1899 : CSS_PROP_NO_OFFSET,
1900 : eStyleAnimType_Discrete)
1901 30 : CSS_PROP_FONT(
1902 : font-kerning,
1903 : font_kerning,
1904 : FontKerning,
1905 : CSS_PROPERTY_PARSE_VALUE |
1906 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1907 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1908 : "",
1909 : VARIANT_HK,
1910 : kFontKerningKTable,
1911 : CSS_PROP_NO_OFFSET,
1912 : eStyleAnimType_Discrete)
1913 30 : CSS_PROP_FONT(
1914 : font-language-override,
1915 : font_language_override,
1916 : FontLanguageOverride,
1917 : CSS_PROPERTY_PARSE_VALUE |
1918 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1919 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1920 : "",
1921 : VARIANT_NORMAL | VARIANT_INHERIT | VARIANT_STRING,
1922 : nullptr,
1923 : CSS_PROP_NO_OFFSET,
1924 : eStyleAnimType_Discrete)
1925 1310 : CSS_PROP_FONT(
1926 : font-size,
1927 : font_size,
1928 : FontSize,
1929 : CSS_PROPERTY_PARSE_VALUE |
1930 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1931 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1932 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
1933 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
1934 : "",
1935 : VARIANT_HKLP | VARIANT_SYSFONT | VARIANT_CALC,
1936 : kFontSizeKTable,
1937 : // Note that mSize is the correct place for *reading* the computed value,
1938 : // but setting it requires setting mFont.size as well.
1939 : offsetof(nsStyleFont, mSize),
1940 : eStyleAnimType_nscoord)
1941 30 : CSS_PROP_FONT(
1942 : font-size-adjust,
1943 : font_size_adjust,
1944 : FontSizeAdjust,
1945 : CSS_PROPERTY_PARSE_VALUE |
1946 : CSS_PROPERTY_VALUE_NONNEGATIVE |
1947 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1948 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1949 : "",
1950 : VARIANT_HON | VARIANT_SYSFONT,
1951 : nullptr,
1952 : offsetof(nsStyleFont, mFont.sizeAdjust),
1953 : eStyleAnimType_float)
1954 30 : CSS_PROP_FONT(
1955 : font-stretch,
1956 : font_stretch,
1957 : FontStretch,
1958 : CSS_PROPERTY_PARSE_VALUE |
1959 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1960 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1961 : "",
1962 : VARIANT_HK | VARIANT_SYSFONT,
1963 : kFontStretchKTable,
1964 : offsetof(nsStyleFont, mFont.stretch),
1965 : eStyleAnimType_Custom)
1966 30 : CSS_PROP_FONT(
1967 : font-style,
1968 : font_style,
1969 : FontStyle,
1970 : CSS_PROPERTY_PARSE_VALUE |
1971 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1972 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1973 : "",
1974 : VARIANT_HK | VARIANT_SYSFONT,
1975 : kFontStyleKTable,
1976 : CSS_PROP_NO_OFFSET,
1977 : eStyleAnimType_Discrete)
1978 30 : CSS_PROP_FONT(
1979 : font-synthesis,
1980 : font_synthesis,
1981 : FontSynthesis,
1982 : CSS_PROPERTY_PARSE_VALUE |
1983 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
1984 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
1985 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
1986 : "",
1987 : 0,
1988 : kFontSynthesisKTable,
1989 : CSS_PROP_NO_OFFSET,
1990 : eStyleAnimType_Discrete)
1991 3 : CSS_PROP_SHORTHAND(
1992 : font-variant,
1993 : font_variant,
1994 : FontVariant,
1995 : CSS_PROPERTY_PARSE_FUNCTION,
1996 : "")
1997 30 : CSS_PROP_FONT(
1998 : font-variant-alternates,
1999 : font_variant_alternates,
2000 : FontVariantAlternates,
2001 : CSS_PROPERTY_PARSE_VALUE |
2002 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2003 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2004 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2005 : "",
2006 : 0,
2007 : kFontVariantAlternatesKTable,
2008 : CSS_PROP_NO_OFFSET,
2009 : eStyleAnimType_Discrete)
2010 30 : CSS_PROP_FONT(
2011 : font-variant-caps,
2012 : font_variant_caps,
2013 : FontVariantCaps,
2014 : CSS_PROPERTY_PARSE_VALUE |
2015 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2016 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2017 : "",
2018 : VARIANT_HMK,
2019 : kFontVariantCapsKTable,
2020 : CSS_PROP_NO_OFFSET,
2021 : eStyleAnimType_Discrete)
2022 30 : CSS_PROP_FONT(
2023 : font-variant-east-asian,
2024 : font_variant_east_asian,
2025 : FontVariantEastAsian,
2026 : CSS_PROPERTY_PARSE_VALUE |
2027 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2028 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2029 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2030 : "",
2031 : 0,
2032 : kFontVariantEastAsianKTable,
2033 : CSS_PROP_NO_OFFSET,
2034 : eStyleAnimType_Discrete)
2035 30 : CSS_PROP_FONT(
2036 : font-variant-ligatures,
2037 : font_variant_ligatures,
2038 : FontVariantLigatures,
2039 : CSS_PROPERTY_PARSE_VALUE |
2040 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2041 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2042 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2043 : "",
2044 : 0,
2045 : kFontVariantLigaturesKTable,
2046 : CSS_PROP_NO_OFFSET,
2047 : eStyleAnimType_Discrete)
2048 30 : CSS_PROP_FONT(
2049 : font-variant-numeric,
2050 : font_variant_numeric,
2051 : FontVariantNumeric,
2052 : CSS_PROPERTY_PARSE_VALUE |
2053 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2054 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2055 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2056 : "",
2057 : 0,
2058 : kFontVariantNumericKTable,
2059 : CSS_PROP_NO_OFFSET,
2060 : eStyleAnimType_Discrete)
2061 30 : CSS_PROP_FONT(
2062 : font-variant-position,
2063 : font_variant_position,
2064 : FontVariantPosition,
2065 : CSS_PROPERTY_PARSE_VALUE |
2066 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2067 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2068 : "",
2069 : VARIANT_HMK,
2070 : kFontVariantPositionKTable,
2071 : CSS_PROP_NO_OFFSET,
2072 : eStyleAnimType_Discrete)
2073 30 : CSS_PROP_FONT(
2074 : font-variation-settings,
2075 : font_variation_settings,
2076 : FontVariationSettings,
2077 : CSS_PROPERTY_PARSE_VALUE |
2078 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2079 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
2080 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2081 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2082 : "layout.css.font-variations.enabled",
2083 : 0,
2084 : nullptr,
2085 : CSS_PROP_NO_OFFSET,
2086 : eStyleAnimType_Custom)
2087 1310 : CSS_PROP_FONT(
2088 : font-weight,
2089 : font_weight,
2090 : FontWeight,
2091 : CSS_PROPERTY_PARSE_VALUE |
2092 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
2093 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2094 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
2095 : // NOTE: This property has range restrictions on interpolation!
2096 : "",
2097 : 0,
2098 : kFontWeightKTable,
2099 : offsetof(nsStyleFont, mFont.weight),
2100 : eStyleAnimType_Custom)
2101 24 : CSS_PROP_UIRESET(
2102 : -moz-force-broken-image-icon,
2103 : _moz_force_broken_image_icon,
2104 : CSS_PROP_DOMPROP_PREFIXED(ForceBrokenImageIcon),
2105 : CSS_PROPERTY_PARSE_VALUE |
2106 : CSS_PROPERTY_VALUE_NONNEGATIVE,
2107 : "",
2108 : VARIANT_HI,
2109 : nullptr,
2110 : CSS_PROP_NO_OFFSET,
2111 : eStyleAnimType_Discrete) // bug 58646
2112 3 : CSS_PROP_SHORTHAND(
2113 : grid,
2114 : grid,
2115 : Grid,
2116 : CSS_PROPERTY_PARSE_FUNCTION,
2117 : "layout.css.grid.enabled")
2118 3 : CSS_PROP_SHORTHAND(
2119 : grid-area,
2120 : grid_area,
2121 : GridArea,
2122 : CSS_PROPERTY_PARSE_FUNCTION,
2123 : "layout.css.grid.enabled")
2124 568 : CSS_PROP_POSITION(
2125 : grid-auto-columns,
2126 : grid_auto_columns,
2127 : GridAutoColumns,
2128 : CSS_PROPERTY_PARSE_FUNCTION |
2129 : CSS_PROPERTY_STORES_CALC |
2130 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2131 : "layout.css.grid.enabled",
2132 : 0,
2133 : kGridTrackBreadthKTable,
2134 : CSS_PROP_NO_OFFSET,
2135 : eStyleAnimType_Discrete)
2136 568 : CSS_PROP_POSITION(
2137 : grid-auto-flow,
2138 : grid_auto_flow,
2139 : GridAutoFlow,
2140 : CSS_PROPERTY_PARSE_FUNCTION |
2141 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2142 : "layout.css.grid.enabled",
2143 : 0,
2144 : kGridAutoFlowKTable,
2145 : CSS_PROP_NO_OFFSET,
2146 : eStyleAnimType_Discrete)
2147 568 : CSS_PROP_POSITION(
2148 : grid-auto-rows,
2149 : grid_auto_rows,
2150 : GridAutoRows,
2151 : CSS_PROPERTY_PARSE_FUNCTION |
2152 : CSS_PROPERTY_STORES_CALC |
2153 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2154 : "layout.css.grid.enabled",
2155 : 0,
2156 : kGridTrackBreadthKTable,
2157 : CSS_PROP_NO_OFFSET,
2158 : eStyleAnimType_Discrete)
2159 3 : CSS_PROP_SHORTHAND(
2160 : grid-column,
2161 : grid_column,
2162 : GridColumn,
2163 : CSS_PROPERTY_PARSE_FUNCTION,
2164 : "layout.css.grid.enabled")
2165 568 : CSS_PROP_POSITION(
2166 : grid-column-end,
2167 : grid_column_end,
2168 : GridColumnEnd,
2169 : CSS_PROPERTY_PARSE_FUNCTION,
2170 : "layout.css.grid.enabled",
2171 : 0,
2172 : nullptr,
2173 : CSS_PROP_NO_OFFSET,
2174 : eStyleAnimType_Discrete)
2175 1032 : CSS_PROP_POSITION(
2176 : grid-column-gap,
2177 : grid_column_gap,
2178 : GridColumnGap,
2179 : CSS_PROPERTY_PARSE_VALUE |
2180 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2181 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2182 : "layout.css.grid.enabled",
2183 : VARIANT_HLP | VARIANT_CALC,
2184 : nullptr,
2185 : offsetof(nsStylePosition, mGridColumnGap),
2186 : eStyleAnimType_Coord)
2187 568 : CSS_PROP_POSITION(
2188 : grid-column-start,
2189 : grid_column_start,
2190 : GridColumnStart,
2191 : CSS_PROPERTY_PARSE_FUNCTION,
2192 : "layout.css.grid.enabled",
2193 : 0,
2194 : nullptr,
2195 : CSS_PROP_NO_OFFSET,
2196 : eStyleAnimType_Discrete)
2197 3 : CSS_PROP_SHORTHAND(
2198 : grid-gap,
2199 : grid_gap,
2200 : GridGap,
2201 : CSS_PROPERTY_PARSE_FUNCTION,
2202 : "layout.css.grid.enabled")
2203 3 : CSS_PROP_SHORTHAND(
2204 : grid-row,
2205 : grid_row,
2206 : GridRow,
2207 : CSS_PROPERTY_PARSE_FUNCTION,
2208 : "layout.css.grid.enabled")
2209 568 : CSS_PROP_POSITION(
2210 : grid-row-end,
2211 : grid_row_end,
2212 : GridRowEnd,
2213 : CSS_PROPERTY_PARSE_FUNCTION,
2214 : "layout.css.grid.enabled",
2215 : 0,
2216 : nullptr,
2217 : CSS_PROP_NO_OFFSET,
2218 : eStyleAnimType_Discrete)
2219 1032 : CSS_PROP_POSITION(
2220 : grid-row-gap,
2221 : grid_row_gap,
2222 : GridRowGap,
2223 : CSS_PROPERTY_PARSE_VALUE |
2224 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2225 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2226 : "layout.css.grid.enabled",
2227 : VARIANT_HLP | VARIANT_CALC,
2228 : nullptr,
2229 : offsetof(nsStylePosition, mGridRowGap),
2230 : eStyleAnimType_Coord)
2231 568 : CSS_PROP_POSITION(
2232 : grid-row-start,
2233 : grid_row_start,
2234 : GridRowStart,
2235 : CSS_PROPERTY_PARSE_FUNCTION,
2236 : "layout.css.grid.enabled",
2237 : 0,
2238 : nullptr,
2239 : CSS_PROP_NO_OFFSET,
2240 : eStyleAnimType_Discrete)
2241 3 : CSS_PROP_SHORTHAND(
2242 : grid-template,
2243 : grid_template,
2244 : GridTemplate,
2245 : CSS_PROPERTY_PARSE_FUNCTION,
2246 : "layout.css.grid.enabled")
2247 568 : CSS_PROP_POSITION(
2248 : grid-template-areas,
2249 : grid_template_areas,
2250 : GridTemplateAreas,
2251 : CSS_PROPERTY_PARSE_FUNCTION |
2252 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2253 : "layout.css.grid.enabled",
2254 : 0,
2255 : nullptr,
2256 : CSS_PROP_NO_OFFSET,
2257 : eStyleAnimType_Discrete)
2258 568 : CSS_PROP_POSITION(
2259 : grid-template-columns,
2260 : grid_template_columns,
2261 : GridTemplateColumns,
2262 : CSS_PROPERTY_PARSE_FUNCTION |
2263 : CSS_PROPERTY_STORES_CALC |
2264 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2265 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2266 : "layout.css.grid.enabled",
2267 : 0,
2268 : kGridTrackBreadthKTable,
2269 : CSS_PROP_NO_OFFSET,
2270 : eStyleAnimType_Discrete)
2271 568 : CSS_PROP_POSITION(
2272 : grid-template-rows,
2273 : grid_template_rows,
2274 : GridTemplateRows,
2275 : CSS_PROPERTY_PARSE_FUNCTION |
2276 : CSS_PROPERTY_STORES_CALC |
2277 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2278 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2279 : "layout.css.grid.enabled",
2280 : 0,
2281 : kGridTrackBreadthKTable,
2282 : CSS_PROP_NO_OFFSET,
2283 : eStyleAnimType_Discrete)
2284 568 : CSS_PROP_POSITION(
2285 : height,
2286 : height,
2287 : Height,
2288 : CSS_PROPERTY_PARSE_VALUE |
2289 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2290 : CSS_PROPERTY_STORES_CALC |
2291 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2292 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2293 : "",
2294 : VARIANT_AHKLP | VARIANT_CALC,
2295 : kWidthKTable,
2296 : offsetof(nsStylePosition, mHeight),
2297 : eStyleAnimType_Coord)
2298 98 : CSS_PROP_TEXT(
2299 : hyphens,
2300 : hyphens,
2301 : Hyphens,
2302 : CSS_PROPERTY_PARSE_VALUE,
2303 : "",
2304 : VARIANT_HK,
2305 : kHyphensKTable,
2306 : CSS_PROP_NO_OFFSET,
2307 : eStyleAnimType_Discrete)
2308 248 : CSS_PROP_TEXTRESET(
2309 : initial-letter,
2310 : initial_letter,
2311 : InitialLetter,
2312 : CSS_PROPERTY_PARSE_FUNCTION |
2313 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
2314 : "layout.css.initial-letter.enabled",
2315 : 0,
2316 : nullptr,
2317 : CSS_PROP_NO_OFFSET,
2318 : eStyleAnimType_Discrete)
2319 290 : CSS_PROP_VISIBILITY(
2320 : image-orientation,
2321 : image_orientation,
2322 : ImageOrientation,
2323 : CSS_PROPERTY_PARSE_VALUE |
2324 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
2325 : "layout.css.image-orientation.enabled",
2326 : 0,
2327 : kImageOrientationKTable,
2328 : offsetof(nsStyleVisibility, mImageOrientation),
2329 : eStyleAnimType_Discrete)
2330 266 : CSS_PROP_LIST(
2331 : -moz-image-region,
2332 : _moz_image_region,
2333 : CSS_PROP_DOMPROP_PREFIXED(ImageRegion),
2334 : CSS_PROPERTY_PARSE_FUNCTION,
2335 : "",
2336 : 0,
2337 : nullptr,
2338 : offsetof(nsStyleList, mImageRegion),
2339 : eStyleAnimType_Custom)
2340 290 : CSS_PROP_VISIBILITY(
2341 : image-rendering,
2342 : image_rendering,
2343 : ImageRendering,
2344 : CSS_PROPERTY_PARSE_VALUE,
2345 : "",
2346 : VARIANT_HK,
2347 : kImageRenderingKTable,
2348 : CSS_PROP_NO_OFFSET,
2349 : eStyleAnimType_Discrete)
2350 24 : CSS_PROP_UIRESET(
2351 : ime-mode,
2352 : ime_mode,
2353 : ImeMode,
2354 : CSS_PROPERTY_PARSE_VALUE,
2355 : "",
2356 : VARIANT_HK,
2357 : kIMEModeKTable,
2358 : CSS_PROP_NO_OFFSET,
2359 : eStyleAnimType_Discrete)
2360 6 : CSS_PROP_LOGICAL(
2361 : inline-size,
2362 : inline_size,
2363 : InlineSize,
2364 : CSS_PROPERTY_PARSE_VALUE |
2365 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2366 : CSS_PROPERTY_STORES_CALC |
2367 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2368 : CSS_PROPERTY_LOGICAL |
2369 : CSS_PROPERTY_LOGICAL_AXIS,
2370 : "",
2371 : VARIANT_AHKLP | VARIANT_CALC,
2372 : kWidthKTable,
2373 : Size,
2374 : Position,
2375 : CSS_PROP_NO_OFFSET,
2376 : eStyleAnimType_None)
2377 1348 : CSS_PROP_DISPLAY(
2378 : isolation,
2379 : isolation,
2380 : Isolation,
2381 : CSS_PROPERTY_PARSE_VALUE |
2382 : CSS_PROPERTY_CREATES_STACKING_CONTEXT,
2383 : "layout.css.isolation.enabled",
2384 : VARIANT_HK,
2385 : kIsolationKTable,
2386 : CSS_PROP_NO_OFFSET,
2387 : eStyleAnimType_Discrete)
2388 568 : CSS_PROP_POSITION(
2389 : justify-content,
2390 : justify_content,
2391 : JustifyContent,
2392 : CSS_PROPERTY_PARSE_FUNCTION,
2393 : "",
2394 : VARIANT_HK,
2395 : kAutoCompletionAlignJustifyContent,
2396 : CSS_PROP_NO_OFFSET,
2397 : eStyleAnimType_Discrete)
2398 568 : CSS_PROP_POSITION(
2399 : justify-items,
2400 : justify_items,
2401 : JustifyItems,
2402 : CSS_PROPERTY_PARSE_FUNCTION,
2403 : "",
2404 : VARIANT_HK,
2405 : // for auto-completion we use same values as justify-self:
2406 : kAutoCompletionAlignJustifySelf,
2407 : CSS_PROP_NO_OFFSET,
2408 : eStyleAnimType_Discrete)
2409 568 : CSS_PROP_POSITION(
2410 : justify-self,
2411 : justify_self,
2412 : JustifySelf,
2413 : CSS_PROPERTY_PARSE_FUNCTION,
2414 : "",
2415 : VARIANT_HK,
2416 : kAutoCompletionAlignJustifySelf,
2417 : CSS_PROP_NO_OFFSET,
2418 : eStyleAnimType_Discrete)
2419 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
2420 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
2421 30 : CSS_PROP_FONT(
2422 : -x-lang,
2423 : _x_lang,
2424 : Lang,
2425 : CSS_PROPERTY_INTERNAL |
2426 : CSS_PROPERTY_PARSE_INACCESSIBLE,
2427 : "",
2428 : 0,
2429 : nullptr,
2430 : CSS_PROP_NO_OFFSET,
2431 : eStyleAnimType_None)
2432 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
2433 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
2434 6 : CSS_PROP_POSITION(
2435 : left,
2436 : left,
2437 : Left,
2438 : CSS_PROPERTY_PARSE_VALUE |
2439 : CSS_PROPERTY_STORES_CALC |
2440 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2441 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2442 : "",
2443 : VARIANT_AHLP | VARIANT_CALC,
2444 : nullptr,
2445 : offsetof(nsStylePosition, mOffset),
2446 : eStyleAnimType_Sides_Left)
2447 98 : CSS_PROP_TEXT(
2448 : letter-spacing,
2449 : letter_spacing,
2450 : LetterSpacing,
2451 : CSS_PROPERTY_PARSE_VALUE |
2452 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2453 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
2454 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2455 : "",
2456 : VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
2457 : nullptr,
2458 : offsetof(nsStyleText, mLetterSpacing),
2459 : eStyleAnimType_Coord)
2460 66 : CSS_PROP_SVGRESET(
2461 : lighting-color,
2462 : lighting_color,
2463 : LightingColor,
2464 : CSS_PROPERTY_PARSE_VALUE,
2465 : "",
2466 : VARIANT_HC,
2467 : nullptr,
2468 : offsetof(nsStyleSVGReset, mLightingColor),
2469 : eStyleAnimType_Color)
2470 98 : CSS_PROP_TEXT(
2471 : line-height,
2472 : line_height,
2473 : LineHeight,
2474 : CSS_PROPERTY_PARSE_VALUE |
2475 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2476 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
2477 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
2478 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2479 : "",
2480 : VARIANT_HLPN | VARIANT_KEYWORD | VARIANT_NORMAL | VARIANT_SYSFONT | VARIANT_CALC,
2481 : kLineHeightKTable,
2482 : offsetof(nsStyleText, mLineHeight),
2483 : eStyleAnimType_Coord)
2484 3 : CSS_PROP_SHORTHAND(
2485 : list-style,
2486 : list_style,
2487 : ListStyle,
2488 : CSS_PROPERTY_PARSE_FUNCTION,
2489 : "")
2490 266 : CSS_PROP_LIST(
2491 : list-style-image,
2492 : list_style_image,
2493 : ListStyleImage,
2494 : CSS_PROPERTY_PARSE_VALUE |
2495 : CSS_PROPERTY_START_IMAGE_LOADS,
2496 : "",
2497 : VARIANT_HUO,
2498 : nullptr,
2499 : CSS_PROP_NO_OFFSET,
2500 : eStyleAnimType_Discrete)
2501 266 : CSS_PROP_LIST(
2502 : list-style-position,
2503 : list_style_position,
2504 : ListStylePosition,
2505 : CSS_PROPERTY_PARSE_VALUE,
2506 : "",
2507 : VARIANT_HK,
2508 : kListStylePositionKTable,
2509 : CSS_PROP_NO_OFFSET,
2510 : eStyleAnimType_Discrete)
2511 266 : CSS_PROP_LIST(
2512 : list-style-type,
2513 : list_style_type,
2514 : ListStyleType,
2515 : CSS_PROPERTY_PARSE_VALUE |
2516 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
2517 : "",
2518 : 0,
2519 : nullptr,
2520 : CSS_PROP_NO_OFFSET,
2521 : eStyleAnimType_Discrete)
2522 3 : CSS_PROP_SHORTHAND(
2523 : margin,
2524 : margin,
2525 : Margin,
2526 : CSS_PROPERTY_PARSE_FUNCTION |
2527 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2528 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE,
2529 : "")
2530 6 : CSS_PROP_LOGICAL(
2531 : margin-block-end,
2532 : margin_block_end,
2533 : MarginBlockEnd,
2534 : CSS_PROPERTY_PARSE_VALUE |
2535 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2536 : CSS_PROPERTY_STORES_CALC |
2537 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2538 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2539 : CSS_PROPERTY_LOGICAL |
2540 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
2541 : CSS_PROPERTY_LOGICAL_END_EDGE,
2542 : "",
2543 : VARIANT_AHLP | VARIANT_CALC,
2544 : nullptr,
2545 : Margin,
2546 : Margin,
2547 : CSS_PROP_NO_OFFSET,
2548 : eStyleAnimType_None)
2549 6 : CSS_PROP_LOGICAL(
2550 : margin-block-start,
2551 : margin_block_start,
2552 : MarginBlockStart,
2553 : CSS_PROPERTY_PARSE_VALUE |
2554 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2555 : CSS_PROPERTY_STORES_CALC |
2556 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2557 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2558 : CSS_PROPERTY_LOGICAL |
2559 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
2560 : "",
2561 : VARIANT_AHLP | VARIANT_CALC,
2562 : nullptr,
2563 : Margin,
2564 : Margin,
2565 : CSS_PROP_NO_OFFSET,
2566 : eStyleAnimType_None)
2567 6 : CSS_PROP_MARGIN(
2568 : margin-bottom,
2569 : margin_bottom,
2570 : MarginBottom,
2571 : CSS_PROPERTY_PARSE_VALUE |
2572 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2573 : CSS_PROPERTY_STORES_CALC |
2574 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2575 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2576 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2577 : "",
2578 : VARIANT_AHLP | VARIANT_CALC,
2579 : nullptr,
2580 : offsetof(nsStyleMargin, mMargin),
2581 : eStyleAnimType_Sides_Bottom)
2582 6 : CSS_PROP_LOGICAL(
2583 : margin-inline-end,
2584 : margin_inline_end,
2585 : MarginInlineEnd,
2586 : CSS_PROPERTY_PARSE_VALUE |
2587 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2588 : CSS_PROPERTY_STORES_CALC |
2589 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2590 : CSS_PROPERTY_LOGICAL |
2591 : CSS_PROPERTY_LOGICAL_END_EDGE,
2592 : "",
2593 : VARIANT_AHLP | VARIANT_CALC,
2594 : nullptr,
2595 : Margin,
2596 : Margin,
2597 : CSS_PROP_NO_OFFSET,
2598 : eStyleAnimType_None)
2599 6 : CSS_PROP_LOGICAL(
2600 : margin-inline-start,
2601 : margin_inline_start,
2602 : MarginInlineStart,
2603 : CSS_PROPERTY_PARSE_VALUE |
2604 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2605 : CSS_PROPERTY_STORES_CALC |
2606 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2607 : CSS_PROPERTY_LOGICAL,
2608 : "",
2609 : VARIANT_AHLP | VARIANT_CALC,
2610 : nullptr,
2611 : Margin,
2612 : Margin,
2613 : CSS_PROP_NO_OFFSET,
2614 : eStyleAnimType_None)
2615 6 : CSS_PROP_MARGIN(
2616 : margin-left,
2617 : margin_left,
2618 : MarginLeft,
2619 : CSS_PROPERTY_PARSE_VALUE |
2620 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2621 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2622 : CSS_PROPERTY_STORES_CALC |
2623 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2624 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2625 : "",
2626 : VARIANT_AHLP | VARIANT_CALC,
2627 : nullptr,
2628 : offsetof(nsStyleMargin, mMargin),
2629 : eStyleAnimType_Sides_Left)
2630 6 : CSS_PROP_MARGIN(
2631 : margin-right,
2632 : margin_right,
2633 : MarginRight,
2634 : CSS_PROPERTY_PARSE_VALUE |
2635 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2636 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2637 : CSS_PROPERTY_STORES_CALC |
2638 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2639 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2640 : "",
2641 : VARIANT_AHLP | VARIANT_CALC,
2642 : nullptr,
2643 : offsetof(nsStyleMargin, mMargin),
2644 : eStyleAnimType_Sides_Right)
2645 6 : CSS_PROP_MARGIN(
2646 : margin-top,
2647 : margin_top,
2648 : MarginTop,
2649 : CSS_PROPERTY_PARSE_VALUE |
2650 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
2651 : CSS_PROPERTY_STORES_CALC |
2652 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
2653 : CSS_PROPERTY_APPLIES_TO_PAGE_RULE |
2654 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
2655 : "",
2656 : VARIANT_AHLP | VARIANT_CALC,
2657 : nullptr,
2658 : offsetof(nsStyleMargin, mMargin),
2659 : eStyleAnimType_Sides_Top)
2660 3 : CSS_PROP_SHORTHAND(
2661 : marker,
2662 : marker,
2663 : Marker,
2664 : CSS_PROPERTY_PARSE_FUNCTION,
2665 : "")
2666 138 : CSS_PROP_SVG(
2667 : marker-end,
2668 : marker_end,
2669 : MarkerEnd,
2670 : CSS_PROPERTY_PARSE_VALUE,
2671 : "",
2672 : VARIANT_HUO,
2673 : nullptr,
2674 : CSS_PROP_NO_OFFSET,
2675 : eStyleAnimType_Discrete)
2676 138 : CSS_PROP_SVG(
2677 : marker-mid,
2678 : marker_mid,
2679 : MarkerMid,
2680 : CSS_PROPERTY_PARSE_VALUE,
2681 : "",
2682 : VARIANT_HUO,
2683 : nullptr,
2684 : CSS_PROP_NO_OFFSET,
2685 : eStyleAnimType_Discrete)
2686 138 : CSS_PROP_SVG(
2687 : marker-start,
2688 : marker_start,
2689 : MarkerStart,
2690 : CSS_PROPERTY_PARSE_VALUE,
2691 : "",
2692 : VARIANT_HUO,
2693 : nullptr,
2694 : CSS_PROP_NO_OFFSET,
2695 : eStyleAnimType_Discrete)
2696 : #ifndef MOZ_ENABLE_MASK_AS_SHORTHAND
2697 : CSS_PROP_SVGRESET(
2698 : mask,
2699 : mask,
2700 : Mask,
2701 : CSS_PROPERTY_PARSE_VALUE |
2702 : CSS_PROPERTY_CREATES_STACKING_CONTEXT,
2703 : "",
2704 : VARIANT_HUO,
2705 : nullptr,
2706 : CSS_PROP_NO_OFFSET,
2707 : eStyleAnimType_Discrete)
2708 : #else
2709 3 : CSS_PROP_SHORTHAND(
2710 : mask,
2711 : mask,
2712 : Mask,
2713 : CSS_PROPERTY_PARSE_FUNCTION,
2714 : "")
2715 66 : CSS_PROP_SVGRESET(
2716 : mask-clip,
2717 : mask_clip,
2718 : MaskClip,
2719 : CSS_PROPERTY_PARSE_VALUE_LIST |
2720 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
2721 : "",
2722 : VARIANT_KEYWORD, // used by list parsing
2723 : kMaskClipKTable,
2724 : CSS_PROP_NO_OFFSET,
2725 : eStyleAnimType_Discrete)
2726 66 : CSS_PROP_SVGRESET(
2727 : mask-composite,
2728 : mask_composite,
2729 : MaskComposite,
2730 : CSS_PROPERTY_PARSE_VALUE_LIST |
2731 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
2732 : "",
2733 : VARIANT_KEYWORD, // used by list parsing
2734 : kImageLayerCompositeKTable,
2735 : CSS_PROP_NO_OFFSET,
2736 : eStyleAnimType_Discrete)
2737 66 : CSS_PROP_SVGRESET(
2738 : mask-image,
2739 : mask_image,
2740 : MaskImage,
2741 : CSS_PROPERTY_PARSE_VALUE_LIST |
2742 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
2743 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
2744 : CSS_PROPERTY_START_IMAGE_LOADS,
2745 : "",
2746 : VARIANT_IMAGE, // used by list parsing
2747 : nullptr,
2748 : CSS_PROP_NO_OFFSET,
2749 : eStyleAnimType_Discrete)
2750 66 : CSS_PROP_SVGRESET(
2751 : mask-mode,
2752 : mask_mode,
2753 : MaskMode,
2754 : CSS_PROPERTY_PARSE_VALUE_LIST |
2755 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
2756 : "",
2757 : VARIANT_KEYWORD, // used by list parsing
2758 : kImageLayerModeKTable,
2759 : CSS_PROP_NO_OFFSET,
2760 : eStyleAnimType_Discrete)
2761 66 : CSS_PROP_SVGRESET(
2762 : mask-origin,
2763 : mask_origin,
2764 : MaskOrigin,
2765 : CSS_PROPERTY_PARSE_VALUE_LIST |
2766 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
2767 : "",
2768 : VARIANT_KEYWORD, // used by list parsing
2769 : kMaskOriginKTable,
2770 : CSS_PROP_NO_OFFSET,
2771 : eStyleAnimType_Discrete)
2772 3 : CSS_PROP_SHORTHAND(
2773 : mask-position,
2774 : mask_position,
2775 : MaskPosition,
2776 : CSS_PROPERTY_PARSE_FUNCTION |
2777 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2778 : "")
2779 66 : CSS_PROP_SVGRESET(
2780 : mask-position-x,
2781 : mask_position_x,
2782 : MaskPositionX,
2783 : CSS_PROPERTY_PARSE_FUNCTION |
2784 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
2785 : CSS_PROPERTY_STORES_CALC,
2786 : "",
2787 : 0,
2788 : kImageLayerPositionKTable,
2789 : CSS_PROP_NO_OFFSET,
2790 : eStyleAnimType_Custom)
2791 66 : CSS_PROP_SVGRESET(
2792 : mask-position-y,
2793 : mask_position_y,
2794 : MaskPositionY,
2795 : CSS_PROPERTY_PARSE_FUNCTION |
2796 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
2797 : CSS_PROPERTY_STORES_CALC,
2798 : "",
2799 : 0,
2800 : kImageLayerPositionKTable,
2801 : CSS_PROP_NO_OFFSET,
2802 : eStyleAnimType_Custom)
2803 66 : CSS_PROP_SVGRESET(
2804 : mask-repeat,
2805 : mask_repeat,
2806 : MaskRepeat,
2807 : CSS_PROPERTY_PARSE_FUNCTION |
2808 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
2809 : "",
2810 : VARIANT_KEYWORD, // used by list parsing
2811 : kImageLayerRepeatKTable,
2812 : CSS_PROP_NO_OFFSET,
2813 : eStyleAnimType_Discrete)
2814 66 : CSS_PROP_SVGRESET(
2815 : mask-size,
2816 : mask_size,
2817 : MaskSize,
2818 : CSS_PROPERTY_PARSE_FUNCTION |
2819 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
2820 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2821 : CSS_PROPERTY_STORES_CALC,
2822 : "",
2823 : 0,
2824 : kImageLayerSizeKTable,
2825 : CSS_PROP_NO_OFFSET,
2826 : eStyleAnimType_Custom)
2827 : #endif // MOZ_ENABLE_MASK_AS_SHORTHAND
2828 66 : CSS_PROP_SVGRESET(
2829 : mask-type,
2830 : mask_type,
2831 : MaskType,
2832 : CSS_PROPERTY_PARSE_VALUE,
2833 : "",
2834 : VARIANT_HK,
2835 : kMaskTypeKTable,
2836 : CSS_PROP_NO_OFFSET,
2837 : eStyleAnimType_Discrete)
2838 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
2839 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
2840 1310 : CSS_PROP_FONT(
2841 : -moz-math-display,
2842 : _moz_math_display,
2843 : MathDisplay,
2844 : CSS_PROPERTY_INTERNAL |
2845 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
2846 : CSS_PROPERTY_PARSE_VALUE,
2847 : "",
2848 : VARIANT_HK,
2849 : kMathDisplayKTable,
2850 : CSS_PROP_NO_OFFSET,
2851 : eStyleAnimType_None)
2852 1310 : CSS_PROP_FONT(
2853 : -moz-math-variant,
2854 : _moz_math_variant,
2855 : MathVariant,
2856 : CSS_PROPERTY_INTERNAL |
2857 : CSS_PROPERTY_PARSE_INACCESSIBLE,
2858 : "",
2859 : VARIANT_HK,
2860 : kMathVariantKTable,
2861 : CSS_PROP_NO_OFFSET,
2862 : eStyleAnimType_None)
2863 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
2864 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
2865 6 : CSS_PROP_LOGICAL(
2866 : max-block-size,
2867 : max_block_size,
2868 : MaxBlockSize,
2869 : CSS_PROPERTY_PARSE_VALUE |
2870 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2871 : CSS_PROPERTY_STORES_CALC |
2872 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2873 : CSS_PROPERTY_LOGICAL |
2874 : CSS_PROPERTY_LOGICAL_AXIS |
2875 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
2876 : "",
2877 : VARIANT_HLPO | VARIANT_CALC,
2878 : nullptr,
2879 : MaxSize,
2880 : Position,
2881 : CSS_PROP_NO_OFFSET,
2882 : eStyleAnimType_None)
2883 568 : CSS_PROP_POSITION(
2884 : max-height,
2885 : max_height,
2886 : MaxHeight,
2887 : CSS_PROPERTY_PARSE_VALUE |
2888 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2889 : CSS_PROPERTY_STORES_CALC |
2890 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2891 : "",
2892 : VARIANT_HKLPO | VARIANT_CALC,
2893 : kWidthKTable,
2894 : offsetof(nsStylePosition, mMaxHeight),
2895 : eStyleAnimType_Coord)
2896 6 : CSS_PROP_LOGICAL(
2897 : max-inline-size,
2898 : max_inline_size,
2899 : MaxInlineSize,
2900 : CSS_PROPERTY_PARSE_VALUE |
2901 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2902 : CSS_PROPERTY_STORES_CALC |
2903 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2904 : CSS_PROPERTY_LOGICAL |
2905 : CSS_PROPERTY_LOGICAL_AXIS,
2906 : "",
2907 : VARIANT_HKLPO | VARIANT_CALC,
2908 : kWidthKTable,
2909 : MaxSize,
2910 : Position,
2911 : CSS_PROP_NO_OFFSET,
2912 : eStyleAnimType_None)
2913 568 : CSS_PROP_POSITION(
2914 : max-width,
2915 : max_width,
2916 : MaxWidth,
2917 : CSS_PROPERTY_PARSE_VALUE |
2918 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2919 : CSS_PROPERTY_STORES_CALC |
2920 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2921 : "",
2922 : VARIANT_HKLPO | VARIANT_CALC,
2923 : kWidthKTable,
2924 : offsetof(nsStylePosition, mMaxWidth),
2925 : eStyleAnimType_Coord)
2926 6 : CSS_PROP_LOGICAL(
2927 : min-block-size,
2928 : min_block_size,
2929 : MinBlockSize,
2930 : CSS_PROPERTY_PARSE_VALUE |
2931 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2932 : CSS_PROPERTY_STORES_CALC |
2933 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2934 : CSS_PROPERTY_LOGICAL |
2935 : CSS_PROPERTY_LOGICAL_AXIS |
2936 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
2937 : "",
2938 : VARIANT_AHLP | VARIANT_CALC,
2939 : nullptr,
2940 : MinSize,
2941 : Position,
2942 : CSS_PROP_NO_OFFSET,
2943 : eStyleAnimType_None)
2944 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
2945 30 : CSS_PROP_FONT(
2946 : -moz-min-font-size-ratio,
2947 : _moz_min_font_size_ratio,
2948 : CSS_PROP_DOMPROP_PREFIXED(MinFontSizeRatio),
2949 : CSS_PROPERTY_INTERNAL |
2950 : CSS_PROPERTY_PARSE_VALUE |
2951 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
2952 : "",
2953 : VARIANT_INHERIT | VARIANT_PERCENT,
2954 : nullptr,
2955 : offsetof(nsStyleFont, mMinFontSizeRatio),
2956 : eStyleAnimType_None)
2957 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
2958 568 : CSS_PROP_POSITION(
2959 : min-height,
2960 : min_height,
2961 : MinHeight,
2962 : CSS_PROPERTY_PARSE_VALUE |
2963 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2964 : CSS_PROPERTY_STORES_CALC |
2965 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2966 : "",
2967 : VARIANT_AHKLP | VARIANT_CALC,
2968 : kWidthKTable,
2969 : offsetof(nsStylePosition, mMinHeight),
2970 : eStyleAnimType_Coord)
2971 6 : CSS_PROP_LOGICAL(
2972 : min-inline-size,
2973 : min_inline_size,
2974 : MinInlineSize,
2975 : CSS_PROPERTY_PARSE_VALUE |
2976 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2977 : CSS_PROPERTY_STORES_CALC |
2978 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
2979 : CSS_PROPERTY_LOGICAL |
2980 : CSS_PROPERTY_LOGICAL_AXIS,
2981 : "",
2982 : VARIANT_AHKLP | VARIANT_CALC,
2983 : kWidthKTable,
2984 : MinSize,
2985 : Position,
2986 : CSS_PROP_NO_OFFSET,
2987 : eStyleAnimType_None)
2988 572 : CSS_PROP_POSITION(
2989 : min-width,
2990 : min_width,
2991 : MinWidth,
2992 : CSS_PROPERTY_PARSE_VALUE |
2993 : CSS_PROPERTY_VALUE_NONNEGATIVE |
2994 : CSS_PROPERTY_STORES_CALC |
2995 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
2996 : "",
2997 : VARIANT_AHKLP | VARIANT_CALC,
2998 : kWidthKTable,
2999 : offsetof(nsStylePosition, mMinWidth),
3000 : eStyleAnimType_Coord)
3001 180 : CSS_PROP_EFFECTS(
3002 : mix-blend-mode,
3003 : mix_blend_mode,
3004 : MixBlendMode,
3005 : CSS_PROPERTY_PARSE_VALUE |
3006 : CSS_PROPERTY_CREATES_STACKING_CONTEXT,
3007 : "layout.css.mix-blend-mode.enabled",
3008 : VARIANT_HK,
3009 : kBlendModeKTable,
3010 : CSS_PROP_NO_OFFSET,
3011 : eStyleAnimType_Discrete)
3012 568 : CSS_PROP_POSITION(
3013 : object-fit,
3014 : object_fit,
3015 : ObjectFit,
3016 : CSS_PROPERTY_PARSE_VALUE,
3017 : "",
3018 : VARIANT_HK,
3019 : kObjectFitKTable,
3020 : CSS_PROP_NO_OFFSET,
3021 : eStyleAnimType_Discrete)
3022 568 : CSS_PROP_POSITION(
3023 : object-position,
3024 : object_position,
3025 : ObjectPosition,
3026 : CSS_PROPERTY_PARSE_FUNCTION |
3027 : CSS_PROPERTY_STORES_CALC,
3028 : "",
3029 : 0,
3030 : kImageLayerPositionKTable,
3031 : offsetof(nsStylePosition, mObjectPosition),
3032 : eStyleAnimType_Custom)
3033 6 : CSS_PROP_LOGICAL(
3034 : offset-block-end,
3035 : offset_block_end,
3036 : OffsetBlockEnd,
3037 : CSS_PROPERTY_PARSE_VALUE |
3038 : CSS_PROPERTY_STORES_CALC |
3039 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3040 : CSS_PROPERTY_LOGICAL |
3041 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
3042 : CSS_PROPERTY_LOGICAL_END_EDGE,
3043 : "",
3044 : VARIANT_AHLP | VARIANT_CALC,
3045 : nullptr,
3046 : Offset,
3047 : Position,
3048 : CSS_PROP_NO_OFFSET,
3049 : eStyleAnimType_None)
3050 6 : CSS_PROP_LOGICAL(
3051 : offset-block-start,
3052 : offset_block_start,
3053 : OffsetBlockStart,
3054 : CSS_PROPERTY_PARSE_VALUE |
3055 : CSS_PROPERTY_STORES_CALC |
3056 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3057 : CSS_PROPERTY_LOGICAL |
3058 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
3059 : "",
3060 : VARIANT_AHLP | VARIANT_CALC,
3061 : nullptr,
3062 : Offset,
3063 : Position,
3064 : CSS_PROP_NO_OFFSET,
3065 : eStyleAnimType_None)
3066 6 : CSS_PROP_LOGICAL(
3067 : offset-inline-end,
3068 : offset_inline_end,
3069 : OffsetInlineEnd,
3070 : CSS_PROPERTY_PARSE_VALUE |
3071 : CSS_PROPERTY_STORES_CALC |
3072 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3073 : CSS_PROPERTY_LOGICAL |
3074 : CSS_PROPERTY_LOGICAL_END_EDGE,
3075 : "",
3076 : VARIANT_AHLP | VARIANT_CALC,
3077 : nullptr,
3078 : Offset,
3079 : Position,
3080 : CSS_PROP_NO_OFFSET,
3081 : eStyleAnimType_None)
3082 6 : CSS_PROP_LOGICAL(
3083 : offset-inline-start,
3084 : offset_inline_start,
3085 : OffsetInlineStart,
3086 : CSS_PROPERTY_PARSE_VALUE |
3087 : CSS_PROPERTY_STORES_CALC |
3088 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3089 : CSS_PROPERTY_LOGICAL,
3090 : "",
3091 : VARIANT_AHLP | VARIANT_CALC,
3092 : nullptr,
3093 : Offset,
3094 : Position,
3095 : CSS_PROP_NO_OFFSET,
3096 : eStyleAnimType_None)
3097 180 : CSS_PROP_EFFECTS(
3098 : opacity,
3099 : opacity,
3100 : Opacity,
3101 : CSS_PROPERTY_PARSE_VALUE |
3102 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3103 : CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR |
3104 : CSS_PROPERTY_CREATES_STACKING_CONTEXT,
3105 : "",
3106 : VARIANT_HN,
3107 : nullptr,
3108 : offsetof(nsStyleEffects, mOpacity),
3109 : eStyleAnimType_float)
3110 568 : CSS_PROP_POSITION(
3111 : order,
3112 : order,
3113 : Order,
3114 : CSS_PROPERTY_PARSE_VALUE,
3115 : "",
3116 : VARIANT_HI,
3117 : nullptr,
3118 : offsetof(nsStylePosition, mOrder),
3119 : eStyleAnimType_Custom) // <integer>
3120 1348 : CSS_PROP_DISPLAY(
3121 : -moz-orient,
3122 : _moz_orient,
3123 : CSS_PROP_DOMPROP_PREFIXED(Orient),
3124 : CSS_PROPERTY_PARSE_VALUE,
3125 : "",
3126 : VARIANT_HK,
3127 : kOrientKTable,
3128 : CSS_PROP_NO_OFFSET,
3129 : eStyleAnimType_Discrete)
3130 30 : CSS_PROP_FONT(
3131 : -moz-osx-font-smoothing,
3132 : _moz_osx_font_smoothing,
3133 : CSS_PROP_DOMPROP_PREFIXED(OsxFontSmoothing),
3134 : CSS_PROPERTY_PARSE_VALUE |
3135 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
3136 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3137 : "layout.css.osx-font-smoothing.enabled",
3138 : VARIANT_HK,
3139 : kFontSmoothingKTable,
3140 : CSS_PROP_NO_OFFSET,
3141 : eStyleAnimType_Discrete)
3142 3 : CSS_PROP_SHORTHAND(
3143 : outline,
3144 : outline,
3145 : Outline,
3146 : CSS_PROPERTY_PARSE_FUNCTION,
3147 : "")
3148 58 : CSS_PROP_OUTLINE(
3149 : outline-color,
3150 : outline_color,
3151 : OutlineColor,
3152 : CSS_PROPERTY_PARSE_VALUE |
3153 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
3154 : "",
3155 : VARIANT_HC,
3156 : nullptr,
3157 : offsetof(nsStyleOutline, mOutlineColor),
3158 : eStyleAnimType_ComplexColor)
3159 58 : CSS_PROP_OUTLINE(
3160 : outline-offset,
3161 : outline_offset,
3162 : OutlineOffset,
3163 : CSS_PROPERTY_PARSE_VALUE,
3164 : "",
3165 : VARIANT_HL | VARIANT_CALC,
3166 : nullptr,
3167 : offsetof(nsStyleOutline, mOutlineOffset),
3168 : eStyleAnimType_nscoord)
3169 3 : CSS_PROP_SHORTHAND(
3170 : -moz-outline-radius,
3171 : _moz_outline_radius,
3172 : CSS_PROP_DOMPROP_PREFIXED(OutlineRadius),
3173 : CSS_PROPERTY_PARSE_FUNCTION,
3174 : "")
3175 6 : CSS_PROP_OUTLINE(
3176 : -moz-outline-radius-bottomleft,
3177 : _moz_outline_radius_bottomleft,
3178 : CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomleft),
3179 : CSS_PROPERTY_PARSE_FUNCTION |
3180 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3181 : CSS_PROPERTY_STORES_CALC,
3182 : "",
3183 : 0,
3184 : nullptr,
3185 : offsetof(nsStyleOutline, mOutlineRadius),
3186 : eStyleAnimType_Corner_BottomLeft)
3187 6 : CSS_PROP_OUTLINE(
3188 : -moz-outline-radius-bottomright,
3189 : _moz_outline_radius_bottomright,
3190 : CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomright),
3191 : CSS_PROPERTY_PARSE_FUNCTION |
3192 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3193 : CSS_PROPERTY_STORES_CALC,
3194 : "",
3195 : 0,
3196 : nullptr,
3197 : offsetof(nsStyleOutline, mOutlineRadius),
3198 : eStyleAnimType_Corner_BottomRight)
3199 6 : CSS_PROP_OUTLINE(
3200 : -moz-outline-radius-topleft,
3201 : _moz_outline_radius_topleft,
3202 : CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopleft),
3203 : CSS_PROPERTY_PARSE_FUNCTION |
3204 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3205 : CSS_PROPERTY_STORES_CALC,
3206 : "",
3207 : 0,
3208 : nullptr,
3209 : offsetof(nsStyleOutline, mOutlineRadius),
3210 : eStyleAnimType_Corner_TopLeft)
3211 6 : CSS_PROP_OUTLINE(
3212 : -moz-outline-radius-topright,
3213 : _moz_outline_radius_topright,
3214 : CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopright),
3215 : CSS_PROPERTY_PARSE_FUNCTION |
3216 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3217 : CSS_PROPERTY_STORES_CALC,
3218 : "",
3219 : 0,
3220 : nullptr,
3221 : offsetof(nsStyleOutline, mOutlineRadius),
3222 : eStyleAnimType_Corner_TopRight)
3223 58 : CSS_PROP_OUTLINE(
3224 : outline-style,
3225 : outline_style,
3226 : OutlineStyle,
3227 : CSS_PROPERTY_PARSE_VALUE,
3228 : "",
3229 : VARIANT_HK,
3230 : kOutlineStyleKTable,
3231 : CSS_PROP_NO_OFFSET,
3232 : eStyleAnimType_Discrete)
3233 58 : CSS_PROP_OUTLINE(
3234 : outline-width,
3235 : outline_width,
3236 : OutlineWidth,
3237 : CSS_PROPERTY_PARSE_VALUE |
3238 : CSS_PROPERTY_VALUE_NONNEGATIVE,
3239 : "",
3240 : VARIANT_HKL | VARIANT_CALC,
3241 : kBorderWidthKTable,
3242 : offsetof(nsStyleOutline, mOutlineWidth),
3243 : eStyleAnimType_nscoord)
3244 3 : CSS_PROP_SHORTHAND(
3245 : overflow,
3246 : overflow,
3247 : Overflow,
3248 : CSS_PROPERTY_PARSE_FUNCTION,
3249 : "")
3250 1348 : CSS_PROP_DISPLAY(
3251 : overflow-clip-box,
3252 : overflow_clip_box,
3253 : OverflowClipBox,
3254 : CSS_PROPERTY_PARSE_VALUE |
3255 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
3256 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3257 : "layout.css.overflow-clip-box.enabled",
3258 : VARIANT_HK,
3259 : kOverflowClipBoxKTable,
3260 : CSS_PROP_NO_OFFSET,
3261 : eStyleAnimType_Discrete)
3262 1348 : CSS_PROP_DISPLAY(
3263 : overflow-x,
3264 : overflow_x,
3265 : OverflowX,
3266 : CSS_PROPERTY_PARSE_VALUE |
3267 : // This is required by the UA stylesheet and can't be overridden.
3268 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3269 : "",
3270 : VARIANT_HK,
3271 : kOverflowSubKTable,
3272 : CSS_PROP_NO_OFFSET,
3273 : eStyleAnimType_Discrete)
3274 1348 : CSS_PROP_DISPLAY(
3275 : overflow-y,
3276 : overflow_y,
3277 : OverflowY,
3278 : CSS_PROPERTY_PARSE_VALUE |
3279 : // This is required by the UA stylesheet and can't be overridden.
3280 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3281 : "",
3282 : VARIANT_HK,
3283 : kOverflowSubKTable,
3284 : CSS_PROP_NO_OFFSET,
3285 : eStyleAnimType_Discrete)
3286 3 : CSS_PROP_SHORTHAND(
3287 : padding,
3288 : padding,
3289 : Padding,
3290 : CSS_PROPERTY_PARSE_FUNCTION |
3291 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
3292 : "")
3293 6 : CSS_PROP_LOGICAL(
3294 : padding-block-end,
3295 : padding_block_end,
3296 : PaddingBlockEnd,
3297 : CSS_PROPERTY_PARSE_VALUE |
3298 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3299 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3300 : // This is required by the UA stylesheet and can't be overridden.
3301 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3302 : CSS_PROPERTY_STORES_CALC |
3303 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3304 : CSS_PROPERTY_LOGICAL |
3305 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS |
3306 : CSS_PROPERTY_LOGICAL_END_EDGE,
3307 : "",
3308 : VARIANT_HLP | VARIANT_CALC,
3309 : nullptr,
3310 : Padding,
3311 : Padding,
3312 : CSS_PROP_NO_OFFSET,
3313 : eStyleAnimType_None)
3314 6 : CSS_PROP_LOGICAL(
3315 : padding-block-start,
3316 : padding_block_start,
3317 : PaddingBlockStart,
3318 : CSS_PROPERTY_PARSE_VALUE |
3319 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3320 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3321 : // This is required by the UA stylesheet and can't be overridden.
3322 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3323 : CSS_PROPERTY_STORES_CALC |
3324 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3325 : CSS_PROPERTY_LOGICAL |
3326 : CSS_PROPERTY_LOGICAL_BLOCK_AXIS,
3327 : "",
3328 : VARIANT_HLP | VARIANT_CALC,
3329 : nullptr,
3330 : Padding,
3331 : Padding,
3332 : CSS_PROP_NO_OFFSET,
3333 : eStyleAnimType_None)
3334 6 : CSS_PROP_PADDING(
3335 : padding-bottom,
3336 : padding_bottom,
3337 : PaddingBottom,
3338 : CSS_PROPERTY_PARSE_VALUE |
3339 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3340 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3341 : // This is required by the UA stylesheet and can't be overridden.
3342 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3343 : CSS_PROPERTY_STORES_CALC |
3344 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
3345 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3346 : "",
3347 : VARIANT_HLP | VARIANT_CALC,
3348 : nullptr,
3349 : offsetof(nsStylePadding, mPadding),
3350 : eStyleAnimType_Sides_Bottom)
3351 6 : CSS_PROP_LOGICAL(
3352 : padding-inline-end,
3353 : padding_inline_end,
3354 : PaddingInlineEnd,
3355 : CSS_PROPERTY_PARSE_VALUE |
3356 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3357 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3358 : // This is required by the UA stylesheet and can't be overridden.
3359 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3360 : CSS_PROPERTY_STORES_CALC |
3361 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3362 : CSS_PROPERTY_LOGICAL |
3363 : CSS_PROPERTY_LOGICAL_END_EDGE,
3364 : "",
3365 : VARIANT_HLP | VARIANT_CALC,
3366 : nullptr,
3367 : Padding,
3368 : Padding,
3369 : CSS_PROP_NO_OFFSET,
3370 : eStyleAnimType_None)
3371 6 : CSS_PROP_LOGICAL(
3372 : padding-inline-start,
3373 : padding_inline_start,
3374 : PaddingInlineStart,
3375 : CSS_PROPERTY_PARSE_VALUE |
3376 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3377 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3378 : // This is required by the UA stylesheet and can't be overridden.
3379 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3380 : CSS_PROPERTY_STORES_CALC |
3381 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
3382 : CSS_PROPERTY_LOGICAL,
3383 : "",
3384 : VARIANT_HLP | VARIANT_CALC,
3385 : nullptr,
3386 : Padding,
3387 : Padding,
3388 : CSS_PROP_NO_OFFSET,
3389 : eStyleAnimType_None)
3390 6 : CSS_PROP_PADDING(
3391 : padding-left,
3392 : padding_left,
3393 : PaddingLeft,
3394 : CSS_PROPERTY_PARSE_VALUE |
3395 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3396 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
3397 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3398 : // This is required by the UA stylesheet and can't be overridden.
3399 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3400 : CSS_PROPERTY_STORES_CALC |
3401 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3402 : "",
3403 : VARIANT_HLP | VARIANT_CALC,
3404 : nullptr,
3405 : offsetof(nsStylePadding, mPadding),
3406 : eStyleAnimType_Sides_Left)
3407 6 : CSS_PROP_PADDING(
3408 : padding-right,
3409 : padding_right,
3410 : PaddingRight,
3411 : CSS_PROPERTY_PARSE_VALUE |
3412 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3413 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
3414 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3415 : // This is required by the UA stylesheet and can't be overridden.
3416 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3417 : CSS_PROPERTY_STORES_CALC |
3418 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3419 : "",
3420 : VARIANT_HLP | VARIANT_CALC,
3421 : nullptr,
3422 : offsetof(nsStylePadding, mPadding),
3423 : eStyleAnimType_Sides_Right)
3424 6 : CSS_PROP_PADDING(
3425 : padding-top,
3426 : padding_top,
3427 : PaddingTop,
3428 : CSS_PROPERTY_PARSE_VALUE |
3429 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3430 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER |
3431 : // This is required by the UA stylesheet and can't be overridden.
3432 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3433 : CSS_PROPERTY_STORES_CALC |
3434 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
3435 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3436 : "",
3437 : VARIANT_HLP | VARIANT_CALC,
3438 : nullptr,
3439 : offsetof(nsStylePadding, mPadding),
3440 : eStyleAnimType_Sides_Top)
3441 1348 : CSS_PROP_DISPLAY(
3442 : page-break-after,
3443 : page_break_after,
3444 : PageBreakAfter,
3445 : CSS_PROPERTY_PARSE_VALUE,
3446 : "",
3447 : VARIANT_HK,
3448 : kPageBreakKTable,
3449 : CSS_PROP_NO_OFFSET,
3450 : eStyleAnimType_Discrete) // temp fix for bug 24000
3451 1348 : CSS_PROP_DISPLAY(
3452 : page-break-before,
3453 : page_break_before,
3454 : PageBreakBefore,
3455 : CSS_PROPERTY_PARSE_VALUE,
3456 : "",
3457 : VARIANT_HK,
3458 : kPageBreakKTable,
3459 : CSS_PROP_NO_OFFSET,
3460 : eStyleAnimType_Discrete) // temp fix for bug 24000
3461 1348 : CSS_PROP_DISPLAY(
3462 : page-break-inside,
3463 : page_break_inside,
3464 : PageBreakInside,
3465 : CSS_PROPERTY_PARSE_VALUE,
3466 : "",
3467 : VARIANT_HK,
3468 : kPageBreakInsideKTable,
3469 : CSS_PROP_NO_OFFSET,
3470 : eStyleAnimType_Discrete)
3471 138 : CSS_PROP_SVG(
3472 : paint-order,
3473 : paint_order,
3474 : PaintOrder,
3475 : CSS_PROPERTY_PARSE_FUNCTION,
3476 : "svg.paint-order.enabled",
3477 : 0,
3478 : nullptr,
3479 : CSS_PROP_NO_OFFSET,
3480 : eStyleAnimType_Discrete)
3481 1348 : CSS_PROP_DISPLAY(
3482 : perspective,
3483 : perspective,
3484 : Perspective,
3485 : CSS_PROPERTY_PARSE_VALUE |
3486 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
3487 : CSS_PROPERTY_FIXPOS_CB,
3488 : "",
3489 : VARIANT_NONE | VARIANT_INHERIT | VARIANT_LENGTH |
3490 : VARIANT_NONNEGATIVE_DIMENSION,
3491 : nullptr,
3492 : offsetof(nsStyleDisplay, mChildPerspective),
3493 : eStyleAnimType_Coord)
3494 1348 : CSS_PROP_DISPLAY(
3495 : perspective-origin,
3496 : perspective_origin,
3497 : PerspectiveOrigin,
3498 : CSS_PROPERTY_PARSE_FUNCTION |
3499 : CSS_PROPERTY_STORES_CALC |
3500 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3501 : "",
3502 : 0,
3503 : kImageLayerPositionKTable,
3504 : CSS_PROP_NO_OFFSET,
3505 : eStyleAnimType_Custom)
3506 3 : CSS_PROP_SHORTHAND(
3507 : place-content,
3508 : place_content,
3509 : PlaceContent,
3510 : CSS_PROPERTY_PARSE_FUNCTION,
3511 : "")
3512 3 : CSS_PROP_SHORTHAND(
3513 : place-items,
3514 : place_items,
3515 : PlaceItems,
3516 : CSS_PROPERTY_PARSE_FUNCTION,
3517 : "")
3518 3 : CSS_PROP_SHORTHAND(
3519 : place-self,
3520 : place_self,
3521 : PlaceSelf,
3522 : CSS_PROPERTY_PARSE_FUNCTION,
3523 : "")
3524 2987 : CSS_PROP_USERINTERFACE(
3525 : pointer-events,
3526 : pointer_events,
3527 : PointerEvents,
3528 : CSS_PROPERTY_PARSE_VALUE |
3529 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3530 : "",
3531 : VARIANT_HK,
3532 : kPointerEventsKTable,
3533 : CSS_PROP_NO_OFFSET,
3534 : eStyleAnimType_Discrete)
3535 1348 : CSS_PROP_DISPLAY(
3536 : position,
3537 : position,
3538 : Position,
3539 : CSS_PROPERTY_PARSE_VALUE |
3540 : // For position: sticky/fixed
3541 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
3542 : CSS_PROPERTY_ABSPOS_CB,
3543 : "",
3544 : VARIANT_HK,
3545 : kPositionKTable,
3546 : CSS_PROP_NO_OFFSET,
3547 : eStyleAnimType_Discrete)
3548 266 : CSS_PROP_LIST(
3549 : quotes,
3550 : quotes,
3551 : Quotes,
3552 : CSS_PROPERTY_PARSE_FUNCTION,
3553 : "",
3554 : 0,
3555 : nullptr,
3556 : CSS_PROP_NO_OFFSET,
3557 : eStyleAnimType_Discrete)
3558 1348 : CSS_PROP_DISPLAY(
3559 : resize,
3560 : resize,
3561 : Resize,
3562 : CSS_PROPERTY_PARSE_VALUE |
3563 : // This is allowed because the UA stylesheet sets 'resize: both;' on
3564 : // textarea and we need to disable this for the placeholder
3565 : // pseudo-element.
3566 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3567 : "",
3568 : VARIANT_HK,
3569 : kResizeKTable,
3570 : CSS_PROP_NO_OFFSET,
3571 : eStyleAnimType_Discrete)
3572 6 : CSS_PROP_POSITION(
3573 : right,
3574 : right,
3575 : Right,
3576 : CSS_PROPERTY_PARSE_VALUE |
3577 : CSS_PROPERTY_STORES_CALC |
3578 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
3579 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
3580 : "",
3581 : VARIANT_AHLP | VARIANT_CALC,
3582 : nullptr,
3583 : offsetof(nsStylePosition, mOffset),
3584 : eStyleAnimType_Sides_Right)
3585 98 : CSS_PROP_TEXT(
3586 : ruby-align,
3587 : ruby_align,
3588 : RubyAlign,
3589 : CSS_PROPERTY_PARSE_VALUE,
3590 : "",
3591 : VARIANT_HK,
3592 : kRubyAlignKTable,
3593 : CSS_PROP_NO_OFFSET,
3594 : eStyleAnimType_Discrete)
3595 98 : CSS_PROP_TEXT(
3596 : ruby-position,
3597 : ruby_position,
3598 : RubyPosition,
3599 : CSS_PROPERTY_PARSE_VALUE,
3600 : "",
3601 : VARIANT_HK,
3602 : kRubyPositionKTable,
3603 : CSS_PROP_NO_OFFSET,
3604 : eStyleAnimType_Discrete)
3605 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
3606 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
3607 2590 : CSS_PROP_FONT(
3608 : -moz-script-level,
3609 : _moz_script_level,
3610 : ScriptLevel,
3611 : // We only allow 'script-level' when unsafe rules are enabled, because
3612 : // otherwise it could interfere with rulenode optimizations if used in
3613 : // a non-MathML-enabled document.
3614 : CSS_PROPERTY_INTERNAL |
3615 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS |
3616 : CSS_PROPERTY_PARSE_VALUE,
3617 : "",
3618 : // script-level can take Auto, Integer and Number values, but only Auto
3619 : // ("increment if parent is not in displaystyle") and Integer
3620 : // ("relative") values can be specified in a style sheet.
3621 : VARIANT_AHI,
3622 : nullptr,
3623 : CSS_PROP_NO_OFFSET,
3624 : eStyleAnimType_None)
3625 1310 : CSS_PROP_FONT(
3626 : -moz-script-min-size,
3627 : _moz_script_min_size,
3628 : ScriptMinSize,
3629 : CSS_PROPERTY_INTERNAL |
3630 : CSS_PROPERTY_PARSE_INACCESSIBLE,
3631 : "",
3632 : 0,
3633 : nullptr,
3634 : CSS_PROP_NO_OFFSET,
3635 : eStyleAnimType_None)
3636 1310 : CSS_PROP_FONT(
3637 : -moz-script-size-multiplier,
3638 : _moz_script_size_multiplier,
3639 : ScriptSizeMultiplier,
3640 : CSS_PROPERTY_INTERNAL |
3641 : CSS_PROPERTY_PARSE_INACCESSIBLE,
3642 : "",
3643 : 0,
3644 : nullptr,
3645 : CSS_PROP_NO_OFFSET,
3646 : eStyleAnimType_None)
3647 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
3648 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
3649 1348 : CSS_PROP_DISPLAY(
3650 : scroll-behavior,
3651 : scroll_behavior,
3652 : ScrollBehavior,
3653 : CSS_PROPERTY_PARSE_VALUE,
3654 : "layout.css.scroll-behavior.property-enabled",
3655 : VARIANT_HK,
3656 : kScrollBehaviorKTable,
3657 : CSS_PROP_NO_OFFSET,
3658 : eStyleAnimType_Discrete)
3659 1348 : CSS_PROP_DISPLAY(
3660 : scroll-snap-coordinate,
3661 : scroll_snap_coordinate,
3662 : ScrollSnapCoordinate,
3663 : CSS_PROPERTY_PARSE_VALUE |
3664 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3665 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
3666 : CSS_PROPERTY_STORES_CALC,
3667 : "layout.css.scroll-snap.enabled",
3668 : 0,
3669 : kImageLayerPositionKTable,
3670 : CSS_PROP_NO_OFFSET,
3671 : eStyleAnimType_Discrete)
3672 1348 : CSS_PROP_DISPLAY(
3673 : scroll-snap-destination,
3674 : scroll_snap_destination,
3675 : ScrollSnapDestination,
3676 : CSS_PROPERTY_PARSE_VALUE |
3677 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3678 : CSS_PROPERTY_STORES_CALC,
3679 : "layout.css.scroll-snap.enabled",
3680 : 0,
3681 : kImageLayerPositionKTable,
3682 : CSS_PROP_NO_OFFSET,
3683 : eStyleAnimType_Discrete)
3684 1348 : CSS_PROP_DISPLAY(
3685 : scroll-snap-points-x,
3686 : scroll_snap_points_x,
3687 : ScrollSnapPointsX,
3688 : CSS_PROPERTY_PARSE_VALUE |
3689 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3690 : CSS_PROPERTY_STORES_CALC,
3691 : "layout.css.scroll-snap.enabled",
3692 : 0,
3693 : nullptr,
3694 : CSS_PROP_NO_OFFSET,
3695 : eStyleAnimType_Discrete)
3696 1348 : CSS_PROP_DISPLAY(
3697 : scroll-snap-points-y,
3698 : scroll_snap_points_y,
3699 : ScrollSnapPointsY,
3700 : CSS_PROPERTY_PARSE_VALUE |
3701 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3702 : CSS_PROPERTY_STORES_CALC,
3703 : "layout.css.scroll-snap.enabled",
3704 : 0,
3705 : nullptr,
3706 : CSS_PROP_NO_OFFSET,
3707 : eStyleAnimType_Discrete)
3708 3 : CSS_PROP_SHORTHAND(
3709 : scroll-snap-type,
3710 : scroll_snap_type,
3711 : ScrollSnapType,
3712 : CSS_PROPERTY_PARSE_FUNCTION,
3713 : "layout.css.scroll-snap.enabled")
3714 1348 : CSS_PROP_DISPLAY(
3715 : scroll-snap-type-x,
3716 : scroll_snap_type_x,
3717 : ScrollSnapTypeX,
3718 : CSS_PROPERTY_PARSE_VALUE,
3719 : "layout.css.scroll-snap.enabled",
3720 : VARIANT_HK,
3721 : kScrollSnapTypeKTable,
3722 : CSS_PROP_NO_OFFSET,
3723 : eStyleAnimType_Discrete)
3724 1348 : CSS_PROP_DISPLAY(
3725 : scroll-snap-type-y,
3726 : scroll_snap_type_y,
3727 : ScrollSnapTypeY,
3728 : CSS_PROPERTY_PARSE_VALUE,
3729 : "layout.css.scroll-snap.enabled",
3730 : VARIANT_HK,
3731 : kScrollSnapTypeKTable,
3732 : CSS_PROP_NO_OFFSET,
3733 : eStyleAnimType_Discrete)
3734 1348 : CSS_PROP_DISPLAY(
3735 : shape-outside,
3736 : shape_outside,
3737 : ShapeOutside,
3738 : CSS_PROPERTY_PARSE_VALUE |
3739 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3740 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER,
3741 : "layout.css.shape-outside.enabled",
3742 : 0,
3743 : nullptr,
3744 : CSS_PROP_NO_OFFSET,
3745 : eStyleAnimType_Discrete) // FIXME: Bug 1289049 for adding animation support
3746 138 : CSS_PROP_SVG(
3747 : shape-rendering,
3748 : shape_rendering,
3749 : ShapeRendering,
3750 : CSS_PROPERTY_PARSE_VALUE,
3751 : "",
3752 : VARIANT_HK,
3753 : kShapeRenderingKTable,
3754 : CSS_PROP_NO_OFFSET,
3755 : eStyleAnimType_Discrete)
3756 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
3757 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
3758 6 : CSS_PROP_TABLE(
3759 : -x-span,
3760 : _x_span,
3761 : Span,
3762 : CSS_PROPERTY_INTERNAL |
3763 : CSS_PROPERTY_PARSE_INACCESSIBLE,
3764 : "",
3765 : 0,
3766 : nullptr,
3767 : CSS_PROP_NO_OFFSET,
3768 : eStyleAnimType_None)
3769 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
3770 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
3771 322 : CSS_PROP_XUL(
3772 : -moz-stack-sizing,
3773 : _moz_stack_sizing,
3774 : CSS_PROP_DOMPROP_PREFIXED(StackSizing),
3775 : CSS_PROPERTY_PARSE_VALUE,
3776 : "",
3777 : VARIANT_HK,
3778 : kStackSizingKTable,
3779 : CSS_PROP_NO_OFFSET,
3780 : eStyleAnimType_Discrete)
3781 66 : CSS_PROP_SVGRESET(
3782 : stop-color,
3783 : stop_color,
3784 : StopColor,
3785 : CSS_PROPERTY_PARSE_VALUE,
3786 : "",
3787 : VARIANT_HC,
3788 : nullptr,
3789 : offsetof(nsStyleSVGReset, mStopColor),
3790 : eStyleAnimType_Color)
3791 66 : CSS_PROP_SVGRESET(
3792 : stop-opacity,
3793 : stop_opacity,
3794 : StopOpacity,
3795 : CSS_PROPERTY_PARSE_VALUE,
3796 : "",
3797 : VARIANT_HN,
3798 : nullptr,
3799 : offsetof(nsStyleSVGReset, mStopOpacity),
3800 : eStyleAnimType_float)
3801 138 : CSS_PROP_SVG(
3802 : stroke,
3803 : stroke,
3804 : Stroke,
3805 : CSS_PROPERTY_PARSE_FUNCTION,
3806 : "",
3807 : 0,
3808 : kContextPatternKTable,
3809 : offsetof(nsStyleSVG, mStroke),
3810 : eStyleAnimType_PaintServer)
3811 138 : CSS_PROP_SVG(
3812 : stroke-dasharray,
3813 : stroke_dasharray,
3814 : StrokeDasharray,
3815 : CSS_PROPERTY_PARSE_FUNCTION |
3816 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
3817 : CSS_PROPERTY_NUMBERS_ARE_PIXELS,
3818 : // NOTE: Internal values have range restrictions.
3819 : "",
3820 : 0,
3821 : kStrokeContextValueKTable,
3822 : CSS_PROP_NO_OFFSET, /* property stored in 2 separate members */
3823 : eStyleAnimType_Custom)
3824 270 : CSS_PROP_SVG(
3825 : stroke-dashoffset,
3826 : stroke_dashoffset,
3827 : StrokeDashoffset,
3828 : CSS_PROPERTY_PARSE_VALUE |
3829 : CSS_PROPERTY_NUMBERS_ARE_PIXELS,
3830 : "",
3831 : VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
3832 : kStrokeContextValueKTable,
3833 : offsetof(nsStyleSVG, mStrokeDashoffset),
3834 : eStyleAnimType_Coord)
3835 138 : CSS_PROP_SVG(
3836 : stroke-linecap,
3837 : stroke_linecap,
3838 : StrokeLinecap,
3839 : CSS_PROPERTY_PARSE_VALUE,
3840 : "",
3841 : VARIANT_HK,
3842 : kStrokeLinecapKTable,
3843 : CSS_PROP_NO_OFFSET,
3844 : eStyleAnimType_Discrete)
3845 138 : CSS_PROP_SVG(
3846 : stroke-linejoin,
3847 : stroke_linejoin,
3848 : StrokeLinejoin,
3849 : CSS_PROPERTY_PARSE_VALUE,
3850 : "",
3851 : VARIANT_HK,
3852 : kStrokeLinejoinKTable,
3853 : CSS_PROP_NO_OFFSET,
3854 : eStyleAnimType_Discrete)
3855 138 : CSS_PROP_SVG(
3856 : stroke-miterlimit,
3857 : stroke_miterlimit,
3858 : StrokeMiterlimit,
3859 : CSS_PROPERTY_PARSE_VALUE |
3860 : CSS_PROPERTY_VALUE_AT_LEAST_ONE,
3861 : "",
3862 : VARIANT_HN,
3863 : nullptr,
3864 : offsetof(nsStyleSVG, mStrokeMiterlimit),
3865 : eStyleAnimType_float)
3866 138 : CSS_PROP_SVG(
3867 : stroke-opacity,
3868 : stroke_opacity,
3869 : StrokeOpacity,
3870 : CSS_PROPERTY_PARSE_VALUE,
3871 : "",
3872 : VARIANT_HN | VARIANT_KEYWORD,
3873 : kContextOpacityKTable,
3874 : offsetof(nsStyleSVG, mStrokeOpacity),
3875 : eStyleAnimType_float)
3876 138 : CSS_PROP_SVG(
3877 : stroke-width,
3878 : stroke_width,
3879 : StrokeWidth,
3880 : CSS_PROPERTY_PARSE_VALUE |
3881 : CSS_PROPERTY_VALUE_NONNEGATIVE |
3882 : CSS_PROPERTY_NUMBERS_ARE_PIXELS,
3883 : "",
3884 : VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
3885 : kStrokeContextValueKTable,
3886 : offsetof(nsStyleSVG, mStrokeWidth),
3887 : eStyleAnimType_Coord)
3888 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
3889 30 : CSS_PROP_FONT(
3890 : -x-system-font,
3891 : _x_system_font,
3892 : CSS_PROP_DOMPROP_PREFIXED(SystemFont),
3893 : CSS_PROPERTY_INTERNAL |
3894 : CSS_PROPERTY_PARSE_INACCESSIBLE |
3895 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
3896 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3897 : "",
3898 : 0,
3899 : kFontKTable,
3900 : CSS_PROP_NO_OFFSET,
3901 : eStyleAnimType_None)
3902 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
3903 98 : CSS_PROP_TEXT(
3904 : -moz-tab-size,
3905 : _moz_tab_size,
3906 : CSS_PROP_DOMPROP_PREFIXED(TabSize),
3907 : CSS_PROPERTY_PARSE_VALUE |
3908 : CSS_PROPERTY_VALUE_NONNEGATIVE,
3909 : "",
3910 : VARIANT_INHERIT | VARIANT_LNCALC,
3911 : nullptr,
3912 : offsetof(nsStyleText, mTabSize),
3913 : eStyleAnimType_Coord)
3914 6 : CSS_PROP_TABLE(
3915 : table-layout,
3916 : table_layout,
3917 : TableLayout,
3918 : CSS_PROPERTY_PARSE_VALUE,
3919 : "",
3920 : VARIANT_HK,
3921 : kTableLayoutKTable,
3922 : CSS_PROP_NO_OFFSET,
3923 : eStyleAnimType_Discrete)
3924 1998 : CSS_PROP_TEXT(
3925 : text-align,
3926 : text_align,
3927 : TextAlign,
3928 : CSS_PROPERTY_PARSE_VALUE | CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3929 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3930 : "",
3931 : // When we support aligning on a string, we can parse text-align
3932 : // as a string....
3933 : VARIANT_HK /* | VARIANT_STRING */,
3934 : kTextAlignKTable,
3935 : CSS_PROP_NO_OFFSET,
3936 : eStyleAnimType_Discrete)
3937 98 : CSS_PROP_TEXT(
3938 : text-align-last,
3939 : text_align_last,
3940 : TextAlignLast,
3941 : CSS_PROPERTY_PARSE_VALUE | CSS_PROPERTY_VALUE_PARSER_FUNCTION,
3942 : "",
3943 : VARIANT_HK,
3944 : kTextAlignLastKTable,
3945 : offsetof(nsStyleText, mTextAlignLast),
3946 : eStyleAnimType_Discrete)
3947 138 : CSS_PROP_SVG(
3948 : text-anchor,
3949 : text_anchor,
3950 : TextAnchor,
3951 : CSS_PROPERTY_PARSE_VALUE,
3952 : "",
3953 : VARIANT_HK,
3954 : kTextAnchorKTable,
3955 : CSS_PROP_NO_OFFSET,
3956 : eStyleAnimType_Discrete)
3957 98 : CSS_PROP_TEXT(
3958 : text-combine-upright,
3959 : text_combine_upright,
3960 : TextCombineUpright,
3961 : CSS_PROPERTY_PARSE_VALUE |
3962 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
3963 : "layout.css.text-combine-upright.enabled",
3964 : 0,
3965 : kTextCombineUprightKTable,
3966 : CSS_PROP_NO_OFFSET,
3967 : eStyleAnimType_Discrete)
3968 3 : CSS_PROP_SHORTHAND(
3969 : text-decoration,
3970 : text_decoration,
3971 : TextDecoration,
3972 : CSS_PROPERTY_PARSE_FUNCTION,
3973 : "")
3974 248 : CSS_PROP_TEXTRESET(
3975 : text-decoration-color,
3976 : text_decoration_color,
3977 : TextDecorationColor,
3978 : CSS_PROPERTY_PARSE_VALUE |
3979 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
3980 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
3981 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
3982 : "",
3983 : VARIANT_HC,
3984 : nullptr,
3985 : offsetof(nsStyleTextReset, mTextDecorationColor),
3986 : eStyleAnimType_ComplexColor)
3987 248 : CSS_PROP_TEXTRESET(
3988 : text-decoration-line,
3989 : text_decoration_line,
3990 : TextDecorationLine,
3991 : CSS_PROPERTY_PARSE_VALUE |
3992 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
3993 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
3994 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
3995 : "",
3996 : 0,
3997 : kTextDecorationLineKTable,
3998 : CSS_PROP_NO_OFFSET,
3999 : eStyleAnimType_Discrete)
4000 248 : CSS_PROP_TEXTRESET(
4001 : text-decoration-style,
4002 : text_decoration_style,
4003 : TextDecorationStyle,
4004 : CSS_PROPERTY_PARSE_VALUE |
4005 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4006 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4007 : "",
4008 : VARIANT_HK,
4009 : kTextDecorationStyleKTable,
4010 : CSS_PROP_NO_OFFSET,
4011 : eStyleAnimType_Discrete)
4012 3 : CSS_PROP_SHORTHAND(
4013 : text-emphasis,
4014 : text_emphasis,
4015 : TextEmphasis,
4016 : CSS_PROPERTY_PARSE_FUNCTION,
4017 : "")
4018 98 : CSS_PROP_TEXT(
4019 : text-emphasis-color,
4020 : text_emphasis_color,
4021 : TextEmphasisColor,
4022 : CSS_PROPERTY_PARSE_VALUE |
4023 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
4024 : "",
4025 : VARIANT_HC,
4026 : nullptr,
4027 : offsetof(nsStyleText, mTextEmphasisColor),
4028 : eStyleAnimType_ComplexColor)
4029 98 : CSS_PROP_TEXT(
4030 : text-emphasis-position,
4031 : text_emphasis_position,
4032 : TextEmphasisPosition,
4033 : CSS_PROPERTY_PARSE_VALUE |
4034 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
4035 : "",
4036 : 0,
4037 : kTextEmphasisPositionKTable,
4038 : CSS_PROP_NO_OFFSET,
4039 : eStyleAnimType_Discrete)
4040 98 : CSS_PROP_TEXT(
4041 : text-emphasis-style,
4042 : text_emphasis_style,
4043 : TextEmphasisStyle,
4044 : CSS_PROPERTY_PARSE_VALUE |
4045 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
4046 : "",
4047 : 0,
4048 : nullptr,
4049 : CSS_PROP_NO_OFFSET,
4050 : eStyleAnimType_Discrete)
4051 98 : CSS_PROP_TEXT(
4052 : -webkit-text-fill-color,
4053 : _webkit_text_fill_color,
4054 : WebkitTextFillColor,
4055 : CSS_PROPERTY_PARSE_VALUE |
4056 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4057 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
4058 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
4059 : "layout.css.prefixes.webkit",
4060 : VARIANT_HC,
4061 : nullptr,
4062 : offsetof(nsStyleText, mWebkitTextFillColor),
4063 : eStyleAnimType_ComplexColor)
4064 98 : CSS_PROP_TEXT(
4065 : text-indent,
4066 : text_indent,
4067 : TextIndent,
4068 : CSS_PROPERTY_PARSE_VALUE |
4069 : CSS_PROPERTY_STORES_CALC |
4070 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
4071 : "",
4072 : VARIANT_HLP | VARIANT_CALC,
4073 : nullptr,
4074 : offsetof(nsStyleText, mTextIndent),
4075 : eStyleAnimType_Coord)
4076 98 : CSS_PROP_TEXT(
4077 : text-justify,
4078 : text_justify,
4079 : TextJustify,
4080 : CSS_PROPERTY_PARSE_VALUE |
4081 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4082 : "layout.css.text-justify.enabled",
4083 : VARIANT_HK,
4084 : kTextJustifyKTable,
4085 : CSS_PROP_NO_OFFSET,
4086 : eStyleAnimType_Discrete)
4087 290 : CSS_PROP_VISIBILITY(
4088 : text-orientation,
4089 : text_orientation,
4090 : TextOrientation,
4091 : CSS_PROPERTY_PARSE_VALUE,
4092 : "",
4093 : VARIANT_HK,
4094 : kTextOrientationKTable,
4095 : CSS_PROP_NO_OFFSET,
4096 : eStyleAnimType_Discrete)
4097 248 : CSS_PROP_TEXTRESET(
4098 : text-overflow,
4099 : text_overflow,
4100 : TextOverflow,
4101 : CSS_PROPERTY_PARSE_VALUE |
4102 : CSS_PROPERTY_VALUE_PARSER_FUNCTION |
4103 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4104 : "",
4105 : 0,
4106 : kTextOverflowKTable,
4107 : offsetof(nsStyleTextReset, mTextOverflow),
4108 : eStyleAnimType_Discrete)
4109 98 : CSS_PROP_TEXT(
4110 : text-rendering,
4111 : text_rendering,
4112 : TextRendering,
4113 : CSS_PROPERTY_PARSE_VALUE,
4114 : "",
4115 : VARIANT_HK,
4116 : kTextRenderingKTable,
4117 : CSS_PROP_NO_OFFSET,
4118 : eStyleAnimType_Discrete)
4119 98 : CSS_PROP_TEXT(
4120 : text-shadow,
4121 : text_shadow,
4122 : TextShadow,
4123 : CSS_PROPERTY_PARSE_FUNCTION |
4124 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4125 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
4126 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS |
4127 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
4128 : // NOTE: some components must be nonnegative
4129 : "",
4130 : 0,
4131 : nullptr,
4132 : offsetof(nsStyleText, mTextShadow),
4133 : eStyleAnimType_Shadow)
4134 98 : CSS_PROP_TEXT(
4135 : -moz-text-size-adjust,
4136 : _moz_text_size_adjust,
4137 : CSS_PROP_DOMPROP_PREFIXED(TextSizeAdjust),
4138 : CSS_PROPERTY_PARSE_VALUE,
4139 : "",
4140 : VARIANT_HK,
4141 : kTextSizeAdjustKTable,
4142 : CSS_PROP_NO_OFFSET,
4143 : eStyleAnimType_Discrete)
4144 3 : CSS_PROP_SHORTHAND(
4145 : -webkit-text-stroke,
4146 : _webkit_text_stroke,
4147 : WebkitTextStroke,
4148 : CSS_PROPERTY_PARSE_FUNCTION,
4149 : "layout.css.prefixes.webkit")
4150 98 : CSS_PROP_TEXT(
4151 : -webkit-text-stroke-color,
4152 : _webkit_text_stroke_color,
4153 : WebkitTextStrokeColor,
4154 : CSS_PROPERTY_PARSE_VALUE |
4155 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4156 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
4157 : CSS_PROPERTY_IGNORED_WHEN_COLORS_DISABLED,
4158 : "layout.css.prefixes.webkit",
4159 : VARIANT_HC,
4160 : nullptr,
4161 : offsetof(nsStyleText, mWebkitTextStrokeColor),
4162 : eStyleAnimType_ComplexColor)
4163 98 : CSS_PROP_TEXT(
4164 : -webkit-text-stroke-width,
4165 : _webkit_text_stroke_width,
4166 : WebkitTextStrokeWidth,
4167 : CSS_PROPERTY_PARSE_VALUE |
4168 : CSS_PROPERTY_VALUE_NONNEGATIVE |
4169 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4170 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4171 : "layout.css.prefixes.webkit",
4172 : VARIANT_HKL | VARIANT_CALC,
4173 : kBorderWidthKTable,
4174 : CSS_PROP_NO_OFFSET,
4175 : eStyleAnimType_Discrete)
4176 98 : CSS_PROP_TEXT(
4177 : text-transform,
4178 : text_transform,
4179 : TextTransform,
4180 : CSS_PROPERTY_PARSE_VALUE |
4181 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4182 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4183 : "",
4184 : VARIANT_HK,
4185 : kTextTransformKTable,
4186 : CSS_PROP_NO_OFFSET,
4187 : eStyleAnimType_Discrete)
4188 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
4189 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
4190 30 : CSS_PROP_FONT(
4191 : -x-text-zoom,
4192 : _x_text_zoom,
4193 : TextZoom,
4194 : CSS_PROPERTY_INTERNAL |
4195 : CSS_PROPERTY_PARSE_INACCESSIBLE,
4196 : "",
4197 : 0,
4198 : nullptr,
4199 : CSS_PROP_NO_OFFSET,
4200 : eStyleAnimType_None)
4201 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
4202 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
4203 6 : CSS_PROP_POSITION(
4204 : top,
4205 : top,
4206 : Top,
4207 : CSS_PROPERTY_PARSE_VALUE |
4208 : CSS_PROPERTY_STORES_CALC |
4209 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
4210 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
4211 : "",
4212 : VARIANT_AHLP | VARIANT_CALC,
4213 : nullptr,
4214 : offsetof(nsStylePosition, mOffset),
4215 : eStyleAnimType_Sides_Top)
4216 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
4217 1348 : CSS_PROP_DISPLAY(
4218 : -moz-top-layer,
4219 : _moz_top_layer,
4220 : CSS_PROP_DOMPROP_PREFIXED(TopLayer),
4221 : CSS_PROPERTY_INTERNAL |
4222 : CSS_PROPERTY_PARSE_VALUE |
4223 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
4224 : "",
4225 : VARIANT_HK,
4226 : kTopLayerKTable,
4227 : CSS_PROP_NO_OFFSET,
4228 : eStyleAnimType_None)
4229 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
4230 1348 : CSS_PROP_DISPLAY(
4231 : touch-action,
4232 : touch_action,
4233 : TouchAction,
4234 : CSS_PROPERTY_PARSE_VALUE |
4235 : CSS_PROPERTY_VALUE_PARSER_FUNCTION,
4236 : "layout.css.touch_action.enabled",
4237 : VARIANT_HK,
4238 : kTouchActionKTable,
4239 : CSS_PROP_NO_OFFSET,
4240 : eStyleAnimType_Discrete)
4241 1348 : CSS_PROP_DISPLAY(
4242 : transform,
4243 : transform,
4244 : Transform,
4245 : CSS_PROPERTY_PARSE_FUNCTION |
4246 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
4247 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
4248 : CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR |
4249 : CSS_PROPERTY_FIXPOS_CB,
4250 : "",
4251 : 0,
4252 : nullptr,
4253 : offsetof(nsStyleDisplay, mSpecifiedTransform),
4254 : eStyleAnimType_Custom)
4255 : // This shorthand is essentially an alias, but it requires different
4256 : // parsing rules, and it therefore implemented as a shorthand.
4257 3 : CSS_PROP_SHORTHAND(
4258 : -moz-transform,
4259 : _moz_transform,
4260 : MozTransform,
4261 : CSS_PROPERTY_PARSE_FUNCTION |
4262 : CSS_PROPERTY_IS_ALIAS,
4263 : "layout.css.prefixes.transforms")
4264 1348 : CSS_PROP_DISPLAY(
4265 : transform-box,
4266 : transform_box,
4267 : TransformBox,
4268 : CSS_PROPERTY_PARSE_VALUE,
4269 : "svg.transform-box.enabled",
4270 : VARIANT_HK,
4271 : kTransformBoxKTable,
4272 : CSS_PROP_NO_OFFSET,
4273 : eStyleAnimType_Discrete)
4274 1348 : CSS_PROP_DISPLAY(
4275 : transform-origin,
4276 : transform_origin,
4277 : TransformOrigin,
4278 : CSS_PROPERTY_PARSE_FUNCTION |
4279 : CSS_PROPERTY_STORES_CALC |
4280 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
4281 : "",
4282 : 0,
4283 : kImageLayerPositionKTable,
4284 : CSS_PROP_NO_OFFSET,
4285 : eStyleAnimType_Custom)
4286 1348 : CSS_PROP_DISPLAY(
4287 : transform-style,
4288 : transform_style,
4289 : TransformStyle,
4290 : CSS_PROPERTY_PARSE_VALUE |
4291 : CSS_PROPERTY_CREATES_STACKING_CONTEXT |
4292 : CSS_PROPERTY_FIXPOS_CB,
4293 : "",
4294 : VARIANT_HK,
4295 : kTransformStyleKTable,
4296 : CSS_PROP_NO_OFFSET,
4297 : eStyleAnimType_Discrete)
4298 3 : CSS_PROP_SHORTHAND(
4299 : transition,
4300 : transition,
4301 : Transition,
4302 : CSS_PROPERTY_PARSE_FUNCTION,
4303 : "")
4304 6 : CSS_PROP_DISPLAY(
4305 : transition-delay,
4306 : transition_delay,
4307 : TransitionDelay,
4308 : CSS_PROPERTY_PARSE_VALUE_LIST |
4309 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
4310 : "",
4311 : VARIANT_TIME, // used by list parsing
4312 : nullptr,
4313 : CSS_PROP_NO_OFFSET,
4314 : eStyleAnimType_None)
4315 6 : CSS_PROP_DISPLAY(
4316 : transition-duration,
4317 : transition_duration,
4318 : TransitionDuration,
4319 : CSS_PROPERTY_PARSE_VALUE_LIST |
4320 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
4321 : "",
4322 : VARIANT_TIME | VARIANT_NONNEGATIVE_DIMENSION, // used by list parsing
4323 : nullptr,
4324 : CSS_PROP_NO_OFFSET,
4325 : eStyleAnimType_None)
4326 6 : CSS_PROP_DISPLAY(
4327 : transition-property,
4328 : transition_property,
4329 : TransitionProperty,
4330 : CSS_PROPERTY_PARSE_FUNCTION |
4331 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
4332 : "",
4333 : VARIANT_IDENTIFIER | VARIANT_NONE | VARIANT_ALL, // used only in shorthand
4334 : nullptr,
4335 : CSS_PROP_NO_OFFSET,
4336 : eStyleAnimType_None)
4337 6 : CSS_PROP_DISPLAY(
4338 : transition-timing-function,
4339 : transition_timing_function,
4340 : TransitionTimingFunction,
4341 : CSS_PROPERTY_PARSE_VALUE_LIST |
4342 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
4343 : "",
4344 : VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
4345 : kTransitionTimingFunctionKTable,
4346 : CSS_PROP_NO_OFFSET,
4347 : eStyleAnimType_None)
4348 : #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
4349 248 : CSS_PROP_TEXTRESET(
4350 : unicode-bidi,
4351 : unicode_bidi,
4352 : UnicodeBidi,
4353 : CSS_PROPERTY_PARSE_VALUE,
4354 : "",
4355 : VARIANT_HK,
4356 : kUnicodeBidiKTable,
4357 : CSS_PROP_NO_OFFSET,
4358 : eStyleAnimType_Discrete)
4359 : #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
4360 2986 : CSS_PROP_USERINTERFACE(
4361 : -moz-user-focus,
4362 : _moz_user_focus,
4363 : CSS_PROP_DOMPROP_PREFIXED(UserFocus),
4364 : CSS_PROPERTY_PARSE_VALUE,
4365 : "",
4366 : VARIANT_HK,
4367 : kUserFocusKTable,
4368 : CSS_PROP_NO_OFFSET,
4369 : eStyleAnimType_Discrete) // XXX bug 3935
4370 2986 : CSS_PROP_USERINTERFACE(
4371 : -moz-user-input,
4372 : _moz_user_input,
4373 : CSS_PROP_DOMPROP_PREFIXED(UserInput),
4374 : CSS_PROPERTY_PARSE_VALUE,
4375 : "",
4376 : VARIANT_HK,
4377 : kUserInputKTable,
4378 : CSS_PROP_NO_OFFSET,
4379 : eStyleAnimType_Discrete) // XXX ??? // XXX bug 3935
4380 2986 : CSS_PROP_USERINTERFACE(
4381 : -moz-user-modify,
4382 : _moz_user_modify,
4383 : CSS_PROP_DOMPROP_PREFIXED(UserModify),
4384 : CSS_PROPERTY_PARSE_VALUE,
4385 : "",
4386 : VARIANT_HK,
4387 : kUserModifyKTable,
4388 : CSS_PROP_NO_OFFSET,
4389 : eStyleAnimType_Discrete) // XXX bug 3935
4390 24 : CSS_PROP_UIRESET(
4391 : -moz-user-select,
4392 : _moz_user_select,
4393 : CSS_PROP_DOMPROP_PREFIXED(UserSelect),
4394 : CSS_PROPERTY_PARSE_VALUE,
4395 : "",
4396 : VARIANT_HK,
4397 : kUserSelectKTable,
4398 : CSS_PROP_NO_OFFSET,
4399 : eStyleAnimType_Discrete) // XXX bug 3935
4400 66 : CSS_PROP_SVGRESET(
4401 : vector-effect,
4402 : vector_effect,
4403 : VectorEffect,
4404 : CSS_PROPERTY_PARSE_VALUE,
4405 : "",
4406 : VARIANT_HK,
4407 : kVectorEffectKTable,
4408 : CSS_PROP_NO_OFFSET,
4409 : eStyleAnimType_Discrete)
4410 : // NOTE: vertical-align is only supposed to apply to :first-letter when
4411 : // 'float' is 'none', but we don't worry about that since it has no
4412 : // effect otherwise
4413 1348 : CSS_PROP_DISPLAY(
4414 : vertical-align,
4415 : vertical_align,
4416 : VerticalAlign,
4417 : CSS_PROPERTY_PARSE_VALUE |
4418 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4419 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
4420 : CSS_PROPERTY_STORES_CALC |
4421 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK,
4422 : "",
4423 : VARIANT_HKLP | VARIANT_CALC,
4424 : kVerticalAlignKTable,
4425 : offsetof(nsStyleDisplay, mVerticalAlign),
4426 : eStyleAnimType_Coord)
4427 290 : CSS_PROP_VISIBILITY(
4428 : visibility,
4429 : visibility,
4430 : Visibility,
4431 : CSS_PROPERTY_PARSE_VALUE,
4432 : "",
4433 : VARIANT_HK,
4434 : kVisibilityKTable,
4435 : CSS_PROP_NO_OFFSET,
4436 : eStyleAnimType_Discrete) // reflow for collapse
4437 98 : CSS_PROP_TEXT(
4438 : white-space,
4439 : white_space,
4440 : WhiteSpace,
4441 : CSS_PROPERTY_PARSE_VALUE |
4442 : // This is required by the UA stylesheet and can't be overridden.
4443 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER,
4444 : "",
4445 : VARIANT_HK,
4446 : kWhitespaceKTable,
4447 : CSS_PROP_NO_OFFSET,
4448 : eStyleAnimType_Discrete)
4449 568 : CSS_PROP_POSITION(
4450 : width,
4451 : width,
4452 : Width,
4453 : CSS_PROPERTY_PARSE_VALUE |
4454 : CSS_PROPERTY_VALUE_NONNEGATIVE |
4455 : CSS_PROPERTY_STORES_CALC |
4456 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
4457 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
4458 : "",
4459 : VARIANT_AHKLP | VARIANT_CALC,
4460 : kWidthKTable,
4461 : offsetof(nsStylePosition, mWidth),
4462 : eStyleAnimType_Coord)
4463 1348 : CSS_PROP_DISPLAY(
4464 : will-change,
4465 : will_change,
4466 : WillChange,
4467 : CSS_PROPERTY_PARSE_FUNCTION |
4468 : CSS_PROPERTY_VALUE_LIST_USES_COMMAS,
4469 : "",
4470 : 0,
4471 : nullptr,
4472 : CSS_PROP_NO_OFFSET,
4473 : eStyleAnimType_Discrete)
4474 24 : CSS_PROP_UIRESET(
4475 : -moz-window-dragging,
4476 : _moz_window_dragging,
4477 : CSS_PROP_DOMPROP_PREFIXED(WindowDragging),
4478 : CSS_PROPERTY_PARSE_VALUE,
4479 : "",
4480 : VARIANT_HK,
4481 : kWindowDraggingKTable,
4482 : CSS_PROP_NO_OFFSET,
4483 : eStyleAnimType_Discrete)
4484 : #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
4485 24 : CSS_PROP_UIRESET(
4486 : -moz-window-shadow,
4487 : _moz_window_shadow,
4488 : CSS_PROP_DOMPROP_PREFIXED(WindowShadow),
4489 : CSS_PROPERTY_INTERNAL |
4490 : CSS_PROPERTY_PARSE_VALUE |
4491 : CSS_PROPERTY_ENABLED_IN_UA_SHEETS_AND_CHROME,
4492 : "",
4493 : VARIANT_HK,
4494 : kWindowShadowKTable,
4495 : CSS_PROP_NO_OFFSET,
4496 : eStyleAnimType_None)
4497 24 : CSS_PROP_UIRESET(
4498 : -moz-window-opacity,
4499 : _moz_window_opacity,
4500 : CSS_PROP_DOMPROP_PREFIXED(WindowOpacity),
4501 : CSS_PROPERTY_INTERNAL | CSS_PROPERTY_PARSE_VALUE,
4502 : "",
4503 : VARIANT_HN,
4504 : nullptr,
4505 : offsetof(nsStyleUIReset, mWindowOpacity),
4506 : eStyleAnimType_float)
4507 24 : CSS_PROP_UIRESET(
4508 : -moz-window-transform,
4509 : _moz_window_transform,
4510 : CSS_PROP_DOMPROP_PREFIXED(WindowTransform),
4511 : CSS_PROPERTY_INTERNAL |
4512 : CSS_PROPERTY_PARSE_FUNCTION |
4513 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
4514 : "",
4515 : 0,
4516 : nullptr,
4517 : offsetof(nsStyleUIReset, mSpecifiedWindowTransform),
4518 : eStyleAnimType_Custom)
4519 24 : CSS_PROP_UIRESET(
4520 : -moz-window-transform-origin,
4521 : _moz_window_transform_origin,
4522 : CSS_PROP_DOMPROP_PREFIXED(WindowTransformOrigin),
4523 : CSS_PROPERTY_INTERNAL |
4524 : CSS_PROPERTY_PARSE_FUNCTION |
4525 : CSS_PROPERTY_STORES_CALC |
4526 : CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
4527 : "",
4528 : 0,
4529 : kImageLayerPositionKTable,
4530 : CSS_PROP_NO_OFFSET,
4531 : eStyleAnimType_Custom)
4532 : #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
4533 98 : CSS_PROP_TEXT(
4534 : word-break,
4535 : word_break,
4536 : WordBreak,
4537 : CSS_PROPERTY_PARSE_VALUE,
4538 : "",
4539 : VARIANT_HK,
4540 : kWordBreakKTable,
4541 : CSS_PROP_NO_OFFSET,
4542 : eStyleAnimType_Discrete)
4543 178 : CSS_PROP_TEXT(
4544 : word-spacing,
4545 : word_spacing,
4546 : WordSpacing,
4547 : CSS_PROPERTY_PARSE_VALUE |
4548 : CSS_PROPERTY_APPLIES_TO_FIRST_LETTER_AND_FIRST_LINE |
4549 : CSS_PROPERTY_APPLIES_TO_PLACEHOLDER |
4550 : CSS_PROPERTY_UNITLESS_LENGTH_QUIRK |
4551 : CSS_PROPERTY_STORES_CALC,
4552 : "",
4553 : VARIANT_HLP | VARIANT_NORMAL | VARIANT_CALC,
4554 : nullptr,
4555 : offsetof(nsStyleText, mWordSpacing),
4556 : eStyleAnimType_Coord)
4557 98 : CSS_PROP_TEXT(
4558 : overflow-wrap,
4559 : overflow_wrap,
4560 : OverflowWrap,
4561 : CSS_PROPERTY_PARSE_VALUE,
4562 : "",
4563 : VARIANT_HK,
4564 : kOverflowWrapKTable,
4565 : CSS_PROP_NO_OFFSET,
4566 : eStyleAnimType_Discrete)
4567 290 : CSS_PROP_VISIBILITY(
4568 : writing-mode,
4569 : writing_mode,
4570 : WritingMode,
4571 : CSS_PROPERTY_PARSE_VALUE,
4572 : "",
4573 : VARIANT_HK,
4574 : kWritingModeKTable,
4575 : CSS_PROP_NO_OFFSET,
4576 : eStyleAnimType_Discrete)
4577 568 : CSS_PROP_POSITION(
4578 : z-index,
4579 : z_index,
4580 : ZIndex,
4581 : CSS_PROPERTY_PARSE_VALUE |
4582 : CSS_PROPERTY_CREATES_STACKING_CONTEXT,
4583 : "",
4584 : VARIANT_AHI,
4585 : nullptr,
4586 : offsetof(nsStylePosition, mZIndex),
4587 : eStyleAnimType_Coord)
4588 :
4589 : #ifdef USED_CSS_PROP
4590 :
4591 : #undef USED_CSS_PROP
4592 : #undef CSS_PROP_FONT
4593 : #undef CSS_PROP_COLOR
4594 : #undef CSS_PROP_BACKGROUND
4595 : #undef CSS_PROP_LIST
4596 : #undef CSS_PROP_POSITION
4597 : #undef CSS_PROP_TEXT
4598 : #undef CSS_PROP_TEXTRESET
4599 : #undef CSS_PROP_DISPLAY
4600 : #undef CSS_PROP_VISIBILITY
4601 : #undef CSS_PROP_CONTENT
4602 : #undef CSS_PROP_USERINTERFACE
4603 : #undef CSS_PROP_UIRESET
4604 : #undef CSS_PROP_TABLE
4605 : #undef CSS_PROP_TABLEBORDER
4606 : #undef CSS_PROP_MARGIN
4607 : #undef CSS_PROP_PADDING
4608 : #undef CSS_PROP_BORDER
4609 : #undef CSS_PROP_OUTLINE
4610 : #undef CSS_PROP_XUL
4611 : #undef CSS_PROP_COLUMN
4612 : #undef CSS_PROP_SVG
4613 : #undef CSS_PROP_SVGRESET
4614 : #undef CSS_PROP_VARIABLES
4615 : #undef CSS_PROP_EFFECTS
4616 :
4617 : #else /* !defined(USED_CSS_PROP) */
4618 :
4619 : #ifdef DEFINED_CSS_PROP_FONT
4620 : #undef CSS_PROP_FONT
4621 : #undef DEFINED_CSS_PROP_FONT
4622 : #endif
4623 : #ifdef DEFINED_CSS_PROP_COLOR
4624 : #undef CSS_PROP_COLOR
4625 : #undef DEFINED_CSS_PROP_COLOR
4626 : #endif
4627 : #ifdef DEFINED_CSS_PROP_BACKGROUND
4628 : #undef CSS_PROP_BACKGROUND
4629 : #undef DEFINED_CSS_PROP_BACKGROUND
4630 : #endif
4631 : #ifdef DEFINED_CSS_PROP_LIST
4632 : #undef CSS_PROP_LIST
4633 : #undef DEFINED_CSS_PROP_LIST
4634 : #endif
4635 : #ifdef DEFINED_CSS_PROP_POSITION
4636 : #undef CSS_PROP_POSITION
4637 : #undef DEFINED_CSS_PROP_POSITION
4638 : #endif
4639 : #ifdef DEFINED_CSS_PROP_TEXT
4640 : #undef CSS_PROP_TEXT
4641 : #undef DEFINED_CSS_PROP_TETEXTRESETT
4642 : #endif
4643 : #ifdef DEFINED_CSS_PROP_TEXTRESET
4644 : #undef CSS_PROP_TEXTRESET
4645 : #undef DEFINED_CSS_PROP_TEDISPLAYTRESET
4646 : #endif
4647 : #ifdef DEFINED_CSS_PROP_DISPLAY
4648 : #undef CSS_PROP_DISPLAY
4649 : #undef DEFINED_CSS_PROP_DISPLAY
4650 : #endif
4651 : #ifdef DEFINED_CSS_PROP_VISIBILITY
4652 : #undef CSS_PROP_VISIBILITY
4653 : #undef DEFINED_CSS_PROP_VISIBILITY
4654 : #endif
4655 : #ifdef DEFINED_CSS_PROP_CONTENT
4656 : #undef CSS_PROP_CONTENT
4657 : #undef DEFINED_CSS_PROP_CONTENT
4658 : #endif
4659 : #ifdef DEFINED_CSS_PROP_USERINTERFACE
4660 : #undef CSS_PROP_USERINTERFACE
4661 : #undef DEFINED_CSS_PROP_USERINTERFACE
4662 : #endif
4663 : #ifdef DEFINED_CSS_PROP_UIRESET
4664 : #undef CSS_PROP_UIRESET
4665 : #undef DEFINED_CSS_PROP_UIRESET
4666 : #endif
4667 : #ifdef DEFINED_CSS_PROP_TABLE
4668 : #undef CSS_PROP_TABLE
4669 : #undef DEFINED_CSS_PROP_TABLE
4670 : #endif
4671 : #ifdef DEFINED_CSS_PROP_TABLEBORDER
4672 : #undef CSS_PROP_TABLEBORDER
4673 : #undef DEFINED_CSS_PROP_TABLEBORDER
4674 : #endif
4675 : #ifdef DEFINED_CSS_PROP_MARGIN
4676 : #undef CSS_PROP_MARGIN
4677 : #undef DEFINED_CSS_PROP_MARGIN
4678 : #endif
4679 : #ifdef DEFINED_CSS_PROP_PADDING
4680 : #undef CSS_PROP_PADDING
4681 : #undef DEFINED_CSS_PROP_PADDING
4682 : #endif
4683 : #ifdef DEFINED_CSS_PROP_BORDER
4684 : #undef CSS_PROP_BORDER
4685 : #undef DEFINED_CSS_PROP_BORDER
4686 : #endif
4687 : #ifdef DEFINED_CSS_PROP_OUTLINE
4688 : #undef CSS_PROP_OUTLINE
4689 : #undef DEFINED_CSS_PROP_OUTLINE
4690 : #endif
4691 : #ifdef DEFINED_CSS_PROP_XUL
4692 : #undef CSS_PROP_XUL
4693 : #undef DEFINED_CSS_PROP_XUL
4694 : #endif
4695 : #ifdef DEFINED_CSS_PROP_COLUMN
4696 : #undef CSS_PROP_COLUMN
4697 : #undef DEFINED_CSS_PROP_COLUMN
4698 : #endif
4699 : #ifdef DEFINED_CSS_PROP_SVG
4700 : #undef CSS_PROP_SVG
4701 : #undef DEFINED_CSS_PROP_SVG
4702 : #endif
4703 : #ifdef DEFINED_CSS_PROP_SVGRESET
4704 : #undef CSS_PROP_SVGRESET
4705 : #undef DEFINED_CSS_PROP_SVGRESET
4706 : #endif
4707 : #ifdef DEFINED_CSS_PROP_VARIABLES
4708 : #undef CSS_PROP_VARIABLES
4709 : #undef DEFINED_CSS_PROP_VARIABLES
4710 : #endif
4711 : #ifdef DEFINED_CSS_PROP_EFFECTS
4712 : #undef CSS_PROP_EFFECTS
4713 : #undef DEFINED_CSS_PROP_EFFECTS
4714 : #endif
4715 :
4716 : #endif /* !defined(USED_CSS_PROP) */
4717 :
4718 : #ifdef DEFINED_CSS_PROP_SHORTHAND
4719 : #undef CSS_PROP_SHORTHAND
4720 : #undef DEFINED_CSS_PROP_SHORTHAND
4721 : #endif
4722 : #ifdef DEFINED_CSS_PROP_LOGICAL
4723 : #undef CSS_PROP_LOGICAL
4724 : #undef DEFINED_CSS_PROP_LOGICAL
4725 : #endif
4726 :
4727 : #undef CSS_PROP_DOMPROP_PREFIXED
|