webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
WebCore::StyleResolver Class Reference

#include <StyleResolver.h>

Classes

class  CascadedProperties
 
struct  MatchedProperties
 
struct  MatchRanges
 
struct  MatchResult
 
struct  RuleRange
 
class  State
 

Public Types

enum  CSSRuleFilter {
  UAAndUserCSSRules = 1 << 1, AuthorCSSRules = 1 << 2, EmptyCSSRules = 1 << 3, CrossOriginCSSRules = 1 << 4,
  AllButEmptyCSSRules = UAAndUserCSSRules | AuthorCSSRules | CrossOriginCSSRules, AllCSSRules = AllButEmptyCSSRules | EmptyCSSRules
}
 
typedef HashMap< CSSPropertyID, RefPtr< CSSValue > > PendingImagePropertyMap
 

Public Member Functions

 StyleResolver (Document &)
 
 ~StyleResolver ()
 
ElementStyle styleForElement (const Element &, const RenderStyle *parentStyle, const RenderStyle *parentBoxStyle=nullptr, RuleMatchingBehavior=MatchAllRules, const RenderRegion *regionForStyling=nullptr, const SelectorFilter *=nullptr)
 
void keyframeStylesForAnimation (const Element &, const RenderStyle *, KeyframeList &)
 
std::unique_ptr< RenderStylepseudoStyleForElement (const Element &, const PseudoStyleRequest &, const RenderStyle &parentStyle)
 
std::unique_ptr< RenderStylestyleForPage (int pageIndex)
 
std::unique_ptr< RenderStyledefaultStyleForElement ()
 
RenderStylestyle () const
 
const RenderStyleparentStyle () const
 
const RenderStylerootElementStyle () const
 
const Elementelement ()
 
Documentdocument ()
 
const Documentdocument () const
 
const Settingssettings () const
 
void appendAuthorStyleSheets (const Vector< RefPtr< CSSStyleSheet >> &)
 
DocumentRuleSetsruleSets ()
 
const DocumentRuleSetsruleSets () const
 
const MediaQueryEvaluatormediaQueryEvaluator () const
 
void setOverrideDocumentElementStyle (RenderStyle *style)
 
Vector< RefPtr< StyleRule > > styleRulesForElement (const Element *, unsigned rulesToInclude=AllButEmptyCSSRules)
 
Vector< RefPtr< StyleRule > > pseudoStyleRulesForElement (const Element *, PseudoId, unsigned rulesToInclude=AllButEmptyCSSRules)
 
void applyPropertyToStyle (CSSPropertyID, CSSValue *, std::unique_ptr< RenderStyle >)
 
void applyPropertyToCurrentStyle (CSSPropertyID, CSSValue *)
 
void updateFont ()
 
void initializeFontStyle ()
 
void setFontSize (FontCascadeDescription &, float size)
 
bool useSVGZoomRules ()
 
bool useSVGZoomRulesForLength ()
 
Color colorFromPrimitiveValue (const CSSPrimitiveValue &, bool forVisitedLink=false) const
 
bool hasSelectorForId (const AtomicString &) const
 
bool hasSelectorForClass (const AtomicString &) const
 
bool hasSelectorForAttribute (const Element &, const AtomicString &) const
 
void addViewportDependentMediaQueryResult (const MediaQueryExpression &, bool result)
 
bool hasViewportDependentMediaQueries () const
 
bool hasMediaQueriesAffectedByViewportChange () const
 
void addAccessibilitySettingsDependentMediaQueryResult (const MediaQueryExpression &, bool result)
 
bool hasAccessibilitySettingsDependentMediaQueries () const
 
bool hasMediaQueriesAffectedByAccessibilitySettingsChange () const
 
void addKeyframeStyle (Ref< StyleRuleKeyframes > &&)
 
bool checkRegionStyle (const Element *regionElement)
 
bool usesFirstLineRules () const
 
bool usesFirstLetterRules () const
 
