mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-08 00:38:39 +09:00
Attach FrameProperties to each frame instead of using a shared hashtable
Dispense the shared hashtable and instead attach the frame property list directly to nsIFrame.
This commit is contained in:
parent
c135831979
commit
922e819d1c
62 changed files with 738 additions and 945 deletions
|
|
@ -1122,10 +1122,10 @@ GetPrevContinuationWithPossiblySameStyle(nsIFrame* aFrame)
|
|||
// We're the first continuation, so we can just get the frame
|
||||
// property directly
|
||||
prevContinuation =
|
||||
aFrame->Properties().Get(nsIFrame::IBSplitPrevSibling());
|
||||
aFrame->GetProperty(nsIFrame::IBSplitPrevSibling());
|
||||
if (prevContinuation) {
|
||||
prevContinuation =
|
||||
prevContinuation->Properties().Get(nsIFrame::IBSplitPrevSibling());
|
||||
prevContinuation->GetProperty(nsIFrame::IBSplitPrevSibling());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1313,8 +1313,7 @@ RestyleManager::ReparentStyleContext(nsIFrame* aFrame)
|
|||
// oldContext)" check will prevent us from redoing work.
|
||||
if ((aFrame->GetStateBits() & NS_FRAME_PART_OF_IBSPLIT) &&
|
||||
!aFrame->GetPrevContinuation()) {
|
||||
nsIFrame* sib =
|
||||
aFrame->Properties().Get(nsIFrame::IBSplitSibling());
|
||||
nsIFrame* sib = aFrame->GetProperty(nsIFrame::IBSplitSibling());
|
||||
if (sib) {
|
||||
ReparentStyleContext(sib);
|
||||
}
|
||||
|
|
@ -3349,7 +3348,6 @@ ElementRestyler::ComputeStyleChangeFor(nsIFrame* aFrame,
|
|||
// line), we might restyle more than that.
|
||||
|
||||
nsPresContext* presContext = aFrame->PresContext();
|
||||
FramePropertyTable* propTable = presContext->PropertyTable();
|
||||
|
||||
TreeMatchContext treeMatchContext(true,
|
||||
nsRuleWalker::eRelevantLinkUnvisited,
|
||||
|
|
@ -3363,7 +3361,7 @@ ElementRestyler::ComputeStyleChangeFor(nsIFrame* aFrame,
|
|||
nsTArray<nsIContent*> visibleKidsOfHiddenElement;
|
||||
nsIFrame* nextIBSibling;
|
||||
for (nsIFrame* ibSibling = aFrame; ibSibling; ibSibling = nextIBSibling) {
|
||||
nextIBSibling = RestyleManager::GetNextBlockInInlineSibling(propTable, ibSibling);
|
||||
nextIBSibling = RestyleManager::GetNextBlockInInlineSibling(ibSibling);
|
||||
|
||||
if (nextIBSibling) {
|
||||
// Don't allow some ib-split siblings to be processed with
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue