WebKit Bugzilla
Attachment 359376 Details for
Bug 193534
: [LFC][BFC] An element with transform is a containing block for positioned descendants.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193534-20190117075852.patch (text/plain), 3.59 KB, created by
zalan
on 2019-01-17 07:59:09 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
zalan
Created:
2019-01-17 07:59:09 PST
Size:
3.59 KB
patch
obsolete
>Subversion Revision: 240094 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index fb20d47d0281f345cc872017513599b5f3a70376..6ff21573dd8a2de12a17aeed0584a9bda1d153c7 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,17 @@ >+2019-01-17 Zalan Bujtas <zalan@apple.com> >+ >+ [LFC][BFC] A block element with transform is a containing block for positioned descendants. >+ https://bugs.webkit.org/show_bug.cgi?id=193534 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ "For elements whose layout is governed by the CSS box model, any value other than none for the transform >+ property also causes the element to establish a containing block for all descendants." >+ https://www.w3.org/TR/css-transforms-1/ >+ >+ * layout/layouttree/LayoutBox.cpp: >+ (WebCore::Layout::Box::containingBlock const): >+ > 2019-01-16 Zalan Bujtas <zalan@apple.com> > > [LFC][BFC] Inflow non-replaced used width should not be negative. >diff --git a/Source/WebCore/layout/layouttree/LayoutBox.cpp b/Source/WebCore/layout/layouttree/LayoutBox.cpp >index b82888928a06ceaaf8f1dd2f1ca247f6feddb05c..c8f7d4593e00bf90a4472cf4d6736aab20123c82 100644 >--- a/Source/WebCore/layout/layouttree/LayoutBox.cpp >+++ b/Source/WebCore/layout/layouttree/LayoutBox.cpp >@@ -140,15 +140,15 @@ const Container* Box::containingBlock() const > } > > if (isFixedPositioned()) { >- auto* initialContainingBlock = parent(); >- for (; initialContainingBlock->parent(); initialContainingBlock = initialContainingBlock->parent()) { } >- return initialContainingBlock; >+ auto* ancestor = parent(); >+ for (; ancestor->parent() && !ancestor->style().hasTransform(); ancestor = ancestor->parent()) { } >+ return ancestor; > } > > if (isOutOfFlowPositioned()) { >- auto* positionedAncestor = parent(); >- for (; positionedAncestor->parent() && !positionedAncestor->isPositioned(); positionedAncestor = positionedAncestor->parent()) { } >- return positionedAncestor; >+ auto* ancestor = parent(); >+ for (; ancestor->parent() && !ancestor->isPositioned() && !ancestor->style().hasTransform(); ancestor = ancestor->parent()) { } >+ return ancestor; > } > > ASSERT_NOT_REACHED(); >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index e0875b087f9723eab3833eeade8b7abf4d475f8a..de0ffa65f1488e7191d027ac79c7c975923ba534 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,12 @@ >+2019-01-17 Zalan Bujtas <zalan@apple.com> >+ >+ [LFC][BFC] A block element with transform is a containing block for positioned descendants. >+ https://bugs.webkit.org/show_bug.cgi?id=193534 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * LayoutReloaded/misc/LFC-passing-tests.txt: >+ > 2019-01-16 Zalan Bujtas <zalan@apple.com> > > [LFC][BFC] Inflow non-replaced used width should not be negative. >diff --git a/Tools/LayoutReloaded/misc/LFC-passing-tests.txt b/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >index 4695f112c9cde690222b8c6b1ad5b20a8d72a086..35e5ac4b41ab041a3fd0d0d79891f7696ecdff0d 100644 >--- a/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >+++ b/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >@@ -189,6 +189,7 @@ fast/block/collapse-anon-block-with-float-siblings-only.html > fast/block/crash-when-anonymous-blocks-are-merged-with-simple-line-layout.html > fast/block/crash-when-subtree-is-still-attached.html > fast/block/geometry-map-assertion-with-tall-content.html >+fast/block/containing-block-changes.html > fast/borders/0px-borders-no-line-height.html > fast/borders/0px-borders.html > fast/borders/block-mask-overlay-image-outset.html
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
koivisto
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193534
: 359376