OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 Google 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 are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * 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 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
225 class FontSetCache { | 225 class FontSetCache { |
226 public: | 226 public: |
227 static FontSetCache& shared() | 227 static FontSetCache& shared() |
228 { | 228 { |
229 DEFINE_STATIC_LOCAL(FontSetCache, cache, ()); | 229 DEFINE_STATIC_LOCAL(FontSetCache, cache, ()); |
230 return cache; | 230 return cache; |
231 } | 231 } |
232 | 232 |
233 WebFallbackFont fallbackFontForCharInLocale(WebUChar32 c, const char* locale
) | 233 WebFallbackFont fallbackFontForCharInLocale(WebUChar32 c, const char* locale
) |
234 { | 234 { |
235 DEFINE_STATIC_LOCAL(AtomicString, kNoLocale, ("NO_LOCALE_SPECIFIED")); | 235 DEFINE_STATIC_LOCAL(AtomicString, kNoLocale, ("NO_LOCALE_SPECIFIED", Ato
micString::ConstructFromLiteral)); |
236 AtomicString localeKey; | 236 AtomicString localeKey; |
237 if (locale && strlen(locale)) { | 237 if (locale && strlen(locale)) { |
238 localeKey = AtomicString(locale); | 238 localeKey = AtomicString(locale); |
239 } else { | 239 } else { |
240 // String hash computation the m_setsByLocale map needs | 240 // String hash computation the m_setsByLocale map needs |
241 // a non-empty string. | 241 // a non-empty string. |
242 localeKey = kNoLocale; | 242 localeKey = kNoLocale; |
243 } | 243 } |
244 | 244 |
245 LocaleToCachedFont::iterator itr = m_setsByLocale.find(localeKey); | 245 LocaleToCachedFont::iterator itr = m_setsByLocale.find(localeKey); |
(...skipping 12 matching lines...) Expand all Loading... |
258 typedef HashMap<AtomicString, OwnPtr<CachedFontSet> > LocaleToCachedFont; | 258 typedef HashMap<AtomicString, OwnPtr<CachedFontSet> > LocaleToCachedFont; |
259 LocaleToCachedFont m_setsByLocale; | 259 LocaleToCachedFont m_setsByLocale; |
260 }; | 260 }; |
261 | 261 |
262 void WebFontInfo::fallbackFontForChar(WebUChar32 c, const char* locale, WebFallb
ackFont* fallbackFont) | 262 void WebFontInfo::fallbackFontForChar(WebUChar32 c, const char* locale, WebFallb
ackFont* fallbackFont) |
263 { | 263 { |
264 *fallbackFont = FontSetCache::shared().fallbackFontForCharInLocale(c, locale
); | 264 *fallbackFont = FontSetCache::shared().fallbackFontForCharInLocale(c, locale
); |
265 } | 265 } |
266 | 266 |
267 } // namespace blink | 267 } // namespace blink |
OLD | NEW |