Bug 1448757 part 3 - Remove nsDOMWindowUtils::GetAnimationTypeForLonghand and nsStyleAnimType. r=hiro
authorXidorn Quan <me@upsuper.org>
Fri, 20 Apr 2018 14:38:46 +1000
changeset 468193 3f4820437c251785a27a590584ca5e5749314ef7
parent 468192 616bbf7a88158aa859ec2b6de12aebd1b090eaf1
child 468194 b4b2f2f22ab8ac18352e6b0ca7eb7efe3c6a9d60
push id9165
push userasasaki@mozilla.com
push dateThu, 26 Apr 2018 21:04:54 +0000
treeherdermozilla-beta@064c3804de2e [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewershiro
bugs1448757
milestone61.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1448757 part 3 - Remove nsDOMWindowUtils::GetAnimationTypeForLonghand and nsStyleAnimType. r=hiro MozReview-Commit-ID: 8KsNSaDfsbN
dom/base/nsDOMWindowUtils.cpp
dom/base/test/test_domwindowutils.html
dom/interfaces/base/nsIDOMWindowUtils.idl
layout/style/nsCSSPropList.h
layout/style/nsCSSProps.cpp
layout/style/nsCSSProps.h
--- a/dom/base/nsDOMWindowUtils.cpp
+++ b/dom/base/nsDOMWindowUtils.cpp
@@ -2738,70 +2738,16 @@ nsDOMWindowUtils::ComputeAnimationDistan
 
   RefPtr<ComputedStyle> computedStyle =
     nsComputedDOMStyle::GetComputedStyle(element, nullptr);
   *aResult = v1.ComputeDistance(property, v2, computedStyle);
   return NS_OK;
 }
 
 NS_IMETHODIMP
-nsDOMWindowUtils::GetAnimationTypeForLonghand(const nsAString& aProperty,
-                                              nsAString& aResult)
-{
-  nsCSSPropertyID propertyID =
-    nsCSSProps::LookupProperty(aProperty, CSSEnabledState::eForAllContent);
-  if (propertyID == eCSSProperty_UNKNOWN) {
-    return NS_ERROR_INVALID_ARG;
-  }
-  if (nsCSSProps::IsShorthand(propertyID)) {
-    // The given property should be a longhand.
-    return NS_ERROR_INVALID_ARG;
-  }
-  switch (nsCSSProps::kAnimTypeTable[propertyID]) {
-    case eStyleAnimType_Custom:
-      aResult.AssignLiteral("custom");
-      break;
-    case eStyleAnimType_Coord:
-    case eStyleAnimType_Sides_Top:
-    case eStyleAnimType_Sides_Right:
-    case eStyleAnimType_Sides_Bottom:
-    case eStyleAnimType_Sides_Left:
-    case eStyleAnimType_Corner_TopLeft:
-    case eStyleAnimType_Corner_TopRight:
-    case eStyleAnimType_Corner_BottomRight:
-    case eStyleAnimType_Corner_BottomLeft:
-      aResult.AssignLiteral("coord");
-      break;
-    case eStyleAnimType_nscoord:
-      aResult.AssignLiteral("length");
-      break;
-    case eStyleAnimType_float:
-      aResult.AssignLiteral("float");
-      break;
-    case eStyleAnimType_Color:
-    case eStyleAnimType_ComplexColor:
-      aResult.AssignLiteral("color");
-      break;
-    case eStyleAnimType_PaintServer:
-      aResult.AssignLiteral("paintServer");
-      break;
-    case eStyleAnimType_Shadow:
-      aResult.AssignLiteral("shadow");
-      break;
-    case eStyleAnimType_Discrete:
-      aResult.AssignLiteral("discrete");
-      break;
-    case eStyleAnimType_None:
-      aResult.AssignLiteral("none");
-      break;
-  }
-  return NS_OK;
-}
-
-NS_IMETHODIMP
 nsDOMWindowUtils::GetUnanimatedComputedStyle(nsIDOMElement* aElement,
                                              const nsAString& aPseudoElement,
                                              const nsAString& aProperty,
                                              int32_t aFlushType,
                                              nsAString& aResult)
 {
   nsCOMPtr<Element> element = do_QueryInterface(aElement);
   if (!element) {
--- a/dom/base/test/test_domwindowutils.html
+++ b/dom/base/test/test_domwindowutils.html
@@ -50,125 +50,28 @@ function test_sendMouseEventOptionals() 
     SimpleTest.executeSoon(next);
   }, {once: true});
 
   // Check explicit value for optional args
   utils.sendMouseEvent("mouseup", x, y, button, clickCount, modifiers,
                        false, pressure, source, false);
 }
 
-function test_getAnimationType() {
-  [
-    {
-      propertyName: "align-content",
-      expectedType: "discrete"
-    },
-    {
-      propertyName: "animation-delay",
-      expectedType: "none"
-    },
-    {
-      propertyName: "background-color",
-      expectedType: "color"
-    },
-    {
-      propertyName: "background-size",
-      expectedType: "custom"
-    },
-    {
-      propertyName: "border-bottom-left-radius",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "border-bottom-right-radius",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "border-top-left-radius",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "border-top-right-radius",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "font-size",
-      expectedType: "length"
-    },
-    {
-      propertyName: "margin-top",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "margin-right",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "margin-bottom",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "margin-left",
-      expectedType: "coord"
-    },
-    {
-      propertyName: "opacity",
-      expectedType: "float"
-    },
-    {
-      propertyName: "stroke",
-      expectedType: "paintServer"
-    },
-    {
-      propertyName: "text-shadow",
-      expectedType: "shadow"
-    },
-    {
-      propertyName: "transform",
-      expectedType: "custom"
-    },
-    {
-      propertyName: "visibility",
-      expectedType: "discrete"
-    },
-    {
-      propertyName: "width",
-      expectedType: "coord"
-    }
-  ].forEach(({ propertyName, expectedType }) => {
-    is(utils.getAnimationTypeForLonghand(propertyName), expectedType,
-       `Animation type should be ${ expectedType }`);
-  });
-
-  SimpleTest.doesThrow(
-    () => utils.getAnimationTypeForLonghand("background"),
-    "NS_ERROR_ILLEGAL_VALUE",
-    "background property should throw");
-
-  SimpleTest.doesThrow(
-    () => utils.getAnimationTypeForLonghand("invalid"),
-    "NS_ERROR_ILLEGAL_VALUE",
-    "Invalid property should throw");
-
-  next();
-}
-
 function test_getUnanimatedComputedStyle() {
   SpecialPowers.pushPrefEnv(
     { set: [["dom.animations-api.core.enabled", true]] },
     () => {
       window.open("file_domwindowutils_animation.html");
     }
   );
 }
 
 var tests = [
   test_sendMouseEventDefaults,
   test_sendMouseEventOptionals,
-  test_getAnimationType,
   test_getUnanimatedComputedStyle
 ];
 
 function next() {
   if (!tests.length) {
     SimpleTest.finish();
     return;
   }
--- a/dom/interfaces/base/nsIDOMWindowUtils.idl
+++ b/dom/interfaces/base/nsIDOMWindowUtils.idl
@@ -1430,23 +1430,16 @@ interface nsIDOMWindowUtils : nsISupport
    * property.
    */
   double computeAnimationDistance(in nsIDOMElement element,
                                   in AString property,
                                   in AString value1,
                                   in AString value2);
 
   /**
-   * Returns the animation type of the specified property (e.g. 'coord').
-   *
-   * @param aProperty A longhand CSS property (e.g. 'background-color').
-   */
-  AString getAnimationTypeForLonghand(in AString aProperty);
-
-  /**
    * Returns the computed style for the specified property of given pseudo type
    * on the given element after removing styles from declarative animations.
    * @param aElement - A target element
    * @param aPseudoElement - A pseudo type (e.g. '::before' or null)
    * @param aProperty - A longhand CSS property (e.g. 'background-color')
    * @param aFlushType - FLUSH_NONE if any pending styles should not happen,
    *                     FLUSH_STYLE to flush pending styles.
    */
--- a/layout/style/nsCSSPropList.h
+++ b/layout/style/nsCSSPropList.h
@@ -90,25 +90,25 @@
 
 // A caller who wants all the properties can define the |CSS_PROP|
 // macro.
 #ifdef CSS_PROP
 
 #define USED_CSS_PROP
 // We still need this extra level so that CSS_PROP_DOMPROP_PREFIXED has
 // a chance to be expanded.
-#define CSS_PROP_(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, animtype_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, animtype_)
+#define CSS_PROP_(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_) CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_)
 
 #else /* !defined(CSS_PROP) */
 
 // An includer who does not define CSS_PROP can define any or all of the
 // per-struct macros that are equivalent to it, and the rest will be
 // ignored.
 
-#define CSS_PROP_(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_, animtype_) /* nothing */
+#define CSS_PROP_(name_, id_, method_, flags_, pref_, parsevariant_, kwtable_) /* nothing */
 
 #endif /* !defined(CSS_PROP) */
 
 /*************************************************************************/
 
 // For notes XXX bug 3935 below, the names being parsed do not correspond
 // to the constants used internally.  It would be nice to bring the
 // constants into line sometime.
@@ -142,36 +142,33 @@
 
 CSS_PROP_(
     align-content,
     align_content,
     AlignContent,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAutoCompletionAlignJustifyContent,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignJustifyContent)
 CSS_PROP_(
     align-items,
     align_items,
     AlignItems,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAutoCompletionAlignItems,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignItems)
 CSS_PROP_(
     align-self,
     align_self,
     AlignSelf,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAutoCompletionAlignJustifySelf,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignJustifySelf)
 CSS_PROP_SHORTHAND(
     all,
     all,
     All,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.all-shorthand.enabled")
 CSS_PROP_SHORTHAND(
     animation,
@@ -181,221 +178,199 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     animation-delay,
     animation_delay,
     AnimationDelay,
     0,
     "",
     VARIANT_TIME, // used by list parsing
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     animation-direction,
     animation_direction,
     AnimationDirection,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kAnimationDirectionKTable,
-    eStyleAnimType_None)
+    kAnimationDirectionKTable)
 CSS_PROP_(
     animation-duration,
     animation_duration,
     AnimationDuration,
     0,
     "",
     VARIANT_TIME | VARIANT_NONNEGATIVE_DIMENSION, // used by list parsing
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     animation-fill-mode,
     animation_fill_mode,
     AnimationFillMode,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kAnimationFillModeKTable,
-    eStyleAnimType_None)
+    kAnimationFillModeKTable)
 CSS_PROP_(
     animation-iteration-count,
     animation_iteration_count,
     AnimationIterationCount,
     0,
     "",
     VARIANT_KEYWORD | VARIANT_NUMBER, // used by list parsing
-    kAnimationIterationCountKTable,
-    eStyleAnimType_None)
+    kAnimationIterationCountKTable)
 CSS_PROP_(
     animation-name,
     animation_name,
     AnimationName,
     0,
     "",
     // FIXME: The spec should say something about 'inherit' and 'initial'
     // not being allowed.
     VARIANT_NONE | VARIANT_IDENTIFIER_NO_INHERIT | VARIANT_STRING, // used by list parsing
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     animation-play-state,
     animation_play_state,
     AnimationPlayState,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kAnimationPlayStateKTable,
-    eStyleAnimType_None)
+    kAnimationPlayStateKTable)
 CSS_PROP_(
     animation-timing-function,
     animation_timing_function,
     AnimationTimingFunction,
     0,
     "",
     VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
-    kTransitionTimingFunctionKTable,
-    eStyleAnimType_None)
+    kTransitionTimingFunctionKTable)
 CSS_PROP_(
     -moz-appearance,
     _moz_appearance,
     CSS_PROP_DOMPROP_PREFIXED(Appearance),
     0,
     "",
     VARIANT_HK,
-    kAppearanceKTable,
-    eStyleAnimType_Discrete)
+    kAppearanceKTable)
 CSS_PROP_(
     backface-visibility,
     backface_visibility,
     BackfaceVisibility,
     0,
     "",
     VARIANT_HK,
-    kBackfaceVisibilityKTable,
-    eStyleAnimType_Discrete)
+    kBackfaceVisibilityKTable)
 CSS_PROP_SHORTHAND(
     background,
     background,
     Background,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     background-attachment,
     background_attachment,
     BackgroundAttachment,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kImageLayerAttachmentKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerAttachmentKTable)
 CSS_PROP_(
     background-blend-mode,
     background_blend_mode,
     BackgroundBlendMode,
     0,
     "layout.css.background-blend-mode.enabled",
     VARIANT_KEYWORD, // used by list parsing
-    kBlendModeKTable,
-    eStyleAnimType_Discrete)
+    kBlendModeKTable)
 CSS_PROP_(
     background-clip,
     background_clip,
     BackgroundClip,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kBackgroundClipKTable,
-    eStyleAnimType_Discrete)
+    kBackgroundClipKTable)
 CSS_PROP_(
     background-color,
     background_color,
     BackgroundColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     background-image,
     background_image,
     BackgroundImage,
     0,
     "",
     VARIANT_IMAGE, // used by list parsing
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     background-origin,
     background_origin,
     BackgroundOrigin,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kBackgroundOriginKTable,
-    eStyleAnimType_Discrete)
+    kBackgroundOriginKTable)
 CSS_PROP_SHORTHAND(
     background-position,
     background_position,
     BackgroundPosition,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     background-position-x,
     background_position_x,
     BackgroundPositionX,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     background-position-y,
     background_position_y,
     BackgroundPositionY,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     background-repeat,
     background_repeat,
     BackgroundRepeat,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kImageLayerRepeatKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerRepeatKTable)
 CSS_PROP_(
     background-size,
     background_size,
     BackgroundSize,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerSizeKTable,
-    eStyleAnimType_Custom)
+    kImageLayerSizeKTable)
 CSS_PROP_(
     -moz-binding,
     _moz_binding,
     CSS_PROP_DOMPROP_PREFIXED(Binding),
     0,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_None) // XXX bug 3935
