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

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

Issue 1308273010: Adapt and reland old position sticky implementation (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Store ancestor overflow layer on PaintLayer to compute before other dependent compositing inputs. Created 4 years, 9 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 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved. 4 * Copyright (C) 2003, 2006, 2007 Apple Inc. All rights reserved.
5 * 5 *
6 * This library is free software; you can redistribute it and/or 6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public 7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either 8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version. 9 * version 2 of the License, or (at your option) any later version.
10 * 10 *
(...skipping 995 matching lines...) Expand 10 before | Expand all | Expand 10 after
1006 bool logicalHeightComputesAsNone(SizeType) const; 1006 bool logicalHeightComputesAsNone(SizeType) const;
1007 1007
1008 bool isBox() const = delete; // This will catch anyone doing an unnecessary check. 1008 bool isBox() const = delete; // This will catch anyone doing an unnecessary check.
1009 1009
1010 void frameRectChanged() 1010 void frameRectChanged()
1011 { 1011 {
1012 // The frame rect may change because of layout of other objects. 1012 // The frame rect may change because of layout of other objects.
1013 // Should check this object for paint invalidation. 1013 // Should check this object for paint invalidation.
1014 if (!needsLayout()) 1014 if (!needsLayout())
1015 setMayNeedPaintInvalidation(); 1015 setMayNeedPaintInvalidation();
1016 invalidateScrollAncestorConstraints();
chrishtr 2016/03/09 16:53:08 Is this where you handle the case of an element wi
flackr 2016/03/14 19:04:26 Yes.
chrishtr 2016/03/16 21:52:39 Hmm. I'm trying to think of whether it is possible
flackr 2016/03/22 21:44:32 I'm fairly certain that transforms shouldn't be in
1016 } 1017 }
1017 1018
1018 // Returns true if the box intersects the viewport visible to the user. 1019 // Returns true if the box intersects the viewport visible to the user.
1019 bool intersectsVisibleViewport(); 1020 bool intersectsVisibleViewport();
1020 1021
1021 bool hitTestChildren(HitTestResult&, const HitTestLocation& locationInContai ner, const LayoutPoint& accumulatedOffset, HitTestAction); 1022 bool hitTestChildren(HitTestResult&, const HitTestLocation& locationInContai ner, const LayoutPoint& accumulatedOffset, HitTestAction);
1022 1023
1023 void updateBackgroundAttachmentFixedStatusAfterStyleChange(); 1024 void updateBackgroundAttachmentFixedStatusAfterStyleChange();
1024 1025
1025 // The CSS border box rect for this box. 1026 // The CSS border box rect for this box.
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
1132 if (UNLIKELY(m_inlineBoxWrapper != nullptr)) 1133 if (UNLIKELY(m_inlineBoxWrapper != nullptr))
1133 deleteLineBoxWrapper(); 1134 deleteLineBoxWrapper();
1134 } 1135 }
1135 1136
1136 m_inlineBoxWrapper = boxWrapper; 1137 m_inlineBoxWrapper = boxWrapper;
1137 } 1138 }
1138 1139
1139 } // namespace blink 1140 } // namespace blink
1140 1141
1141 #endif // LayoutBox_h 1142 #endif // LayoutBox_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698