mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-28 15:23:51 +00:00
Bug 1381017 - Set NODE_DESCENDANTS_NEED_FRAMES from flatten tree parent. r=emilio,tnikkel
MozReview-Commit-ID: 3CBP8vc6OxB --HG-- extra : rebase_source : edefbf78c564dc328b265496044171a71c77fb2f
This commit is contained in:
parent
c62cf1bde1
commit
b87b2c1649
@ -7201,7 +7201,7 @@ nsCSSFrameConstructor::MaybeConstructLazily(Operation aOperation,
|
||||
// tree.
|
||||
|
||||
// Walk up the tree setting the NODE_DESCENDANTS_NEED_FRAMES bit as we go.
|
||||
nsIContent* content = aContainer;
|
||||
nsIContent* content = aChild->GetFlattenedTreeParent();
|
||||
|
||||
#ifdef DEBUG
|
||||
// If we hit a node with no primary frame, or the NODE_NEEDS_FRAME bit set
|
||||
@ -7210,6 +7210,9 @@ nsCSSFrameConstructor::MaybeConstructLazily(Operation aOperation,
|
||||
// these two booleans if we encounter these situations and unset them if we
|
||||
// hit a node with a leaf frame.
|
||||
//
|
||||
// It's fine if one of node without primary frame is in a display:none
|
||||
// subtree.
|
||||
//
|
||||
// Also, it's fine if one of the nodes without primary frame is a display:
|
||||
// contents node except if it's the direct ancestor of the children we're
|
||||
// recreating frames for.
|
||||
@ -7222,9 +7225,10 @@ nsCSSFrameConstructor::MaybeConstructLazily(Operation aOperation,
|
||||
if (content->GetPrimaryFrame() && content->GetPrimaryFrame()->IsLeaf()) {
|
||||
noPrimaryFrame = needsFrameBitSet = false;
|
||||
}
|
||||
if (!noPrimaryFrame && !content->GetPrimaryFrame() &&
|
||||
!GetDisplayContentsStyleFor(content)) {
|
||||
noPrimaryFrame = true;
|
||||
if (!noPrimaryFrame && !content->GetPrimaryFrame()) {
|
||||
nsStyleContext* sc = GetUndisplayedContent(content);
|
||||
noPrimaryFrame = !GetDisplayContentsStyleFor(content) &&
|
||||
(sc && !sc->IsInDisplayNoneSubtree());
|
||||
}
|
||||
if (!needsFrameBitSet && content->HasFlag(NODE_NEEDS_FRAME)) {
|
||||
needsFrameBitSet = true;
|
||||
|
@ -466,7 +466,7 @@ fuzzy-if(skiaContent,4,2) == 346774-1c.html 346774-1-ref.html
|
||||
== 347348-1.xhtml 347348-1-ref.xhtml
|
||||
== 347496-1.xhtml 347496-1-ref.xhtml
|
||||
== 347912-1.html 347912-1-ref.html
|
||||
fails-if(styloVsGecko||stylo) == 348049-1.xhtml 348049-1-ref.xhtml
|
||||
== 348049-1.xhtml 348049-1-ref.xhtml
|
||||
== 348516-1.html 348516-1-ref.html
|
||||
== 348516-2.html 348516-2-ref.html
|
||||
!= 348516-2.html 348516-2-notref.html
|
||||
@ -1245,7 +1245,7 @@ fuzzy-if(skiaContent,1,12000) == 461512-1.html 461512-1-ref.html
|
||||
== 467444-1.html 467444-1-ref.html
|
||||
== 467460-1.html 467460-1-ref.html
|
||||
== 468473-1.xul 468473-1-ref.xul
|
||||
fails-if(styloVsGecko||stylo) == 468546-1.xhtml 468546-1-ref.xhtml
|
||||
fails-if(styloVsGecko) == 468546-1.xhtml 468546-1-ref.xhtml
|
||||
== 471356-1.html 471356-1-ref.html
|
||||
== 471594-1.xhtml 471594-1-ref.html
|
||||
fuzzy(255,15) == 472020-1a.xul 472020-1-ref.xul
|
||||
@ -1321,8 +1321,8 @@ fails-if(Android) == 481024-1c.html 481024-1-ref.html
|
||||
!= 481948-2.html 481948-2-ref.html
|
||||
fails-if(Android) random-if(winWidget) fails-if(gtkWidget&&!styloVsGecko) == 481948-3.html 481948-3-ref.html # questionable test, see bug 488364
|
||||
== 482398-1.html 482398-1-ref.html
|
||||
random-if(d2d) fails-if(styloVsGecko||stylo) == 482592-1a.xhtml 482592-1-ref.html # bug 586771
|
||||
random-if(d2d) fails-if(styloVsGecko||stylo) == 482592-1b.xhtml 482592-1-ref.html # bug 586771
|
||||
random-if(d2d) == 482592-1a.xhtml 482592-1-ref.html # bug 586771
|
||||
random-if(d2d) == 482592-1b.xhtml 482592-1-ref.html # bug 586771
|
||||
random-if(winWidget) fuzzy-if(skiaContent,1,5) == 482659-1a.html 482659-1-ref.html
|
||||
fuzzy-if(skiaContent,1,5) == 482659-1b.html 482659-1-ref.html
|
||||
fuzzy-if(skiaContent,1,5) == 482659-1c.html 482659-1-ref.html
|
||||
@ -1364,8 +1364,8 @@ pref(browser.display.focus_ring_width,1) == 491180-2.html 491180-2-ref.html
|
||||
== 494667-1.html 494667-1-ref.html
|
||||
== 494667-2.html 494667-2-ref.html
|
||||
== 495274-1.html 495274-1-ref.html
|
||||
fails-if(styloVsGecko||stylo) == 495354-1a.xhtml 495354-1-ref.xhtml
|
||||
fails-if(styloVsGecko||stylo) == 495354-1b.xhtml 495354-1-ref.xhtml
|
||||
== 495354-1a.xhtml 495354-1-ref.xhtml
|
||||
== 495354-1b.xhtml 495354-1-ref.xhtml
|
||||
== 495385-1a.html 495385-1-ref.html
|
||||
== 495385-1b.html 495385-1-ref.html
|
||||
== 495385-1c.html 495385-1-ref.html
|
||||
|
@ -19,10 +19,10 @@ fuzzy-if(winWidget,12,100) skip-if(styloVsGecko||stylo) pref(layout.css.scoped-s
|
||||
fuzzy-if(Android,7,3935) == display-contents-xbl.xhtml display-contents-xbl-ref.html
|
||||
fuzzy-if(Android,7,1186) fails-if(stylo||styloVsGecko) pref(dom.webcomponents.enabled,true) pref(layout.css.scoped-style.enabled,true) == display-contents-shadow-dom-1.html display-contents-shadow-dom-1-ref.html
|
||||
== display-contents-xbl-2.xul display-contents-xbl-2-ref.xul
|
||||
asserts(1) asserts-if(styloVsGecko,2) == display-contents-xbl-3.xul display-contents-xbl-3-ref.xul # bug 1089223
|
||||
== display-contents-xbl-3.xul display-contents-xbl-3-ref.xul
|
||||
skip == display-contents-xbl-4.xul display-contents-xbl-4-ref.xul # fails (not just asserts) due to bug 1089223
|
||||
asserts(0-1) fuzzy-if(Android,8,3216) == display-contents-fieldset.html display-contents-fieldset-ref.html # bug 1089223
|
||||
asserts(1) asserts-if(styloVsGecko,2) == display-contents-xbl-5.xul display-contents-xbl-3-ref.xul # bug 1089223
|
||||
== display-contents-xbl-5.xul display-contents-xbl-3-ref.xul
|
||||
fails-if(!stylo) == display-contents-xbl-6.xhtml display-contents-xbl-6-ref.html # bug 1345809
|
||||
== display-contents-xbl-7.xhtml display-contents-xbl-7-ref.html
|
||||
== display-contents-list-item-child.html display-contents-list-item-child-ref.html
|
||||
|
Loading…
Reference in New Issue
Block a user