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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutBox.cpp

Issue 2196583002: Paint local background colors onto foreground layer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix some painting artifacts. Created 4 years, 4 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com) 4 * (C) 2005 Allan Sandfeld Jensen (kde@carewolf.com)
5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * (C) 2005, 2006 Samuel Weinig (sam.weinig@gmail.com)
6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed. 6 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Apple Inc. All rights reserv ed.
7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. 7 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved.
8 * 8 *
9 * This library is free software; you can redistribute it and/or 9 * This library is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU Library General Public 10 * modify it under the terms of the GNU Library General Public
(...skipping 1394 matching lines...) Expand 10 before | Expand all | Expand 10 after
1405 // FIXME: May be ask theme if it paints opaque. 1405 // FIXME: May be ask theme if it paints opaque.
1406 if (style()->hasAppearance()) 1406 if (style()->hasAppearance())
1407 return false; 1407 return false;
1408 // FIXME: Check the opaqueness of background images. 1408 // FIXME: Check the opaqueness of background images.
1409 1409
1410 // FIXME: Use rounded rect if border radius is present. 1410 // FIXME: Use rounded rect if border radius is present.
1411 if (style()->hasBorderRadius()) 1411 if (style()->hasBorderRadius())
1412 return false; 1412 return false;
1413 if (hasClipPath()) 1413 if (hasClipPath())
1414 return false; 1414 return false;
1415 if (style()->hasBlendMode())
1416 return false;
1415 // FIXME: The background color clip is defined by the last layer. 1417 // FIXME: The background color clip is defined by the last layer.
1416 if (style()->backgroundLayers().next()) 1418 if (style()->backgroundLayers().next())
1417 return false; 1419 return false;
1418 return backgroundClipRect().contains(localRect); 1420 return backgroundClipRect().contains(localRect);
1419 } 1421 }
1420 1422
1421 static bool isCandidateForOpaquenessTest(const LayoutBox& childBox) 1423 static bool isCandidateForOpaquenessTest(const LayoutBox& childBox)
1422 { 1424 {
1423 const ComputedStyle& childStyle = childBox.styleRef(); 1425 const ComputedStyle& childStyle = childBox.styleRef();
1424 if (childStyle.position() != StaticPosition && childBox.containingBlock() != childBox.parent()) 1426 if (childStyle.position() != StaticPosition && childBox.containingBlock() != childBox.parent())
(...skipping 3560 matching lines...) Expand 10 before | Expand all | Expand 10 after
4985 m_rareData->m_snapAreas->remove(&snapArea); 4987 m_rareData->m_snapAreas->remove(&snapArea);
4986 } 4988 }
4987 } 4989 }
4988 4990
4989 SnapAreaSet* LayoutBox::snapAreas() const 4991 SnapAreaSet* LayoutBox::snapAreas() const
4990 { 4992 {
4991 return m_rareData ? m_rareData->m_snapAreas.get() : nullptr; 4993 return m_rareData ? m_rareData->m_snapAreas.get() : nullptr;
4992 } 4994 }
4993 4995
4994 } // namespace blink 4996 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698