unsigned getIndexInShorthandVectorForPrefixingVariant(const CSSProperty& property, CSSPropertyID prefixingVariant) { if (!property.isSetFromShorthand()) return 0; CSSPropertyID prefixedShorthand = prefixingVariantForPropertyId(property.shorthandID()); Vector<StylePropertyShorthand, 4> shorthands; getMatchingShorthandsForLonghand(prefixingVariant, &shorthands); return indexOfShorthandForLonghand(prefixedShorthand, shorthands); }
void MutableStylePropertySet::setPrefixingVariantProperty(const CSSProperty& property) { CSSPropertyID prefixingVariant = prefixingVariantForPropertyId(property.id()); CSSProperty* toReplace = findCSSPropertyWithID(prefixingVariant); if (toReplace && prefixingVariant != property.id()) *toReplace = CSSProperty(prefixingVariant, property.value(), property.isImportant(), property.isSetFromShorthand(), getIndexInShorthandVectorForPrefixingVariant(property, prefixingVariant), property.metadata().m_implicit); }
void MutableStylePropertySet::appendPrefixingVariantProperty(const CSSProperty& property) { m_propertyVector.append(property); CSSPropertyID prefixingVariant = prefixingVariantForPropertyId(property.id()); if (prefixingVariant == property.id()) return; m_propertyVector.append(CSSProperty(prefixingVariant, property.value(), property.isImportant(), property.isSetFromShorthand(), getIndexInShorthandVectorForPrefixingVariant(property, prefixingVariant), property.metadata().m_implicit)); }