void invalidateMatchedPropertiesCache ()
 
void clearCachedPropertiesAffectedByViewportUnits ()
 
bool createFilterOperations (const CSSValue &inValue, FilterOperations &outOperations)
 
Statestate ()
 
const Statestate () const
 
RefPtr< StyleImagestyleImage (CSSValue &)
 
bool applyPropertyToRegularStyle () const
 
bool applyPropertyToVisitedLinkStyle () const
 
CascadeLevel cascadeLevel () const
 
void setCascadeLevel (CascadeLevel level)
 
CascadedPropertiescascadedPropertiesForRollback (const MatchResult &)
 
CSSToStyleMapstyleMap ()
 
InspectorCSSOMWrappersinspectorCSSOMWrappers ()
 
const FontCascadeDescriptionfontDescription ()
 
const FontCascadeDescriptionparentFontDescription ()
 
void setFontDescription (const FontCascadeDescription &fontDescription)
 
void setZoom (float f)
 
void setEffectiveZoom (float f)
 
void setWritingMode (WritingMode writingMode)
 
void setTextOrientation (TextOrientation textOrientation)
 

Static Public Member Functions

static bool colorFromPrimitiveValueIsDerivedFromElement (const CSSPrimitiveValue &)
 
static void adjustStyleForAlignment (RenderStyle &, const RenderStyle &parentStyle)
 

Friends

bool operator== (const MatchedProperties &, const MatchedProperties &)
 
bool operator!= (const MatchedProperties &, const MatchedProperties &)
 
bool operator== (const MatchRanges &, const MatchRanges &)
 
bool operator!= (const MatchRanges &, const MatchRanges &)
 

Member Typedef Documentation

◆ PendingImagePropertyMap

Member Enumeration Documentation

◆ CSSRuleFilter

Enumerator
UAAndUserCSSRules 
AuthorCSSRules 
EmptyCSSRules 
CrossOriginCSSRules 
AllButEmptyCSSRules 
AllCSSRules 

Constructor & Destructor Documentation

◆ StyleResolver()

WebCore::StyleResolver::StyleResolver ( Document document)

◆ ~StyleResolver()

WebCore::StyleResolver::~StyleResolver ( )

Member Function Documentation

◆ addAccessibilitySettingsDependentMediaQueryResult()

void WebCore::StyleResolver::addAccessibilitySettingsDependentMediaQueryResult ( const MediaQueryExpression expression,
bool  result 
)

◆ addKeyframeStyle()

void WebCore::StyleResolver::addKeyframeStyle ( Ref< StyleRuleKeyframes > &&  rule)

◆ addViewportDependentMediaQueryResult()

void WebCore::StyleResolver::addViewportDependentMediaQueryResult ( const MediaQueryExpression expression,
bool  result 
)

◆ adjustStyleForAlignment()

void WebCore::StyleResolver::adjustStyleForAlignment ( RenderStyle style,
const RenderStyle parentStyle 
)
static

◆ appendAuthorStyleSheets()

void WebCore::StyleResolver::appendAuthorStyleSheets ( const Vector< RefPtr< CSSStyleSheet >> &  styleSheets)

◆ applyPropertyToCurrentStyle()

void WebCore::StyleResolver::applyPropertyToCurrentStyle ( CSSPropertyID  id,
CSSValue value 
)

◆ applyPropertyToRegularStyle()

bool WebCore::StyleResolver::applyPropertyToRegularStyle ( ) const
inline

◆ applyPropertyToStyle()

void WebCore::StyleResolver::applyPropertyToStyle ( CSSPropertyID  id,
CSSValue value,
std::unique_ptr< RenderStyle style 
)

◆ applyPropertyToVisitedLinkStyle()

bool WebCore::StyleResolver::applyPropertyToVisitedLinkStyle ( ) const
inline

◆ cascadedPropertiesForRollback()

StyleResolver::CascadedProperties * WebCore::StyleResolver::cascadedPropertiesForRollback ( const MatchResult matchResult)