+    nullptr) // XXX bug 3935
 CSS_PROP_(
     block-size,
     block_size,
     BlockSize,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_SHORTHAND(
     border,
     border,
     Border,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     border-block-end,
@@ -405,129 +380,117 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     border-block-end-color,
     border_block_end_color,
     BorderBlockEndColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     border-block-end-style,
     border_block_end_style,
     BorderBlockEndStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_None)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-block-end-width,
     border_block_end_width,
     BorderBlockEndWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_None)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-block-start,
     border_block_start,
     BorderBlockStart,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     border-block-start-color,
     border_block_start_color,
     BorderBlockStartColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     border-block-start-style,
     border_block_start_style,
     BorderBlockStartStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_None)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-block-start-width,
     border_block_start_width,
     BorderBlockStartWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_None)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-bottom,
     border_bottom,
     BorderBottom,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     border-bottom-color,
     border_bottom_color,
     BorderBottomColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     border-bottom-left-radius,
     border_bottom_left_radius,
     BorderBottomLeftRadius,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_BottomLeft)
+    nullptr)
 CSS_PROP_(
     border-bottom-right-radius,
     border_bottom_right_radius,
     BorderBottomRightRadius,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_BottomRight)
+    nullptr)
 CSS_PROP_(
     border-bottom-style,
     border_bottom_style,
     BorderBottomStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_Discrete)  // on/off will need reflow
+    kBorderStyleKTable)  // on/off will need reflow
 CSS_PROP_(
     border-bottom-width,
     border_bottom_width,
     BorderBottomWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Custom)
+    kBorderWidthKTable)
 CSS_PROP_(
     border-collapse,
     border_collapse,
     BorderCollapse,
     0,
     "",
     VARIANT_HK,
-    kBorderCollapseKTable,
-    eStyleAnimType_Discrete)
+    kBorderCollapseKTable)
 CSS_PROP_SHORTHAND(
     border-color,
     border_color,
     BorderColor,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     border-image,
@@ -537,153 +500,139 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     border-image-outset,
     border_image_outset,
     BorderImageOutset,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     border-image-repeat,
     border_image_repeat,
     BorderImageRepeat,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kBorderImageRepeatKTable,
-    eStyleAnimType_Discrete)
+    kBorderImageRepeatKTable)
 CSS_PROP_(
     border-image-slice,
     border_image_slice,
     BorderImageSlice,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kBorderImageSliceKTable,
-    eStyleAnimType_Discrete)
+    kBorderImageSliceKTable)
 CSS_PROP_(
     border-image-source,
     border_image_source,
     BorderImageSource,
     0,
     "",
     VARIANT_IMAGE | VARIANT_INHERIT,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     border-image-width,
     border_image_width,
     BorderImageWidth,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     border-inline-end,
     border_inline_end,
     BorderInlineEnd,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     border-inline-end-color,
     border_inline_end_color,
     BorderInlineEndColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     border-inline-end-style,
     border_inline_end_style,
     BorderInlineEndStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_None)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-inline-end-width,
     border_inline_end_width,
     BorderInlineEndWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_None)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-inline-start,
     border_inline_start,
     BorderInlineStart,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     border-inline-start-color,
     border_inline_start_color,
     BorderInlineStartColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     border-inline-start-style,
     border_inline_start_style,
     BorderInlineStartStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_None)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-inline-start-width,
     border_inline_start_width,
     BorderInlineStartWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_None)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-left,
     border_left,
     BorderLeft,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     border-left-color,
     border_left_color,
     BorderLeftColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     border-left-style,
     border_left_style,
     BorderLeftStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_Discrete)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-left-width,
     border_left_width,
     BorderLeftWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Custom)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-radius,
     border_radius,
     BorderRadius,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     border-right,
@@ -693,45 +642,41 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     border-right-color,
     border_right_color,
     BorderRightColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     border-right-style,
     border_right_style,
     BorderRightStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_Discrete)
+    kBorderStyleKTable)
 CSS_PROP_(
     border-right-width,
     border_right_width,
     BorderRightWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Custom)
+    kBorderWidthKTable)
 CSS_PROP_(
     border-spacing,
     border_spacing,
     BorderSpacing,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_SHORTHAND(
     border-style,
     border_style,
     BorderStyle,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")  // on/off will need reflow
 CSS_PROP_SHORTHAND(
     border-top,
@@ -741,767 +686,688 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     border-top-color,
     border_top_color,
     BorderTopColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     border-top-left-radius,
     border_top_left_radius,
     BorderTopLeftRadius,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_TopLeft)
+    nullptr)
 CSS_PROP_(
     border-top-right-radius,
     border_top_right_radius,
     BorderTopRightRadius,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_TopRight)
+    nullptr)
 CSS_PROP_(
     border-top-style,
     border_top_style,
     BorderTopStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_Discrete)  // on/off will need reflow
+    kBorderStyleKTable)  // on/off will need reflow
 CSS_PROP_(
     border-top-width,
     border_top_width,
     BorderTopWidth,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Custom)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     border-width,
     border_width,
     BorderWidth,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     bottom,
     bottom,
     Bottom,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Bottom)
+    nullptr)
 CSS_PROP_(
     -moz-box-align,
     _moz_box_align,
     CSS_PROP_DOMPROP_PREFIXED(BoxAlign),
     0,
     "",
     VARIANT_HK,
-    kBoxAlignKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kBoxAlignKTable) // XXX bug 3935
 CSS_PROP_(
     box-decoration-break,
     box_decoration_break,
     BoxDecorationBreak,
     0,
     "layout.css.box-decoration-break.enabled",
     VARIANT_HK,
-    kBoxDecorationBreakKTable,
-    eStyleAnimType_Discrete)
+    kBoxDecorationBreakKTable)
 CSS_PROP_(
     -moz-box-direction,
     _moz_box_direction,
     CSS_PROP_DOMPROP_PREFIXED(BoxDirection),
     0,
     "",
     VARIANT_HK,
-    kBoxDirectionKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kBoxDirectionKTable) // XXX bug 3935
 CSS_PROP_(
     -moz-box-flex,
     _moz_box_flex,
     CSS_PROP_DOMPROP_PREFIXED(BoxFlex),
     0,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float) // XXX bug 3935
+    nullptr) // XXX bug 3935
 CSS_PROP_(
     -moz-box-ordinal-group,
     _moz_box_ordinal_group,
     CSS_PROP_DOMPROP_PREFIXED(BoxOrdinalGroup),
     0,
     "",
     VARIANT_HI,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     -moz-box-orient,
     _moz_box_orient,
     CSS_PROP_DOMPROP_PREFIXED(BoxOrient),
     0,
     "",
     VARIANT_HK,
-    kBoxOrientKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kBoxOrientKTable) // XXX bug 3935
 CSS_PROP_(
     -moz-box-pack,
     _moz_box_pack,
     CSS_PROP_DOMPROP_PREFIXED(BoxPack),
     0,
     "",
     VARIANT_HK,
-    kBoxPackKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kBoxPackKTable) // XXX bug 3935
 CSS_PROP_(
     box-shadow,
     box_shadow,
     BoxShadow,
     CSS_PROPERTY_PARSE_FUNCTION,
         // NOTE: some components must be nonnegative
     "",
     VARIANT_COLOR | VARIANT_LENGTH | VARIANT_CALC | VARIANT_INHERIT | VARIANT_NONE,
-    kBoxShadowTypeKTable,
-    eStyleAnimType_Shadow)
+    kBoxShadowTypeKTable)
 CSS_PROP_(
     box-sizing,
     box_sizing,
     BoxSizing,
     0,
     "",
     VARIANT_HK,
-    kBoxSizingKTable,
-    eStyleAnimType_Discrete)
+    kBoxSizingKTable)
 CSS_PROP_(
     caption-side,
     caption_side,
     CaptionSide,
     0,
     "",
     VARIANT_HK,
-    kCaptionSideKTable,
-    eStyleAnimType_Discrete)
+    kCaptionSideKTable)
 CSS_PROP_(
     caret-color,
     caret_color,
     CaretColor,
     0,
     "",
     VARIANT_AUTO | VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     clear,
     clear,
     Clear,
     0,
     "",
     VARIANT_HK,
-    kClearKTable,
-    eStyleAnimType_Discrete)
+    kClearKTable)
 CSS_PROP_(
     clip,
     clip,
     Clip,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_AH,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     clip-path,
     clip_path,
     ClipPath,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     clip-rule,
     clip_rule,
     ClipRule,
     0,
     "",
     VARIANT_HK,
-    kFillRuleKTable,
-    eStyleAnimType_Discrete)
+    kFillRuleKTable)
 CSS_PROP_(
     color,
     color,
     Color,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_Color)
+    nullptr)
 CSS_PROP_(
     color-adjust,
     color_adjust,
     ColorAdjust,
     0,
     "layout.css.color-adjust.enabled",
     VARIANT_HK,
-    kColorAdjustKTable,
-    eStyleAnimType_Discrete)
+    kColorAdjustKTable)
 CSS_PROP_(
     color-interpolation,
     color_interpolation,
     ColorInterpolation,
     0,
     "",
     VARIANT_HK,
-    kColorInterpolationKTable,
-    eStyleAnimType_Discrete)
+    kColorInterpolationKTable)
 CSS_PROP_(
     color-interpolation-filters,
     color_interpolation_filters,
     ColorInterpolationFilters,
     0,
     "",
     VARIANT_HK,
-    kColorInterpolationKTable,
-    eStyleAnimType_Discrete)
+    kColorInterpolationKTable)
 CSS_PROP_(
     column-count,
     column_count,
     ColumnCount,
     0,
     "",
     VARIANT_AHI,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     column-fill,
     column_fill,
     ColumnFill,
     0,
     "",
     VARIANT_HK,
-    kColumnFillKTable,
-    eStyleAnimType_Discrete)
+    kColumnFillKTable)
 CSS_PROP_(
     column-gap,
     column_gap,
     ColumnGap,
     0,
     "",
     VARIANT_HLP | VARIANT_NORMAL | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_SHORTHAND(
     column-rule,
     column_rule,
     ColumnRule,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     column-rule-color,
     column_rule_color,
     ColumnRuleColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     column-rule-style,
     column_rule_style,
     ColumnRuleStyle,
     0,
     "",
     VARIANT_HK,
-    kBorderStyleKTable,
-    eStyleAnimType_Discrete)
+    kBorderStyleKTable)
 CSS_PROP_(
     column-rule-width,
     column_rule_width,
     ColumnRuleWidth,
     0,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Custom)
+    kBorderWidthKTable)
 CSS_PROP_(
     column-span,
     column_span,
     ColumnSpan,
     0,
     "layout.css.column-span.enabled",
     VARIANT_HK,
-    kColumnSpanKTable,
-    eStyleAnimType_Discrete)
+    kColumnSpanKTable)
 CSS_PROP_(
     column-width,
     column_width,
     ColumnWidth,
     0,
     "",
     VARIANT_AHL | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_SHORTHAND(
     columns,
     columns,
     Columns,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     contain,
     contain,
     Contain,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.contain.enabled",
     // Does not affect parsing, but is needed for tab completion in devtools:
     VARIANT_HK | VARIANT_NONE,
-    kContainKTable,
-    eStyleAnimType_Discrete)
+    kContainKTable)
 CSS_PROP_(
     content,
     content,
     Content,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HMK | VARIANT_NONE | VARIANT_URL | VARIANT_COUNTER | VARIANT_ATTR,
-    kContentKTable,
-    eStyleAnimType_Discrete)
+    kContentKTable)
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     // Only intended to be used internally by Mozilla, so prefixed.
     -moz-context-properties,
     _moz_context_properties,
     CSS_PROP_DOMPROP_PREFIXED(ContextProperties),
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_INTERNAL,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     -moz-control-character-visibility,
     _moz_control_character_visibility,
     CSS_PROP_DOMPROP_PREFIXED(ControlCharacterVisibility),
     CSS_PROPERTY_INTERNAL,
     "",
     VARIANT_HK,
-    kControlCharacterVisibilityKTable,
-    eStyleAnimType_None)
+    kControlCharacterVisibilityKTable)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     counter-increment,
     counter_increment,
     CounterIncrement,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_INHERIT | VARIANT_NONE,
-    nullptr,
-    eStyleAnimType_Discrete) // XXX bug 137285
+    nullptr) // XXX bug 137285
 CSS_PROP_(
     counter-reset,
     counter_reset,
     CounterReset,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_INHERIT | VARIANT_NONE,
-    nullptr,
-    eStyleAnimType_Discrete) // XXX bug 137285
+    nullptr) // XXX bug 137285
 CSS_PROP_(
     cursor,
     cursor,
     Cursor,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kCursorKTable,
-    eStyleAnimType_Discrete)
+    kCursorKTable)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     direction,
     direction,
     Direction,
     0,
     "",
     VARIANT_HK,
-    kDirectionKTable,
-    eStyleAnimType_Discrete)
+    kDirectionKTable)
 #endif // !defined(CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND)
 CSS_PROP_(
     display,
     display,
     Display,
     0,
     "",
     VARIANT_HK,
-    kDisplayKTable,
-    eStyleAnimType_None)
+    kDisplayKTable)
 CSS_PROP_(
     dominant-baseline,
     dominant_baseline,
     DominantBaseline,
     0,
     "",
     VARIANT_HK,
-    kDominantBaselineKTable,
-    eStyleAnimType_Discrete)
+    kDominantBaselineKTable)
 CSS_PROP_(
     empty-cells,
     empty_cells,
     EmptyCells,
     0,
     "",
     VARIANT_HK,
-    kEmptyCellsKTable,
-    eStyleAnimType_Discrete)
+    kEmptyCellsKTable)
 CSS_PROP_(
     fill,
     fill,
     Fill,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kContextPatternKTable,
-    eStyleAnimType_PaintServer)
+    kContextPatternKTable)
 CSS_PROP_(
     fill-opacity,
     fill_opacity,
     FillOpacity,
     0,
     "",
     VARIANT_HN | VARIANT_KEYWORD,
-    kContextOpacityKTable,
-    eStyleAnimType_float)
+    kContextOpacityKTable)
 CSS_PROP_(
     fill-rule,
     fill_rule,
     FillRule,
     0,
     "",
     VARIANT_HK,
-    kFillRuleKTable,
-    eStyleAnimType_Discrete)
+    kFillRuleKTable)
 CSS_PROP_(
     filter,
     filter,
     Filter,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_SHORTHAND(
     flex,
     flex,
     Flex,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     flex-basis,
     flex_basis,
     FlexBasis,
     0,
     "",
     // NOTE: The parsing implementation for the 'flex' shorthand property has
     // its own code to parse each subproperty. It does not depend on the
     // longhand parsing defined here.
     VARIANT_AHKLP | VARIANT_CALC,
-    kFlexBasisKTable,
-    eStyleAnimType_Coord)
+    kFlexBasisKTable)
 CSS_PROP_(
     flex-direction,
     flex_direction,
     FlexDirection,
     0,
     "",
     VARIANT_HK,
-    kFlexDirectionKTable,
-    eStyleAnimType_Discrete)
+    kFlexDirectionKTable)
 CSS_PROP_SHORTHAND(
     flex-flow,
     flex_flow,
     FlexFlow,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     flex-grow,
     flex_grow,
     FlexGrow,
     0,
     "",
     // NOTE: The parsing implementation for the 'flex' shorthand property has
     // its own code to parse each subproperty. It does not depend on the
     // longhand parsing defined here.
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     flex-shrink,
     flex_shrink,
     FlexShrink,
     0,
     "",
     // NOTE: The parsing implementation for the 'flex' shorthand property has
     // its own code to parse each subproperty. It does not depend on the
     // longhand parsing defined here.
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     flex-wrap,
     flex_wrap,
     FlexWrap,
     0,
     "",
     VARIANT_HK,
-    kFlexWrapKTable,
-    eStyleAnimType_Discrete)
+    kFlexWrapKTable)
 CSS_PROP_(
     float,
     float,
     CSS_PROP_PUBLIC_OR_PRIVATE(CssFloat, Float),
     0,
     "",
     VARIANT_HK,
-    kFloatKTable,
-    eStyleAnimType_Discrete)
+    kFloatKTable)
 CSS_PROP_(
     -moz-float-edge,
     _moz_float_edge,
     CSS_PROP_DOMPROP_PREFIXED(FloatEdge),
     0,
     "",
     VARIANT_HK,
-    kFloatEdgeKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kFloatEdgeKTable) // XXX bug 3935
 CSS_PROP_(
     flood-color,
     flood_color,
     FloodColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_Color)
