--- a/gfx/src/nsFont.cpp
+++ b/gfx/src/nsFont.cpp
@@ -92,51 +92,51 @@ const gfxFontFeature eastAsianDefaults[]
{ TRUETYPE_TAG('s','m','p','l'), 1 },
{ TRUETYPE_TAG('t','r','a','d'), 1 },
{ TRUETYPE_TAG('f','w','i','d'), 1 },
{ TRUETYPE_TAG('p','w','i','d'), 1 },
{ TRUETYPE_TAG('r','u','b','y'), 1 }
};
static_assert(MOZ_ARRAY_LENGTH(eastAsianDefaults) ==
- eFeatureEastAsian_numFeatures,
- "eFeatureEastAsian_numFeatures should be correct");
+ NS_FONT_VARIANT_EAST_ASIAN_COUNT,
+ "eastAsianDefaults[] should be correct");
// NS_FONT_VARIANT_LIGATURES_xxx values
const gfxFontFeature ligDefaults[] = {
{ TRUETYPE_TAG('l','i','g','a'), 0 }, // none value means all off
{ TRUETYPE_TAG('l','i','g','a'), 1 },
{ TRUETYPE_TAG('l','i','g','a'), 0 },
{ TRUETYPE_TAG('d','l','i','g'), 1 },
{ TRUETYPE_TAG('d','l','i','g'), 0 },
{ TRUETYPE_TAG('h','l','i','g'), 1 },
{ TRUETYPE_TAG('h','l','i','g'), 0 },
{ TRUETYPE_TAG('c','a','l','t'), 1 },
{ TRUETYPE_TAG('c','a','l','t'), 0 }
};
static_assert(MOZ_ARRAY_LENGTH(ligDefaults) ==
- eFeatureLigatures_numFeatures,
- "eFeatureLigatures_numFeatures should be correct");
+ NS_FONT_VARIANT_LIGATURES_COUNT,
+ "ligDefaults[] should be correct");
// NS_FONT_VARIANT_NUMERIC_xxx values
const gfxFontFeature numericDefaults[] = {
{ TRUETYPE_TAG('l','n','u','m'), 1 },
{ TRUETYPE_TAG('o','n','u','m'), 1 },
{ TRUETYPE_TAG('p','n','u','m'), 1 },
{ TRUETYPE_TAG('t','n','u','m'), 1 },
{ TRUETYPE_TAG('f','r','a','c'), 1 },
{ TRUETYPE_TAG('a','f','r','c'), 1 },
{ TRUETYPE_TAG('z','e','r','o'), 1 },
{ TRUETYPE_TAG('o','r','d','n'), 1 }
};
static_assert(MOZ_ARRAY_LENGTH(numericDefaults) ==
- eFeatureNumeric_numFeatures,
- "eFeatureNumeric_numFeatures should be correct");
+ NS_FONT_VARIANT_NUMERIC_COUNT,
+ "numericDefaults[] should be correct");
static void
AddFontFeaturesBitmask(uint32_t aValue, uint32_t aMin, uint32_t aMax,
const gfxFontFeature aFeatureDefaults[],
nsTArray<gfxFontFeature>& aFeaturesOut)
{
uint32_t i, m;
--- a/gfx/thebes/gfxFontConstants.h
+++ b/gfx/thebes/gfxFontConstants.h
@@ -42,38 +42,27 @@
#define NS_FONT_SYNTHESIS_STYLE 0x2
#define NS_FONT_DISPLAY_AUTO 0
#define NS_FONT_DISPLAY_BLOCK 1
#define NS_FONT_DISPLAY_SWAP 2
#define NS_FONT_DISPLAY_FALLBACK 3
#define NS_FONT_DISPLAY_OPTIONAL 4
-enum {
- eFeatureAlternates_historical,
- eFeatureAlternates_stylistic,
- eFeatureAlternates_styleset,
- eFeatureAlternates_character_variant,
- eFeatureAlternates_swash,
- eFeatureAlternates_ornaments,
- eFeatureAlternates_annotation,
-
- eFeatureAlternates_numFeatures
-};
-
// alternates - simple enumerated values
-#define NS_FONT_VARIANT_ALTERNATES_HISTORICAL (1 << eFeatureAlternates_historical)
+#define NS_FONT_VARIANT_ALTERNATES_HISTORICAL (1 << 0)
// alternates - values that use functional syntax
-#define NS_FONT_VARIANT_ALTERNATES_STYLISTIC (1 << eFeatureAlternates_stylistic)
-#define NS_FONT_VARIANT_ALTERNATES_STYLESET (1 << eFeatureAlternates_styleset)
-#define NS_FONT_VARIANT_ALTERNATES_CHARACTER_VARIANT (1 << eFeatureAlternates_character_variant)
-#define NS_FONT_VARIANT_ALTERNATES_SWASH (1 << eFeatureAlternates_swash)
-#define NS_FONT_VARIANT_ALTERNATES_ORNAMENTS (1 << eFeatureAlternates_ornaments)
-#define NS_FONT_VARIANT_ALTERNATES_ANNOTATION (1 << eFeatureAlternates_annotation)
+#define NS_FONT_VARIANT_ALTERNATES_STYLISTIC (1 << 1)
+#define NS_FONT_VARIANT_ALTERNATES_STYLESET (1 << 2)
+#define NS_FONT_VARIANT_ALTERNATES_CHARACTER_VARIANT (1 << 3)
+#define NS_FONT_VARIANT_ALTERNATES_SWASH (1 << 4)
+#define NS_FONT_VARIANT_ALTERNATES_ORNAMENTS (1 << 5)
+#define NS_FONT_VARIANT_ALTERNATES_ANNOTATION (1 << 6)
+#define NS_FONT_VARIANT_ALTERNATES_COUNT 7
#define NS_FONT_VARIANT_ALTERNATES_ENUMERATED_MASK \
NS_FONT_VARIANT_ALTERNATES_HISTORICAL
#define NS_FONT_VARIANT_ALTERNATES_FUNCTIONAL_MASK ( \
NS_FONT_VARIANT_ALTERNATES_STYLISTIC | \
NS_FONT_VARIANT_ALTERNATES_STYLESET | \
NS_FONT_VARIANT_ALTERNATES_CHARACTER_VARIANT | \
@@ -84,75 +73,49 @@ enum {
#define NS_FONT_VARIANT_CAPS_NORMAL 0
#define NS_FONT_VARIANT_CAPS_SMALLCAPS 1
#define NS_FONT_VARIANT_CAPS_ALLSMALL 2
#define NS_FONT_VARIANT_CAPS_PETITECAPS 3
#define NS_FONT_VARIANT_CAPS_ALLPETITE 4
#define NS_FONT_VARIANT_CAPS_TITLING 5
#define NS_FONT_VARIANT_CAPS_UNICASE 6
-enum {
- eFeatureEastAsian_jis78,
- eFeatureEastAsian_jis83,
- eFeatureEastAsian_jis90,
- eFeatureEastAsian_jis04,
- eFeatureEastAsian_simplified,
- eFeatureEastAsian_traditional,
- eFeatureEastAsian_full_width,
- eFeatureEastAsian_prop_width,
- eFeatureEastAsian_ruby,
-
- eFeatureEastAsian_numFeatures
-};
-
-#define NS_FONT_VARIANT_EAST_ASIAN_JIS78 (1 << eFeatureEastAsian_jis78)
-#define NS_FONT_VARIANT_EAST_ASIAN_JIS83 (1 << eFeatureEastAsian_jis83)
-#define NS_FONT_VARIANT_EAST_ASIAN_JIS90 (1 << eFeatureEastAsian_jis90)
-#define NS_FONT_VARIANT_EAST_ASIAN_JIS04 (1 << eFeatureEastAsian_jis04)
-#define NS_FONT_VARIANT_EAST_ASIAN_SIMPLIFIED (1 << eFeatureEastAsian_simplified)
-#define NS_FONT_VARIANT_EAST_ASIAN_TRADITIONAL (1 << eFeatureEastAsian_traditional)
-#define NS_FONT_VARIANT_EAST_ASIAN_FULL_WIDTH (1 << eFeatureEastAsian_full_width)
-#define NS_FONT_VARIANT_EAST_ASIAN_PROP_WIDTH (1 << eFeatureEastAsian_prop_width)
-#define NS_FONT_VARIANT_EAST_ASIAN_RUBY (1 << eFeatureEastAsian_ruby)
+#define NS_FONT_VARIANT_EAST_ASIAN_JIS78 (1 << 0)
+#define NS_FONT_VARIANT_EAST_ASIAN_JIS83 (1 << 1)
+#define NS_FONT_VARIANT_EAST_ASIAN_JIS90 (1 << 2)
+#define NS_FONT_VARIANT_EAST_ASIAN_JIS04 (1 << 3)
+#define NS_FONT_VARIANT_EAST_ASIAN_SIMPLIFIED (1 << 4)
+#define NS_FONT_VARIANT_EAST_ASIAN_TRADITIONAL (1 << 5)
+#define NS_FONT_VARIANT_EAST_ASIAN_FULL_WIDTH (1 << 6)
+#define NS_FONT_VARIANT_EAST_ASIAN_PROP_WIDTH (1 << 7)
+#define NS_FONT_VARIANT_EAST_ASIAN_RUBY (1 << 8)
+#define NS_FONT_VARIANT_EAST_ASIAN_COUNT 9
#define NS_FONT_VARIANT_EAST_ASIAN_VARIANT_MASK ( \
NS_FONT_VARIANT_EAST_ASIAN_JIS78 | \
NS_FONT_VARIANT_EAST_ASIAN_JIS83 | \
NS_FONT_VARIANT_EAST_ASIAN_JIS90 | \
NS_FONT_VARIANT_EAST_ASIAN_JIS04 | \
NS_FONT_VARIANT_EAST_ASIAN_SIMPLIFIED | \
NS_FONT_VARIANT_EAST_ASIAN_TRADITIONAL )
#define NS_FONT_VARIANT_EAST_ASIAN_WIDTH_MASK ( \
NS_FONT_VARIANT_EAST_ASIAN_FULL_WIDTH | \
NS_FONT_VARIANT_EAST_ASIAN_PROP_WIDTH )
-enum {
- eFeatureLigatures_none,
- eFeatureLigatures_common,
- eFeatureLigatures_no_common,
- eFeatureLigatures_discretionary,
- eFeatureLigatures_no_discretionary,
- eFeatureLigatures_historical,
- eFeatureLigatures_no_historical,
- eFeatureLigatures_contextual,
- eFeatureLigatures_no_contextual,
-
- eFeatureLigatures_numFeatures
-};
-
-#define NS_FONT_VARIANT_LIGATURES_NONE (1 << eFeatureLigatures_none)
-#define NS_FONT_VARIANT_LIGATURES_COMMON (1 << eFeatureLigatures_common)
-#define NS_FONT_VARIANT_LIGATURES_NO_COMMON (1 << eFeatureLigatures_no_common)
-#define NS_FONT_VARIANT_LIGATURES_DISCRETIONARY (1 << eFeatureLigatures_discretionary)
-#define NS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY (1 << eFeatureLigatures_no_discretionary)
-#define NS_FONT_VARIANT_LIGATURES_HISTORICAL (1 << eFeatureLigatures_historical)
-#define NS_FONT_VARIANT_LIGATURES_NO_HISTORICAL (1 << eFeatureLigatures_no_historical)
-#define NS_FONT_VARIANT_LIGATURES_CONTEXTUAL (1 << eFeatureLigatures_contextual)
-#define NS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL (1 << eFeatureLigatures_no_contextual)
+#define NS_FONT_VARIANT_LIGATURES_NONE (1 << 0)
+#define NS_FONT_VARIANT_LIGATURES_COMMON (1 << 1)
+#define NS_FONT_VARIANT_LIGATURES_NO_COMMON (1 << 2)
+#define NS_FONT_VARIANT_LIGATURES_DISCRETIONARY (1 << 3)
+#define NS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY (1 << 4)
+#define NS_FONT_VARIANT_LIGATURES_HISTORICAL (1 << 5)
+#define NS_FONT_VARIANT_LIGATURES_NO_HISTORICAL (1 << 6)
+#define NS_FONT_VARIANT_LIGATURES_CONTEXTUAL (1 << 7)
+#define NS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL (1 << 8)
+#define NS_FONT_VARIANT_LIGATURES_COUNT 9
#define NS_FONT_VARIANT_LIGATURES_COMMON_MASK ( \
NS_FONT_VARIANT_LIGATURES_COMMON | \
NS_FONT_VARIANT_LIGATURES_NO_COMMON )
#define NS_FONT_VARIANT_LIGATURES_DISCRETIONARY_MASK ( \
NS_FONT_VARIANT_LIGATURES_DISCRETIONARY | \
NS_FONT_VARIANT_LIGATURES_NO_DISCRETIONARY )
@@ -160,37 +123,25 @@ enum {
#define NS_FONT_VARIANT_LIGATURES_HISTORICAL_MASK ( \
NS_FONT_VARIANT_LIGATURES_HISTORICAL | \
NS_FONT_VARIANT_LIGATURES_NO_HISTORICAL )
#define NS_FONT_VARIANT_LIGATURES_CONTEXTUAL_MASK \
NS_FONT_VARIANT_LIGATURES_CONTEXTUAL | \
NS_FONT_VARIANT_LIGATURES_NO_CONTEXTUAL
-enum {
- eFeatureNumeric_lining,
- eFeatureNumeric_oldstyle,
- eFeatureNumeric_proportional,
- eFeatureNumeric_tabular,
- eFeatureNumeric_diagonal_fractions,
- eFeatureNumeric_stacked_fractions,
- eFeatureNumeric_slashedzero,
- eFeatureNumeric_ordinal,
-
- eFeatureNumeric_numFeatures
-};
-
-#define NS_FONT_VARIANT_NUMERIC_LINING (1 << eFeatureNumeric_lining)
-#define NS_FONT_VARIANT_NUMERIC_OLDSTYLE (1 << eFeatureNumeric_oldstyle)
-#define NS_FONT_VARIANT_NUMERIC_PROPORTIONAL (1 << eFeatureNumeric_proportional)
-#define NS_FONT_VARIANT_NUMERIC_TABULAR (1 << eFeatureNumeric_tabular)
-#define NS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS (1 << eFeatureNumeric_diagonal_fractions)
-#define NS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS (1 << eFeatureNumeric_stacked_fractions)
-#define NS_FONT_VARIANT_NUMERIC_SLASHZERO (1 << eFeatureNumeric_slashedzero)
-#define NS_FONT_VARIANT_NUMERIC_ORDINAL (1 << eFeatureNumeric_ordinal)
+#define NS_FONT_VARIANT_NUMERIC_LINING (1 << 0)
+#define NS_FONT_VARIANT_NUMERIC_OLDSTYLE (1 << 1)
+#define NS_FONT_VARIANT_NUMERIC_PROPORTIONAL (1 << 2)
+#define NS_FONT_VARIANT_NUMERIC_TABULAR (1 << 3)
+#define NS_FONT_VARIANT_NUMERIC_DIAGONAL_FRACTIONS (1 << 4)
+#define NS_FONT_VARIANT_NUMERIC_STACKED_FRACTIONS (1 << 5)
+#define NS_FONT_VARIANT_NUMERIC_SLASHZERO (1 << 6)
+#define NS_FONT_VARIANT_NUMERIC_ORDINAL (1 << 7)
+#define NS_FONT_VARIANT_NUMERIC_COUNT 8
#define NS_FONT_VARIANT_NUMERIC_FIGURE_MASK \
NS_FONT_VARIANT_NUMERIC_LINING | \
NS_FONT_VARIANT_NUMERIC_OLDSTYLE
#define NS_FONT_VARIANT_NUMERIC_SPACING_MASK \
NS_FONT_VARIANT_NUMERIC_PROPORTIONAL | \
NS_FONT_VARIANT_NUMERIC_TABULAR