Home | History | Annotate | Download | only in common
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "chrome/common/pref_names_util.h"
      6 
      7 #include "base/strings/string_util.h"
      8 
      9 namespace pref_names_util {
     10 
     11 const char kWebKitFontPrefPrefix[] = "webkit.webprefs.fonts.";
     12 
     13 bool ParseFontNamePrefPath(const std::string& pref_path,
     14                            std::string* generic_family,
     15                            std::string* script) {
     16   if (!StartsWithASCII(pref_path, kWebKitFontPrefPrefix, true))
     17     return false;
     18 
     19   size_t start = strlen(kWebKitFontPrefPrefix);
     20   size_t pos = pref_path.find('.', start);
     21   if (pos == std::string::npos || pos + 1 == pref_path.length())
     22     return false;
     23   if (generic_family)
     24     *generic_family = pref_path.substr(start, pos - start);
     25   if (script)
     26     *script = pref_path.substr(pos + 1);
     27   return true;
     28 }
     29 
     30 }  // namespace pref_names_util
     31