+    nullptr)
 CSS_PROP_(
     flood-opacity,
     flood_opacity,
     FloodOpacity,
     0,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_SHORTHAND(
     font,
     font,
     Font,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     font-family,
     font_family,
     FontFamily,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     font-feature-settings,
     font_feature_settings,
     FontFeatureSettings,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     font-kerning,
     font_kerning,
     FontKerning,
     0,
     "",
     VARIANT_HK,
-    kFontKerningKTable,
-    eStyleAnimType_Discrete)
+    kFontKerningKTable)
 CSS_PROP_(
     font-language-override,
     font_language_override,
     FontLanguageOverride,
     0,
     "",
     VARIANT_NORMAL | VARIANT_INHERIT | VARIANT_STRING,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     font-optical-sizing,
     font_optical_sizing,
     FontOpticalSizing,
     0,
     "layout.css.font-variations.enabled",
     VARIANT_HK,
-    kFontOpticalSizingKTable,
-    eStyleAnimType_None)
+    kFontOpticalSizingKTable)
 CSS_PROP_(
     font-size,
     font_size,
     FontSize,
     0,
     "",
     VARIANT_HKLP | VARIANT_SYSFONT | VARIANT_CALC,
-    kFontSizeKTable,
-    // Note that mSize is the correct place for *reading* the computed value,
-    // but setting it requires setting mFont.size as well.
-    eStyleAnimType_nscoord)
+    kFontSizeKTable)
 CSS_PROP_(
     font-size-adjust,
     font_size_adjust,
     FontSizeAdjust,
     0,
     "",
     VARIANT_HON | VARIANT_SYSFONT,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-font-smoothing-background-color,
     _moz_font_smoothing_background_color,
     CSS_PROP_DOMPROP_PREFIXED(FontSmoothingBackgroundColor),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS_AND_CHROME,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_Color)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     font-stretch,
     font_stretch,
     FontStretch,
     0,
     "",
     VARIANT_HK | VARIANT_SYSFONT,
-    kFontStretchKTable,
-    eStyleAnimType_Custom)
+    kFontStretchKTable)
 CSS_PROP_(
     font-style,
     font_style,
     FontStyle,
     0,
     "",
     VARIANT_HK | VARIANT_SYSFONT,
-    kFontStyleKTable,
-    eStyleAnimType_Discrete)
+    kFontStyleKTable)
 CSS_PROP_(
     font-synthesis,
     font_synthesis,
     FontSynthesis,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kFontSynthesisKTable,
-    eStyleAnimType_Discrete)
+    kFontSynthesisKTable)
 CSS_PROP_SHORTHAND(
     font-variant,
     font_variant,
     FontVariant,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     font-variant-alternates,
     font_variant_alternates,
     FontVariantAlternates,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kFontVariantAlternatesKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantAlternatesKTable)
 CSS_PROP_(
     font-variant-caps,
     font_variant_caps,
     FontVariantCaps,
     0,
     "",
     VARIANT_HMK,
-    kFontVariantCapsKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantCapsKTable)
 CSS_PROP_(
     font-variant-east-asian,
     font_variant_east_asian,
     FontVariantEastAsian,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kFontVariantEastAsianKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantEastAsianKTable)
 CSS_PROP_(
     font-variant-ligatures,
     font_variant_ligatures,
     FontVariantLigatures,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kFontVariantLigaturesKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantLigaturesKTable)
 CSS_PROP_(
     font-variant-numeric,
     font_variant_numeric,
     FontVariantNumeric,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kFontVariantNumericKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantNumericKTable)
 CSS_PROP_(
     font-variant-position,
     font_variant_position,
     FontVariantPosition,
     0,
     "",
     VARIANT_HMK,
-    kFontVariantPositionKTable,
-    eStyleAnimType_Discrete)
+    kFontVariantPositionKTable)
 CSS_PROP_(
     font-variation-settings,
     font_variation_settings,
     FontVariationSettings,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.font-variations.enabled",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     font-weight,
     font_weight,
     FontWeight,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
         // NOTE: This property has range restrictions on interpolation!
     "",
     0,
-    kFontWeightKTable,
-    eStyleAnimType_Custom)
+    kFontWeightKTable)
 CSS_PROP_(
     -moz-force-broken-image-icon,
     _moz_force_broken_image_icon,
     CSS_PROP_DOMPROP_PREFIXED(ForceBrokenImageIcon),
     0,
     "",
     VARIANT_HI,
-    nullptr,
-    eStyleAnimType_Discrete) // bug 58646
+    nullptr) // bug 58646
 CSS_PROP_SHORTHAND(
     grid,
     grid,
     Grid,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     grid-area,
@@ -1511,69 +1377,63 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     grid-auto-columns,
     grid_auto_columns,
     GridAutoColumns,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kGridTrackBreadthKTable,
-    eStyleAnimType_Discrete)
+    kGridTrackBreadthKTable)
 CSS_PROP_(
     grid-auto-flow,
     grid_auto_flow,
     GridAutoFlow,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kGridAutoFlowKTable,
-    eStyleAnimType_Discrete)
+    kGridAutoFlowKTable)
 CSS_PROP_(
     grid-auto-rows,
     grid_auto_rows,
     GridAutoRows,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kGridTrackBreadthKTable,
-    eStyleAnimType_Discrete)
+    kGridTrackBreadthKTable)
 CSS_PROP_SHORTHAND(
     grid-column,
     grid_column,
     GridColumn,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     grid-column-end,
     grid_column_end,
     GridColumnEnd,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     grid-column-gap,
     grid_column_gap,
     GridColumnGap,
     0,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     grid-column-start,
     grid_column_start,
     GridColumnStart,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     grid-gap,
     grid_gap,
     GridGap,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     grid-row,
@@ -1583,767 +1443,690 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     grid-row-end,
     grid_row_end,
     GridRowEnd,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     grid-row-gap,
     grid_row_gap,
     GridRowGap,
     0,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     grid-row-start,
     grid_row_start,
     GridRowStart,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     grid-template,
     grid_template,
     GridTemplate,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     grid-template-areas,
     grid_template_areas,
     GridTemplateAreas,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     grid-template-columns,
     grid_template_columns,
     GridTemplateColumns,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     0,
-    kGridTrackBreadthKTable,
-    eStyleAnimType_Discrete)
+    kGridTrackBreadthKTable)
 CSS_PROP_(
     grid-template-rows,
     grid_template_rows,
     GridTemplateRows,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     0,
-    kGridTrackBreadthKTable,
-    eStyleAnimType_Discrete)
+    kGridTrackBreadthKTable)
 CSS_PROP_(
     height,
     height,
     Height,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     hyphens,
     hyphens,
     Hyphens,
     0,
     "",
     VARIANT_HK,
-    kHyphensKTable,
-    eStyleAnimType_Discrete)
+    kHyphensKTable)
 CSS_PROP_(
     image-orientation,
     image_orientation,
     ImageOrientation,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.image-orientation.enabled",
     0,
-    kImageOrientationKTable,
-    eStyleAnimType_Discrete)
+    kImageOrientationKTable)
 CSS_PROP_(
     -moz-image-region,
     _moz_image_region,
     CSS_PROP_DOMPROP_PREFIXED(ImageRegion),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     image-rendering,
     image_rendering,
     ImageRendering,
     0,
     "",
     VARIANT_HK,
-    kImageRenderingKTable,
-    eStyleAnimType_Discrete)
+    kImageRenderingKTable)
 CSS_PROP_(
     ime-mode,
     ime_mode,
     ImeMode,
     0,
     "",
     VARIANT_HK,
-    kIMEModeKTable,
-    eStyleAnimType_Discrete)
+    kIMEModeKTable)
 CSS_PROP_(
     initial-letter,
     initial_letter,
     InitialLetter,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.initial-letter.enabled",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     inline-size,
     inline_size,
     InlineSize,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_None)
+    kWidthKTable)
 CSS_PROP_(
     isolation,
     isolation,
     Isolation,
     0,
     "layout.css.isolation.enabled",
     VARIANT_HK,
-    kIsolationKTable,
-    eStyleAnimType_Discrete)
+    kIsolationKTable)
 CSS_PROP_(
     justify-content,
     justify_content,
     JustifyContent,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAutoCompletionAlignJustifyContent,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignJustifyContent)
 CSS_PROP_(
     justify-items,
     justify_items,
     JustifyItems,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
     // for auto-completion we use same values as justify-self:
-    kAutoCompletionAlignJustifySelf,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignJustifySelf)
 CSS_PROP_(
     justify-self,
     justify_self,
     JustifySelf,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HK,
-    kAutoCompletionAlignJustifySelf,
-    eStyleAnimType_Discrete)
+    kAutoCompletionAlignJustifySelf)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -x-lang,
     _x_lang,
     Lang,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     left,
     left,
     Left,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Left)
+    nullptr)
 CSS_PROP_(
     letter-spacing,
     letter_spacing,
     LetterSpacing,
     0,
     "",
     VARIANT_HL | VARIANT_NORMAL | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     lighting-color,
     lighting_color,
     LightingColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_Color)
