| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    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 |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #include "ui/gfx/font_list.h" |    5 #include "ui/gfx/font_list.h" | 
|    6  |    6  | 
|    7 #include "base/lazy_instance.h" |    7 #include "base/lazy_instance.h" | 
|    8 #include "base/strings/string_number_conversions.h" |    8 #include "base/strings/string_number_conversions.h" | 
|    9 #include "base/strings/string_split.h" |    9 #include "base/strings/string_split.h" | 
|   10 #include "base/strings/string_util.h" |   10 #include "base/strings/string_util.h" | 
| (...skipping 16 matching lines...) Expand all  Loading... | 
|   27  |   27  | 
|   28 // static |   28 // static | 
|   29 bool FontList::ParseDescription(const std::string& description, |   29 bool FontList::ParseDescription(const std::string& description, | 
|   30                                 std::vector<std::string>* families_out, |   30                                 std::vector<std::string>* families_out, | 
|   31                                 int* style_out, |   31                                 int* style_out, | 
|   32                                 int* size_pixels_out) { |   32                                 int* size_pixels_out) { | 
|   33   DCHECK(families_out); |   33   DCHECK(families_out); | 
|   34   DCHECK(style_out); |   34   DCHECK(style_out); | 
|   35   DCHECK(size_pixels_out); |   35   DCHECK(size_pixels_out); | 
|   36  |   36  | 
|   37   base::SplitString(description, ',', families_out); |   37   *families_out = base::SplitString( | 
 |   38       description, ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); | 
|   38   if (families_out->empty()) |   39   if (families_out->empty()) | 
|   39     return false; |   40     return false; | 
|   40   for (auto& family : *families_out) |   41   for (auto& family : *families_out) | 
|   41     base::TrimWhitespaceASCII(family, base::TRIM_ALL, &family); |   42     base::TrimWhitespaceASCII(family, base::TRIM_ALL, &family); | 
|   42  |   43  | 
|   43   // The last item is "[STYLE1] [STYLE2] [...] SIZE". |   44   // The last item is "[STYLE1] [STYLE2] [...] SIZE". | 
|   44   std::vector<std::string> styles; |   45   std::vector<std::string> styles = base::SplitString( | 
|   45   base::SplitStringAlongWhitespace(families_out->back(), &styles); |   46       families_out->back(), base::kWhitespaceASCII, | 
 |   47       base::KEEP_WHITESPACE, base::SPLIT_WANT_NONEMPTY); | 
|   46   families_out->pop_back(); |   48   families_out->pop_back(); | 
|   47   if (styles.empty()) |   49   if (styles.empty()) | 
|   48     return false; |   50     return false; | 
|   49  |   51  | 
|   50   // The size takes the form "<INT>px". |   52   // The size takes the form "<INT>px". | 
|   51   std::string size_string = styles.back(); |   53   std::string size_string = styles.back(); | 
|   52   styles.pop_back(); |   54   styles.pop_back(); | 
|   53   if (!base::EndsWith(size_string, "px", base::CompareCase::SENSITIVE)) |   55   if (!base::EndsWith(size_string, "px", base::CompareCase::SENSITIVE)) | 
|   54     return false; |   56     return false; | 
|   55   size_string.resize(size_string.size() - 2); |   57   size_string.resize(size_string.size() - 2); | 
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  185         g_default_font_description.Get().empty() ? |  187         g_default_font_description.Get().empty() ? | 
|  186             new FontListImpl(Font()) : |  188             new FontListImpl(Font()) : | 
|  187             new FontListImpl(g_default_font_description.Get()); |  189             new FontListImpl(g_default_font_description.Get()); | 
|  188     g_default_impl_initialized = true; |  190     g_default_impl_initialized = true; | 
|  189   } |  191   } | 
|  190  |  192  | 
|  191   return g_default_impl.Get(); |  193   return g_default_impl.Get(); | 
|  192 } |  194 } | 
|  193  |  195  | 
|  194 }  // namespace gfx |  196 }  // namespace gfx | 
| OLD | NEW |