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 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 const SimpleFontData* fontDataForSpace = fontData->fontDataForCharacter(
spaceCharacter); | 126 const SimpleFontData* fontDataForSpace = fontData->fontDataForCharacter(
spaceCharacter); |
127 ASSERT(fontDataForSpace); | 127 ASSERT(fontDataForSpace); |
128 | 128 |
129 // When a custom font is loading, we should use the correct fallback fon
t to layout the text. | 129 // When a custom font is loading, we should use the correct fallback fon
t to layout the text. |
130 // Here skip the temporary font for the loading custom font which may no
t act as the correct fallback font. | 130 // Here skip the temporary font for the loading custom font which may no
t act as the correct fallback font. |
131 if (!fontDataForSpace->isLoadingFallback()) | 131 if (!fontDataForSpace->isLoadingFallback()) |
132 return fontDataForSpace; | 132 return fontDataForSpace; |
133 | 133 |
134 if (fontData->isSegmented()) { | 134 if (fontData->isSegmented()) { |
135 const SegmentedFontData* segmented = toSegmentedFontData(fontData); | 135 const SegmentedFontData* segmented = toSegmentedFontData(fontData); |
136 for (unsigned i = 0; i < segmented->numRanges(); i++) { | 136 for (unsigned i = 0; i < segmented->numFaces(); i++) { |
137 const SimpleFontData* rangeFontData = segmented->rangeAt(i).font
Data().get(); | 137 const SimpleFontData* rangeFontData = segmented->faceAt(i).fontD
ata().get(); |
138 if (!rangeFontData->isLoadingFallback()) | 138 if (!rangeFontData->isLoadingFallback()) |
139 return rangeFontData; | 139 return rangeFontData; |
140 } | 140 } |
141 if (fontData->isLoading()) | 141 if (fontData->isLoading()) |
142 shouldLoadCustomFont = false; | 142 shouldLoadCustomFont = false; |
143 } | 143 } |
144 | 144 |
145 // Begin to load the first custom font if needed. | 145 // Begin to load the first custom font if needed. |
146 if (shouldLoadCustomFont) { | 146 if (shouldLoadCustomFont) { |
147 shouldLoadCustomFont = false; | 147 shouldLoadCustomFont = false; |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
231 | 231 |
232 bool FontFallbackList::isValid() const | 232 bool FontFallbackList::isValid() const |
233 { | 233 { |
234 if (!m_fontSelector) | 234 if (!m_fontSelector) |
235 return m_fontSelectorVersion == 0; | 235 return m_fontSelectorVersion == 0; |
236 | 236 |
237 return m_fontSelector->version() == m_fontSelectorVersion; | 237 return m_fontSelector->version() == m_fontSelectorVersion; |
238 } | 238 } |
239 | 239 |
240 } // namespace blink | 240 } // namespace blink |
OLD | NEW |