+    nullptr)
 CSS_PROP_(
     line-height,
     line_height,
     LineHeight,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLPN | VARIANT_KEYWORD | VARIANT_NORMAL | VARIANT_SYSFONT | VARIANT_CALC,
-    kLineHeightKTable,
-    eStyleAnimType_Coord)
+    kLineHeightKTable)
 CSS_PROP_SHORTHAND(
     list-style,
     list_style,
     ListStyle,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     list-style-image,
     list_style_image,
     ListStyleImage,
     0,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     list-style-position,
     list_style_position,
     ListStylePosition,
     0,
     "",
     VARIANT_HK,
-    kListStylePositionKTable,
-    eStyleAnimType_Discrete)
+    kListStylePositionKTable)
 CSS_PROP_(
     list-style-type,
     list_style_type,
     ListStyleType,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     margin,
     margin,
     Margin,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     margin-block-end,
     margin_block_end,
     MarginBlockEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     margin-block-start,
     margin_block_start,
     MarginBlockStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     margin-bottom,
     margin_bottom,
     MarginBottom,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Bottom)
+    nullptr)
 CSS_PROP_(
     margin-inline-end,
     margin_inline_end,
     MarginInlineEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     margin-inline-start,
     margin_inline_start,
     MarginInlineStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     margin-left,
     margin_left,
     MarginLeft,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Left)
+    nullptr)
 CSS_PROP_(
     margin-right,
     margin_right,
     MarginRight,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Right)
+    nullptr)
 CSS_PROP_(
     margin-top,
     margin_top,
     MarginTop,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Top)
+    nullptr)
 CSS_PROP_SHORTHAND(
     marker,
     marker,
     Marker,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     marker-end,
     marker_end,
     MarkerEnd,
     0,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     marker-mid,
     marker_mid,
     MarkerMid,
     0,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     marker-start,
     marker_start,
     MarkerStart,
     0,
     "",
     VARIANT_HUO,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     mask,
     mask,
     Mask,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     mask-clip,
     mask_clip,
     MaskClip,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kMaskClipKTable,
-    eStyleAnimType_Discrete)
+    kMaskClipKTable)
 CSS_PROP_(
     mask-composite,
     mask_composite,
     MaskComposite,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kImageLayerCompositeKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerCompositeKTable)
 CSS_PROP_(
     mask-image,
     mask_image,
     MaskImage,
     0,
     "",
     VARIANT_IMAGE, // used by list parsing
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     mask-mode,
     mask_mode,
     MaskMode,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kImageLayerModeKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerModeKTable)
 CSS_PROP_(
     mask-origin,
     mask_origin,
     MaskOrigin,
     0,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kMaskOriginKTable,
-    eStyleAnimType_Discrete)
+    kMaskOriginKTable)
 CSS_PROP_SHORTHAND(
     mask-position,
     mask_position,
     MaskPosition,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     mask-position-x,
     mask_position_x,
     MaskPositionX,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     mask-position-y,
     mask_position_y,
     MaskPositionY,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     mask-repeat,
     mask_repeat,
     MaskRepeat,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_KEYWORD, // used by list parsing
-    kImageLayerRepeatKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerRepeatKTable)
 CSS_PROP_(
     mask-size,
     mask_size,
     MaskSize,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kImageLayerSizeKTable,
-    eStyleAnimType_Custom)
+    kImageLayerSizeKTable)
 CSS_PROP_(
     mask-type,
     mask_type,
     MaskType,
     0,
     "",
     VARIANT_HK,
-    kMaskTypeKTable,
-    eStyleAnimType_Discrete)
+    kMaskTypeKTable)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-math-display,
     _moz_math_display,
     MathDisplay,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "",
     VARIANT_HK,
-    kMathDisplayKTable,
-    eStyleAnimType_None)
+    kMathDisplayKTable)
 CSS_PROP_(
     -moz-math-variant,
     _moz_math_variant,
     MathVariant,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     VARIANT_HK,
-    kMathVariantKTable,
-    eStyleAnimType_None)
+    kMathVariantKTable)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     max-block-size,
     max_block_size,
     MaxBlockSize,
     0,
     "",
     VARIANT_HLPO | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     max-height,
     max_height,
     MaxHeight,
     0,
     "",
     VARIANT_HKLPO | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     max-inline-size,
     max_inline_size,
     MaxInlineSize,
     0,
     "",
     VARIANT_HKLPO | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_None)
+    kWidthKTable)
 CSS_PROP_(
     max-width,
     max_width,
     MaxWidth,
     0,
     "",
     VARIANT_HKLPO | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     min-block-size,
     min_block_size,
     MinBlockSize,
     0,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-min-font-size-ratio,
     _moz_min_font_size_ratio,
     CSS_PROP_DOMPROP_PREFIXED(MinFontSizeRatio),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "",
     VARIANT_INHERIT | VARIANT_PERCENT,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     min-height,
     min_height,
     MinHeight,
     0,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     min-inline-size,
     min_inline_size,
     MinInlineSize,
     0,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_None)
+    kWidthKTable)
 CSS_PROP_(
     min-width,
     min_width,
     MinWidth,
     0,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     mix-blend-mode,
     mix_blend_mode,
     MixBlendMode,
     0,
     "layout.css.mix-blend-mode.enabled",
     VARIANT_HK,
-    kBlendModeKTable,
-    eStyleAnimType_Discrete)
+    kBlendModeKTable)
 CSS_PROP_(
     object-fit,
     object_fit,
     ObjectFit,
     0,
     "",
     VARIANT_HK,
-    kObjectFitKTable,
-    eStyleAnimType_Discrete)
+    kObjectFitKTable)
 CSS_PROP_(
     object-position,
     object_position,
     ObjectPosition,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_CALC,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     offset-block-end,
     offset_block_end,
     OffsetBlockEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     offset-block-start,
     offset_block_start,
     OffsetBlockStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     offset-inline-end,
     offset_inline_end,
     OffsetInlineEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     offset-inline-start,
     offset_inline_start,
     OffsetInlineStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     opacity,
     opacity,
     Opacity,
     CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     order,
     order,
     Order,
     0,
     "",
     VARIANT_HI,
-    nullptr,
-    eStyleAnimType_Custom) // <integer>
+    nullptr) // <integer>
 CSS_PROP_(
     -moz-orient,
     _moz_orient,
     CSS_PROP_DOMPROP_PREFIXED(Orient),
     0,
     "",
     VARIANT_HK,
-    kOrientKTable,
-    eStyleAnimType_Discrete)
+    kOrientKTable)
 CSS_PROP_(
     -moz-osx-font-smoothing,
     _moz_osx_font_smoothing,
     CSS_PROP_DOMPROP_PREFIXED(OsxFontSmoothing),
     0,
     "layout.css.osx-font-smoothing.enabled",
     VARIANT_HK,
-    kFontSmoothingKTable,
-    eStyleAnimType_Discrete)
+    kFontSmoothingKTable)
 CSS_PROP_SHORTHAND(
     outline,
     outline,
     Outline,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     outline-color,
     outline_color,
     OutlineColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     outline-offset,
     outline_offset,
     OutlineOffset,
     0,
     "",
     VARIANT_HL | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_nscoord)
+    nullptr)
 CSS_PROP_SHORTHAND(
     -moz-outline-radius,
     _moz_outline_radius,
     CSS_PROP_DOMPROP_PREFIXED(OutlineRadius),
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     -moz-outline-radius-bottomleft,
     _moz_outline_radius_bottomleft,
     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomleft),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_BottomLeft)
+    nullptr)
 CSS_PROP_(
     -moz-outline-radius-bottomright,
     _moz_outline_radius_bottomright,
     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusBottomright),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_BottomRight)
+    nullptr)
 CSS_PROP_(
     -moz-outline-radius-topleft,
     _moz_outline_radius_topleft,
     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopleft),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_TopLeft)
+    nullptr)
 CSS_PROP_(
     -moz-outline-radius-topright,
     _moz_outline_radius_topright,
     CSS_PROP_DOMPROP_PREFIXED(OutlineRadiusTopright),
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Corner_TopRight)
+    nullptr)
 CSS_PROP_(
     outline-style,
     outline_style,
     OutlineStyle,
     0,
     "",
     VARIANT_HK,
-    kOutlineStyleKTable,
-    eStyleAnimType_Discrete)
+    kOutlineStyleKTable)
 CSS_PROP_(
     outline-width,
     outline_width,
     OutlineWidth,
     0,
     "",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_nscoord)
+    kBorderWidthKTable)
 CSS_PROP_SHORTHAND(
     overflow,
     overflow,
     Overflow,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     overflow-clip-box,
@@ -2354,212 +2137,191 @@ CSS_PROP_SHORTHAND(
     "layout.css.overflow-clip-box.enabled")
 CSS_PROP_(
     overflow-clip-box-block,
     overflow_clip_box_block,
     OverflowClipBoxBlock,
     CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.overflow-clip-box.enabled",
     VARIANT_HK,
-    kOverflowClipBoxKTable,
-    eStyleAnimType_Discrete)
+    kOverflowClipBoxKTable)
 CSS_PROP_(
     overflow-clip-box-inline,
     overflow_clip_box_inline,
     OverflowClipBoxInline,
     CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "layout.css.overflow-clip-box.enabled",
     VARIANT_HK,
-    kOverflowClipBoxKTable,
-    eStyleAnimType_Discrete)
+    kOverflowClipBoxKTable)
 CSS_PROP_(
     overflow-wrap,
     overflow_wrap,
     OverflowWrap,
     0,
     "",
     VARIANT_HK,
-    kOverflowWrapKTable,
-    eStyleAnimType_Discrete)
+    kOverflowWrapKTable)
 CSS_PROP_(
     overflow-x,
     overflow_x,
     OverflowX,
     0,
     "",
     VARIANT_HK,
-    kOverflowSubKTable,
-    eStyleAnimType_Discrete)
+    kOverflowSubKTable)
 CSS_PROP_(
     overflow-y,
     overflow_y,
     OverflowY,
     0,
     "",
     VARIANT_HK,
-    kOverflowSubKTable,
-    eStyleAnimType_Discrete)
+    kOverflowSubKTable)
 CSS_PROP_SHORTHAND(
     overscroll-behavior,
     overscroll_behavior,
     OverscrollBehavior,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.overscroll-behavior.enabled")
 CSS_PROP_(
     overscroll-behavior-x,
     overscroll_behavior_x,
     OverscrollBehaviorX,
     0,
     "layout.css.overscroll-behavior.enabled",
     VARIANT_HK,
-    kOverscrollBehaviorKTable,
-    eStyleAnimType_Discrete)
+    kOverscrollBehaviorKTable)
 CSS_PROP_(
     overscroll-behavior-y,
     overscroll_behavior_y,
     OverscrollBehaviorY,
     0,
     "layout.css.overscroll-behavior.enabled",
     VARIANT_HK,
-    kOverscrollBehaviorKTable,
-    eStyleAnimType_Discrete)
+    kOverscrollBehaviorKTable)
 CSS_PROP_SHORTHAND(
     padding,
     padding,
     Padding,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     padding-block-end,
     padding_block_end,
     PaddingBlockEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     padding-block-start,
     padding_block_start,
     PaddingBlockStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     padding-bottom,
     padding_bottom,
     PaddingBottom,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Bottom)
+    nullptr)
 CSS_PROP_(
     padding-inline-end,
     padding_inline_end,
     PaddingInlineEnd,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     padding-inline-start,
     padding_inline_start,
     PaddingInlineStart,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     padding-left,
     padding_left,
     PaddingLeft,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Left)
+    nullptr)
 CSS_PROP_(
     padding-right,
     padding_right,
     PaddingRight,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Right)
+    nullptr)
 CSS_PROP_(
     padding-top,
     padding_top,
     PaddingTop,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Top)
+    nullptr)
 CSS_PROP_(
     page-break-after,
     page_break_after,
     PageBreakAfter,
     0,
     "",
     VARIANT_HK,
-    kPageBreakKTable,
-    eStyleAnimType_Discrete) // temp fix for bug 24000
+    kPageBreakKTable) // temp fix for bug 24000
 CSS_PROP_(
     page-break-before,
     page_break_before,
     PageBreakBefore,
     0,
     "",
     VARIANT_HK,
-    kPageBreakKTable,
-    eStyleAnimType_Discrete) // temp fix for bug 24000
+    kPageBreakKTable) // temp fix for bug 24000
 CSS_PROP_(
     page-break-inside,
     page_break_inside,
     PageBreakInside,
     0,
     "",
     VARIANT_HK,
-    kPageBreakInsideKTable,
-    eStyleAnimType_Discrete)
+    kPageBreakInsideKTable)
 CSS_PROP_(
     paint-order,
     paint_order,
     PaintOrder,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     perspective,
     perspective,
     Perspective,
     0,
     "",
     VARIANT_NONE | VARIANT_INHERIT | VARIANT_LENGTH |
       VARIANT_NONNEGATIVE_DIMENSION,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     perspective-origin,
     perspective_origin,
     PerspectiveOrigin,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_CALC,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_SHORTHAND(
     place-content,
     place_content,
     PlaceContent,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_SHORTHAND(
     place-items,
@@ -2575,895 +2337,805 @@ CSS_PROP_SHORTHAND(
     "")
 CSS_PROP_(
     pointer-events,
     pointer_events,
     PointerEvents,
     0,
     "",
     VARIANT_HK,
-    kPointerEventsKTable,
-    eStyleAnimType_Discrete)
+    kPointerEventsKTable)
 CSS_PROP_(
     position,
     position,
     Position,
     0,
     "",
     VARIANT_HK,
-    kPositionKTable,
-    eStyleAnimType_Discrete)
+    kPositionKTable)
 CSS_PROP_(
     quotes,
     quotes,
     Quotes,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_HOS,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     resize,
     resize,
     Resize,
     0,
     "",
     VARIANT_HK,
-    kResizeKTable,
-    eStyleAnimType_Discrete)
+    kResizeKTable)
 CSS_PROP_(
     right,
     right,
     Right,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Right)
+    nullptr)
 CSS_PROP_(
     rotate,
     rotate,
     Rotate,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.individual-transform.enabled",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     ruby-align,
     ruby_align,
     RubyAlign,
     0,
     "",
     VARIANT_HK,
-    kRubyAlignKTable,
-    eStyleAnimType_Discrete)
+    kRubyAlignKTable)
 CSS_PROP_(
     ruby-position,
     ruby_position,
     RubyPosition,
     0,
     "",
     VARIANT_HK,
-    kRubyPositionKTable,
-    eStyleAnimType_Discrete)
+    kRubyPositionKTable)
 CSS_PROP_(
     scale,
     scale,
     Scale,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.individual-transform.enabled",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-script-level,
     _moz_script_level,
     ScriptLevel,
     // We only allow 'script-level' when unsafe rules are enabled, because
     // otherwise it could interfere with rulenode optimizations if used in
     // a non-MathML-enabled document.
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "",
     // script-level can take Auto, Integer and Number values, but only Auto
     // ("increment if parent is not in displaystyle") and Integer
     // ("relative") values can be specified in a style sheet.
     VARIANT_AHI,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     -moz-script-min-size,
     _moz_script_min_size,
     ScriptMinSize,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     -moz-script-size-multiplier,
     _moz_script_size_multiplier,
     ScriptSizeMultiplier,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     scroll-behavior,
     scroll_behavior,
     ScrollBehavior,
     0,
     "layout.css.scroll-behavior.property-enabled",
     VARIANT_HK,
-    kScrollBehaviorKTable,
-    eStyleAnimType_Discrete)
+    kScrollBehaviorKTable)
 CSS_PROP_(
     scroll-snap-coordinate,
     scroll_snap_coordinate,
     ScrollSnapCoordinate,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.scroll-snap.enabled",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     scroll-snap-destination,
     scroll_snap_destination,
     ScrollSnapDestination,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.scroll-snap.enabled",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Discrete)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     scroll-snap-points-x,
     scroll_snap_points_x,
     ScrollSnapPointsX,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.scroll-snap.enabled",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     scroll-snap-points-y,
     scroll_snap_points_y,
     ScrollSnapPointsY,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.scroll-snap.enabled",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_SHORTHAND(
     scroll-snap-type,
     scroll_snap_type,
     ScrollSnapType,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.scroll-snap.enabled")
 CSS_PROP_(
     scroll-snap-type-x,
     scroll_snap_type_x,
     ScrollSnapTypeX,
     0,
     "layout.css.scroll-snap.enabled",
     VARIANT_HK,
-    kScrollSnapTypeKTable,
-    eStyleAnimType_Discrete)
+    kScrollSnapTypeKTable)
 CSS_PROP_(
     scroll-snap-type-y,
     scroll_snap_type_y,
     ScrollSnapTypeY,
     0,
     "layout.css.scroll-snap.enabled",
     VARIANT_HK,
-    kScrollSnapTypeKTable,
-    eStyleAnimType_Discrete)
+    kScrollSnapTypeKTable)
 CSS_PROP_(
     shape-image-threshold,
     shape_image_threshold,
     ShapeImageThreshold,
     0,
     "layout.css.shape-outside.enabled",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     shape-outside,
     shape_outside,
     ShapeOutside,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.shape-outside.enabled",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     shape-rendering,
     shape_rendering,
     ShapeRendering,
     0,
     "",
     VARIANT_HK,
-    kShapeRenderingKTable,
-    eStyleAnimType_Discrete)
+    kShapeRenderingKTable)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -x-span,
     _x_span,
     Span,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     -moz-stack-sizing,
     _moz_stack_sizing,
     CSS_PROP_DOMPROP_PREFIXED(StackSizing),
     0,
     "",
     VARIANT_HK,
-    kStackSizingKTable,
-    eStyleAnimType_Discrete)
+    kStackSizingKTable)
 CSS_PROP_(
     stop-color,
     stop_color,
     StopColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_Color)