◆ cascadeLevel()

CascadeLevel WebCore::StyleResolver::cascadeLevel ( ) const
inline

◆ checkRegionStyle()

bool WebCore::StyleResolver::checkRegionStyle ( const Element regionElement)

◆ clearCachedPropertiesAffectedByViewportUnits()

void WebCore::StyleResolver::clearCachedPropertiesAffectedByViewportUnits ( )

◆ colorFromPrimitiveValue()

Color WebCore::StyleResolver::colorFromPrimitiveValue ( const CSSPrimitiveValue value,
bool  forVisitedLink = false 
) const

◆ colorFromPrimitiveValueIsDerivedFromElement()

bool WebCore::StyleResolver::colorFromPrimitiveValueIsDerivedFromElement ( const CSSPrimitiveValue value)
static

◆ createFilterOperations()

bool WebCore::StyleResolver::createFilterOperations ( const CSSValue inValue,
FilterOperations outOperations 
)

◆ defaultStyleForElement()

std::unique_ptr< RenderStyle > WebCore::StyleResolver::defaultStyleForElement ( )

◆ document() [1/2]

Document& WebCore::StyleResolver::document ( )
inline

◆ document() [2/2]

const Document& WebCore::StyleResolver::document ( ) const
inline

◆ element()

const Element* WebCore::StyleResolver::element ( )
inline

◆ fontDescription()

const FontCascadeDescription& WebCore::StyleResolver::fontDescription ( )
inline

◆ hasAccessibilitySettingsDependentMediaQueries()

bool WebCore::StyleResolver::hasAccessibilitySettingsDependentMediaQueries ( ) const
inline

◆ hasMediaQueriesAffectedByAccessibilitySettingsChange()

bool WebCore::StyleResolver::hasMediaQueriesAffectedByAccessibilitySettingsChange ( ) const

◆ hasMediaQueriesAffectedByViewportChange()

bool WebCore::StyleResolver::hasMediaQueriesAffectedByViewportChange ( ) const

◆ hasSelectorForAttribute()

bool WebCore::StyleResolver::hasSelectorForAttribute ( const Element element,
const AtomicString attributeName 
) const
inline

◆ hasSelectorForClass()

bool WebCore::StyleResolver::hasSelectorForClass ( const AtomicString classValue) const
inline

◆ hasSelectorForId()

bool WebCore::StyleResolver::hasSelectorForId ( const AtomicString idValue) const
inline

◆ hasViewportDependentMediaQueries()

bool WebCore::StyleResolver::hasViewportDependentMediaQueries ( ) const
inline

◆ initializeFontStyle()

void WebCore::StyleResolver::initializeFontStyle ( )

◆ inspectorCSSOMWrappers()

InspectorCSSOMWrappers& WebCore::StyleResolver::inspectorCSSOMWrappers ( )
inline

◆ invalidateMatchedPropertiesCache()

void WebCore::StyleResolver::invalidateMatchedPropertiesCache ( )

◆ keyframeStylesForAnimation()

void WebCore::StyleResolver::keyframeStylesForAnimation ( const Element element,
const RenderStyle elementStyle,
KeyframeList list 
)

◆ mediaQueryEvaluator()

const MediaQueryEvaluator& WebCore::StyleResolver::mediaQueryEvaluator ( ) const
inline

◆ parentFontDescription()

const FontCascadeDescription& WebCore::StyleResolver::parentFontDescription ( )
inline

◆ parentStyle()

const RenderStyle* WebCore::StyleResolver::parentStyle ( ) const
inline

◆ pseudoStyleForElement()

std::unique_ptr< RenderStyle > WebCore::StyleResolver::pseudoStyleForElement ( const Element element,
const PseudoStyleRequest pseudoStyleRequest,
const RenderStyle parentStyle 
)

◆ pseudoStyleRulesForElement()

