nsCSSPropAliasList.h 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this
  3. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. /*
  5. * a list of all CSS property aliases with data about them, for preprocessing
  6. */
  7. /******
  8. This file contains the list of all CSS properties that are just
  9. aliases for other properties (e.g., for when we temporarily continue
  10. to support a prefixed property after adding support for its unprefixed
  11. form). It is designed to be used as inline input through the magic of
  12. C preprocessing. All entries must be enclosed in the appropriate
  13. CSS_PROP_ALIAS macro which will have cruel and unusual things done to
  14. it.
  15. The arguments to CSS_PROP_ALIAS are:
  16. -. 'aliasname' entries represent a CSS property name and *must* use
  17. only lowercase characters.
  18. -. 'id' should be the same as the 'id' field in nsCSSPropList.h for
  19. the property that 'aliasname' is being aliased to.
  20. -. 'method' is the CSS2Properties property name. Unlike
  21. nsCSSPropList.h, prefixes should just be included in this file (rather
  22. than needing the CSS_PROP_DOMPROP_PREFIXED(prop) macro).
  23. -. 'pref' is the name of a pref that controls whether the property
  24. is enabled. The property is enabled if 'pref' is an empty string,
  25. or if the boolean property whose name is 'pref' is set to true.
  26. ******/
  27. CSS_PROP_ALIAS(word-wrap,
  28. overflow_wrap,
  29. WordWrap,
  30. "")
  31. CSS_PROP_ALIAS(-moz-transform-origin,
  32. transform_origin,
  33. MozTransformOrigin,
  34. "layout.css.prefixes.transforms")
  35. CSS_PROP_ALIAS(-moz-perspective-origin,
  36. perspective_origin,
  37. MozPerspectiveOrigin,
  38. "layout.css.prefixes.transforms")
  39. CSS_PROP_ALIAS(-moz-perspective,
  40. perspective,
  41. MozPerspective,
  42. "layout.css.prefixes.transforms")
  43. CSS_PROP_ALIAS(-moz-transform-style,
  44. transform_style,
  45. MozTransformStyle,
  46. "layout.css.prefixes.transforms")
  47. CSS_PROP_ALIAS(-moz-backface-visibility,
  48. backface_visibility,
  49. MozBackfaceVisibility,
  50. "layout.css.prefixes.transforms")
  51. CSS_PROP_ALIAS(-moz-border-image,
  52. border_image,
  53. MozBorderImage,
  54. "layout.css.prefixes.border-image")
  55. CSS_PROP_ALIAS(-moz-transition,
  56. transition,
  57. MozTransition,
  58. "layout.css.prefixes.transitions")
  59. CSS_PROP_ALIAS(-moz-transition-delay,
  60. transition_delay,
  61. MozTransitionDelay,
  62. "layout.css.prefixes.transitions")
  63. CSS_PROP_ALIAS(-moz-transition-duration,
  64. transition_duration,
  65. MozTransitionDuration,
  66. "layout.css.prefixes.transitions")
  67. CSS_PROP_ALIAS(-moz-transition-property,
  68. transition_property,
  69. MozTransitionProperty,
  70. "layout.css.prefixes.transitions")
  71. CSS_PROP_ALIAS(-moz-transition-timing-function,
  72. transition_timing_function,
  73. MozTransitionTimingFunction,
  74. "layout.css.prefixes.transitions")
  75. CSS_PROP_ALIAS(-moz-animation,
  76. animation,
  77. MozAnimation,
  78. "layout.css.prefixes.animations")
  79. CSS_PROP_ALIAS(-moz-animation-delay,
  80. animation_delay,
  81. MozAnimationDelay,
  82. "layout.css.prefixes.animations")
  83. CSS_PROP_ALIAS(-moz-animation-direction,
  84. animation_direction,
  85. MozAnimationDirection,
  86. "layout.css.prefixes.animations")
  87. CSS_PROP_ALIAS(-moz-animation-duration,
  88. animation_duration,
  89. MozAnimationDuration,
  90. "layout.css.prefixes.animations")
  91. CSS_PROP_ALIAS(-moz-animation-fill-mode,
  92. animation_fill_mode,
  93. MozAnimationFillMode,
  94. "layout.css.prefixes.animations")
  95. CSS_PROP_ALIAS(-moz-animation-iteration-count,
  96. animation_iteration_count,
  97. MozAnimationIterationCount,
  98. "layout.css.prefixes.animations")
  99. CSS_PROP_ALIAS(-moz-animation-name,
  100. animation_name,
  101. MozAnimationName,
  102. "layout.css.prefixes.animations")
  103. CSS_PROP_ALIAS(-moz-animation-play-state,
  104. animation_play_state,
  105. MozAnimationPlayState,
  106. "layout.css.prefixes.animations")
  107. CSS_PROP_ALIAS(-moz-animation-timing-function,
  108. animation_timing_function,
  109. MozAnimationTimingFunction,
  110. "layout.css.prefixes.animations")
  111. CSS_PROP_ALIAS(-moz-box-sizing,
  112. box_sizing,
  113. MozBoxSizing,
  114. "layout.css.prefixes.box-sizing")
  115. CSS_PROP_ALIAS(-moz-font-feature-settings,
  116. font_feature_settings,
  117. MozFontFeatureSettings,
  118. "layout.css.prefixes.font-features")
  119. CSS_PROP_ALIAS(-moz-font-language-override,
  120. font_language_override,
  121. MozFontLanguageOverride,
  122. "layout.css.prefixes.font-features")
  123. CSS_PROP_ALIAS(-moz-padding-end,
  124. padding_inline_end,
  125. MozPaddingEnd,
  126. "")
  127. CSS_PROP_ALIAS(-moz-padding-start,
  128. padding_inline_start,
  129. MozPaddingStart,
  130. "")
  131. CSS_PROP_ALIAS(-moz-margin-end,
  132. margin_inline_end,
  133. MozMarginEnd,
  134. "")
  135. CSS_PROP_ALIAS(-moz-margin-start,
  136. margin_inline_start,
  137. MozMarginStart,
  138. "")
  139. CSS_PROP_ALIAS(-moz-border-end,
  140. border_inline_end,
  141. MozBorderEnd,
  142. "")
  143. CSS_PROP_ALIAS(-moz-border-end-color,
  144. border_inline_end_color,
  145. MozBorderEndColor,
  146. "")
  147. CSS_PROP_ALIAS(-moz-border-end-style,
  148. border_inline_end_style,
  149. MozBorderEndStyle,
  150. "")
  151. CSS_PROP_ALIAS(-moz-border-end-width,
  152. border_inline_end_width,
  153. MozBorderEndWidth,
  154. "")
  155. CSS_PROP_ALIAS(-moz-border-start,
  156. border_inline_start,
  157. MozBorderStart,
  158. "")
  159. CSS_PROP_ALIAS(-moz-border-start-color,
  160. border_inline_start_color,
  161. MozBorderStartColor,
  162. "")
  163. CSS_PROP_ALIAS(-moz-border-start-style,
  164. border_inline_start_style,
  165. MozBorderStartStyle,
  166. "")
  167. CSS_PROP_ALIAS(-moz-border-start-width,
  168. border_inline_start_width,
  169. MozBorderStartWidth,
  170. "")
  171. CSS_PROP_ALIAS(-moz-hyphens,
  172. hyphens,
  173. MozHyphens,
  174. "")
  175. CSS_PROP_ALIAS(-moz-text-align-last,
  176. text_align_last,
  177. MozTextAlignLast,
  178. "")
  179. CSS_PROP_ALIAS(-moz-column-count,
  180. column_count,
  181. MozColumnCount,
  182. "")
  183. CSS_PROP_ALIAS(-moz-column-fill,
  184. column_fill,
  185. MozColumnFill,
  186. "")
  187. CSS_PROP_ALIAS(-moz-column-gap,
  188. column_gap,
  189. MozColumnGap,
  190. "")
  191. CSS_PROP_ALIAS(-moz-column-rule,
  192. column_rule,
  193. MozColumnRule,
  194. "")
  195. CSS_PROP_ALIAS(-moz-column-rule-color,
  196. column_rule_color,
  197. MozColumnRuleColor,
  198. "")
  199. CSS_PROP_ALIAS(-moz-column-rule-style,
  200. column_rule_style,
  201. MozColumnRuleStyle,
  202. "")
  203. CSS_PROP_ALIAS(-moz-column-rule-width,
  204. column_rule_width,
  205. MozColumnRuleWidth,
  206. "")
  207. CSS_PROP_ALIAS(-moz-column-width,
  208. column_width,
  209. MozColumnWidth,
  210. "")
  211. CSS_PROP_ALIAS(-moz-columns,
  212. columns,
  213. MozColumns,
  214. "")
  215. CSS_PROP_ALIAS(-moz-tab-size,
  216. tab_size,
  217. MozTabSize,
  218. "")
  219. #define WEBKIT_PREFIX_PREF "layout.css.prefixes.webkit"
  220. // -webkit- prefixes
  221. CSS_PROP_ALIAS(-webkit-animation,
  222. animation,
  223. WebkitAnimation,
  224. WEBKIT_PREFIX_PREF)
  225. CSS_PROP_ALIAS(-webkit-animation-delay,
  226. animation_delay,
  227. WebkitAnimationDelay,
  228. WEBKIT_PREFIX_PREF)
  229. CSS_PROP_ALIAS(-webkit-animation-direction,
  230. animation_direction,
  231. WebkitAnimationDirection,
  232. WEBKIT_PREFIX_PREF)
  233. CSS_PROP_ALIAS(-webkit-animation-duration,
  234. animation_duration,
  235. WebkitAnimationDuration,
  236. WEBKIT_PREFIX_PREF)
  237. CSS_PROP_ALIAS(-webkit-animation-fill-mode,
  238. animation_fill_mode,
  239. WebkitAnimationFillMode,
  240. WEBKIT_PREFIX_PREF)
  241. CSS_PROP_ALIAS(-webkit-animation-iteration-count,
  242. animation_iteration_count,
  243. WebkitAnimationIterationCount,
  244. WEBKIT_PREFIX_PREF)
  245. CSS_PROP_ALIAS(-webkit-animation-name,
  246. animation_name,
  247. WebkitAnimationName,
  248. WEBKIT_PREFIX_PREF)
  249. CSS_PROP_ALIAS(-webkit-animation-play-state,
  250. animation_play_state,
  251. WebkitAnimationPlayState,
  252. WEBKIT_PREFIX_PREF)
  253. CSS_PROP_ALIAS(-webkit-animation-timing-function,
  254. animation_timing_function,
  255. WebkitAnimationTimingFunction,
  256. WEBKIT_PREFIX_PREF)
  257. CSS_PROP_ALIAS(-webkit-appearance,
  258. appearance,
  259. WebkitAppearance,
  260. WEBKIT_PREFIX_PREF)
  261. CSS_PROP_ALIAS(-webkit-filter,
  262. filter,
  263. WebkitFilter,
  264. WEBKIT_PREFIX_PREF)
  265. CSS_PROP_ALIAS(-webkit-text-size-adjust,
  266. text_size_adjust,
  267. WebkitTextSizeAdjust,
  268. WEBKIT_PREFIX_PREF)
  269. CSS_PROP_ALIAS(-webkit-transform,
  270. transform,
  271. WebkitTransform,
  272. WEBKIT_PREFIX_PREF)
  273. CSS_PROP_ALIAS(-webkit-transform-origin,
  274. transform_origin,
  275. WebkitTransformOrigin,
  276. WEBKIT_PREFIX_PREF)
  277. CSS_PROP_ALIAS(-webkit-transform-style,
  278. transform_style,
  279. WebkitTransformStyle,
  280. WEBKIT_PREFIX_PREF)
  281. CSS_PROP_ALIAS(-webkit-backface-visibility,
  282. backface_visibility,
  283. WebkitBackfaceVisibility,
  284. WEBKIT_PREFIX_PREF)
  285. CSS_PROP_ALIAS(-webkit-perspective,
  286. perspective,
  287. WebkitPerspective,
  288. WEBKIT_PREFIX_PREF)
  289. CSS_PROP_ALIAS(-webkit-perspective-origin,
  290. perspective_origin,
  291. WebkitPerspectiveOrigin,
  292. WEBKIT_PREFIX_PREF)
  293. CSS_PROP_ALIAS(-webkit-transition,
  294. transition,
  295. WebkitTransition,
  296. WEBKIT_PREFIX_PREF)
  297. CSS_PROP_ALIAS(-webkit-transition-delay,
  298. transition_delay,
  299. WebkitTransitionDelay,
  300. WEBKIT_PREFIX_PREF)
  301. CSS_PROP_ALIAS(-webkit-transition-duration,
  302. transition_duration,
  303. WebkitTransitionDuration,
  304. WEBKIT_PREFIX_PREF)
  305. CSS_PROP_ALIAS(-webkit-transition-property,
  306. transition_property,
  307. WebkitTransitionProperty,
  308. WEBKIT_PREFIX_PREF)
  309. CSS_PROP_ALIAS(-webkit-transition-timing-function,
  310. transition_timing_function,
  311. WebkitTransitionTimingFunction,
  312. WEBKIT_PREFIX_PREF)
  313. CSS_PROP_ALIAS(-webkit-border-radius,
  314. border_radius,
  315. WebkitBorderRadius,
  316. WEBKIT_PREFIX_PREF)
  317. CSS_PROP_ALIAS(-webkit-border-top-left-radius,
  318. border_top_left_radius,
  319. WebkitBorderTopLeftRadius, // really no dom property
  320. WEBKIT_PREFIX_PREF)
  321. CSS_PROP_ALIAS(-webkit-border-top-right-radius,
  322. border_top_right_radius,
  323. WebkitBorderTopRightRadius, // really no dom property
  324. WEBKIT_PREFIX_PREF)
  325. CSS_PROP_ALIAS(-webkit-border-bottom-left-radius,
  326. border_bottom_left_radius,
  327. WebkitBorderBottomLeftRadius, // really no dom property
  328. WEBKIT_PREFIX_PREF)
  329. CSS_PROP_ALIAS(-webkit-border-bottom-right-radius,
  330. border_bottom_right_radius,
  331. WebkitBorderBottomRightRadius, // really no dom property
  332. WEBKIT_PREFIX_PREF)
  333. CSS_PROP_ALIAS(-webkit-background-clip,
  334. background_clip,
  335. WebkitBackgroundClip,
  336. WEBKIT_PREFIX_PREF)
  337. CSS_PROP_ALIAS(-webkit-background-origin,
  338. background_origin,
  339. WebkitBackgroundOrigin,
  340. WEBKIT_PREFIX_PREF)
  341. CSS_PROP_ALIAS(-webkit-background-size,
  342. background_size,
  343. WebkitBackgroundSize,
  344. WEBKIT_PREFIX_PREF)
  345. CSS_PROP_ALIAS(-webkit-border-image,
  346. border_image,
  347. WebkitBorderImage,
  348. WEBKIT_PREFIX_PREF)
  349. CSS_PROP_ALIAS(-webkit-box-shadow,
  350. box_shadow,
  351. WebkitBoxShadow,
  352. WEBKIT_PREFIX_PREF)
  353. CSS_PROP_ALIAS(-webkit-box-sizing,
  354. box_sizing,
  355. WebkitBoxSizing,
  356. WEBKIT_PREFIX_PREF)
  357. // Alias -webkit-box properties to their -moz-box equivalents.
  358. // (NOTE: Even though they're aliases, in practice these -webkit properties
  359. // will behave a bit differently from their -moz versions, if they're
  360. // accompanied by "display:-webkit-box", because we generate a different frame
  361. // for those two display values.)
  362. CSS_PROP_ALIAS(-webkit-box-flex,
  363. box_flex,
  364. WebkitBoxFlex,
  365. WEBKIT_PREFIX_PREF)
  366. CSS_PROP_ALIAS(-webkit-box-ordinal-group,
  367. box_ordinal_group,
  368. WebkitBoxOrdinalGroup,
  369. WEBKIT_PREFIX_PREF)
  370. CSS_PROP_ALIAS(-webkit-box-orient,
  371. box_orient,
  372. WebkitBoxOrient,
  373. WEBKIT_PREFIX_PREF)
  374. CSS_PROP_ALIAS(-webkit-box-direction,
  375. box_direction,
  376. WebkitBoxDirection,
  377. WEBKIT_PREFIX_PREF)
  378. CSS_PROP_ALIAS(-webkit-box-align,
  379. box_align,
  380. WebkitBoxAlign,
  381. WEBKIT_PREFIX_PREF)
  382. CSS_PROP_ALIAS(-webkit-box-pack,
  383. box_pack,
  384. WebkitBoxPack,
  385. WEBKIT_PREFIX_PREF)
  386. // Alias -webkit-flex related properties to their unprefixed equivalents:
  387. // (Matching ordering at https://drafts.csswg.org/css-flexbox-1/#property-index )
  388. CSS_PROP_ALIAS(-webkit-flex-direction,
  389. flex_direction,
  390. WebkitFlexDirection,
  391. WEBKIT_PREFIX_PREF)
  392. CSS_PROP_ALIAS(-webkit-flex-wrap,
  393. flex_wrap,
  394. WebkitFlexWrap,
  395. WEBKIT_PREFIX_PREF)
  396. CSS_PROP_ALIAS(-webkit-flex-flow,
  397. flex_flow,
  398. WebkitFlexFlow,
  399. WEBKIT_PREFIX_PREF)
  400. CSS_PROP_ALIAS(-webkit-order,
  401. order,
  402. WebkitOrder,
  403. WEBKIT_PREFIX_PREF)
  404. CSS_PROP_ALIAS(-webkit-flex,
  405. flex,
  406. WebkitFlex,
  407. WEBKIT_PREFIX_PREF)
  408. CSS_PROP_ALIAS(-webkit-flex-grow,
  409. flex_grow,
  410. WebkitFlexGrow,
  411. WEBKIT_PREFIX_PREF)
  412. CSS_PROP_ALIAS(-webkit-flex-shrink,
  413. flex_shrink,
  414. WebkitFlexShrink,
  415. WEBKIT_PREFIX_PREF)
  416. CSS_PROP_ALIAS(-webkit-flex-basis,
  417. flex_basis,
  418. WebkitFlexBasis,
  419. WEBKIT_PREFIX_PREF)
  420. CSS_PROP_ALIAS(-webkit-justify-content,
  421. justify_content,
  422. WebkitJustifyContent,
  423. WEBKIT_PREFIX_PREF)
  424. CSS_PROP_ALIAS(-webkit-align-items,
  425. align_items,
  426. WebkitAlignItems,
  427. WEBKIT_PREFIX_PREF)
  428. CSS_PROP_ALIAS(-webkit-align-self,
  429. align_self,
  430. WebkitAlignSelf,
  431. WEBKIT_PREFIX_PREF)
  432. CSS_PROP_ALIAS(-webkit-align-content,
  433. align_content,
  434. WebkitAlignContent,
  435. WEBKIT_PREFIX_PREF)
  436. CSS_PROP_ALIAS(-webkit-user-select,
  437. user_select,
  438. WebkitUserSelect,
  439. WEBKIT_PREFIX_PREF)
  440. CSS_PROP_ALIAS(-webkit-mask,
  441. mask,
  442. WebkitMask,
  443. WEBKIT_PREFIX_PREF)
  444. CSS_PROP_ALIAS(-webkit-mask-clip,
  445. mask_clip,
  446. WebkitMaskClip,
  447. WEBKIT_PREFIX_PREF)
  448. CSS_PROP_ALIAS(-webkit-mask-composite,
  449. mask_composite,
  450. WebkitMaskComposite,
  451. WEBKIT_PREFIX_PREF)
  452. CSS_PROP_ALIAS(-webkit-mask-image,
  453. mask_image,
  454. WebkitMaskImage,
  455. WEBKIT_PREFIX_PREF)
  456. CSS_PROP_ALIAS(-webkit-mask-origin,
  457. mask_origin,
  458. WebkitMaskOrigin,
  459. WEBKIT_PREFIX_PREF)
  460. CSS_PROP_ALIAS(-webkit-mask-position,
  461. mask_position,
  462. WebkitMaskPosition,
  463. WEBKIT_PREFIX_PREF)
  464. CSS_PROP_ALIAS(-webkit-mask-position-x,
  465. mask_position_x,
  466. WebkitMaskPositionX,
  467. WEBKIT_PREFIX_PREF)
  468. CSS_PROP_ALIAS(-webkit-mask-position-y,
  469. mask_position_y,
  470. WebkitMaskPositionY,
  471. WEBKIT_PREFIX_PREF)
  472. CSS_PROP_ALIAS(-webkit-mask-repeat,
  473. mask_repeat,
  474. WebkitMaskRepeat,
  475. WEBKIT_PREFIX_PREF)
  476. CSS_PROP_ALIAS(-webkit-mask-size,
  477. mask_size,
  478. WebkitMaskSize,
  479. WEBKIT_PREFIX_PREF)
  480. #undef WEBKIT_PREFIX_PREF