Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(469)

Unified Diff: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp

Issue 2654843004: Fix shouldPaint issue when a composited floating iframe becomes non-self-painting (Closed)
Patch Set: Rename setAncestorShouldPaintFloatingObject to updateAncestorShouldPaintFloatingObject Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
diff --git a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
index 49d25e0e6202d58062c54e21c0851061e72b01a4..5a6ae9c2e13af38cd10e7f54daab5e03300cb3a8 100644
--- a/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
+++ b/third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp
@@ -3998,7 +3998,9 @@ bool LayoutBlockFlow::hitTestFloats(HitTestResult& result,
for (FloatingObjectSetIterator it = floatingObjectSet.end(); it != begin;) {
--it;
const FloatingObject& floatingObject = *it->get();
- if (floatingObject.shouldPaint()) {
+ if (floatingObject.shouldPaint() &&
+ // TODO(wangxianzhu): Should this be a DCHECK?
+ !floatingObject.layoutObject()->hasSelfPaintingLayer()) {
LayoutUnit xOffset = xPositionForFloatIncludingMargin(floatingObject) -
floatingObject.layoutObject()->location().x();
LayoutUnit yOffset = yPositionForFloatIncludingMargin(floatingObject) -
@@ -4051,7 +4053,7 @@ LayoutUnit LayoutBlockFlow::logicalRightFloatOffsetForLine(
return fixedOffset;
}
-void LayoutBlockFlow::setAncestorShouldPaintFloatingObject(
+void LayoutBlockFlow::updateAncestorShouldPaintFloatingObject(
const LayoutBox& floatBox) {
ASSERT(floatBox.isFloating());
bool floatBoxIsSelfPaintingLayer =

Powered by Google App Engine
This is Rietveld 408576698