OLD | NEW |
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 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
290 | 290 |
291 if (run.length() > 1 && fontDescription().typesettingFeatures()) | 291 if (run.length() > 1 && fontDescription().typesettingFeatures()) |
292 return ComplexPath; | 292 return ComplexPath; |
293 | 293 |
294 // FIXME: This really shouldn't be needed but for some reason the | 294 // FIXME: This really shouldn't be needed but for some reason the |
295 // TextRendering setting doesn't propagate to typesettingFeatures in time | 295 // TextRendering setting doesn't propagate to typesettingFeatures in time |
296 // for the prefs width calculation. | 296 // for the prefs width calculation. |
297 if (fontDescription().textRendering() == OptimizeLegibility || fontDescripti
on().textRendering() == GeometricPrecision) | 297 if (fontDescription().textRendering() == OptimizeLegibility || fontDescripti
on().textRendering() == GeometricPrecision) |
298 return ComplexPath; | 298 return ComplexPath; |
299 | 299 |
| 300 if (run.useComplexCodePath()) |
| 301 return ComplexPath; |
| 302 |
300 if (!run.characterScanForCodePath()) | 303 if (!run.characterScanForCodePath()) |
301 return SimplePath; | 304 return SimplePath; |
302 | 305 |
303 if (run.is8Bit()) | 306 if (run.is8Bit()) |
304 return SimplePath; | 307 return SimplePath; |
305 | 308 |
306 // Start from 0 since drawing and highlighting also measure the characters b
efore run->from. | 309 // Start from 0 since drawing and highlighting also measure the characters b
efore run->from. |
307 return Character::characterRangeCodePath(run.characters16(), run.length()); | 310 return Character::characterRangeCodePath(run.characters16(), run.length()); |
308 } | 311 } |
309 | 312 |
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
899 if (delta <= 0) | 902 if (delta <= 0) |
900 break; | 903 break; |
901 } | 904 } |
902 } | 905 } |
903 } | 906 } |
904 | 907 |
905 return offset; | 908 return offset; |
906 } | 909 } |
907 | 910 |
908 } // namespace blink | 911 } // namespace blink |
OLD | NEW |