Skip to content

Commit

Permalink
REGRESSION(r155906): Page content disappears on Tuaw article after lo…
Browse files Browse the repository at this point in the history
…ading

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: http://svn.webkit.org/repository/webkit/trunk@177049 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
bjonesbe@adobe.com committed Dec 10, 2014
1 parent 68a5ee4 commit 9c29e69
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 1 deletion.
12 changes: 12 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
2014-12-09 Bem Jones-Bey <bjonesbe@adobe.com>

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 <berto@igalia.com>

[GTK] WebKit has a new required dependency on GnuTLS
Expand Down
15 changes: 15 additions & 0 deletions Source/WebCore/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
2014-12-09 Bem Jones-Bey <bjonesbe@adobe.com>

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 <akling@apple.com>

Roll out r165076.
Expand Down
5 changes: 4 additions & 1 deletion Source/WebCore/rendering/RenderBlockFlow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down

0 comments on commit 9c29e69

Please sign in to comment.