Skip to content

Commit

Permalink
Merge r177049 - REGRESSION(r155906): Page content disappears on Tuaw …
Browse files Browse the repository at this point in the history
…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.

Canonical link: https://commits.webkit.org/154760.273@webkitgtk/2.6
git-svn-id: https://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.6@178342 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
bemjb authored and carlosgcampos committed Jan 13, 2015
1 parent 4d15147 commit ae0949b
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 1 deletion.
12 changes: 12 additions & 0 deletions ChangeLog
@@ -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-04 Alberto Garcia <berto@igalia.com>

can not find cairo-gl.h when build webkit with gtk on ubuntu 14.04
Expand Down
15 changes: 15 additions & 0 deletions Source/WebCore/ChangeLog
@@ -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 Alberto Garcia <berto@igalia.com>

convertToUTF8String converts null string to empty string
Expand Down
5 changes: 4 additions & 1 deletion Source/WebCore/rendering/RenderBlockFlow.cpp
Expand Up @@ -2207,8 +2207,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 ae0949b

Please sign in to comment.