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

Side by Side Diff: Source/core/rendering/shapes/BoxShape.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
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Adobe Systems Incorporated. All rights reserved. 2 * Copyright (C) 2013 Adobe Systems Incorporated. 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 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above 8 * 1. Redistributions of source code must retain the above
9 * copyright notice, this list of conditions and the following 9 * copyright notice, this list of conditions and the following
10 * disclaimer. 10 * disclaimer.
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 } 69 }
70 return paddingBounds; 70 return paddingBounds;
71 } 71 }
72 72
73 void BoxShape::getExcludedIntervals(LayoutUnit logicalTop, LayoutUnit logicalHei ght, SegmentList& result) const 73 void BoxShape::getExcludedIntervals(LayoutUnit logicalTop, LayoutUnit logicalHei ght, SegmentList& result) const
74 { 74 {
75 const FloatRoundedRect& marginBounds = shapeMarginBounds(); 75 const FloatRoundedRect& marginBounds = shapeMarginBounds();
76 if (marginBounds.isEmpty() || !lineOverlapsShapeMarginBounds(logicalTop, log icalHeight)) 76 if (marginBounds.isEmpty() || !lineOverlapsShapeMarginBounds(logicalTop, log icalHeight))
77 return; 77 return;
78 78
79 float y1 = logicalTop; 79 float y1 = logicalTop.toFloat();
80 float y2 = logicalTop + logicalHeight; 80 float y2 = (logicalTop + logicalHeight).toFloat();
81 const FloatRect& rect = marginBounds.rect(); 81 const FloatRect& rect = marginBounds.rect();
82 82
83 if (!marginBounds.isRounded()) { 83 if (!marginBounds.isRounded()) {
84 result.append(LineSegment(marginBounds.rect().x(), marginBounds.rect().m axX())); 84 result.append(LineSegment(marginBounds.rect().x(), marginBounds.rect().m axX()));
85 return; 85 return;
86 } 86 }
87 87
88 float topCornerMaxY = std::max<float>(marginBounds.topLeftCorner().maxY(), m arginBounds.topRightCorner().maxY()); 88 float topCornerMaxY = std::max<float>(marginBounds.topLeftCorner().maxY(), m arginBounds.topRightCorner().maxY());
89 float bottomCornerMinY = std::min<float>(marginBounds.bottomLeftCorner().y() , marginBounds.bottomRightCorner().y()); 89 float bottomCornerMinY = std::min<float>(marginBounds.bottomLeftCorner().y() , marginBounds.bottomRightCorner().y());
90 90
(...skipping 20 matching lines...) Expand all
111 ASSERT(x2 >= x1); 111 ASSERT(x2 >= x1);
112 result.append(LineSegment(x1, x2)); 112 result.append(LineSegment(x1, x2));
113 } 113 }
114 114
115 void BoxShape::getIncludedIntervals(LayoutUnit logicalTop, LayoutUnit logicalHei ght, SegmentList& result) const 115 void BoxShape::getIncludedIntervals(LayoutUnit logicalTop, LayoutUnit logicalHei ght, SegmentList& result) const
116 { 116 {
117 const FloatRoundedRect& paddingBounds = shapePaddingBounds(); 117 const FloatRoundedRect& paddingBounds = shapePaddingBounds();
118 if (paddingBounds.isEmpty()) 118 if (paddingBounds.isEmpty())
119 return; 119 return;
120 120
121 float y1 = logicalTop; 121 float y1 = logicalTop.toFloat();
122 float y2 = logicalTop + logicalHeight; 122 float y2 = (logicalTop + logicalHeight).toFloat();
123 const FloatRect& rect = paddingBounds.rect(); 123 const FloatRect& rect = paddingBounds.rect();
124 124
125 if (y1 < rect.y() || y2 > rect.maxY()) 125 if (y1 < rect.y() || y2 > rect.maxY())
126 return; 126 return;
127 127
128 if (!paddingBounds.isRounded()) { 128 if (!paddingBounds.isRounded()) {
129 result.append(LineSegment(rect.x(), rect.maxX())); 129 result.append(LineSegment(rect.x(), rect.maxX()));
130 return; 130 return;
131 } 131 }
132 132
(...skipping 17 matching lines...) Expand all
150 150
151 bool BoxShape::firstIncludedIntervalLogicalTop(LayoutUnit minLogicalIntervalTop, const FloatSize&, LayoutUnit& result) const 151 bool BoxShape::firstIncludedIntervalLogicalTop(LayoutUnit minLogicalIntervalTop, const FloatSize&, LayoutUnit& result) const
152 { 152 {
153 // FIXME: this method is only a stub, https://bugs.webkit.org/show_bug.cgi?i d=124606. 153 // FIXME: this method is only a stub, https://bugs.webkit.org/show_bug.cgi?i d=124606.
154 154
155 result = minLogicalIntervalTop; 155 result = minLogicalIntervalTop;
156 return true; 156 return true;
157 } 157 }
158 158
159 } // namespace WebCore 159 } // namespace WebCore
OLDNEW
« no previous file with comments | « Source/core/rendering/RenderMultiColumnSet.cpp ('k') | Source/core/rendering/shapes/PolygonShape.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698