mirror of
https://github.com/roytam1/basilisk55.git
synced 2026-05-29 16:10:41 +00:00
import from UXP: Issue #2828 – Part 10: Clean up cascade layer constructor (a922ec08)
This commit is contained in:
@@ -1545,24 +1545,20 @@ InitWeightEntry(PLDHashEntryHdr* hdr, const void* key)
|
||||
};
|
||||
|
||||
CascadeLayer::CascadeLayer(nsPresContext* aPresContext,
|
||||
nsString aName,
|
||||
#ifdef DEBUG
|
||||
CascadeLayer* aParent,
|
||||
#endif
|
||||
bool aIsWeak,
|
||||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey)
|
||||
: mPresContext(aPresContext)
|
||||
, mName(aName)
|
||||
, mIsAnonymous(mName.IsEmpty())
|
||||
, mIsWeak(aIsWeak)
|
||||
, mIsAnonymous(true)
|
||||
, mIsStrong(false)
|
||||
, mRulesAdded(false)
|
||||
#ifdef DEBUG
|
||||
, mParent(aParent)
|
||||
, mIsRoot(false)
|
||||
#endif
|
||||
, mDocumentRules(aDocumentRules)
|
||||
, mDocumentCacheKey(aDocumentKey)
|
||||
@@ -1571,31 +1567,12 @@ CascadeLayer::CascadeLayer(nsPresContext* aPresContext,
|
||||
, mRulesByWeight(&sRulesByWeightOps, sizeof(RuleByWeightEntry), 32)
|
||||
, mCacheKey(aCacheKey)
|
||||
{
|
||||
Initialize();
|
||||
}
|
||||
mData = new RuleCascadeData(eCompatibility_NavQuirks ==
|
||||
mPresContext->CompatibilityMode());
|
||||
|
||||
CascadeLayer::CascadeLayer(nsPresContext* aPresContext,
|
||||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey)
|
||||
: mPresContext(aPresContext)
|
||||
, mIsAnonymous(false)
|
||||
, mIsWeak(false)
|
||||
, mRulesAdded(false)
|
||||
#ifdef DEBUG
|
||||
, mParent(nullptr)
|
||||
, mIsRoot(true)
|
||||
#endif
|
||||
, mDocumentRules(aDocumentRules)
|
||||
, mDocumentCacheKey(aDocumentKey)
|
||||
, mSheetType(aSheetType)
|
||||
, mMustGatherDocumentRules(aMustGatherDocumentRules)
|
||||
, mRulesByWeight(&sRulesByWeightOps, sizeof(RuleByWeightEntry), 32)
|
||||
, mCacheKey(aCacheKey)
|
||||
{
|
||||
Initialize();
|
||||
// Initialize our arena
|
||||
PL_INIT_ARENA_POOL(
|
||||
&mArena, "CascadeLayerArena", NS_CASCADELAYER_ARENA_BLOCK_SIZE);
|
||||
}
|
||||
|
||||
CascadeLayer::~CascadeLayer()
|
||||
@@ -1617,16 +1594,16 @@ CascadeLayer::CreateNamedChildLayer(const nsTArray<nsString>& aPath)
|
||||
// Create new layer if it doesn't exist.
|
||||
if (!mLayers.Get(name, &childLayer)) {
|
||||
childLayer = new CascadeLayer(mPresContext,
|
||||
name,
|
||||
#ifdef DEBUG
|
||||
this,
|
||||
#endif
|
||||
false,
|
||||
mDocumentRules,
|
||||
mDocumentCacheKey,
|
||||
mSheetType,
|
||||
mMustGatherDocumentRules,
|
||||
mCacheKey);
|
||||
childLayer->mName = name;
|
||||
childLayer->mIsAnonymous = false;
|
||||
mPreLayers.AppendElement(childLayer);
|
||||
mLayers.Put(name, childLayer);
|
||||
}
|
||||
@@ -1645,13 +1622,10 @@ CascadeLayer::CreateNamedChildLayer(const nsTArray<nsString>& aPath)
|
||||
CascadeLayer*
|
||||
CascadeLayer::CreateAnonymousChildLayer()
|
||||
{
|
||||
nsString name;
|
||||
CascadeLayer* childLayer = new CascadeLayer(mPresContext,
|
||||
name,
|
||||
#ifdef DEBUG
|
||||
this,
|
||||
#endif
|
||||
false,
|
||||
mDocumentRules,
|
||||
mDocumentCacheKey,
|
||||
mSheetType,
|
||||
@@ -1762,14 +1736,3 @@ CascadeLayer::EnumerateAllLayers(nsLayerEnumFunc aFunc, void* aData)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
CascadeLayer::Initialize()
|
||||
{
|
||||
mData = new RuleCascadeData(eCompatibility_NavQuirks ==
|
||||
mPresContext->CompatibilityMode());
|
||||
|
||||
// Initialize our arena
|
||||
PL_INIT_ARENA_POOL(
|
||||
&mArena, "CascadeLayerArena", NS_CASCADELAYER_ARENA_BLOCK_SIZE);
|
||||
}
|
||||
|
||||
@@ -325,30 +325,20 @@ private:
|
||||
struct CascadeLayer
|
||||
{
|
||||
CascadeLayer(nsPresContext* aPresContext,
|
||||
nsString aName,
|
||||
#ifdef DEBUG
|
||||
CascadeLayer* aParent,
|
||||
#endif
|
||||
bool aIsWeak,
|
||||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey);
|
||||
|
||||
CascadeLayer(nsPresContext* aPresContext,
|
||||
nsTArray<css::DocumentRule*>& aDocumentRules,
|
||||
nsDocumentRuleResultCacheKey& aDocumentKey,
|
||||
SheetType aSheetType,
|
||||
bool aMustGatherDocumentRules,
|
||||
nsMediaQueryResultCacheKey& aCacheKey);
|
||||
|
||||
~CascadeLayer();
|
||||
|
||||
nsPresContext* mPresContext;
|
||||
nsString mName;
|
||||
bool mIsAnonymous;
|
||||
bool mIsWeak;
|
||||
bool mIsStrong;
|
||||
bool mRulesAdded;
|
||||
|
||||
RuleCascadeData* mData;
|
||||
@@ -367,7 +357,6 @@ struct CascadeLayer
|
||||
|
||||
#ifdef DEBUG
|
||||
CascadeLayer* mParent;
|
||||
bool mIsRoot;
|
||||
#endif
|
||||
nsTArray<CascadeLayer*> mPreLayers;
|
||||
nsTArray<CascadeLayer*> mPostLayers;
|
||||
@@ -381,8 +370,6 @@ struct CascadeLayer
|
||||
void AddRules();
|
||||
|
||||
private:
|
||||
void Initialize();
|
||||
|
||||
static const PLDHashTableOps sRulesByWeightOps;
|
||||
};
|
||||
|
||||
|
||||
@@ -735,6 +735,9 @@ nsCSSRuleProcessor::RefreshGroup(nsPresContext* aPresContext)
|
||||
nsAutoPtr<RuleProcessorGroup> ruleProcessorSet(
|
||||
new RuleProcessorGroup(aPresContext->Medium()));
|
||||
CascadeLayer* implicitLayer(new CascadeLayer(aPresContext,
|
||||
#if DEBUG
|
||||
nullptr,
|
||||
#endif
|
||||
mDocumentRules,
|
||||
mDocumentCacheKey,
|
||||
mSheetType,
|
||||
|
||||
Reference in New Issue
Block a user