OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Apple Computer, Inc. All rights reserved. | 2 * Copyright (C) 2006 Apple Computer, 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 | 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 copyright | 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 | 137 |
138 for (unsigned fontIndex = 0; ; ++fontIndex) { | 138 for (unsigned fontIndex = 0; ; ++fontIndex) { |
139 const FontData* fontData = fontDataAt(fontDescription, fontIndex); | 139 const FontData* fontData = fontDataAt(fontDescription, fontIndex); |
140 if (!fontData) { | 140 if (!fontData) { |
141 // All fonts are custom fonts and are loading. Return the first Font
Data. | 141 // All fonts are custom fonts and are loading. Return the first Font
Data. |
142 fontData = fontDataAt(fontDescription, 0); | 142 fontData = fontDataAt(fontDescription, 0); |
143 if (fontData) | 143 if (fontData) |
144 return fontData->fontDataForCharacter(space); | 144 return fontData->fontDataForCharacter(space); |
145 | 145 |
146 SimpleFontData* lastResortFallback = FontCache::fontCache()->getLast
ResortFallbackFont(fontDescription).get(); | 146 SimpleFontData* lastResortFallback = FontCache::fontCache()->getLast
ResortFallbackFont(fontDescription).get(); |
147 RELEASE_ASSERT(lastResortFallback); | 147 ASSERT(lastResortFallback); |
148 return lastResortFallback; | 148 return lastResortFallback; |
149 } | 149 } |
150 | 150 |
151 if (fontData->isSegmented() && !toSegmentedFontData(fontData)->containsC
haracter(space)) | 151 if (fontData->isSegmented() && !toSegmentedFontData(fontData)->containsC
haracter(space)) |
152 continue; | 152 continue; |
153 | 153 |
154 const SimpleFontData* fontDataForSpace = fontData->fontDataForCharacter(
space); | 154 const SimpleFontData* fontDataForSpace = fontData->fontDataForCharacter(
space); |
155 ASSERT(fontDataForSpace); | 155 ASSERT(fontDataForSpace); |
156 | 156 |
157 // When a custom font is loading, we should use the correct fallback fon
t to layout the text. | 157 // When a custom font is loading, we should use the correct fallback fon
t to layout the text. |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 RefPtr<FontData> result = getFontData(fontDescription, m_familyIndex); | 238 RefPtr<FontData> result = getFontData(fontDescription, m_familyIndex); |
239 if (result) { | 239 if (result) { |
240 m_fontList.append(result); | 240 m_fontList.append(result); |
241 if (result->isLoadingFallback()) | 241 if (result->isLoadingFallback()) |
242 m_hasLoadingFallback = true; | 242 m_hasLoadingFallback = true; |
243 } | 243 } |
244 return result.get(); | 244 return result.get(); |
245 } | 245 } |
246 | 246 |
247 } // namespace blink | 247 } // namespace blink |
OLD | NEW |