+    nullptr)
 CSS_PROP_(
     stop-opacity,
     stop_opacity,
     StopOpacity,
     0,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     stroke,
     stroke,
     Stroke,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    kContextPatternKTable,
-    eStyleAnimType_PaintServer)
+    kContextPatternKTable)
 CSS_PROP_(
     stroke-dasharray,
     stroke_dasharray,
     StrokeDasharray,
     CSS_PROPERTY_PARSE_FUNCTION,
         // NOTE: Internal values have range restrictions.
     "",
     0,
-    kStrokeContextValueKTable,
-    eStyleAnimType_Custom)
+    kStrokeContextValueKTable)
 CSS_PROP_(
     stroke-dashoffset,
     stroke_dashoffset,
     StrokeDashoffset,
     0,
     "",
     VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kStrokeContextValueKTable,
-    eStyleAnimType_Coord)
+    kStrokeContextValueKTable)
 CSS_PROP_(
     stroke-linecap,
     stroke_linecap,
     StrokeLinecap,
     0,
     "",
     VARIANT_HK,
-    kStrokeLinecapKTable,
-    eStyleAnimType_Discrete)
+    kStrokeLinecapKTable)
 CSS_PROP_(
     stroke-linejoin,
     stroke_linejoin,
     StrokeLinejoin,
     0,
     "",
     VARIANT_HK,
-    kStrokeLinejoinKTable,
-    eStyleAnimType_Discrete)
+    kStrokeLinejoinKTable)
 CSS_PROP_(
     stroke-miterlimit,
     stroke_miterlimit,
     StrokeMiterlimit,
     0,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     stroke-opacity,
     stroke_opacity,
     StrokeOpacity,
     0,
     "",
     VARIANT_HN | VARIANT_KEYWORD,
-    kContextOpacityKTable,
-    eStyleAnimType_float)
+    kContextOpacityKTable)
 CSS_PROP_(
     stroke-width,
     stroke_width,
     StrokeWidth,
     0,
     "",
     VARIANT_HLPN | VARIANT_OPENTYPE_SVG_KEYWORD,
-    kStrokeContextValueKTable,
-    eStyleAnimType_Coord)
+    kStrokeContextValueKTable)
 CSS_PROP_(
     -moz-tab-size,
     _moz_tab_size,
     CSS_PROP_DOMPROP_PREFIXED(TabSize),
     0,
     "",
     VARIANT_INHERIT | VARIANT_LNCALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     table-layout,
     table_layout,
     TableLayout,
     0,
     "",
     VARIANT_HK,
-    kTableLayoutKTable,
-    eStyleAnimType_Discrete)
+    kTableLayoutKTable)
 CSS_PROP_(
     text-align,
     text_align,
     TextAlign,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     // When we support aligning on a string, we can parse text-align
     // as a string....
     VARIANT_HK /* | VARIANT_STRING */,
-    kTextAlignKTable,
-    eStyleAnimType_Discrete)
+    kTextAlignKTable)
 CSS_PROP_(
     text-align-last,
     text_align_last,
     TextAlignLast,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     VARIANT_HK,
-    kTextAlignLastKTable,
-    eStyleAnimType_Discrete)
+    kTextAlignLastKTable)
 CSS_PROP_(
     text-anchor,
     text_anchor,
     TextAnchor,
     0,
     "",
     VARIANT_HK,
-    kTextAnchorKTable,
-    eStyleAnimType_Discrete)
+    kTextAnchorKTable)
 CSS_PROP_(
     text-combine-upright,
     text_combine_upright,
     TextCombineUpright,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.text-combine-upright.enabled",
     0,
-    kTextCombineUprightKTable,
-    eStyleAnimType_Discrete)
+    kTextCombineUprightKTable)
 CSS_PROP_SHORTHAND(
     text-decoration,
     text_decoration,
     TextDecoration,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     text-decoration-color,
     text_decoration_color,
     TextDecorationColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     text-decoration-line,
     text_decoration_line,
     TextDecorationLine,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kTextDecorationLineKTable,
-    eStyleAnimType_Discrete)
+    kTextDecorationLineKTable)
 CSS_PROP_(
     text-decoration-style,
     text_decoration_style,
     TextDecorationStyle,
     0,
     "",
     VARIANT_HK,
-    kTextDecorationStyleKTable,
-    eStyleAnimType_Discrete)
+    kTextDecorationStyleKTable)
 CSS_PROP_SHORTHAND(
     text-emphasis,
     text_emphasis,
     TextEmphasis,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     text-emphasis-color,
     text_emphasis_color,
     TextEmphasisColor,
     0,
     "",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     text-emphasis-position,
     text_emphasis_position,
     TextEmphasisPosition,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kTextEmphasisPositionKTable,
-    eStyleAnimType_Discrete)
+    kTextEmphasisPositionKTable)
 CSS_PROP_(
     text-emphasis-style,
     text_emphasis_style,
     TextEmphasisStyle,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     -webkit-text-fill-color,
     _webkit_text_fill_color,
     WebkitTextFillColor,
     0,
     "layout.css.prefixes.webkit",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     text-indent,
     text_indent,
     TextIndent,
     0,
     "",
     VARIANT_HLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     text-justify,
     text_justify,
     TextJustify,
     0,
     "layout.css.text-justify.enabled",
     VARIANT_HK,
-    kTextJustifyKTable,
-    eStyleAnimType_Discrete)
+    kTextJustifyKTable)
 CSS_PROP_(
     text-orientation,
     text_orientation,
     TextOrientation,
     0,
     "",
     VARIANT_HK,
-    kTextOrientationKTable,
-    eStyleAnimType_Discrete)
+    kTextOrientationKTable)
 CSS_PROP_(
     text-overflow,
     text_overflow,
     TextOverflow,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "",
     0,
-    kTextOverflowKTable,
-    eStyleAnimType_Discrete)
+    kTextOverflowKTable)
 CSS_PROP_(
     text-rendering,
     text_rendering,
     TextRendering,
     0,
     "",
     VARIANT_HK,
-    kTextRenderingKTable,
-    eStyleAnimType_Discrete)
+    kTextRenderingKTable)
 CSS_PROP_(
     text-shadow,
     text_shadow,
     TextShadow,
     CSS_PROPERTY_PARSE_FUNCTION,
         // NOTE: some components must be nonnegative
     "",
     VARIANT_COLOR | VARIANT_LENGTH | VARIANT_CALC | VARIANT_INHERIT | VARIANT_NONE,
-    nullptr,
-    eStyleAnimType_Shadow)
+    nullptr)
 CSS_PROP_(
     -moz-text-size-adjust,
     _moz_text_size_adjust,
     CSS_PROP_DOMPROP_PREFIXED(TextSizeAdjust),
     0,
     "",
     VARIANT_HK,
-    kTextSizeAdjustKTable,
-    eStyleAnimType_Discrete)
+    kTextSizeAdjustKTable)
 CSS_PROP_SHORTHAND(
     -webkit-text-stroke,
     _webkit_text_stroke,
     WebkitTextStroke,
     CSS_PROPERTY_PARSE_FUNCTION,
     "layout.css.prefixes.webkit")
 CSS_PROP_(
     -webkit-text-stroke-color,
     _webkit_text_stroke_color,
     WebkitTextStrokeColor,
     0,
     "layout.css.prefixes.webkit",
     VARIANT_HC,
-    nullptr,
-    eStyleAnimType_ComplexColor)
+    nullptr)
 CSS_PROP_(
     -webkit-text-stroke-width,
     _webkit_text_stroke_width,
     WebkitTextStrokeWidth,
     0,
     "layout.css.prefixes.webkit",
     VARIANT_HKL | VARIANT_CALC,
-    kBorderWidthKTable,
-    eStyleAnimType_Discrete)
+    kBorderWidthKTable)
 CSS_PROP_(
     text-transform,
     text_transform,
     TextTransform,
     0,
     "",
     VARIANT_HK,
-    kTextTransformKTable,
-    eStyleAnimType_Discrete)
+    kTextTransformKTable)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -x-text-zoom,
     _x_text_zoom,
     TextZoom,
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_INACCESSIBLE,
     "",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     top,
     top,
     Top,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHLP | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Sides_Top)
+    nullptr)
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-top-layer,
     _moz_top_layer,
     CSS_PROP_DOMPROP_PREFIXED(TopLayer),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS,
     "",
     VARIANT_HK,
-    kTopLayerKTable,
-    eStyleAnimType_None)
+    kTopLayerKTable)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     touch-action,
     touch_action,
     TouchAction,
     CSS_PROPERTY_VALUE_PARSER_FUNCTION,
     "layout.css.touch_action.enabled",
     VARIANT_HK,
-    kTouchActionKTable,
-    eStyleAnimType_Discrete)
+    kTouchActionKTable)
 CSS_PROP_(
     transform,
     transform,
     Transform,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH |
         CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     transform-box,
     transform_box,
     TransformBox,
     0,
     "svg.transform-box.enabled",
     VARIANT_HK,
-    kTransformBoxKTable,
-    eStyleAnimType_Discrete)
+    kTransformBoxKTable)
 CSS_PROP_(
     transform-origin,
     transform_origin,
     TransformOrigin,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 CSS_PROP_(
     transform-style,
     transform_style,
     TransformStyle,
     0,
     "",
     VARIANT_HK,
-    kTransformStyleKTable,
-    eStyleAnimType_Discrete)
+    kTransformStyleKTable)
 CSS_PROP_SHORTHAND(
     transition,
     transition,
     Transition,
     CSS_PROPERTY_PARSE_FUNCTION,
     "")
 CSS_PROP_(
     transition-delay,
     transition_delay,
     TransitionDelay,
     0,
     "",
     VARIANT_TIME, // used by list parsing
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     transition-duration,
     transition_duration,
     TransitionDuration,
     0,
     "",
     VARIANT_TIME | VARIANT_NONNEGATIVE_DIMENSION, // used by list parsing
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     transition-property,
     transition_property,
     TransitionProperty,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     VARIANT_IDENTIFIER | VARIANT_NONE | VARIANT_ALL, // used only in shorthand
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 CSS_PROP_(
     transition-timing-function,
     transition_timing_function,
     TransitionTimingFunction,
     0,
     "",
     VARIANT_KEYWORD | VARIANT_TIMING_FUNCTION, // used by list parsing
-    kTransitionTimingFunctionKTable,
-    eStyleAnimType_None)
+    kTransitionTimingFunctionKTable)
 CSS_PROP_(
     translate,
     translate,
     Translate,
     CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "layout.css.individual-transform.enabled",
     0,
-    nullptr,
-    eStyleAnimType_None)
+    nullptr)
 #ifndef CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     unicode-bidi,
     unicode_bidi,
     UnicodeBidi,
     0,
     "",
     VARIANT_HK,
