From: bjonesbe@adobe.com Date: Wed, 10 Dec 2014 00:57:10 +0000 (+0000) Subject: REGRESSION(r155906): Page content disappears on Tuaw article after loading X-Git-Url: http://git.webkit.org/?p=WebKit-https.git;a=commitdiff_plain;h=5c6acdd5a3ce22590389bb387de6963804a34291 REGRESSION(r155906): Page content disappears on Tuaw article after loading https://bugs.webkit.org/show_bug.cgi?id=138100 Reviewed by Simon Fraser. .: DRT causes an extra paint which makes it impossible to test this with an automated test. * ManualTests/float-layer-not-painting.html: Added. Source/WebCore: Test: ManualTests/float-layer-not-painting.html * rendering/RenderBlockFlow.cpp: (WebCore::RenderBlockFlow::insertFloatingObject): If a layout happens, it can change whether the float's renderer has a self painting layer. So in that case, we need to update the flag on the FloatingObject instance for that float. git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177049 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- diff --git a/ChangeLog b/ChangeLog index 7d00848..97d0724 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2014-12-09 Bem Jones-Bey + + REGRESSION(r155906): Page content disappears on Tuaw article after loading + https://bugs.webkit.org/show_bug.cgi?id=138100 + + Reviewed by Simon Fraser. + + DRT causes an extra paint which makes it impossible to test this with + an automated test. + + * ManualTests/float-layer-not-painting.html: Added. + 2014-12-07 Alberto Garcia [GTK] WebKit has a new required dependency on GnuTLS diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index 7d395b2..7ee85aa 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,18 @@ +2014-12-09 Bem Jones-Bey + + REGRESSION(r155906): Page content disappears on Tuaw article after loading + https://bugs.webkit.org/show_bug.cgi?id=138100 + + Reviewed by Simon Fraser. + + Test: ManualTests/float-layer-not-painting.html + + * rendering/RenderBlockFlow.cpp: + (WebCore::RenderBlockFlow::insertFloatingObject): If a layout happens, + it can change whether the float's renderer has a self painting layer. + So in that case, we need to update the flag on the FloatingObject + instance for that float. + 2014-12-09 Andreas Kling Roll out r165076. diff --git a/Source/WebCore/rendering/RenderBlockFlow.cpp b/Source/WebCore/rendering/RenderBlockFlow.cpp index 3e19d46..863f12b 100644 --- a/Source/WebCore/rendering/RenderBlockFlow.cpp +++ b/Source/WebCore/rendering/RenderBlockFlow.cpp @@ -2217,8 +2217,11 @@ FloatingObject* RenderBlockFlow::insertFloatingObject(RenderBox& floatBox) floatBox.setChildNeedsLayout(MarkOnlyThis); bool needsBlockDirectionLocationSetBeforeLayout = isChildRenderBlock && view().layoutState()->needsBlockDirectionLocationSetBeforeLayout(); - if (!needsBlockDirectionLocationSetBeforeLayout || isWritingModeRoot()) // We are unsplittable if we're a block flow root. + if (!needsBlockDirectionLocationSetBeforeLayout || isWritingModeRoot()) { + // We are unsplittable if we're a block flow root. floatBox.layoutIfNeeded(); + floatingObject->setShouldPaint(!floatBox.hasSelfPaintingLayer()); + } else { floatBox.updateLogicalWidth(); floatBox.computeAndSetBlockDirectionMargins(this);