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

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

Issue 2360913004: Support for multiple block fragments in getClientRects(). (Closed)
Patch Set: fast/overflow/overflow-height-float-not-removed-crash3.html crashed because saturated LayoutUnits caused zero height Created 4 years, 2 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 608 matching lines...) Expand 10 before | Expand all | Expand 10 after
619 parentBox->scrollRectToVisible(newRect, alignX, alignY, scrollType, make VisibleInVisualViewport); 619 parentBox->scrollRectToVisible(newRect, alignX, alignY, scrollType, make VisibleInVisualViewport);
620 } 620 }
621 621
622 void LayoutBox::absoluteRects(Vector<IntRect>& rects, const LayoutPoint& accumul atedOffset) const 622 void LayoutBox::absoluteRects(Vector<IntRect>& rects, const LayoutPoint& accumul atedOffset) const
623 { 623 {
624 rects.append(pixelSnappedIntRect(accumulatedOffset, size())); 624 rects.append(pixelSnappedIntRect(accumulatedOffset, size()));
625 } 625 }
626 626
627 void LayoutBox::absoluteQuads(Vector<FloatQuad>& quads) const 627 void LayoutBox::absoluteQuads(Vector<FloatQuad>& quads) const
628 { 628 {
629 if (LayoutFlowThread* flowThread = flowThreadContainingBlock()) {
630 flowThread->absoluteQuadsForDescendant(*this, quads);
631 return;
632 }
629 quads.append(localToAbsoluteQuad(FloatRect(0, 0, m_frameRect.width().toFloat (), m_frameRect.height().toFloat()))); 633 quads.append(localToAbsoluteQuad(FloatRect(0, 0, m_frameRect.width().toFloat (), m_frameRect.height().toFloat())));
630 } 634 }
631 635
632 FloatRect LayoutBox::localBoundingBoxRectForAccessibility() const 636 FloatRect LayoutBox::localBoundingBoxRectForAccessibility() const
633 { 637 {
634 return FloatRect(0, 0, m_frameRect.width().toFloat(), m_frameRect.height().t oFloat()); 638 return FloatRect(0, 0, m_frameRect.width().toFloat(), m_frameRect.height().t oFloat());
635 } 639 }
636 640
637 void LayoutBox::updateLayerTransformAfterLayout() 641 void LayoutBox::updateLayerTransformAfterLayout()
638 { 642 {
(...skipping 4236 matching lines...) Expand 10 before | Expand all | Expand 10 after
4875 LayoutRect rect = frameRect(); 4879 LayoutRect rect = frameRect();
4876 4880
4877 LayoutBlock* block = containingBlock(); 4881 LayoutBlock* block = containingBlock();
4878 if (block) 4882 if (block)
4879 block->adjustChildDebugRect(rect); 4883 block->adjustChildDebugRect(rect);
4880 4884
4881 return rect; 4885 return rect;
4882 } 4886 }
4883 4887
4884 } // namespace blink 4888 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698