-    kUnicodeBidiKTable,
-    eStyleAnimType_Discrete)
+    kUnicodeBidiKTable)
 #endif // CSS_PROP_LIST_ONLY_COMPONENTS_OF_ALL_SHORTHAND
 CSS_PROP_(
     -moz-user-focus,
     _moz_user_focus,
     CSS_PROP_DOMPROP_PREFIXED(UserFocus),
     0,
     "",
     VARIANT_HK,
-    kUserFocusKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kUserFocusKTable) // XXX bug 3935
 CSS_PROP_(
     -moz-user-input,
     _moz_user_input,
     CSS_PROP_DOMPROP_PREFIXED(UserInput),
     0,
     "",
     VARIANT_HK,
-    kUserInputKTable,
-    eStyleAnimType_Discrete) // XXX ??? // XXX bug 3935
+    kUserInputKTable) // XXX ??? // XXX bug 3935
 CSS_PROP_(
     -moz-user-modify,
     _moz_user_modify,
     CSS_PROP_DOMPROP_PREFIXED(UserModify),
     0,
     "",
     VARIANT_HK,
-    kUserModifyKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kUserModifyKTable) // XXX bug 3935
 CSS_PROP_(
     -moz-user-select,
     _moz_user_select,
     CSS_PROP_DOMPROP_PREFIXED(UserSelect),
     0,
     "",
     VARIANT_HK,
-    kUserSelectKTable,
-    eStyleAnimType_Discrete) // XXX bug 3935
+    kUserSelectKTable) // XXX bug 3935
 CSS_PROP_(
     vector-effect,
     vector_effect,
     VectorEffect,
     0,
     "",
     VARIANT_HK,
-    kVectorEffectKTable,
-    eStyleAnimType_Discrete)
+    kVectorEffectKTable)
 // NOTE: vertical-align is only supposed to apply to :first-letter when
 // 'float' is 'none', but we don't worry about that since it has no
 // effect otherwise
 CSS_PROP_(
     vertical-align,
     vertical_align,
     VerticalAlign,
     0,
     "",
     VARIANT_HKLP | VARIANT_CALC,
-    kVerticalAlignKTable,
-    eStyleAnimType_Coord)
+    kVerticalAlignKTable)
 CSS_PROP_(
     visibility,
     visibility,
     Visibility,
     0,
     "",
     VARIANT_HK,
-    kVisibilityKTable,
-    eStyleAnimType_Discrete)  // reflow for collapse
+    kVisibilityKTable)  // reflow for collapse
 CSS_PROP_(
     white-space,
     white_space,
     WhiteSpace,
     0,
     "",
     VARIANT_HK,
-    kWhitespaceKTable,
-    eStyleAnimType_Discrete)
+    kWhitespaceKTable)
 CSS_PROP_(
     width,
     width,
     Width,
     CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     VARIANT_AHKLP | VARIANT_CALC,
-    kWidthKTable,
-    eStyleAnimType_Coord)
+    kWidthKTable)
 CSS_PROP_(
     will-change,
     will_change,
     WillChange,
     CSS_PROPERTY_PARSE_FUNCTION,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Discrete)
+    nullptr)
 CSS_PROP_(
     -moz-window-dragging,
     _moz_window_dragging,
     CSS_PROP_DOMPROP_PREFIXED(WindowDragging),
     0,
     "",
     VARIANT_HK,
-    kWindowDraggingKTable,
-    eStyleAnimType_Discrete)
+    kWindowDraggingKTable)
 #ifndef CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     -moz-window-opacity,
     _moz_window_opacity,
     CSS_PROP_DOMPROP_PREFIXED(WindowOpacity),
     CSS_PROPERTY_INTERNAL,
     "",
     VARIANT_HN,
-    nullptr,
-    eStyleAnimType_float)
+    nullptr)
 CSS_PROP_(
     -moz-window-shadow,
     _moz_window_shadow,
     CSS_PROP_DOMPROP_PREFIXED(WindowShadow),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_ENABLED_IN_UA_SHEETS_AND_CHROME,
     "",
     VARIANT_HK,
-    kWindowShadowKTable,
-    eStyleAnimType_None)
+    kWindowShadowKTable)
 CSS_PROP_(
     -moz-window-transform,
     _moz_window_transform,
     CSS_PROP_DOMPROP_PREFIXED(WindowTransform),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     0,
-    nullptr,
-    eStyleAnimType_Custom)
+    nullptr)
 CSS_PROP_(
     -moz-window-transform-origin,
     _moz_window_transform_origin,
     CSS_PROP_DOMPROP_PREFIXED(WindowTransformOrigin),
     CSS_PROPERTY_INTERNAL |
         CSS_PROPERTY_PARSE_FUNCTION |
         CSS_PROPERTY_GETCS_NEEDS_LAYOUT_FLUSH,
     "",
     0,
-    kImageLayerPositionKTable,
-    eStyleAnimType_Custom)
+    kImageLayerPositionKTable)
 #endif // CSS_PROP_LIST_EXCLUDE_INTERNAL
 CSS_PROP_(
     word-break,
     word_break,
     WordBreak,
     0,
     "",
     VARIANT_HK,
-    kWordBreakKTable,
-    eStyleAnimType_Discrete)
+    kWordBreakKTable)
 CSS_PROP_(
     word-spacing,
     word_spacing,
     WordSpacing,
     0,
     "",
     VARIANT_HLP | VARIANT_NORMAL | VARIANT_CALC,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 CSS_PROP_(
     writing-mode,
     writing_mode,
     WritingMode,
     0,
     "",
     VARIANT_HK,
-    kWritingModeKTable,
-    eStyleAnimType_Discrete)
+    kWritingModeKTable)
 CSS_PROP_(
     z-index,
     z_index,
     ZIndex,
     0,
     "",
     VARIANT_AHI,
-    nullptr,
-    eStyleAnimType_Coord)
+    nullptr)
 
 #undef CSS_PROP_
 
 #ifdef DEFINED_CSS_PROP_SHORTHAND
 #undef CSS_PROP_SHORTHAND
 #undef DEFINED_CSS_PROP_SHORTHAND
 #endif
 
--- a/layout/style/nsCSSProps.cpp
+++ b/layout/style/nsCSSProps.cpp
@@ -2299,17 +2299,17 @@ nsCSSProps::ValueToKeyword(int32_t aValu
   } else {
     return nsCSSKeywords::GetStringValue(keyword);
   }
 }
 
 /* static */ const KTableEntry* const
 nsCSSProps::kKeywordTableTable[eCSSProperty_COUNT_no_shorthands] = {
   #define CSS_PROP(name_, id_, method_, flags_, pref_, parsevariant_, \
-                   kwtable_, ...) kwtable_,
+                   kwtable_) kwtable_,
   #include "nsCSSPropList.h"
   #undef CSS_PROP
 };
 
 const nsCString&
 nsCSSProps::LookupPropertyValue(nsCSSPropertyID aProp, int32_t aValue)
 {
   MOZ_ASSERT(aProp >= 0 && aProp < eCSSProperty_COUNT,
@@ -2342,25 +2342,16 @@ bool nsCSSProps::GetColorName(int32_t aP
     nsCSSKeywords::AddRefTable();
     aStr = nsCSSKeywords::GetStringValue(keyword);
     nsCSSKeywords::ReleaseTable();
     rv = true;
   }
   return rv;
 }
 
-const nsStyleAnimType
-nsCSSProps::kAnimTypeTable[eCSSProperty_COUNT_no_shorthands] = {
-#define CSS_PROP(name_, id_, method_, flags_, pref_, \
-                 parsevariant_, kwtable_, animtype_) \
-  animtype_,
-#include "nsCSSPropList.h"
-#undef CSS_PROP
-};
-
 const uint32_t nsCSSProps::kFlagsTable[eCSSProperty_COUNT] = {
 #define CSS_PROP(name_, id_, method_, flags_, ...) flags_,
 #include "nsCSSPropList.h"
 #undef CSS_PROP
 #define CSS_PROP_SHORTHAND(name_, id_, method_, flags_, pref_) flags_,
 #include "nsCSSPropList.h"
 #undef CSS_PROP_SHORTHAND
 };
--- a/layout/style/nsCSSProps.h
+++ b/layout/style/nsCSSProps.h
@@ -169,66 +169,16 @@ static_assert((CSS_PROPERTY_PARSE_PROPER
 // This property can be animated on the compositor.
 #define CSS_PROPERTY_CAN_ANIMATE_ON_COMPOSITOR    (1<<27)
 
 // This property is an internal property that is not represented
 // in the DOM.  Properties with this flag must be defined in an #ifndef
 // CSS_PROP_LIST_EXCLUDE_INTERNAL section of nsCSSPropList.h.
 #define CSS_PROPERTY_INTERNAL                     (1<<28)
 
-/**
- * Types of animatable values.
- */
-enum nsStyleAnimType {
-  // requires a custom implementation in
-  // StyleAnimationValue::ExtractComputedValue
-  eStyleAnimType_Custom,
-
-  // nsStyleCoord with animatable values
-  eStyleAnimType_Coord,
-
-  // same as Coord, except for one side of an nsStyleSides
-  // listed in the same order as the NS_STYLE_* constants
-  eStyleAnimType_Sides_Top,
-  eStyleAnimType_Sides_Right,
-  eStyleAnimType_Sides_Bottom,
-  eStyleAnimType_Sides_Left,
-
-  // similar, but for the *pair* of coord members of an nsStyleCorners
-  // for the relevant corner
-  eStyleAnimType_Corner_TopLeft,
-  eStyleAnimType_Corner_TopRight,
-  eStyleAnimType_Corner_BottomRight,
-  eStyleAnimType_Corner_BottomLeft,
-
-  // nscoord values
-  eStyleAnimType_nscoord,
-
-  // float values
-  eStyleAnimType_float,
-
-  // nscolor values
-  eStyleAnimType_Color,
-
-  // StyleComplexColor values
-  eStyleAnimType_ComplexColor,
-
-  // nsStyleSVGPaint values
-  eStyleAnimType_PaintServer,
-
-  // RefPtr<nsCSSShadowArray> values
-  eStyleAnimType_Shadow,
-
-  // discrete values
-  eStyleAnimType_Discrete,
-
-  // property not animatable
-  eStyleAnimType_None
-};
-
 class nsCSSProps {
 public:
   typedef mozilla::CSSEnabledState EnabledState;
 
   struct KTableEntry
   {
     // KTableEntry objects can be initialized either with an int16_t value
     // or a value of an enumeration type that can fit within an int16_t.
@@ -333,17 +283,16 @@ public:
   static const nsCString& ValueToKeyword(T aValue, const KTableEntry aTable[])
   {
     static_assert(mozilla::EnumTypeFitsWithin<T, int16_t>::value,
                   "aValue must be an enum that fits within KTableEntry::mValue");
     return ValueToKeyword(static_cast<int16_t>(aValue), aTable);
   }
 
   static const KTableEntry* const kKeywordTableTable[eCSSProperty_COUNT_no_shorthands];
-  static const nsStyleAnimType kAnimTypeTable[eCSSProperty_COUNT_no_shorthands];
 
 private:
   static const uint32_t        kFlagsTable[eCSSProperty_COUNT];
 
 public:
   static inline bool PropHasFlags(nsCSSPropertyID aProperty, uint32_t aFlags)
   {
     MOZ_ASSERT(0 <= aProperty && aProperty < eCSSProperty_COUNT,