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/LayoutDeprecatedFlexibleBox.cpp

Issue 1870663002: Reland main thread position sticky implementation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Only descend into children which have an ancestor overflow layer. Created 4 years, 8 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 * This file is part of the layout object implementation for KHTML. 2 * This file is part of the layout object implementation for KHTML.
3 * 3 *
4 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 4 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
5 * (C) 1999 Antti Koivisto (koivisto@kde.org) 5 * (C) 1999 Antti Koivisto (koivisto@kde.org)
6 * Copyright (C) 2003 Apple Computer, Inc. 6 * Copyright (C) 2003 Apple Computer, Inc.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 243 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 254
255 if (previousSize.height() != size().height()) 255 if (previousSize.height() != size().height())
256 relayoutChildren = true; 256 relayoutChildren = true;
257 257
258 layoutPositionedObjects(relayoutChildren || isDocumentElement()); 258 layoutPositionedObjects(relayoutChildren || isDocumentElement());
259 259
260 computeOverflow(oldClientAfterEdge); 260 computeOverflow(oldClientAfterEdge);
261 } 261 }
262 262
263 updateLayerTransformAfterLayout(); 263 updateLayerTransformAfterLayout();
264 updateScrollInfoAfterLayout(); 264 updateAfterLayout();
265 265
266 if (view()->layoutState()->pageLogicalHeight()) 266 if (view()->layoutState()->pageLogicalHeight())
267 setPageLogicalOffset(view()->layoutState()->pageLogicalOffset(*this, log icalTop())); 267 setPageLogicalOffset(view()->layoutState()->pageLogicalOffset(*this, log icalTop()));
268 268
269 clearNeedsLayout(); 269 clearNeedsLayout();
270 } 270 }
271 271
272 // The first walk over our kids is to find out if we have any flexible children. 272 // The first walk over our kids is to find out if we have any flexible children.
273 static void gatherFlexChildrenInfo(FlexBoxIterator& iterator, bool relayoutChild ren, unsigned& highestFlexGroup, unsigned& lowestFlexGroup, bool& haveFlex) 273 static void gatherFlexChildrenInfo(FlexBoxIterator& iterator, bool relayoutChild ren, unsigned& highestFlexGroup, unsigned& lowestFlexGroup, bool& haveFlex)
274 { 274 {
(...skipping 722 matching lines...) Expand 10 before | Expand all | Expand 10 after
997 if (minHeight.isFixed() || minHeight.isAuto()) { 997 if (minHeight.isFixed() || minHeight.isAuto()) {
998 LayoutUnit minHeight(child->style()->minHeight().value()); 998 LayoutUnit minHeight(child->style()->minHeight().value());
999 LayoutUnit height = contentHeightForChild(child); 999 LayoutUnit height = contentHeightForChild(child);
1000 LayoutUnit allowedShrinkage = (minHeight - height).clampPositiveToZero() ; 1000 LayoutUnit allowedShrinkage = (minHeight - height).clampPositiveToZero() ;
1001 return allowedShrinkage; 1001 return allowedShrinkage;
1002 } 1002 }
1003 return LayoutUnit(); 1003 return LayoutUnit();
1004 } 1004 }
1005 1005
1006 } // namespace blink 1006 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698