WebKit Bugzilla
Attachment 359001 Details for
Bug 193385
: [LFC] Adjust assert for statically positioned fixed elements
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193385-20190112220033.patch (text/plain), 4.78 KB, created by
zalan
on 2019-01-12 22:00:46 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
zalan
Created:
2019-01-12 22:00:46 PST
Size:
4.78 KB
patch
obsolete
>Subversion Revision: 239900 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 9baf8cbb65257398247b74e9d5bc57069f04ae02..6e6b0a49918c0c2b3c82a26cab98182e98fb5318 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,17 @@ >+2019-01-12 Zalan Bujtas <zalan@apple.com> >+ >+ [LFC] Adjust assert for statically positioned fixed elements >+ https://bugs.webkit.org/show_bug.cgi?id=193385 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ While computing the static position and traversing the ancestor chain, we can surely hit a positioned container >+ (since we need to go all the way up to the initial containing block). >+ >+ * layout/FormattingContextGeometry.cpp: >+ (WebCore::Layout::staticVerticalPositionForOutOfFlowPositioned): >+ (WebCore::Layout::staticHorizontalPositionForOutOfFlowPositioned): >+ > 2019-01-12 Zalan Bujtas <zalan@apple.com> > > [LFC] Move formatting context creation from FormattingState to LayoutState >diff --git a/Source/WebCore/layout/FormattingContextGeometry.cpp b/Source/WebCore/layout/FormattingContextGeometry.cpp >index deabb87b27851cecdbac83604809bc6059850fc2..bcb592431881af00897b36fa40591a772ea416f0 100644 >--- a/Source/WebCore/layout/FormattingContextGeometry.cpp >+++ b/Source/WebCore/layout/FormattingContextGeometry.cpp >@@ -194,13 +194,13 @@ static LayoutUnit staticVerticalPositionForOutOfFlowPositioned(const LayoutState > > // Resolve top all the way up to the containing block. > auto* containingBlock = layoutBox.containingBlock(); >+ // Start with the parent since we pretend that this box is normal flow. > for (auto* container = layoutBox.parent(); container != containingBlock; container = container->containingBlock()) { > auto& displayBox = layoutState.displayBoxForLayoutBox(*container); > // Display::Box::top is the border box top position in its containing block's coordinate system. > top += displayBox.top(); >- ASSERT(!container->isPositioned()); >+ ASSERT(!container->isPositioned() || layoutBox.isFixedPositioned()); > } >- // FIXME: floatings need to be taken into account. > return top; > } > >@@ -215,13 +215,13 @@ static LayoutUnit staticHorizontalPositionForOutOfFlowPositioned(const LayoutSta > > // Resolve left all the way up to the containing block. > auto* containingBlock = layoutBox.containingBlock(); >+ // Start with the parent since we pretend that this box is normal flow. > for (auto* container = layoutBox.parent(); container != containingBlock; container = container->containingBlock()) { > auto& displayBox = layoutState.displayBoxForLayoutBox(*container); > // Display::Box::left is the border box left position in its containing block's coordinate system. > left += displayBox.left(); >- ASSERT(!container->isPositioned()); >+ ASSERT(!container->isPositioned() || layoutBox.isFixedPositioned()); > } >- // FIXME: floatings need to be taken into account. > return left; > } > >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 252239f5273c4652132a2366a016d2be15a6efed..3ac1de2283802bd2e055f718c71449486689196e 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,12 @@ >+2019-01-12 Zalan Bujtas <zalan@apple.com> >+ >+ [LFC] Adjust assert for statically positioned fixed elements >+ https://bugs.webkit.org/show_bug.cgi?id=193385 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * LayoutReloaded/misc/LFC-passing-tests.txt: >+ > 2019-01-11 John Wilander <wilander@apple.com> > > Compile out Web API Statistics Collection >diff --git a/Tools/LayoutReloaded/misc/LFC-passing-tests.txt b/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >index d7d55a646428beb28fb214787e7b4ca4c12fe842..df95aac801315f35c51b7c1cd1585e38dfa2f358 100644 >--- a/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >+++ b/Tools/LayoutReloaded/misc/LFC-passing-tests.txt >@@ -284,3 +284,22 @@ fast/inline/simple-line-layout-16bit-content.html > fast/inline/simple-shrink-to-fit-inline-block.html > fast/inline/skipped-whitespace-boundingBox.html > fast/inline/skipped-whitespace-client-rect.html >+fast/dynamic/004.html >+fast/dynamic/005.html >+fast/dynamic/006.html >+fast/dynamic/009.html >+fast/dynamic/010.html >+fast/dynamic/anonymous-block-layer-lost.html >+fast/dynamic/first-letter-display-change.html >+fast/dynamic/float-no-longer-overhanging.html >+fast/dynamic/float-withdrawal-2.html >+fast/dynamic/hover-style-recalc-crash.html >+fast/dynamic/inline-to-block-crash.html >+fast/dynamic/jQuery-animation-crash.html >+fast/dynamic/link-href-change.html >+fast/dynamic/move-node-with-selection.html >+fast/dynamic/selection-gets-cleared-when-part-of-it-gets-removed.html >+fast/dynamic/staticY.html >+fast/dynamic/subtree-boundary-percent-height.html >+fast/dynamic/subtree-parent-static-y.html >+fast/dynamic/window-scrollbars-test.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
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193385
: 359001