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

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

Issue 200023002: Making LayoutUnit conversions to Float type explicit (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: rebase to trunk Created 6 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
« no previous file with comments | « Source/core/page/SpatialNavigation.cpp ('k') | Source/core/rendering/RenderBoxModelObject.cpp » ('j') | 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) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 if (minColumnCount >= desiredColumnCount) { 244 if (minColumnCount >= desiredColumnCount) {
245 // The forced page breaks are in control of the balancing. Just set the column height to the 245 // The forced page breaks are in control of the balancing. Just set the column height to the
246 // maximum page break distance. 246 // maximum page break distance.
247 if (!pageLogicalHeight) { 247 if (!pageLogicalHeight) {
248 LayoutUnit distanceBetweenBreaks = max<LayoutUnit>(colInfo->maximumD istanceBetweenForcedBreaks(), 248 LayoutUnit distanceBetweenBreaks = max<LayoutUnit>(colInfo->maximumD istanceBetweenForcedBreaks(),
249 view()->layoutState()->pageLogicalOffset(*this, borderBefore() + paddingBefore() + layoutOverflowLogicalBottom) - colInfo->forcedBreakOffset()); 249 view()->layoutState()->pageLogicalOffset(*this, borderBefore() + paddingBefore() + layoutOverflowLogicalBottom) - colInfo->forcedBreakOffset());
250 columnHeight = max(colInfo->minimumColumnHeight(), distanceBetweenBr eaks); 250 columnHeight = max(colInfo->minimumColumnHeight(), distanceBetweenBr eaks);
251 } 251 }
252 } else if (layoutOverflowLogicalBottom > boundedMultiply(pageLogicalHeight, desiredColumnCount)) { 252 } else if (layoutOverflowLogicalBottom > boundedMultiply(pageLogicalHeight, desiredColumnCount)) {
253 // Now that we know the intrinsic height of the columns, we have to reba lance them. 253 // Now that we know the intrinsic height of the columns, we have to reba lance them.
254 columnHeight = max<LayoutUnit>(colInfo->minimumColumnHeight(), ceilf((fl oat)layoutOverflowLogicalBottom / desiredColumnCount)); 254 columnHeight = max<LayoutUnit>(colInfo->minimumColumnHeight(), ceilf(lay outOverflowLogicalBottom.toFloat() / desiredColumnCount));
255 } 255 }
256 256
257 if (columnHeight && columnHeight != pageLogicalHeight) { 257 if (columnHeight && columnHeight != pageLogicalHeight) {
258 pageLogicalHeight = columnHeight; 258 pageLogicalHeight = columnHeight;
259 return true; 259 return true;
260 } 260 }
261 261
262 return false; 262 return false;
263 } 263 }
264 264
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
379 addOverflowFromBlockChildren(); 379 addOverflowFromBlockChildren();
380 LayoutUnit layoutOverflowLogicalBottom = (isHorizontalWritingMode() ? la youtOverflowRect().maxY() : layoutOverflowRect().maxX()) - borderBefore() - padd ingBefore(); 380 LayoutUnit layoutOverflowLogicalBottom = (isHorizontalWritingMode() ? la youtOverflowRect().maxY() : layoutOverflowRect().maxX()) - borderBefore() - padd ingBefore();
381 m_overflow = savedOverflow.release(); 381 m_overflow = savedOverflow.release();
382 382
383 if (!hasSpecifiedPageLogicalHeight && shouldRelayoutForPagination(pageLo gicalHeight, layoutOverflowLogicalBottom)) { 383 if (!hasSpecifiedPageLogicalHeight && shouldRelayoutForPagination(pageLo gicalHeight, layoutOverflowLogicalBottom)) {
384 statePusher.pop(); 384 statePusher.pop();
385 setEverHadLayout(true); 385 setEverHadLayout(true);
386 return false; 386 return false;
387 } 387 }
388 388
389 setColumnCountAndHeight(ceilf((float)layoutOverflowLogicalBottom / pageL ogicalHeight), pageLogicalHeight); 389 setColumnCountAndHeight(ceilf(layoutOverflowLogicalBottom.toFloat() / pa geLogicalHeight.toFloat()), pageLogicalHeight.toFloat());
390 } 390 }
391 391
392 if (shouldBreakAtLineToAvoidWidow()) { 392 if (shouldBreakAtLineToAvoidWidow()) {
393 statePusher.pop(); 393 statePusher.pop();
394 setEverHadLayout(true); 394 setEverHadLayout(true);
395 return false; 395 return false;
396 } 396 }
397 397
398 // Calculate our new height. 398 // Calculate our new height.
399 LayoutUnit oldHeight = logicalHeight(); 399 LayoutUnit oldHeight = logicalHeight();
(...skipping 2422 matching lines...) Expand 10 before | Expand all | Expand 10 after
2822 RenderBlockFlow::RenderBlockFlowRareData& RenderBlockFlow::ensureRareData() 2822 RenderBlockFlow::RenderBlockFlowRareData& RenderBlockFlow::ensureRareData()
2823 { 2823 {
2824 if (m_rareData) 2824 if (m_rareData)
2825 return *m_rareData; 2825 return *m_rareData;
2826 2826
2827 m_rareData = adoptPtr(new RenderBlockFlowRareData(this)); 2827 m_rareData = adoptPtr(new RenderBlockFlowRareData(this));
2828 return *m_rareData; 2828 return *m_rareData;
2829 } 2829 }
2830 2830
2831 } // namespace WebCore 2831 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/page/SpatialNavigation.cpp ('k') | Source/core/rendering/RenderBoxModelObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698