| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_FONT_SETTINGS_UTILS_H_ |
| #define CHROME_BROWSER_UI_WEBUI_OPTIONS_FONT_SETTINGS_UTILS_H_ |
| |
| #include <string> |
| |
| #include "base/macros.h" |
| |
| class PrefService; |
| |
| namespace options { |
| |
| // Chrome advanced options utility methods. |
| class FontSettingsUtilities { |
| public: |
| static void ValidateSavedFonts(PrefService* prefs); |
| |
| // When |font_name_or_list| starts with ",", it is a list of font names |
| // separated by "," and this function returns the first available font name. |
| // Otherwise returns |font_name_or_list| as is. |
| // Unlike gfx::FontList, this function picks one font, and character-level |
| // fallback is handled in CSS. |
| static std::string ResolveFontList(const std::string& font_name_or_list); |
| |
| // Returns the localized name of a font so that settings can find it within |
| // the list of system fonts. On Windows, the list of system fonts has names |
| // only for the system locale, but the pref value may be in the English name. |
| // For example, "MS Gothic" becomes "MS ゴシック" on localized Windows. |
| static std::string MaybeGetLocalizedFontName( |
| const std::string& font_name_or_list); |
| |
| private: |
| DISALLOW_IMPLICIT_CONSTRUCTORS(FontSettingsUtilities); |
| }; |
| |
| } // namespace options |
| |
| #endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_FONT_SETTINGS_UTILS_H_ |