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

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

Issue 2280243002: Don't apply overflow clips in paint invalidation. (Closed)
Patch Set: none Created 4 years, 3 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 1007 matching lines...) Expand 10 before | Expand all | Expand 10 after
1018 result.intersect(clipRect(LayoutPoint())); 1018 result.intersect(clipRect(LayoutPoint()));
1019 1019
1020 return result; 1020 return result;
1021 } 1021 }
1022 1022
1023 bool LayoutBox::mapScrollingContentsRectToBoxSpace(LayoutRect& rect, ApplyOverfl owClipFlag applyOverflowClip, VisualRectFlags visualRectFlags) const 1023 bool LayoutBox::mapScrollingContentsRectToBoxSpace(LayoutRect& rect, ApplyOverfl owClipFlag applyOverflowClip, VisualRectFlags visualRectFlags) const
1024 { 1024 {
1025 if (!hasClipRelatedProperty()) 1025 if (!hasClipRelatedProperty())
1026 return true; 1026 return true;
1027 1027
1028 if (applyOverflowClip == ApplyNonScrollOverflowClip && scrollsOverflow()) 1028 if (applyOverflowClip == ApplyNonScrollOverflowClip)
wkorman 2016/08/26 22:58:03 In reviewing the docs for this method to make sure
chrishtr 2016/08/26 23:05:18 See line 1041 in the new file.
wkorman 2016/08/27 00:32:02 May have forgotten to add file or upload
1029 return true; 1029 return true;
1030 1030
1031 if (hasOverflowClip()) { 1031 if (hasOverflowClip()) {
1032 LayoutSize offset = LayoutSize(-scrolledContentOffset()); 1032 LayoutSize offset = LayoutSize(-scrolledContentOffset());
1033 rect.move(offset); 1033 rect.move(offset);
1034 } 1034 }
1035 1035
1036 // This won't work fully correctly for fixed-position elements, who should r eceive CSS clip but for whom the current object 1036 // This won't work fully correctly for fixed-position elements, who should r eceive CSS clip but for whom the current object
1037 // is not in the containing block chain. 1037 // is not in the containing block chain.
1038 LayoutRect clipRect = clippingRect(); 1038 LayoutRect clipRect = clippingRect();
(...skipping 3786 matching lines...) Expand 10 before | Expand all | Expand 10 after
4825 m_rareData->m_snapAreas->remove(&snapArea); 4825 m_rareData->m_snapAreas->remove(&snapArea);
4826 } 4826 }
4827 } 4827 }
4828 4828
4829 SnapAreaSet* LayoutBox::snapAreas() const 4829 SnapAreaSet* LayoutBox::snapAreas() const
4830 { 4830 {
4831 return m_rareData ? m_rareData->m_snapAreas.get() : nullptr; 4831 return m_rareData ? m_rareData->m_snapAreas.get() : nullptr;
4832 } 4832 }
4833 4833
4834 } // namespace blink 4834 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698