Vector< RefPtr< StyleRule > > WebCore::StyleResolver::pseudoStyleRulesForElement ( const Element element,
PseudoId  pseudoId,
unsigned  rulesToInclude = AllButEmptyCSSRules 
)

◆ rootElementStyle()

const RenderStyle* WebCore::StyleResolver::rootElementStyle ( ) const
inline

◆ ruleSets() [1/2]

DocumentRuleSets& WebCore::StyleResolver::ruleSets ( )
inline

◆ ruleSets() [2/2]

const DocumentRuleSets& WebCore::StyleResolver::ruleSets ( ) const
inline

◆ setCascadeLevel()

void WebCore::StyleResolver::setCascadeLevel ( CascadeLevel  level)
inline

◆ setEffectiveZoom()

void WebCore::StyleResolver::setEffectiveZoom ( float  f)
inline

◆ setFontDescription()

void WebCore::StyleResolver::setFontDescription ( const FontCascadeDescription fontDescription)
inline

◆ setFontSize()

void WebCore::StyleResolver::setFontSize ( FontCascadeDescription fontDescription,
float  size 
)

◆ setOverrideDocumentElementStyle()

void WebCore::StyleResolver::setOverrideDocumentElementStyle ( RenderStyle style)
inline

◆ setTextOrientation()

void WebCore::StyleResolver::setTextOrientation ( TextOrientation  textOrientation)
inline

◆ settings()

const Settings& WebCore::StyleResolver::settings ( ) const
inline

◆ setWritingMode()

void WebCore::StyleResolver::setWritingMode ( WritingMode  writingMode)
inline

◆ setZoom()

void WebCore::StyleResolver::setZoom ( float  f)
inline

◆ state() [1/2]

State& WebCore::StyleResolver::state ( )
inline

◆ state() [2/2]

const State& WebCore::StyleResolver::state ( ) const
inline

◆ style()

RenderStyle* WebCore::StyleResolver::style ( ) const
inline

◆ styleForElement()

ElementStyle WebCore::StyleResolver::styleForElement ( const Element element,
const RenderStyle parentStyle,
const RenderStyle parentBoxStyle = nullptr,
RuleMatchingBehavior  matchingBehavior = MatchAllRules,
const RenderRegion regionForStyling = nullptr,
const SelectorFilter selectorFilter = nullptr 
)

◆ styleForPage()

std::unique_ptr< RenderStyle > WebCore::StyleResolver::styleForPage ( int  pageIndex)

◆ styleImage()

RefPtr< StyleImage > WebCore::StyleResolver::styleImage ( CSSValue value)

◆ styleMap()

CSSToStyleMap* WebCore::StyleResolver::styleMap ( )
inline

◆ styleRulesForElement()

Vector< RefPtr< StyleRule > > WebCore::StyleResolver::styleRulesForElement ( const Element element,
unsigned  rulesToInclude = AllButEmptyCSSRules 
)

◆ updateFont()

void WebCore::StyleResolver::updateFont ( )

◆ usesFirstLetterRules()

bool WebCore::StyleResolver::usesFirstLetterRules ( ) const
inline

◆ usesFirstLineRules()

bool WebCore::StyleResolver::usesFirstLineRules ( ) const
inline

◆ useSVGZoomRules()

bool WebCore::StyleResolver::useSVGZoomRules ( )

◆ useSVGZoomRulesForLength()

bool WebCore::StyleResolver::useSVGZoomRulesForLength ( )

Friends And Related Function Documentation

◆ operator!= [1/2]

bool operator!= ( const MatchedProperties a,
const MatchedProperties b 
)
friend

◆ operator!= [2/2]

bool operator!= ( const MatchRanges a,
const MatchRanges b 
)
friend

◆ operator== [1/2]

bool operator== ( const MatchedProperties a,
const MatchedProperties b 
)
friend

◆ operator== [2/2]

bool operator== ( const MatchRanges a,
const MatchRanges b 
)
friend

The documentation for this class was generated from the following files: