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

Side by Side Diff: Source/core/rendering/RenderBlock.cpp

Issue 25373006: Correction to layoutOverflowRect in case of direction:rtl (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Added expected result file Created 7 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) 2007 David Smith (catfish.man@gmail.com) 4 * (C) 2007 David Smith (catfish.man@gmail.com)
5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2010. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
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 1626 matching lines...) Expand 10 before | Expand all | Expand 10 after
1637 TrackedRendererListHashSet* positionedDescendants = positionedObjects(); 1637 TrackedRendererListHashSet* positionedDescendants = positionedObjects();
1638 if (!positionedDescendants) 1638 if (!positionedDescendants)
1639 return; 1639 return;
1640 1640
1641 RenderBox* positionedObject; 1641 RenderBox* positionedObject;
1642 TrackedRendererListHashSet::iterator end = positionedDescendants->end(); 1642 TrackedRendererListHashSet::iterator end = positionedDescendants->end();
1643 for (TrackedRendererListHashSet::iterator it = positionedDescendants->begin( ); it != end; ++it) { 1643 for (TrackedRendererListHashSet::iterator it = positionedDescendants->begin( ); it != end; ++it) {
1644 positionedObject = *it; 1644 positionedObject = *it;
1645 1645
1646 // Fixed positioned elements don't contribute to layout overflow, since they don't scroll with the content. 1646 // Fixed positioned elements don't contribute to layout overflow, since they don't scroll with the content.
1647 if (positionedObject->style()->position() != FixedPosition) { 1647 if (positionedObject->style()->position() != FixedPosition)
1648 LayoutUnit x = positionedObject->x(); 1648 addOverflowFromChild(positionedObject, LayoutSize(positionedObject-> x(), positionedObject->y()));
1649 if (style()->shouldPlaceBlockDirectionScrollbarOnLogicalLeft())
1650 x -= verticalScrollbarWidth();
Julien - ping for review 2013/10/30 02:03:41 Is this code tested somewhere?
pals 2013/10/30 12:02:13 Are you talking about LayoutTests? I have written
Julien - ping for review 2013/11/01 00:29:13 Yes, I was talking about LayoutTests. And no, your
1651 addOverflowFromChild(positionedObject, LayoutSize(x, positionedObjec t->y()));
1652 }
1653 } 1649 }
1654 } 1650 }
1655 1651
1656 void RenderBlock::addVisualOverflowFromTheme() 1652 void RenderBlock::addVisualOverflowFromTheme()
1657 { 1653 {
1658 if (!style()->hasAppearance()) 1654 if (!style()->hasAppearance())
1659 return; 1655 return;
1660 1656
1661 IntRect inflatedRect = pixelSnappedBorderBoxRect(); 1657 IntRect inflatedRect = pixelSnappedBorderBoxRect();
1662 RenderTheme::theme().adjustRepaintRect(this, inflatedRect); 1658 RenderTheme::theme().adjustRepaintRect(this, inflatedRect);
(...skipping 5138 matching lines...) Expand 10 before | Expand all | Expand 10 after
6801 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const 6797 void RenderBlock::showLineTreeAndMark(const InlineBox* markedBox1, const char* m arkedLabel1, const InlineBox* markedBox2, const char* markedLabel2, const Render Object* obj) const
6802 { 6798 {
6803 showRenderObject(); 6799 showRenderObject();
6804 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box()) 6800 for (const RootInlineBox* root = firstRootBox(); root; root = root->nextRoot Box())
6805 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1); 6801 root->showLineTreeAndMark(markedBox1, markedLabel1, markedBox2, markedLa bel2, obj, 1);
6806 } 6802 }
6807 6803
6808 #endif 6804 #endif
6809 6805
6810 } // namespace WebCore 6806 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698