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

Side by Side Diff: WebCore/rendering/RenderBox.cpp

Issue 5670003: Merge 73531 - https://bugs.webkit.org/show_bug.cgi?id=50576... (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/597/
Patch Set: Created 10 years 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
« no previous file with comments | « WebCore/ChangeLog ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 * 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 2106 matching lines...) Expand 10 before | Expand all | Expand 10 after
2117 * viewport, and all scrollable boxes should be assumed to be scrolled to th eir 2117 * viewport, and all scrollable boxes should be assumed to be scrolled to th eir
2118 * origin. 2118 * origin.
2119 \*-------------------------------------------------------------------------- -*/ 2119 \*-------------------------------------------------------------------------- -*/
2120 2120
2121 // see FIXME 2 2121 // see FIXME 2
2122 // Calculate the static distance if needed. 2122 // Calculate the static distance if needed.
2123 if (left.isAuto() && right.isAuto()) { 2123 if (left.isAuto() && right.isAuto()) {
2124 if (containerDirection == LTR) { 2124 if (containerDirection == LTR) {
2125 // 'staticX' should already have been set through layout of the pare nt. 2125 // 'staticX' should already have been set through layout of the pare nt.
2126 int staticPosition = layer()->staticX() - containerBlock->borderLeft (); 2126 int staticPosition = layer()->staticX() - containerBlock->borderLeft ();
2127 for (RenderObject* po = parent(); po && po != containerBlock; po = p o->parent()) { 2127 for (RenderObject* curr = parent(); curr && curr != containerBlock; curr = curr->parent()) {
2128 if (po->isBox()) 2128 if (curr->isBox())
2129 staticPosition += toRenderBox(po)->x(); 2129 staticPosition += toRenderBox(curr)->x();
2130 } 2130 }
2131 left.setValue(Fixed, staticPosition); 2131 left.setValue(Fixed, staticPosition);
2132 } else { 2132 } else {
2133 RenderObject* po = parent(); 2133 RenderBox* enclosingBox = parent()->enclosingBox();
2134 // 'staticX' should already have been set through layout of the pare nt. 2134 // 'staticX' should already have been set through layout of the pare nt.
2135 int staticPosition = layer()->staticX() + containerWidth + container Block->borderRight(); 2135 int staticPosition = layer()->staticX() + containerWidth + container Block->borderRight();
2136 if (po->isBox()) 2136 staticPosition -= enclosingBox->width();
2137 staticPosition -= toRenderBox(po)->width(); 2137 for (RenderObject* curr = enclosingBox; curr && curr != containerBlo ck; curr = curr->parent()) {
2138 for (; po && po != containerBlock; po = po->parent()) { 2138 if (curr->isBox())
2139 if (po->isBox()) 2139 staticPosition -= toRenderBox(curr)->x();
2140 staticPosition -= toRenderBox(po)->x();
2141 } 2140 }
2142 right.setValue(Fixed, staticPosition); 2141 right.setValue(Fixed, staticPosition);
2143 } 2142 }
2144 } 2143 }
2145 2144
2146 // Calculate constraint equation values for 'width' case. 2145 // Calculate constraint equation values for 'width' case.
2147 int widthResult; 2146 int widthResult;
2148 int xResult; 2147 int xResult;
2149 computePositionedLogicalWidthUsing(style()->width(), containerBlock, contain erDirection, 2148 computePositionedLogicalWidthUsing(style()->width(), containerBlock, contain erDirection,
2150 containerWidth, bordersPlusPadding, 2149 containerWidth, bordersPlusPadding,
(...skipping 1114 matching lines...) Expand 10 before | Expand all | Expand 10 after
3265 { 3264 {
3266 if (!parent() || !parent()->isBox()) 3265 if (!parent() || !parent()->isBox())
3267 return locationOffset(); 3266 return locationOffset();
3268 3267
3269 IntRect rect(frameRect()); 3268 IntRect rect(frameRect());
3270 parentBox()->flipForWritingMode(rect); 3269 parentBox()->flipForWritingMode(rect);
3271 return IntSize(rect.x(), rect.y()); 3270 return IntSize(rect.x(), rect.y());
3272 } 3271 }
3273 3272
3274 } // namespace WebCore 3273 } // namespace WebCore
OLDNEW
« no previous file with comments | « WebCore/ChangeLog ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698