mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-05 15:28:39 +09:00
Issue #2828 - Part 4: Move cache key storage to ResolvedRuleCascades
This commit is contained in:
parent
03f29e75ec
commit
aab9cdf9bd
3 changed files with 32 additions and 24 deletions
|
|
@ -786,7 +786,7 @@ AtomSelector_CIMatchEntry(const PLDHashEntryHdr* hdr, const void* key)
|
|||
AtomSelector_InitEntry
|
||||
};
|
||||
|
||||
RuleCascadeData::RuleCascadeData(nsIAtom* aMedium, bool aQuirksMode)
|
||||
RuleCascadeData::RuleCascadeData(bool aQuirksMode)
|
||||
: mRuleHash(aQuirksMode)
|
||||
, mStateSelectors()
|
||||
, mSelectorDocumentStates(0)
|
||||
|
|
@ -803,7 +803,6 @@ RuleCascadeData::RuleCascadeData(nsIAtom* aMedium, bool aQuirksMode)
|
|||
, mXULTreeRules(&RuleHash::TagTable_Ops, sizeof(RuleHashTagTableEntry))
|
||||
, mKeyframesRuleTable()
|
||||
, mCounterStyleRuleTable()
|
||||
, mCacheKey(aMedium)
|
||||
, mQuirksMode(aQuirksMode)
|
||||
{
|
||||
memset(mPseudoElementRuleHashes, 0, sizeof(mPseudoElementRuleHashes));
|
||||
|
|
@ -1559,7 +1558,8 @@ CascadeEnumData::CascadeEnumData(nsPresContext* aPresContext,
|
|||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules)
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey)
|
||||
: mPresContext(aPresContext)
|
||||
, mName(aName)
|
||||
, mIsAnonymous(mName.IsEmpty())
|
||||
|
|
@ -1575,6 +1575,7 @@ CascadeEnumData::CascadeEnumData(nsPresContext* aPresContext,
|
|||
, mSheetType(aSheetType)
|
||||
, mMustGatherDocumentRules(aMustGatherDocumentRules)
|
||||
, mRulesByWeight(&sRulesByWeightOps, sizeof(RuleByWeightEntry), 32)
|
||||
, mCacheKey(aCacheKey)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
|
|
@ -1584,7 +1585,8 @@ CascadeEnumData::CascadeEnumData(nsPresContext* aPresContext,
|
|||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules)
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey)
|
||||
: mPresContext(aPresContext)
|
||||
, mContainer(aContainer)
|
||||
, mIsAnonymous(false)
|
||||
|
|
@ -1599,6 +1601,7 @@ CascadeEnumData::CascadeEnumData(nsPresContext* aPresContext,
|
|||
, mSheetType(aSheetType)
|
||||
, mMustGatherDocumentRules(aMustGatherDocumentRules)
|
||||
, mRulesByWeight(&sRulesByWeightOps, sizeof(RuleByWeightEntry), 32)
|
||||
, mCacheKey(aCacheKey)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
|
|
@ -1630,7 +1633,8 @@ CascadeEnumData::CreateNamedChildLayer(const nsTArray<nsString>& aPath)
|
|||
mDocumentRules,
|
||||
mDocumentCacheKey,
|
||||
mSheetType,
|
||||
mMustGatherDocumentRules);
|
||||
mMustGatherDocumentRules,
|
||||
mCacheKey);
|
||||
mPreLayers.AppendElement(childLayer);
|
||||
mLayers.Put(name, childLayer);
|
||||
}
|
||||
|
|
@ -1660,7 +1664,8 @@ CascadeEnumData::CreateAnonymousChildLayer()
|
|||
mDocumentRules,
|
||||
mDocumentCacheKey,
|
||||
mSheetType,
|
||||
mMustGatherDocumentRules);
|
||||
mMustGatherDocumentRules,
|
||||
mCacheKey);
|
||||
mPreLayers.AppendElement(childLayer);
|
||||
return childLayer;
|
||||
}
|
||||
|
|
@ -1773,8 +1778,7 @@ CascadeEnumData::Flatten()
|
|||
void
|
||||
CascadeEnumData::Initialize()
|
||||
{
|
||||
mData = new RuleCascadeData(mPresContext->Medium(),
|
||||
eCompatibility_NavQuirks ==
|
||||
mData = new RuleCascadeData(eCompatibility_NavQuirks ==
|
||||
mPresContext->CompatibilityMode());
|
||||
|
||||
// Initialize our arena
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue