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

Side by Side Diff: Source/platform/fonts/Font.cpp

Issue 652483002: TextRun::length() should return an unsigned (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase Created 6 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
« no previous file with comments | « Source/platform/fonts/Font.h ('k') | Source/platform/fonts/WidthCache.h » ('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) 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) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2003, 2006, 2010, 2011 Apple Inc. All rights reserved. 5 * Copyright (C) 2003, 2006, 2010, 2011 Apple Inc. All rights reserved.
6 * Copyright (c) 2007, 2008, 2010 Google Inc. All rights reserved. 6 * Copyright (c) 2007, 2008, 2010 Google Inc. 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 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 if (cacheEntry && (!fallbackFonts || fallbackFonts->isEmpty())) { 171 if (cacheEntry && (!fallbackFonts || fallbackFonts->isEmpty())) {
172 cacheEntry->glyphBounds = glyphBounds; 172 cacheEntry->glyphBounds = glyphBounds;
173 cacheEntry->width = result; 173 cacheEntry->width = result;
174 } 174 }
175 175
176 if (glyphOverflow) 176 if (glyphOverflow)
177 updateGlyphOverflowFromBounds(glyphBounds, fontMetrics(), glyphOverflow) ; 177 updateGlyphOverflowFromBounds(glyphBounds, fontMetrics(), glyphOverflow) ;
178 return result; 178 return result;
179 } 179 }
180 180
181 float Font::width(const TextRun& run, int& charsConsumed, Glyph& glyphId) const 181 float Font::width(const TextRun& run, unsigned& charsConsumed, Glyph& glyphId) c onst
182 { 182 {
183 #if ENABLE(SVG_FONTS) 183 #if ENABLE(SVG_FONTS)
184 if (TextRun::RenderingContext* renderingContext = run.renderingContext()) 184 if (TextRun::RenderingContext* renderingContext = run.renderingContext())
185 return renderingContext->floatWidthUsingSVGFont(*this, run, charsConsume d, glyphId); 185 return renderingContext->floatWidthUsingSVGFont(*this, run, charsConsume d, glyphId);
186 #endif 186 #endif
187 187
188 charsConsumed = run.length(); 188 charsConsumed = run.length();
189 glyphId = 0; 189 glyphId = 0;
190 return width(run); 190 return width(run);
191 } 191 }
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 } 272 }
273 273
274 advance = x; 274 advance = x;
275 return adoptRef(builder.build()); 275 return adoptRef(builder.build());
276 } 276 }
277 277
278 278
279 FloatRect Font::selectionRectForText(const TextRun& run, const FloatPoint& point , int h, int from, int to, bool accountForGlyphBounds) const 279 FloatRect Font::selectionRectForText(const TextRun& run, const FloatPoint& point , int h, int from, int to, bool accountForGlyphBounds) const
280 { 280 {
281 to = (to == -1 ? run.length() : to); 281 to = (to == -1 ? run.length() : to);
282 ASSERT(from >= 0);
jochen (gone - plz use gerrit) 2014/10/20 11:44:25 this is hit in FindInPageControllerTest.FindInPage
283 ASSERT(to >= 0);
282 284
283 TextRunPaintInfo runInfo(run); 285 TextRunPaintInfo runInfo(run);
284 runInfo.from = from; 286 runInfo.from = from;
285 runInfo.to = to; 287 runInfo.to = to;
286 288
287 if (codePath(runInfo) != ComplexPath) 289 if (codePath(runInfo) != ComplexPath)
288 return selectionRectForSimpleText(run, point, h, from, to, accountForGly phBounds); 290 return selectionRectForSimpleText(run, point, h, from, to, accountForGly phBounds);
289 291
290 return selectionRectForComplexText(run, point, h, from, to); 292 return selectionRectForComplexText(run, point, h, from, to);
291 } 293 }
(...skipping 863 matching lines...) Expand 10 before | Expand all | Expand 10 after
1155 if (delta <= 0) 1157 if (delta <= 0)
1156 break; 1158 break;
1157 } 1159 }
1158 } 1160 }
1159 } 1161 }
1160 1162
1161 return offset; 1163 return offset;
1162 } 1164 }
1163 1165
1164 } // namespace blink 1166 } // namespace blink
OLDNEW
« no previous file with comments | « Source/platform/fonts/Font.h ('k') | Source/platform/fonts/WidthCache.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698