mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-27 01:27:30 +09:00
Issue #2828 - Part 2: Collect and hold rule cascade data per cascade layer
This commit is contained in:
parent
53e6317bfb
commit
7b51aa7ca1
2 changed files with 570 additions and 298 deletions
File diff suppressed because it is too large
Load diff
|
|
@ -28,7 +28,7 @@ struct ElementDependentRuleProcessorData;
|
||||||
struct nsCSSSelector;
|
struct nsCSSSelector;
|
||||||
struct nsCSSSelectorList;
|
struct nsCSSSelectorList;
|
||||||
struct nsFontFaceRuleContainer;
|
struct nsFontFaceRuleContainer;
|
||||||
struct RuleCascadeData;
|
struct ResolvedRuleCascades;
|
||||||
struct TreeMatchContext;
|
struct TreeMatchContext;
|
||||||
class nsCSSKeyframesRule;
|
class nsCSSKeyframesRule;
|
||||||
class nsCSSPageRule;
|
class nsCSSPageRule;
|
||||||
|
|
@ -232,7 +232,7 @@ private:
|
||||||
static bool CascadeSheet(mozilla::CSSStyleSheet* aSheet,
|
static bool CascadeSheet(mozilla::CSSStyleSheet* aSheet,
|
||||||
CascadeEnumData* aData);
|
CascadeEnumData* aData);
|
||||||
|
|
||||||
RuleCascadeData* GetRuleCascade(nsPresContext* aPresContext);
|
ResolvedRuleCascades* GetRuleCascade(nsPresContext* aPresContext);
|
||||||
void RefreshRuleCascade(nsPresContext* aPresContext);
|
void RefreshRuleCascade(nsPresContext* aPresContext);
|
||||||
|
|
||||||
nsRestyleHint HasStateDependentStyle(ElementDependentRuleProcessorData* aData,
|
nsRestyleHint HasStateDependentStyle(ElementDependentRuleProcessorData* aData,
|
||||||
|
|
@ -246,7 +246,7 @@ private:
|
||||||
sheet_array_type mSheets;
|
sheet_array_type mSheets;
|
||||||
|
|
||||||
// active first, then cached (most recent first)
|
// active first, then cached (most recent first)
|
||||||
RuleCascadeData* mRuleCascades;
|
ResolvedRuleCascades* mRuleCascades;
|
||||||
|
|
||||||
// If we cleared our mRuleCascades or replaced a previous rule
|
// If we cleared our mRuleCascades or replaced a previous rule
|
||||||
// processor, this is the media query result cache key that was used
|
// processor, this is the media query result cache key that was used
|
||||||
|
|
@ -272,8 +272,8 @@ private:
|
||||||
const bool mIsShared;
|
const bool mIsShared;
|
||||||
|
|
||||||
// Whether we need to build up mDocumentCacheKey and mDocumentRules as
|
// Whether we need to build up mDocumentCacheKey and mDocumentRules as
|
||||||
// we build a RuleCascadeData. Is true only for shared rule processors
|
// we build ResolvedRuleCascades. Is true only for shared rule processors
|
||||||
// and only before we build the first RuleCascadeData. See comment in
|
// and only before we build the first ResolvedRuleCascades. See comment in
|
||||||
// RefreshRuleCascade for why.
|
// RefreshRuleCascade for why.
|
||||||
bool mMustGatherDocumentRules;
|
bool mMustGatherDocumentRules;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue